@Override
                            public void failed(final Exception ex) {
                                future.failed(ex);
                            }
Initiates message exchange using the given request producer and response consumer.

@param id unique operation ID or {@code null}.
@param requestProducer the request producer.
@param responseConsumer the response consumer.
@param pushHandlerFactory the push handler factory.
@param context the execution context.
@param callback the result callback.
@param <T> the result representation.
@return the result future.
httpclient5/src/main/java/org/apache/hc/client5/http/nio/AsyncConnectionEndpoint.java