|
||||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
Interface Summary | |
---|---|
ClientConnectionManager | Management interface for client connections . |
ClientConnectionManagerFactory | |
ClientConnectionOperator | Interface for opening connections . |
ConnectionReleaseTrigger | Interface for releasing a connection. |
EofSensorWatcher | A watcher for EofSensorInputStream . |
ManagedClientConnection | A client-side connection with advanced connection logic. |
OperatedClientConnection | A client-side connection that needs to be operated. |
SecureSocketFactory | A SocketFactory for secure sockets (SSL/TLS). |
SocketFactory | A factory for creating and connecting sockets. |
Class Summary | |
---|---|
BasicEofSensorWatcher | Basic implementation of EofSensorWatcher . |
BasicManagedEntity | An entity that releases a connection . |
EofSensorInputStream | A stream wrapper that triggers actions on close() and EOF. |
HostConfiguration | Provides configuration data for connecting to a host. |
HttpRoute | The route for a request. |
PlainSocketFactory | The default class for creating sockets. |
RouteDirector | Provides directions on establishing a route. |
RouteTracker | Helps tracking the steps in establishing a route. |
Scheme | Encapsulates specifics of a protocol scheme such as "http" or "https". |
SchemeRegistry | A set of supported protocol schemes . |
Exception Summary | |
---|---|
ConnectionPoolTimeoutException | A timeout while waiting for an available connection from a connection manager. |
ConnectTimeoutException | A timeout while connecting to an HTTP server or waiting for an available connection from an HttpConnectionManager. |
The client-side connection management and handling API at the heart of what is referred to as HttpConn. This component provides interfaces and implementations for opening and managing connections as well as for handling routes from the client machine to a target HTTP server.
The lowest layer of connection handling is comprised of
OperatedClientConnection
and
ClientConnectionOperator
.
The connection interface extends the core
HttpClientConnection
by operations to set and update a socket.
An operator encapsulates the logic to open and layer sockets,
typically using a SocketFactory
.
The socket factory for a protocol
Scheme
such as "http" or "https" can be looked up in a
SchemeRegistry
.
Applications without a need for sophisticated connection management
can use this layer directly.
On top of that lies the connection management layer. A
ClientConnectionManager
internally manages operated connections, but hands out instances of
ManagedClientConnection
.
This interface abstracts from the underlying socket operations and
provides convenient methods for opening and updating sockets in order
to establish a route
.
The operator is encapsulated by the connection manager and called
automatically.
Connections obtained from a manager have to be returned after use.
This can be triggered
on various levels, either by releasing the
connection
directly, or by calling a method on an
entity
received from the connection, or by closing the
stream
from which that entity is being read.
Connection managers will try to keep returned connections alive in
order to re-use them for subsequent requests along the same route.
The managed connection interface and all triggers for connection release
provide methods to enable or disable this behavior.
An HttpRoute
is the path along which a request has to be sent to the server.
The route starts at a local network address and may pass
through a proxy before reaching the target. Routes through a
proxy can be tunnelled, and a secure protocol (TLS/SSL)
might be put on top of the tunnel.
The RouteTracker
helps in tracking the steps for establishing a route, while a
RouteDirector
determines the next step to take.
|
||||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |