Class ApacheHttpClient

java.lang.Object
software.amazon.awssdk.http.apache.ApacheHttpClient
All Implemented Interfaces:
AutoCloseable, SdkHttpClient, SdkAutoCloseable

public final class ApacheHttpClient extends Object implements SdkHttpClient
An implementation of SdkHttpClient that uses Apache HTTP client to communicate with the service. This is the most powerful synchronous client that adds an extra dependency and additional startup latency in exchange for more functionality, like support for HTTP proxies.

See software.amazon.awssdk.http.urlconnection.UrlConnectionHttpClient for an alternative implementation.

This can be created via builder()

  • Field Details

  • Method Details

    • builder

      public static ApacheHttpClient.Builder builder()
    • create

      public static SdkHttpClient create()
      Create a ApacheHttpClient with the default properties
      Returns:
      an ApacheHttpClient
    • prepareRequest

      public ExecutableHttpRequest prepareRequest(HttpExecuteRequest request)
      Description copied from interface: SdkHttpClient
      Create a ExecutableHttpRequest that can be used to execute the HTTP request.
      Specified by:
      prepareRequest in interface SdkHttpClient
      Parameters:
      request - Representation of an HTTP request.
      Returns:
      Task that can execute an HTTP request and can be aborted.
    • close

      public void close()
      Description copied from interface: SdkAutoCloseable
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface SdkAutoCloseable
    • clientName

      public String clientName()
      Description copied from interface: SdkHttpClient
      Each HTTP client implementation should return a well-formed client name that allows requests to be identifiable back to the client that made the request. The client name should include the backing implementation as well as the Sync or Async to identify the transmission type of the request. Client names should only include alphanumeric characters. Examples of well formed client names include, ApacheSync, for requests using Apache's synchronous http client or NettyNioAsync for Netty's asynchronous http client.
      Specified by:
      clientName in interface SdkHttpClient
      Returns:
      String containing the name of the client