private static void rethrow(Throwable throwable) throws IOException {
    if (throwable instanceof IOException) {
      throw (IOException)throwable;
    }
    else if (throwable instanceof IncorrectOperationException) {
      throw (IncorrectOperationException)throwable;
    }
    else if (throwable != null) {
      throw new IncorrectOperationException(throwable);
    }
  }
private static void rethrow(Throwable throwable)