Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.httpclient.protocol
Class SSLProtocolSocketFactory

    java.lang.Object
      org.apache.commons.httpclient.protocol.SSLProtocolSocketFactory

All Implemented Interfaces:
  ProtocolSocketFactory, SecureProtocolSocketFactory

    public class SSLProtocolSocketFactory

extends Object
implements SecureProtocolSocketFactory

A SecureProtocolSocketFactory that uses JSSE to create sockets.

Since:
  2.0
Author:
  Michael Becke, Mike Bowler

Constructor Summary
`SSLProtocolSocketFactory()` Constructor for SSLProtocolSocketFactory.

Method Summary
`Socket` | `createSocket(Socket socket, String host, int port, boolean autoClose)` Returns a socket connected to the given host that is layered over an existing socket.
`Socket` | `createSocket(String host, int port)` Gets a new socket connection to the given host.
`Socket` | `createSocket(String host, int port, InetAddress clientHost, int clientPort)` Gets a new socket connection to the given host.
`Socket` | `createSocket(String host, int port, InetAddress localAddress, int localPort, HttpConnectionParams params)` Attempts to get a new socket connection to the given host within the given time limit.
`boolean` | `equals(Object obj)` All instances of SSLProtocolSocketFactory are the same.
`int` | `hashCode()` All instances of SSLProtocolSocketFactory have the same hash code.

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SSLProtocolSocketFactory

    public SSLProtocolSocketFactory()

  Constructor for SSLProtocolSocketFactory.

Method Detail

### createSocket

    public Socket createSocket(String host,
                               int port,
                               InetAddress clientHost,
                               int clientPort)
                        throws IOException,
                               UnknownHostException

  Description copied from interface: `ProtocolSocketFactory`
  Gets a new socket connection to the given host.

  Specified by:
    `createSocket` in interface `ProtocolSocketFactory`
  Parameters:
    `host` - the host name/IP
    `port` - the port on the host
    `clientHost` - the local host name/IP to bind the socket to
    `clientPort` - the port on the local machine
  Returns:
    Socket a new socket
  Throws:
    `IOException` - if an I/O error occurs while creating the socket
    `UnknownHostException` - if the IP address of the host cannot be determined
  See Also:
    `ProtocolSocketFactory.createSocket(java.lang.String,int,java.net.InetAddress,int)`

### createSocket

    public Socket createSocket(String host,
                               int port,
                               InetAddress localAddress,
                               int localPort,
                               HttpConnectionParams params)
                        throws IOException,
                               UnknownHostException,
                               ConnectTimeoutException

  Attempts to get a new socket connection to the given host within the given time limit.

  This method employs several techniques to circumvent the limitations of older JREs that do not support connect timeout. When running in JRE 1.4 or above reflection is used to call Socket#connect(SocketAddress endpoint, int timeout) method. When executing in older JREs a controller thread is executed. The controller thread attempts to create a new socket within the given limit of time. If socket constructor does not return until the timeout expires, the controller terminates and throws an `ConnectTimeoutException`

  Specified by:
    `createSocket` in interface `ProtocolSocketFactory`
  Parameters:
    `host` - the host name/IP
    `port` - the port on the host
    `localAddress` - the local host name/IP to bind the socket to
    `localPort` - the port on the local machine
    `params` - `Http connection parameters`
  Returns:
    Socket a new socket
  Throws:
    `IOException` - if an I/O error occurs while creating the socket
    `UnknownHostException` - if the IP address of the host cannot be determined
    `ConnectTimeoutException` - if socket cannot be connected within the given time limit
  Since:
    3.0

### createSocket

    public Socket createSocket(String host,
                               int port)
                        throws IOException,
                               UnknownHostException

  Description copied from interface: `ProtocolSocketFactory`
  Gets a new socket connection to the given host.

  Specified by:
    `createSocket` in interface `ProtocolSocketFactory`
  Parameters:
    `host` - the host name/IP
    `port` - the port on the host
  Returns:
    Socket a new socket
  Throws:
    `IOException` - if an I/O error occurs while creating the socket
    `UnknownHostException` - if the IP address of the host cannot be determined
  See Also:
    `ProtocolSocketFactory.createSocket(java.lang.String,int)`

### createSocket

    public Socket createSocket(Socket socket,
                               String host,
                               int port,
                               boolean autoClose)
                        throws IOException,
                               UnknownHostException

  Description copied from interface: `SecureProtocolSocketFactory`
  Returns a socket connected to the given host that is layered over an existing socket. Used primarily for creating secure sockets through proxies.

  Specified by:
    `createSocket` in interface `SecureProtocolSocketFactory`
  Parameters:
    `socket` - the existing socket
    `host` - the host name/IP
    `port` - the port on the host
    `autoClose` - a flag for closing the underling socket when the created socket is closed
  Returns:
    Socket a new socket
  Throws:
    `IOException` - if an I/O error occurs while creating the socket
    `UnknownHostException` - if the IP address of the host cannot be determined
  See Also:
    `SecureProtocolSocketFactory.createSocket(java.net.Socket,java.lang.String,int,boolean)`

### equals

    public boolean equals(Object obj)

  All instances of SSLProtocolSocketFactory are the same.

  Overrides:
    `equals` in class `Object`

### hashCode

    public int hashCode()

  All instances of SSLProtocolSocketFactory have the same hash code.

  Overrides:
    `hashCode` in class `Object`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2007 Apache Software Foundation. All Rights Reserved.