code: public static StaleKbObjectException fromThrowable(Throwable cause) {
      return (cause instanceof StaleKbObjectException)
                     ? (StaleKbObjectException) cause
                     : new StaleKbObjectException(cause);
    }
docs: Converts a Throwable to a StaleKbObjectException. If the Throwable is a
  StaleKbObjectException, it will be passed through unmodified; otherwise, it will be wrapped
  in a new StaleKbObjectException.
  
  @param cause the Throwable to convert
  
  @return a StaleKbObjectException