public void completed(final E result) {
if (this.requestFuture.isDone()) {
this.connPool.release(result, true);
return;
}
NHttpClientConnection conn = result.getConnection();
BasicFuture<T> execFuture = new BasicFuture<T>(new RequestExecutionCallback<T, E>(
this.requestFuture, result, this.connPool));
HttpAsyncClientExchangeHandler<T> handler = new HttpAsyncClientExchangeHandlerImpl<T>(
execFuture, this.requestProducer, this.responseConsumer, this.context,
httppocessor, conn, reuseStrategy, params);
conn.getContext().setAttribute(HttpAsyncClientProtocolHandler.HTTP_HANDLER, handler);
conn.requestOutput();
}