docs: protected <T> Request doInvoke(ResponseReader responseReader,
        String methodName, RpcStatsContext statsContext, String requestData,
        AsyncCallback<T> callback) {
  
      RequestBuilder rb = doPrepareRequestBuilderImpl(responseReader, methodName,
          statsContext, requestData, callback);
  
      try {
        return rb.send();
      } catch (RequestException ex) {
          InvocationException iex = new InvocationException(
              "Unable to initiate the asynchronous service invocation (" +
              methodName + ") -- check the network connection",
              ex);
        callback.onFailure(iex);
      } finally {
        if (statsContext.isStatsAvailable()) {
          statsContext.stats(statsContext.bytesStat(methodName,
              requestData.length(), "requestSent"));
        }
      }
      return null;
    }