# Package org.apache.hc.client5.http.impl.classic

Classic HTTP client API implementation that supports HTTP/1.1 transport only.

See: Description

Class Summary
AbstractBackoff: AbstractBackoff is an abstract class that provides a common implementation for managing backoff behavior in HttpClient connection pool.
AbstractHttpClientResponseHandler<T>: A generic `HttpClientResponseHandler` 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.
BackoffStrategyExec: Request execution handler in the classic request execution chain that is responsible for execution of an `ConnectionBackoffStrategy`.
BasicHttpClientResponseHandler: A `HttpClientResponseHandler` that returns the response body as a String for successful (2xx) responses.
ClassicRequestCopier: Deprecated Use `ClassicRequestBuilder`
CloseableHttpClient: Base implementation of `HttpClient` that also implements `ModalCloseable`.
CloseableHttpResponse: Provided for backward compatibility with HttpClient 4.x.
ConnectExec: Request execution handler in the classic request execution chain that is responsible for establishing connection to the target origin server as specified by the current connection route.
ContentCompressionExec: Request execution handler in the classic request execution chain that is responsible for automatic response content decompression.
DefaultBackoffStrategy: This `ConnectionBackoffStrategy` backs off either for a raw network socket or connection timeout or if the server explicitly sends a 429 (Too Many Requests) or a 503 (Service Unavailable) response.
ExponentialBackoffManager: A backoff manager implementation that uses an exponential backoff algorithm to adjust the maximum number of connections per HTTP route.
FutureRequestExecutionMetrics: Collection of different counters used to gather metrics for `FutureRequestExecutionService`.
FutureRequestExecutionService: This class schedules message execution execution and processing as `FutureTask`s with the provided `ExecutorService`.
HttpClientBuilder: Builder for `CloseableHttpClient` instances.
HttpClients: Factory methods for `CloseableHttpClient` instances.
HttpRequestRetryExec: Request executor in the request execution chain that is responsible for making a decision whether a request that failed due to an I/O exception or received a specific response from the target server should be re-executed.
LinearBackoffManager: An implementation of `BackoffManager` that uses a linear backoff strategy to adjust the maximum number of connections per route in an `PoolingHttpClientConnectionManager`.
MainClientExec: Usually the last request execution handler in the classic request execution chain that is responsible for execution of request / response exchanges with the opposite endpoint.
MinimalHttpClient: Minimal implementation of `CloseableHttpClient`.
NullBackoffStrategy: This is a `ConnectionBackoffStrategy` that never backs off, for compatibility with existing behavior.
ProtocolExec: Request execution handler in the classic request execution chain that is responsible for implementation of HTTP specification requirements.
ProxyClient: ProxyClient can be used to establish a tunnel via an HTTP/1.1 proxy.
RedirectExec: Request execution handler in the classic request execution chain responsible for handling of request redirects.

Exception Summary
RequestAbortedException: Signals that the request has been aborted.
RequestFailedException: Signals that the request has been aborted or failed due to an expected condition.

## Package org.apache.hc.client5.http.impl.classic Description

Classic HTTP client API implementation that supports HTTP/1.1 transport only. This implementation is mostly API compatible with HttpClient 4.5. Please use the asynchronous client API implementation for HTTP/2 transport.