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()
SocketFactory
public 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 portSocket
java.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 toSocket
java.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 portSocket
java.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 portSocket
java.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)