Class CloseableHttpAsyncClient
java.lang.Object
org.apache.hc.client5.http.impl.async.CloseableHttpAsyncClient
- All Implemented Interfaces:
Closeable, AutoCloseable, HttpAsyncClient, org.apache.hc.core5.io.ModalCloseable
- Direct Known Subclasses:
AbstractHttpAsyncClientBase
@Contract(threading=STATELESS)
public abstract class CloseableHttpAsyncClient
extends Object
implements HttpAsyncClient, org.apache.hc.core5.io.ModalCloseable
Base implementation of
HttpAsyncClient that also implements ModalCloseable.- Since:
- 5.0
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract voidawaitShutdown(org.apache.hc.core5.util.TimeValue waitTime) protected abstract <T> Future<T> doExecute(org.apache.hc.core5.http.HttpHost target, org.apache.hc.core5.http.nio.AsyncRequestProducer requestProducer, org.apache.hc.core5.http.nio.AsyncResponseConsumer<T> responseConsumer, org.apache.hc.core5.http.nio.HandlerFactory<org.apache.hc.core5.http.nio.AsyncPushConsumer> pushHandlerFactory, org.apache.hc.core5.http.protocol.HttpContext context, org.apache.hc.core5.concurrent.FutureCallback<T> callback) final Future<SimpleHttpResponse> execute(SimpleHttpRequest request, org.apache.hc.core5.concurrent.FutureCallback<SimpleHttpResponse> callback) final Future<SimpleHttpResponse> execute(SimpleHttpRequest request, org.apache.hc.core5.http.protocol.HttpContext context, org.apache.hc.core5.concurrent.FutureCallback<SimpleHttpResponse> callback) final <T> Future<T> execute(org.apache.hc.core5.http.HttpHost target, org.apache.hc.core5.http.nio.AsyncRequestProducer requestProducer, org.apache.hc.core5.http.nio.AsyncResponseConsumer<T> responseConsumer, org.apache.hc.core5.http.nio.HandlerFactory<org.apache.hc.core5.http.nio.AsyncPushConsumer> pushHandlerFactory, org.apache.hc.core5.http.protocol.HttpContext context, org.apache.hc.core5.concurrent.FutureCallback<T> callback) final <T> Future<T> execute(org.apache.hc.core5.http.nio.AsyncRequestProducer requestProducer, org.apache.hc.core5.http.nio.AsyncResponseConsumer<T> responseConsumer, org.apache.hc.core5.concurrent.FutureCallback<T> callback) final <T> Future<T> execute(org.apache.hc.core5.http.nio.AsyncRequestProducer requestProducer, org.apache.hc.core5.http.nio.AsyncResponseConsumer<T> responseConsumer, org.apache.hc.core5.http.nio.HandlerFactory<org.apache.hc.core5.http.nio.AsyncPushConsumer> pushHandlerFactory, org.apache.hc.core5.http.protocol.HttpContext context, org.apache.hc.core5.concurrent.FutureCallback<T> callback) Initiates asynchronous HTTP request execution using the given context.final <T> Future<T> execute(org.apache.hc.core5.http.nio.AsyncRequestProducer requestProducer, org.apache.hc.core5.http.nio.AsyncResponseConsumer<T> responseConsumer, org.apache.hc.core5.http.protocol.HttpContext context, org.apache.hc.core5.concurrent.FutureCallback<T> callback) abstract org.apache.hc.core5.reactor.IOReactorStatusabstract voidabstract voidregister(String hostname, String uriPattern, org.apache.hc.core5.function.Supplier<org.apache.hc.core5.http.nio.AsyncPushConsumer> supplier) final voidregister(String uriPattern, org.apache.hc.core5.function.Supplier<org.apache.hc.core5.http.nio.AsyncPushConsumer> supplier) abstract voidstart()Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.hc.core5.io.ModalCloseable
close
-
Constructor Details
-
CloseableHttpAsyncClient
public CloseableHttpAsyncClient()
-
-
Method Details
-
start
public abstract void start() -
getStatus
public abstract org.apache.hc.core5.reactor.IOReactorStatus getStatus() -
awaitShutdown
public abstract void awaitShutdown(org.apache.hc.core5.util.TimeValue waitTime) throws InterruptedException - Throws:
InterruptedException
-
initiateShutdown
public abstract void initiateShutdown() -
doExecute
protected abstract <T> Future<T> doExecute(org.apache.hc.core5.http.HttpHost target, org.apache.hc.core5.http.nio.AsyncRequestProducer requestProducer, org.apache.hc.core5.http.nio.AsyncResponseConsumer<T> responseConsumer, org.apache.hc.core5.http.nio.HandlerFactory<org.apache.hc.core5.http.nio.AsyncPushConsumer> pushHandlerFactory, org.apache.hc.core5.http.protocol.HttpContext context, org.apache.hc.core5.concurrent.FutureCallback<T> callback) -
execute
public final <T> Future<T> execute(org.apache.hc.core5.http.HttpHost target, org.apache.hc.core5.http.nio.AsyncRequestProducer requestProducer, org.apache.hc.core5.http.nio.AsyncResponseConsumer<T> responseConsumer, org.apache.hc.core5.http.nio.HandlerFactory<org.apache.hc.core5.http.nio.AsyncPushConsumer> pushHandlerFactory, org.apache.hc.core5.http.protocol.HttpContext context, org.apache.hc.core5.concurrent.FutureCallback<T> callback) -
execute
public final <T> Future<T> execute(org.apache.hc.core5.http.nio.AsyncRequestProducer requestProducer, org.apache.hc.core5.http.nio.AsyncResponseConsumer<T> responseConsumer, org.apache.hc.core5.http.nio.HandlerFactory<org.apache.hc.core5.http.nio.AsyncPushConsumer> pushHandlerFactory, org.apache.hc.core5.http.protocol.HttpContext context, org.apache.hc.core5.concurrent.FutureCallback<T> callback) Description copied from interface:HttpAsyncClientInitiates asynchronous HTTP request execution using the given context.The request producer passed to this method will be used to generate a request message and stream out its content without buffering it in memory. The response consumer passed to this method will be used to process a response message without buffering its content in memory.
Please note it may be unsafe to interact with the context instance while the request is still being executed.
- Specified by:
executein interfaceHttpAsyncClient- Type Parameters:
T- the result type of request execution.- Parameters:
requestProducer- request producer callback.responseConsumer- response consumer callback.pushHandlerFactory- the push handler factory. Optional and may benull.context- HTTP context. Optional and may benull.callback- future callback. Optional and may benull.- Returns:
- future representing pending completion of the operation.
-
execute
public final <T> Future<T> execute(org.apache.hc.core5.http.nio.AsyncRequestProducer requestProducer, org.apache.hc.core5.http.nio.AsyncResponseConsumer<T> responseConsumer, org.apache.hc.core5.http.protocol.HttpContext context, org.apache.hc.core5.concurrent.FutureCallback<T> callback) -
execute
public final <T> Future<T> execute(org.apache.hc.core5.http.nio.AsyncRequestProducer requestProducer, org.apache.hc.core5.http.nio.AsyncResponseConsumer<T> responseConsumer, org.apache.hc.core5.concurrent.FutureCallback<T> callback) -
execute
public final Future<SimpleHttpResponse> execute(SimpleHttpRequest request, org.apache.hc.core5.http.protocol.HttpContext context, org.apache.hc.core5.concurrent.FutureCallback<SimpleHttpResponse> callback) -
execute
public final Future<SimpleHttpResponse> execute(SimpleHttpRequest request, org.apache.hc.core5.concurrent.FutureCallback<SimpleHttpResponse> callback) -
register
-
register
public final void register(String uriPattern, org.apache.hc.core5.function.Supplier<org.apache.hc.core5.http.nio.AsyncPushConsumer> supplier)
-