org.mortbay.jetty.bio
Class SocketConnector
java.lang.Object
org.mortbay.component.AbstractLifeCycle
org.mortbay.jetty.AbstractBuffers
org.mortbay.jetty.AbstractConnector
org.mortbay.jetty.bio.SocketConnector
- All Implemented Interfaces:
- LifeCycle, Buffers, Connector
- Direct Known Subclasses:
- SslSocketConnector
public class SocketConnector
- extends AbstractConnector
Socket Connector.
This connector implements a traditional blocking IO and threading model.
Normal JRE sockets are used and a thread is allocated per connection.
Buffers are managed so that large buffers are only allocated to active connections.
This Connector should only be used if NIO is not available.
- Author:
- gregw
Methods inherited from class org.mortbay.jetty.AbstractConnector |
configure, connectionClosed, connectionOpened, getAcceptors, getAcceptQueueSize, getConfidentialPort, getConfidentialScheme, getConnections, getConnectionsDurationAve, getConnectionsDurationMax, getConnectionsDurationMin, getConnectionsDurationTotal, getConnectionsOpen, getConnectionsOpenMax, getConnectionsOpenMin, getConnectionsRequestsAve, getConnectionsRequestsMax, getConnectionsRequestsMin, getHost, getIntegralPort, getIntegralScheme, getLowResourceMaxIdleTime, getMaxIdleTime, getName, getPort, getRequests, getResolveNames, getServer, getSoLingerTime, getStatsOn, getStatsOnMs, getThreadPool, isConfidential, isIntegral, join, newContinuation, persist, setAcceptors, setAcceptQueueSize, setConfidentialPort, setConfidentialScheme, setHost, setIntegralPort, setIntegralScheme, setLowResourceMaxIdleTime, setMaxIdleTime, setName, setPort, setResolveNames, setServer, setSoLingerTime, setStatsOn, setThreadPool, statsReset, stopAccept, toString |
_serverSocket
protected ServerSocket _serverSocket
_connections
protected Set _connections
SocketConnector
public SocketConnector()
- Constructor.
getConnection
public Object getConnection()
- Returns:
- the underlying socket, channel, buffer etc. for the connector.
open
public void open()
throws IOException
- Description copied from interface:
Connector
- Opens the connector
- Specified by:
open
in interface Connector
- Specified by:
open
in class AbstractConnector
- Throws:
IOException
newServerSocket
protected ServerSocket newServerSocket(String host,
int port,
int backlog)
throws IOException
- Throws:
IOException
close
public void close()
throws IOException
- Throws:
IOException
accept
public void accept(int acceptorID)
throws IOException,
InterruptedException
- Specified by:
accept
in class AbstractConnector
- Throws:
IOException
InterruptedException
newHttpConnection
protected HttpConnection newHttpConnection(EndPoint endpoint)
- Allows subclass to override Conection if required.
newBuffer
protected Buffer newBuffer(int size)
- Specified by:
newBuffer
in class AbstractBuffers
customize
public void customize(EndPoint endpoint,
Request request)
throws IOException
- Description copied from interface:
Connector
- Customize a request for an endpoint.
Called on every request to allow customization of the request for
the particular endpoint (eg security properties from a SSL connection).
- Specified by:
customize
in interface Connector
- Overrides:
customize
in class AbstractConnector
- Throws:
IOException
getLocalPort
public int getLocalPort()
- Returns:
- The actual port the connector is listening on or -1 if there
is no port or the connector is not open.
doStart
protected void doStart()
throws Exception
- Overrides:
doStart
in class AbstractConnector
- Throws:
Exception
doStop
protected void doStop()
throws Exception
- Overrides:
doStop
in class AbstractConnector
- Throws:
Exception