# Package org.apache.http.impl.client

Default HTTP client implementation.

See: Description

Class Summary
Class | Description
--- | ---
AbstractAuthenticationHandler | Deprecated (4.2) use `AuthenticationStrategy`
AbstractHttpClient | Deprecated (4.3) use `HttpClientBuilder`.
AbstractResponseHandler<T> | A generic `ResponseHandler` that works with the response entity for successful (2xx) responses.
AIMDBackoffManager | The `AIMDBackoffManager` applies an additive increase, multiplicative decrease (AIMD) to managing a dynamic limit to the number of connections allowed to a given host.
AutoRetryHttpClient | Deprecated (4.3) use `HttpClientBuilder`.
BasicAuthCache | Default implementation of `AuthCache`.
BasicCookieStore | Default implementation of `CookieStore`
BasicCredentialsProvider | Default implementation of `CredentialsProvider`.
BasicResponseHandler | A `ResponseHandler` that returns the response body as a String for successful (2xx) responses.
ClientParamsStack | Deprecated (4.3) use configuration classes provided 'org.apache.http.config' and 'org.apache.http.client.config'
CloseableHttpClient | Base implementation of `HttpClient` that also implements `Closeable`.
ContentEncodingHttpClient | Deprecated (4.2) use `HttpClientBuilder`
CookieSpecRegistries |
DecompressingHttpClient | Deprecated (4.3) use `HttpClientBuilder`
DefaultBackoffStrategy | This `ConnectionBackoffStrategy` backs off either for a raw network socket or connection timeout or if the server explicitly sends a 503 (Service Unavailable) response.
DefaultClientConnectionReuseStrategy |
DefaultConnectionKeepAliveStrategy | Default implementation of a strategy deciding duration that a connection can remain idle.
DefaultHttpClient | Deprecated (4.3) use `HttpClientBuilder` see also `CloseableHttpClient`.
DefaultHttpRequestRetryHandler | The default `HttpRequestRetryHandler` used by request executors.
DefaultProxyAuthenticationHandler | Deprecated (4.2) use `ProxyAuthenticationStrategy`
DefaultRedirectHandler | Deprecated (4.1) use `DefaultRedirectStrategy`.
DefaultRedirectStrategy | Default implementation of `RedirectStrategy`.
DefaultRequestDirector | Deprecated Do not use.
DefaultServiceUnavailableRetryStrategy | Default implementation of the `ServiceUnavailableRetryStrategy` interface.
DefaultTargetAuthenticationHandler | Deprecated (4.2) use `TargetAuthenticationStrategy`
DefaultUserTokenHandler | Default implementation of `UserTokenHandler`.
EntityEnclosingRequestWrapper | Deprecated (4.3) do not use.
FutureRequestExecutionMetrics | Collection of different counters used to gather metrics for `FutureRequestExecutionService`.
FutureRequestExecutionService | HttpAsyncClientWithFuture wraps calls to execute with a `HttpRequestFutureTask` and schedules them using the provided executor service.
HttpAuthenticator | Deprecated (4.3) reserved for internal use.
HttpClientBuilder | Builder for `CloseableHttpClient` instances.
HttpClients | Factory methods for `CloseableHttpClient` instances.
HttpRequestFutureTask<V> | FutureTask implementation that wraps a HttpAsyncClientCallable and exposes various task specific metrics.
IdleConnectionEvictor | This class maintains a background thread to enforce an eviction policy for expired / idle persistent connections kept alive in the connection pool.
LaxRedirectStrategy | Lax `RedirectStrategy` implementation that automatically redirects all HEAD, GET, POST, and DELETE requests.
NoopUserTokenHandler | Noop implementation of `UserTokenHandler` that always returns `null`.
NullBackoffStrategy | This is a `ConnectionBackoffStrategy` that never backs off, for compatibility with existing behavior.
ProxyAuthenticationStrategy | Default `AuthenticationStrategy` implementation for proxy host authentication.
ProxyClient | ProxyClient can be used to establish a tunnel via an HTTP proxy.
RedirectLocations | This class represents a collection of `URI`s used as redirect locations.
RequestWrapper | Deprecated (4.3) do not use.
RoutedRequest | Deprecated (4.3) do not use.
StandardHttpRequestRetryHandler | `HttpRequestRetryHandler` which assumes that all requested HTTP methods which should be idempotent according to RFC-2616 are in fact idempotent and can be retried.
SystemDefaultCredentialsProvider | Implementation of `CredentialsProvider` backed by standard JRE `Authenticator`.
SystemDefaultHttpClient | Deprecated (4.3) use `HttpClientBuilder`
TargetAuthenticationStrategy | Default `AuthenticationStrategy` implementation for proxy host authentication.
WinHttpClients | Factory methods for `CloseableHttpClient` instances configured to use integrated Windows authentication by default.

Exception Summary
Exception | Description
--- | ---
TunnelRefusedException | Deprecated (4.3) reserved for internal use.

## Package org.apache.http.impl.client Description

Default HTTP client implementation.

The usual execution flow can be demonstrated by the code snippet below:

     CloseableHttpClient httpclient = HttpClients.createDefault();
     try {
          HttpGet httpGet = new HttpGet("http://targethost/homepage");
          CloseableHttpResponse response = httpclient.execute(httpGet);
          try {
              System.out.println(response.getStatusLine());
              HttpEntity entity = response.getEntity();
              // do something useful with the response body
              // and ensure it is fully consumed
              EntityUtils.consume(entity);
          } finally {
              response.close();
          }
     } finally {
          httpclient.close();
     }