public abstract class SocketFactory
extends java.lang.Object
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:
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.
| Modifier | Constructor and Description |
|---|---|
protected |
SocketFactory()
Creates a
SocketFactory. |
| Modifier and Type | Method and Description |
|---|---|
Socket |
createSocket()
Creates an unconnected socket.
|
abstract Socket |
createSocket(InetAddress host,
int port)
Creates a socket and connects it to the specified port number at the specified address.
|
abstract Socket |
createSocket(InetAddress address,
int port,
InetAddress localAddress,
int localPort)
Creates a socket and connect it to the specified remote address on the specified remote port.
|
abstract Socket |
createSocket(java.lang.String host,
int port)
Creates a socket and connects it to the specified remote host at the specified remote port.
|
abstract Socket |
createSocket(java.lang.String host,
int port,
InetAddress localHost,
int localPort)
Creates a socket and connects it to the specified remote host on the specified remote port.
|
static SocketFactory |
getDefault()
Returns a copy of the environment's default socket factory.
|
public static SocketFactory getDefault()
SocketFactorypublic Socket createSocket() throws java.io.IOException
java.io.IOException - if the socket cannot be createdSocket.connect(java.net.SocketAddress),
Socket.connect(java.net.SocketAddress, int),
Socket.Socket()public abstract Socket createSocket(@Nullable java.lang.String host, int port) throws java.io.IOException, UnknownHostException
If there is a security manager, its checkConnect method is called with the host address and
port as its arguments. This could result in a SecurityException.
host - the server host name with which to connect, or null for the loopback address.port - the server portSocketjava.io.IOException - if an I/O error occurs when creating the socketjava.lang.SecurityException - if a security manager exists and its checkConnect method doesn't allow the operation.UnknownHostException - if the host is not knownjava.lang.IllegalArgumentException - if the port parameter is outside the specified range of valid port values, which is between 0 and
65535, inclusive.Socket.Socket(String, int)public abstract Socket createSocket(@Nullable java.lang.String host, int port, InetAddress localHost, int localPort) throws java.io.IOException, UnknownHostException
If there is a security manager, its checkConnect method is called with the host address and
port as its arguments. This could result in a SecurityException.
host - the server host name with which to connect, or null for the loopback address.port - the server portlocalHost - the local address the socket is bound tolocalPort - the local port the socket is bound toSocketjava.io.IOException - if an I/O error occurs when creating the socketjava.lang.SecurityException - if a security manager exists and its checkConnect method doesn't allow the operation.UnknownHostException - if the host is not knownjava.lang.IllegalArgumentException - if the port parameter or localPort parameter is outside the specified range of valid port values,
which is between 0 and 65535, inclusive.Socket.Socket(String, int, java.net.InetAddress, int)public abstract Socket createSocket(InetAddress host, int port) throws java.io.IOException
If there is a security manager, its checkConnect method is called with the host address and
port as its arguments. This could result in a SecurityException.
host - the server hostport - the server portSocketjava.io.IOException - if an I/O error occurs when creating the socketjava.lang.SecurityException - if a security manager exists and its checkConnect method doesn't allow the operation.java.lang.IllegalArgumentException - if the port parameter is outside the specified range of valid port values, which is between 0 and
65535, inclusive.java.lang.NullPointerException - if host is null.Socket.Socket(java.net.InetAddress, int)public abstract Socket createSocket(InetAddress address, int port, InetAddress localAddress, int localPort) throws java.io.IOException
If there is a security manager, its checkConnect method is called with the host address and
port as its arguments. This could result in a SecurityException.
address - the server network addressport - the server portlocalAddress - the client network addresslocalPort - the client portSocketjava.io.IOException - if an I/O error occurs when creating the socketjava.lang.SecurityException - if a security manager exists and its checkConnect method doesn't allow the operation.java.lang.IllegalArgumentException - if the port parameter or localPort parameter is outside the specified range of valid port values,
which is between 0 and 65535, inclusive.java.lang.NullPointerException - if address is null.Socket.Socket(java.net.InetAddress, int, java.net.InetAddress, int)