# Package org.apache.hc.client5.http

Client component APIs common to all client transports such as connection route information and resolution as well as common HTTP method definitions and exception classes.

See: Description

Interface Summary
AuthenticationStrategy: Strategy to select auth schemes in order of preference based on auth challenges presented by the opposite endpoint (target server or a proxy).
ConnectionKeepAliveStrategy: Interface for deciding how long a connection can remain idle before being reused.
DnsResolver: Users may implement this interface to override the normal DNS lookup offered by the OS.
HttpRequestRetryStrategy: Strategy interface that allows API users to plug in their own logic to control whether or not a retry should automatically be done, how many times it should be done and so on.
RouteInfo: Connection route information.
SchemePortResolver: Strategy for default port resolution for protocol schemes.
UserTokenHandler: A handler for determining if the given execution context is user specific or not.

Class Summary
ConnectExceptionSupport: Connect exception support methods.
HttpRoute: Connection route definition for HTTP requests.
RouteTracker: Helps tracking the steps in establishing a route.
SystemDefaultDnsResolver: DNS resolver that uses the default OS implementation for resolving host names.

Enum Summary
RouteInfo.LayerType: The layering type of a route.
RouteInfo.TunnelType: The tunnelling type of a route.

Exception Summary
CircularRedirectException: Signals a circular redirect
ClientProtocolException: Signals an error in the HTTP protocol.
ConnectTimeoutException: A timeout while connecting to an HTTP server or waiting for an available connection from a connection manager.
HttpHostConnectException: A `ConnectException` that specifies the `NamedEndpoint` that was being connected to.
HttpResponseException: Signals a non 2xx HTTP response.
RedirectException: Signals violation of HTTP specification caused by an invalid redirect
UnsupportedSchemeException: Signals failure to establish connection using an unknown protocol scheme.

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

Client component APIs common to all client transports such as connection route information and resolution as well as common HTTP method definitions and exception classes.