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

## Class InternalHttpAsyncClient

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

- All Implemented Interfaces:
    Closeable, AutoCloseable, HttpAsyncClient, org.apache.hc.core5.io.ModalCloseable

      @Contract(threading=SAFE_CONDITIONAL)
      @Internal
      public final class InternalHttpAsyncClient
      extends CloseableHttpAsyncClient

  Internal implementation of `CloseableHttpAsyncClient` that can negotiate the most optimal HTTP protocol version during during the `TLS` handshake with `ALPN` extension if supported by the Java runtime.

  Concurrent message exchanges executed by this client will get assigned to separate connections leased from the connection pool.

  Since:
    5.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `awaitShutdown(org.apache.hc.core5.util.TimeValue waitTime)`
    `void` | `close()`
    `void` | `close(org.apache.hc.core5.io.CloseMode closeMode)`
    `protected <T> Future<T>` | `doExecute(org.apache.hc.core5.http.HttpHost httpHost, 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)`
    `org.apache.hc.core5.reactor.IOReactorStatus` | `getStatus()`
    `void` | `initiateShutdown()`
    `void` | `register(String hostname, String uriPattern, org.apache.hc.core5.function.Supplier<org.apache.hc.core5.http.nio.AsyncPushConsumer> supplier)`
    `void` | `start()`

    - ### Methods inherited from class org.apache.hc.client5.http.impl.async.CloseableHttpAsyncClient

      `execute, execute, execute, execute, execute, execute, register`

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

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

- - ### Method Detail

    - #### doExecute

          protected <T> Future<T> doExecute(org.apache.hc.core5.http.HttpHost httpHost,
                                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)

      Specified by:
        `doExecute` in class `CloseableHttpAsyncClient`

    - #### start

          public final void start()

      Specified by:
        `start` in class `CloseableHttpAsyncClient`

    - #### register

          public void register(String hostname,
                      String uriPattern,
                      org.apache.hc.core5.function.Supplier<org.apache.hc.core5.http.nio.AsyncPushConsumer> supplier)

      Specified by:
        `register` in class `CloseableHttpAsyncClient`

    - #### getStatus

          public final org.apache.hc.core5.reactor.IOReactorStatus getStatus()

      Specified by:
        `getStatus` in class `CloseableHttpAsyncClient`

    - #### awaitShutdown

          public final void awaitShutdown(org.apache.hc.core5.util.TimeValue waitTime)
                                   throws InterruptedException

      Specified by:
        `awaitShutdown` in class `CloseableHttpAsyncClient`
      Throws:
        `InterruptedException`

    - #### initiateShutdown

          public final void initiateShutdown()

      Specified by:
        `initiateShutdown` in class `CloseableHttpAsyncClient`

    - #### close

          public final void close(org.apache.hc.core5.io.CloseMode closeMode)

    - #### close

          public void close()

Copyright © 1999–2022 The Apache Software Foundation. All rights reserved.