org.apache.tomcat.util.net

Class PoolTcpEndpoint


public class PoolTcpEndpoint
extends java.lang.Object

Handle incoming TCP connections. This class implement a simple server model: one listener thread accepts on a socket and creates a new worker thread for each incoming connection. More advanced Endpoints will reuse the threads, use queues, etc.

Authors:
James Duncan Davidson [duncan@eng.sun.com]
Jason Hunter [jch@eng.sun.com]
James Todd [gonzo@eng.sun.com]
Costin@eng.sun.com
Gal Shachor [shachor@il.ibm.com]
Yoav Shapira

Field Summary

protected int
linger
protected int
socketTimeout
protected boolean
tcpNoDelay

Constructor Summary

PoolTcpEndpoint()
PoolTcpEndpoint(ThreadPool tp)

Method Summary

protected void
closeServerSocket()
InetAddress
getAddress()
int
getBacklog()
TcpConnectionHandler
getConnectionHandler()
int
getMaxSpareThreads()
int
getMaxThreads()
int
getMinSpareThreads()
int
getPort()
int
getServerSoTimeout()
int
getSoLinger()
int
getSoTimeout()
boolean
getTcpNoDelay()
int
getThreadPriority()
void
initEndpoint()
boolean
isPaused()
boolean
isPoolOn()
boolean
isRunning()
void
log(String msg)
Deprecated.
void
log(String msg, Throwable t)
Deprecated.
void
log(String msg, Throwable t, int level)
Deprecated.
void
log(String msg, int level)
Deprecated.
void
pauseEndpoint()
void
resumeEndpoint()
void
setAddress(InetAddress inet)
void
setBacklog(int backlog)
Allows the server developer to specify the backlog that should be used for server sockets.
void
setConnectionHandler(TcpConnectionHandler handler)
void
setMaxSpareThreads(int maxThreads)
void
setMaxThreads(int maxThreads)
void
setMinSpareThreads(int minThreads)
void
setPoolOn(boolean isPool)
void
setPort(int port)
void
setServerSoTimeout(int i)
void
setServerSocket(ServerSocket ss)
void
setServerSocketFactory(ServerSocketFactory factory)
void
setServerTimeout(int timeout)
Sets the timeout in ms of the server sockets created by this server.
void
setSoLinger(int i)
void
setSoTimeout(int i)
void
setTcpNoDelay(boolean b)
void
setThreadPriority(int threadPriority)
void
startEndpoint()
void
stopEndpoint()
protected void
unlockAccept()

Field Details

linger

protected int linger


socketTimeout

protected int socketTimeout


tcpNoDelay

protected boolean tcpNoDelay

Constructor Details

PoolTcpEndpoint

public PoolTcpEndpoint()


PoolTcpEndpoint

public PoolTcpEndpoint(ThreadPool tp)

Method Details

closeServerSocket

protected void closeServerSocket()


getAddress

public InetAddress getAddress()


getBacklog

public int getBacklog()


getConnectionHandler

public TcpConnectionHandler getConnectionHandler()


getMaxSpareThreads

public int getMaxSpareThreads()


getMaxThreads

public int getMaxThreads()


getMinSpareThreads

public int getMinSpareThreads()


getPort

public int getPort()


getServerSoTimeout

public int getServerSoTimeout()


getSoLinger

public int getSoLinger()


getSoTimeout

public int getSoTimeout()


getTcpNoDelay

public boolean getTcpNoDelay()


getThreadPriority

public int getThreadPriority()


initEndpoint

public void initEndpoint()
            throws IOException,
                   InstantiationException


isPaused

public boolean isPaused()


isPoolOn

public boolean isPoolOn()


isRunning

public boolean isRunning()


log

public void log(String msg)

Deprecated.


log

public void log(String msg,
                Throwable t)

Deprecated.


log

public void log(String msg,
                Throwable t,
                int level)

Deprecated.


log

public void log(String msg,
                int level)

Deprecated.


pauseEndpoint

public void pauseEndpoint()


resumeEndpoint

public void resumeEndpoint()


setAddress

public void setAddress(InetAddress inet)


setBacklog

public void setBacklog(int backlog)
Allows the server developer to specify the backlog that should be used for server sockets. By default, this value is 100.


setConnectionHandler

public void setConnectionHandler(TcpConnectionHandler handler)


setMaxSpareThreads

public void setMaxSpareThreads(int maxThreads)


setMaxThreads

public void setMaxThreads(int maxThreads)


setMinSpareThreads

public void setMinSpareThreads(int minThreads)


setPoolOn

public void setPoolOn(boolean isPool)


setPort

public void setPort(int port)


setServerSoTimeout

public void setServerSoTimeout(int i)


setServerSocket

public void setServerSocket(ServerSocket ss)


setServerSocketFactory

public void setServerSocketFactory(ServerSocketFactory factory)


setServerTimeout

public void setServerTimeout(int timeout)
Sets the timeout in ms of the server sockets created by this server. This method allows the developer to make servers more or less responsive to having their server sockets shut down.

By default this value is 1000ms.


setSoLinger

public void setSoLinger(int i)


setSoTimeout

public void setSoTimeout(int i)


setTcpNoDelay

public void setTcpNoDelay(boolean b)


setThreadPriority

public void setThreadPriority(int threadPriority)


startEndpoint

public void startEndpoint()
            throws IOException,
                   InstantiationException


stopEndpoint

public void stopEndpoint()


unlockAccept

protected void unlockAccept()


Copyright B) 2000-2003 Apache Software Foundation. All Rights Reserved.