org.apache.http.nio.protocol
Class HttpAsyncRequester

java.lang.Object
  extended by 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:
HttpAsyncRequestExecutor

Constructor Summary
HttpAsyncRequester(HttpProcessor httpprocessor)
          Creates new instance of HttpAsyncRequester.
HttpAsyncRequester(HttpProcessor httpprocessor, ConnectionReuseStrategy connReuseStrategy)
          Creates new instance of HttpAsyncRequester.
HttpAsyncRequester(HttpProcessor httpprocessor, ConnectionReuseStrategy connReuseStrategy, ExceptionLogger exceptionLogger)
          Creates new instance of HttpAsyncRequester.
HttpAsyncRequester(HttpProcessor httpprocessor, ConnectionReuseStrategy reuseStrategy, HttpParams params)
          Deprecated. (4.3) use HttpAsyncRequester(HttpProcessor, ConnectionReuseStrategy)
 
Method Summary
<T,E extends PoolEntry<HttpHost,NHttpClientConnection>>
Future<T>
execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, ConnPool<HttpHost,E> connPool)
          Initiates asynchronous HTTP request execution.
<T,E extends PoolEntry<HttpHost,NHttpClientConnection>>
Future<T>
execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, ConnPool<HttpHost,E> connPool, HttpContext context)
          Initiates asynchronous HTTP request execution.
<T,E extends PoolEntry<HttpHost,NHttpClientConnection>>
Future<T>
execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, ConnPool<HttpHost,E> connPool, HttpContext context, FutureCallback<T> callback)
          Initiates asynchronous HTTP request execution.
<T,E extends PoolEntry<HttpHost,NHttpClientConnection>>
Future<T>
execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, E poolEntry, ConnPool<HttpHost,E> connPool, HttpContext context, FutureCallback<T> callback)
          Initiates asynchronous HTTP request execution.
<T> Future<T>
execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, NHttpClientConnection conn)
          Initiates asynchronous HTTP request execution.
<T> Future<T>
execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, NHttpClientConnection conn, HttpContext context)
          Initiates asynchronous HTTP request execution.
<T> Future<T>
execute(HttpAsyncRequestProducer requestProducer, HttpAsyncResponseConsumer<T> responseConsumer, NHttpClientConnection conn, HttpContext context, FutureCallback<T> callback)
          Initiates asynchronous HTTP request execution.
<T,E extends PoolEntry<HttpHost,NHttpClientConnection>>
Future<List<T>>
executePipelined(HttpHost target, List<? extends HttpAsyncRequestProducer> requestProducers, List<? extends HttpAsyncResponseConsumer<T>> responseConsumers, ConnPool<HttpHost,E> connPool, HttpContext context, FutureCallback<List<T>> callback)
          Initiates asynchronous pipelined HTTP request execution.
<T,E extends PoolEntry<HttpHost,NHttpClientConnection>>
Future<List<T>>
executePipelined(List<HttpAsyncRequestProducer> requestProducers, List<HttpAsyncResponseConsumer<T>> responseConsumers, E poolEntry, ConnPool<HttpHost,E> connPool, HttpContext context, FutureCallback<List<T>> callback)
          Initiates asynchronous pipelined HTTP request execution.
protected  void log(Exception ex)
          This method can be used to log I/O exception thrown while closing Closeable objects (such as HttpConnection}).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HttpAsyncRequester

@Deprecated
public HttpAsyncRequester(HttpProcessor httpprocessor,
                                     ConnectionReuseStrategy reuseStrategy,
                                     HttpParams params)
Deprecated. (4.3) use HttpAsyncRequester(HttpProcessor, ConnectionReuseStrategy)


HttpAsyncRequester

public HttpAsyncRequester(HttpProcessor httpprocessor,
                          ConnectionReuseStrategy connReuseStrategy,
                          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(HttpProcessor httpprocessor,
                          ConnectionReuseStrategy connReuseStrategy)
Creates new instance of HttpAsyncRequester.

Since:
4.3

HttpAsyncRequester

public HttpAsyncRequester(HttpProcessor httpprocessor)
Creates new instance of HttpAsyncRequester.

Since:
4.3
Method Detail

execute

public <T> Future<T> execute(HttpAsyncRequestProducer requestProducer,
                             HttpAsyncResponseConsumer<T> responseConsumer,
                             NHttpClientConnection conn,
                             HttpContext context,
                             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,
                             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 PoolEntry<HttpHost,NHttpClientConnection>> Future<T> execute(HttpAsyncRequestProducer requestProducer,
                                                                                 HttpAsyncResponseConsumer<T> responseConsumer,
                                                                                 ConnPool<HttpHost,E> connPool,
                                                                                 HttpContext context,
                                                                                 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 PoolEntry<HttpHost,NHttpClientConnection>> Future<List<T>> executePipelined(HttpHost target,
                                                                                                List<? extends HttpAsyncRequestProducer> requestProducers,
                                                                                                List<? extends HttpAsyncResponseConsumer<T>> responseConsumers,
                                                                                                ConnPool<HttpHost,E> connPool,
                                                                                                HttpContext context,
                                                                                                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 PoolEntry<HttpHost,NHttpClientConnection>> Future<T> execute(HttpAsyncRequestProducer requestProducer,
                                                                                 HttpAsyncResponseConsumer<T> responseConsumer,
                                                                                 E poolEntry,
                                                                                 ConnPool<HttpHost,E> connPool,
                                                                                 HttpContext context,
                                                                                 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 PoolEntry<HttpHost,NHttpClientConnection>> Future<List<T>> executePipelined(List<HttpAsyncRequestProducer> requestProducers,
                                                                                                List<HttpAsyncResponseConsumer<T>> responseConsumers,
                                                                                                E poolEntry,
                                                                                                ConnPool<HttpHost,E> connPool,
                                                                                                HttpContext context,
                                                                                                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 PoolEntry<HttpHost,NHttpClientConnection>> Future<T> execute(HttpAsyncRequestProducer requestProducer,
                                                                                 HttpAsyncResponseConsumer<T> responseConsumer,
                                                                                 ConnPool<HttpHost,E> connPool,
                                                                                 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 PoolEntry<HttpHost,NHttpClientConnection>> Future<T> execute(HttpAsyncRequestProducer requestProducer,
                                                                                 HttpAsyncResponseConsumer<T> responseConsumer,
                                                                                 ConnPool<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()


Copyright © 2005–2021 The Apache Software Foundation. All rights reserved.