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

## javax.net
Class SocketFactory

    java.lang.Object
      |
      +--javax.net.SocketFactory

Direct Known Subclasses:
  SSLSocketFactory

public abstract class SocketFactory
extends Object

This class creates sockets. It may be subclassed by other factories, which create particular subclasses of sockets and thus provide a general framework for the addition of public socket-level functionality. This is done flexibly, without affecting JVM-wide security policy or involving an API targetted at C code (SocketImpl) for standard socket functionality.

Socket factories are a simple way to capture a variety of policies related to the sockets being constructed, producing such sockets in a way which does not require special configuration of the code which asks for the sockets: * Due to polymorphism of both factories and sockets, different kinds of sockets can be used by the same application code just by passing it different kinds of factories. * Factories can themselves be customized with parameters used in socket construction. So for example, factories could be customized to return sockets with different networking timeouts or security parameters already configured. * The sockets returned to the application can be subclasses of java.net.Socket, so that they can directly expose new APIs for features such as compression, security, record marking, statistics collection, or firewall tunneling.

Factory classes are specified by environment-specific configuration mechanisms. For example, the getDefault method could return a factory that was appropriate for a particular user or applet, and a framework could use a factory customized to its own purposes.

Constructor Summary
`protected` | `SocketFactory()` Constructor is used only by subclasses.

Method Summary
`abstract Socket` | `createSocket(InetAddress host, int port)` Returns a socket connected to a ServerSocket at the specified network address and port.
`abstract Socket` | `createSocket(InetAddress address, int port, InetAddress clientAddress, int clientPort)` Returns a socket connected to a ServerSocket at the specified network address and port.
`abstract Socket` | `createSocket(String host, int port)` Returns a socket connected to a ServerSocket on the named host, at the given port.
`abstract Socket` | `createSocket(String host, int port, InetAddress clientHost, int clientPort)` Returns a socket connected to a ServerSocket on the named host, at the given port.
`static SocketFactory` | `getDefault()` Returns a copy of the environment's default socket factory.

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

Constructor Detail

### SocketFactory

    protected SocketFactory()

  Constructor is used only by subclasses.

Method Detail

### getDefault

    public static SocketFactory getDefault()

  Returns a copy of the environment's default socket factory.

### createSocket

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

  Returns a socket connected to a ServerSocket on the named host, at the given port. This socket is configured using the socket options established for this factory.
  Parameters:
    `host` - the server host
    `port` - the server port

### createSocket

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

  Returns a socket connected to a ServerSocket on the named host, at the given port. The client address address is the specified host and port. This socket is configured using the socket options established for this factory.
  Parameters:
    `host` - the server host
    `port` - the server port
    `clientHost` - the client host
    `clientPort` - the client port

### createSocket

    public abstract Socket createSocket(InetAddress host,
                                        int port)
                                 throws IOException

  Returns a socket connected to a ServerSocket at the specified network address and port. This socket is configured using the socket options established for this factory.
  Parameters:
    `host` - the server host
    `port` - the server port

### createSocket

    public abstract Socket createSocket(InetAddress address,
                                        int port,
                                        InetAddress clientAddress,
                                        int clientPort)
                                 throws IOException

  Returns a socket connected to a ServerSocket at the specified network address and port. The client is bound to the specified network address and port, and the socket is configured using the socket options established for this factory.
  Parameters:
    `address` - the server network address
    `port` - the server port
    `clientAddress` - the client network address
    `clientPort` - the client port

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