Class HttpAsyncRequester

java.lang.Object
org.apache.http.nio.protocol.HttpAsyncRequester

@Contract(threading=IMMUTABLE_CONDITIONAL) public class HttpAsyncRequester extends Object
HttpAsyncRequester is a utility class that can be used in conjunction with HttpAsyncRequestExecutor to initiate execution of asynchronous HTTP requests.
Since:
4.2
See Also:
  • Constructor Details

    • HttpAsyncRequester

      @Deprecated public HttpAsyncRequester(org.apache.http.protocol.HttpProcessor httpprocessor, org.apache.http.ConnectionReuseStrategy reuseStrategy, org.apache.http.params.HttpParams params)
    • HttpAsyncRequester

      public HttpAsyncRequester(org.apache.http.protocol.HttpProcessor httpprocessor, org.apache.http.ConnectionReuseStrategy connReuseStrategy, org.apache.http.ExceptionLogger exceptionLogger)
      Creates new instance of HttpAsyncRequester.
      Parameters:
      httpprocessor - HTTP protocol processor.
      connReuseStrategy - Connection re-use strategy. If null DefaultConnectionReuseStrategy.INSTANCE will be used.
      exceptionLogger - Exception logger. If null ExceptionLogger.NO_OP will be used. Please note that the exception logger will be only used to log I/O exception thrown while closing Closeable objects (such as HttpConnection).
      Since:
      4.4
    • HttpAsyncRequester

      public HttpAsyncRequester(org.apache.http.protocol.HttpProcessor httpprocessor, org.apache.http.ConnectionReuseStrategy connReuseStrategy)
      Creates new instance of HttpAsyncRequester.
      Since:
      4.3
    • HttpAsyncRequester

      public HttpAsyncRequester(org.apache.http.protocol.HttpProcessor httpprocessor)
      Creates new instance of HttpAsyncRequester.
      Since:
      4.3
  • Method Details

    • execute

      public <T> Future<T> execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, NHttpClientConnection conn, org.apache.http.protocol.HttpContext context, org.apache.http.concurrent.FutureCallback<T> callback)
      Initiates asynchronous HTTP request execution.
      Type Parameters:
      T - the result type of request execution.
      Parameters:
      requestProducer - request producer.
      responseConsumer - response consumer.
      conn - underlying HTTP connection.
      context - HTTP context
      callback - future callback.
      Returns:
      future representing pending completion of the operation.
    • execute

      public <T> Future<T> execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, NHttpClientConnection conn, org.apache.http.protocol.HttpContext context)
      Initiates asynchronous HTTP request execution.
      Type Parameters:
      T - the result type of request execution.
      Parameters:
      requestProducer - request producer.
      responseConsumer - response consumer.
      conn - underlying HTTP connection.
      context - HTTP context
      Returns:
      future representing pending completion of the operation.
    • execute

      public <T> Future<T> execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, NHttpClientConnection conn)
      Initiates asynchronous HTTP request execution.
      Type Parameters:
      T - the result type of request execution.
      Parameters:
      requestProducer - request producer.
      responseConsumer - response consumer.
      conn - underlying HTTP connection.
      Returns:
      future representing pending completion of the operation.
    • execute

      public <T, E extends org.apache.http.pool.PoolEntry<org.apache.http.HttpHost, NHttpClientConnection>> Future<T> execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, org.apache.http.pool.ConnPool<org.apache.http.HttpHost,E> connPool, org.apache.http.protocol.HttpContext context, org.apache.http.concurrent.FutureCallback<T> callback)
      Initiates asynchronous HTTP request execution.
      Type Parameters:
      T - the result type of request execution.
      E - the connection pool entry type.
      Parameters:
      requestProducer - request producer.
      responseConsumer - response consumer.
      connPool - pool of persistent reusable connections.
      context - HTTP context
      callback - future callback.
      Returns:
      future representing pending completion of the operation.
    • executePipelined

      public <T, E extends org.apache.http.pool.PoolEntry<org.apache.http.HttpHost, NHttpClientConnection>> Future<List<T>> executePipelined(org.apache.http.HttpHost target, List<? extends HttpAsyncRequestProducer> requestProducers, List<? extends HttpAsyncResponseConsumer<T>> responseConsumers, org.apache.http.pool.ConnPool<org.apache.http.HttpHost,E> connPool, org.apache.http.protocol.HttpContext context, org.apache.http.concurrent.FutureCallback<List<T>> callback)
      Initiates asynchronous pipelined HTTP request execution.
      Type Parameters:
      T - the result type of request execution.
      E - the connection pool entry type.
      Parameters:
      target - target host.
      requestProducers - list of request producers.
      responseConsumers - list of response consumers.
      connPool - pool of persistent reusable connections.
      context - HTTP context
      callback - future callback.
      Returns:
      future representing pending completion of the operation.
      Since:
      4.4
    • execute

      public <T, E extends org.apache.http.pool.PoolEntry<org.apache.http.HttpHost, NHttpClientConnection>> Future<T> execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, E poolEntry, org.apache.http.pool.ConnPool<org.apache.http.HttpHost,E> connPool, org.apache.http.protocol.HttpContext context, org.apache.http.concurrent.FutureCallback<T> callback)
      Initiates asynchronous HTTP request execution. This method automatically releases the given pool entry once request execution is completed (successfully or unsuccessfully).
      Type Parameters:
      T - the result type of request execution.
      E - the connection pool entry type.
      Parameters:
      requestProducer - request producer.
      responseConsumer - response consumer.
      poolEntry - leased pool entry. It will be automatically released back to the pool when execution is completed.
      connPool - pool of persistent reusable connections.
      context - HTTP context
      callback - future callback.
      Returns:
      future representing pending completion of the operation.
      Since:
      4.3
    • executePipelined

      public <T, E extends org.apache.http.pool.PoolEntry<org.apache.http.HttpHost, NHttpClientConnection>> Future<List<T>> executePipelined(List<HttpAsyncRequestProducer> requestProducers, List<HttpAsyncResponseConsumer<T>> responseConsumers, E poolEntry, org.apache.http.pool.ConnPool<org.apache.http.HttpHost,E> connPool, org.apache.http.protocol.HttpContext context, org.apache.http.concurrent.FutureCallback<List<T>> callback)
      Initiates asynchronous pipelined HTTP request execution. This method automatically releases the given pool entry once request execution is completed (successfully or unsuccessfully).
      Type Parameters:
      T - the result type of request execution.
      E - the connection pool entry type.
      Parameters:
      requestProducers - list of request producers.
      responseConsumers - list of response consumers.
      poolEntry - leased pool entry. It will be automatically released back to the pool when execution is completed.
      connPool - pool of persistent reusable connections.
      context - HTTP context
      callback - future callback.
      Returns:
      future representing pending completion of the operation.
      Since:
      4.4
    • execute

      public <T, E extends org.apache.http.pool.PoolEntry<org.apache.http.HttpHost, NHttpClientConnection>> Future<T> execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, org.apache.http.pool.ConnPool<org.apache.http.HttpHost,E> connPool, org.apache.http.protocol.HttpContext context)
      Initiates asynchronous HTTP request execution.
      Type Parameters:
      T - the result type of request execution.
      E - the connection pool entry type.
      Parameters:
      requestProducer - request producer.
      responseConsumer - response consumer.
      connPool - pool of persistent reusable connections.
      context - HTTP context
      Returns:
      future representing pending completion of the operation.
    • execute

      public <T, E extends org.apache.http.pool.PoolEntry<org.apache.http.HttpHost, NHttpClientConnection>> Future<T> execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, org.apache.http.pool.ConnPool<org.apache.http.HttpHost,E> connPool)
      Initiates asynchronous HTTP request execution.
      Type Parameters:
      T - the result type of request execution.
      E - the connection pool entry type.
      Parameters:
      requestProducer - request producer.
      responseConsumer - response consumer.
      connPool - pool of persistent reusable connections.
      Returns:
      future representing pending completion of the operation.
    • log

      protected void log(Exception ex)
      This method can be used to log I/O exception thrown while closing Closeable objects (such as HttpConnection}).
      Parameters:
      ex - I/O exception thrown by Closeable.close()