Interface ClientConnectionOperator

All Known Implementing Classes:
DefaultClientConnectionOperator

public interface ClientConnectionOperator
Interface for opening connections. This interface encapsulates the logic to create sockets and to open or update the connection with the new socket. Implementations will most likely make use of socket factories.
The methods in this interface allow the creation of plain and layered sockets. Creating a tunnelled connection through a proxy, however, is not within the scope of the operator.
Since:
4.0
Version:
$Revision: 645850 $ $Date: 2008-04-08 04:08:52 -0700 (Tue, 08 Apr 2008) $
Author:
Roland Weber
  • Method Details

    • createConnection

      OperatedClientConnection createConnection()
      Creates a new connection that can be operated.
      Returns:
      a new, unopened connection for use with this operator
    • openConnection

      void openConnection​(OperatedClientConnection conn, HttpHost target, InetAddress local, HttpContext context, HttpParams params) throws IOException
      Opens a connection to the given target host.
      Parameters:
      conn - the connection to open
      target - the target host to connect to
      local - the local address to route from, or null for the default
      context - the context for the connection
      params - the parameters for the connection
      Throws:
      IOException - in case of a problem
    • updateSecureConnection

      void updateSecureConnection​(OperatedClientConnection conn, HttpHost target, HttpContext context, HttpParams params) throws IOException
      Updates a connection with a layered secure connection. The typical use of this method is to update a tunnelled plain connection (HTTP) to a secure TLS/SSL connection (HTTPS).
      Parameters:
      conn - the open connection to update
      target - the target host for the updated connection. The connection must already be open or tunnelled to the host and port, but the scheme of the target will be used to create a layered connection.
      context - the context for the connection
      params - the parameters for the updated connection
      Throws:
      IOException - in case of a problem