org.apache.hc.client5.http.impl.async

## Class CloseableHttpAsyncClient

- java.lang.Object
- - org.apache.hc.client5.http.impl.async.CloseableHttpAsyncClient

All Implemented Interfaces:
  Closeable, AutoCloseable, HttpAsyncClient

Direct Known Subclasses:
  InternalHttp2AsyncClient, InternalHttpAsyncClient, MinimalHttp2AsyncClient, MinimalHttpAsyncClient

    @Contract(threading=STATELESS)
    public abstract class CloseableHttpAsyncClient
    extends Object
    implements HttpAsyncClient, Closeable

Base implementation of `HttpAsyncClient` that also implements `Closeable`.

Since:
  5.0

### Constructor Summary

Constructors
Constructor and Description
`CloseableHttpAsyncClient()`

### Method Summary

Methods
`abstract void` `awaitShutdown(TimeValue waitTime)`
`<T> Future<T>` `execute(AsyncRequestProducer requestProducer, AsyncResponseConsumer<T> responseConsumer, FutureCallback<T> callback)`
`<T> Future<T>` `execute(AsyncRequestProducer requestProducer, AsyncResponseConsumer<T> responseConsumer, HttpContext context, FutureCallback<T> callback)`
`Future<SimpleHttpResponse>` `execute(SimpleHttpRequest request, FutureCallback<SimpleHttpResponse> callback)`
`Future<SimpleHttpResponse>` `execute(SimpleHttpRequest request, HttpContext context, FutureCallback<SimpleHttpResponse> callback)`
`abstract List<ExceptionEvent>` `getExceptionLog()`
`abstract IOReactorStatus` `getStatus()`
`abstract void` `initiateShutdown()`
`abstract void` `register(String hostname, String uriPattern, Supplier<AsyncPushConsumer> supplier)`
`void` `register(String uriPattern, Supplier<AsyncPushConsumer> supplier)`
`abstract void` `shutdown(CloseMode closeMode)`
`abstract void` `start()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.apache.hc.client5.http.async.HttpAsyncClient

`execute`

### Methods inherited from interface java.io.Closeable

`close`

### Constructor Detail

#### CloseableHttpAsyncClient

    public CloseableHttpAsyncClient()

### Method Detail

#### start

    public abstract void start()

#### getStatus

    public abstract IOReactorStatus getStatus()

#### getExceptionLog

    public abstract List<ExceptionEvent> getExceptionLog()

#### awaitShutdown

    public abstract void awaitShutdown(TimeValue waitTime)
                                throws InterruptedException

Throws:
  `InterruptedException`

#### initiateShutdown

    public abstract void initiateShutdown()

#### shutdown

    public abstract void shutdown(CloseMode closeMode)

#### execute

    public final <T> Future<T> execute(AsyncRequestProducer requestProducer,
                        AsyncResponseConsumer<T> responseConsumer,
                        HttpContext context,
                        FutureCallback<T> callback)

#### execute

    public final <T> Future<T> execute(AsyncRequestProducer requestProducer,
                        AsyncResponseConsumer<T> responseConsumer,
                        FutureCallback<T> callback)

#### execute

    public final Future<SimpleHttpResponse> execute(SimpleHttpRequest request,
                                     HttpContext context,
                                     FutureCallback<SimpleHttpResponse> callback)

#### execute

    public final Future<SimpleHttpResponse> execute(SimpleHttpRequest request,
                                     FutureCallback<SimpleHttpResponse> callback)

#### register

    public abstract void register(String hostname,
                String uriPattern,
                Supplier<AsyncPushConsumer> supplier)

#### register

    public final void register(String uriPattern,
                Supplier<AsyncPushConsumer> supplier)