org.apache.tomcat.util.net
Class ServerSocketFactory
java.lang.Object
|
+--org.apache.tomcat.util.net.ServerSocketFactory
- All Implemented Interfaces:
- java.lang.Cloneable
- Direct Known Subclasses:
- SSLSocketFactory
- public abstract class ServerSocketFactory
- extends java.lang.Object
- implements java.lang.Cloneable
This class creates server sockets. It may be subclassed by other
factories, which create particular types of server sockets. This
provides a general framework for the addition of public socket-level
functionality. It it is the server side analogue of a socket factory,
and similarly provides a way to capture a variety of policies related
to the sockets being constructed.
Like socket factories, Server Socket factory instances have two
categories of methods. First are methods used to create sockets.
Second are methods which set properties used in the production of
sockets, such as networking options. There is also an environment
specific default server socket factory; frameworks will often use
their own customized factory.
It may be desirable to move this interface into the
java.net package, so that is not an extension but the preferred
interface. Should this be serializable, making it a JavaBean which can
be saved along with its networking configuration?
- Author:
- db@eng.sun.com, Harish Prabandham
Field Summary |
protected java.util.Hashtable |
attributes
|
Method Summary |
abstract java.net.ServerSocket |
createSocket(int port)
Returns a server socket which uses all network interfaces on
the host, and is bound to a the specified port. |
abstract java.net.ServerSocket |
createSocket(int port,
int backlog)
Returns a server socket which uses all network interfaces on
the host, is bound to a the specified port, and uses the
specified connection backlog. |
abstract java.net.ServerSocket |
createSocket(int port,
int backlog,
java.net.InetAddress ifAddress)
Returns a server socket which uses only the specified network
interface on the local host, is bound to a the specified port,
and uses the specified connection backlog. |
static ServerSocketFactory |
getDefault()
Returns a copy of the environment's default socket factory. |
void |
initSocket(java.net.Socket s)
|
void |
setAttribute(java.lang.String name,
java.lang.Object value)
General mechanism to pass attributes from the
ServerConnector to the socket factory. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
attributes
protected java.util.Hashtable attributes
ServerSocketFactory
protected ServerSocketFactory()
- Constructor is used only by subclasses.
setAttribute
public void setAttribute(java.lang.String name,
java.lang.Object value)
- General mechanism to pass attributes from the
ServerConnector to the socket factory.
Note that the "prefered" mechanism is to
use bean setters and explicit methods, but
this allows easy configuration via server.xml
or simple Properties
getDefault
public static ServerSocketFactory getDefault()
- Returns a copy of the environment's default socket factory.
createSocket
public abstract java.net.ServerSocket createSocket(int port)
throws java.io.IOException,
java.lang.InstantiationException
- Returns a server socket which uses all network interfaces on
the host, and is bound to a the specified port. The socket is
configured with the socket options (such as accept timeout)
given to this factory.
- Parameters:
port
- the port to listen to- Throws:
java.io.IOException
- for networking errorsjava.lang.InstantiationException
- for construction errors
createSocket
public abstract java.net.ServerSocket createSocket(int port,
int backlog)
throws java.io.IOException,
java.lang.InstantiationException
- Returns a server socket which uses all network interfaces on
the host, is bound to a the specified port, and uses the
specified connection backlog. The socket is configured with
the socket options (such as accept timeout) given to this factory.
- Parameters:
port
- the port to listen tobacklog
- how many connections are queued- Throws:
java.io.IOException
- for networking errorsjava.lang.InstantiationException
- for construction errors
createSocket
public abstract java.net.ServerSocket createSocket(int port,
int backlog,
java.net.InetAddress ifAddress)
throws java.io.IOException,
java.lang.InstantiationException
- Returns a server socket which uses only the specified network
interface on the local host, is bound to a the specified port,
and uses the specified connection backlog. The socket is configured
with the socket options (such as accept timeout) given to this factory.
- Parameters:
port
- the port to listen tobacklog
- how many connections are queuedifAddress
- the network interface address to use- Throws:
java.io.IOException
- for networking errorsjava.lang.InstantiationException
- for construction errors
initSocket
public void initSocket(java.net.Socket s)
Copyright ?? 2001 Apache Software Foundation. All Rights Reserved.