tango.net.cluster.tina.util.AbstractServer

License:

BSD style: see license.txt

Version:

Initial release: April 2004

Author:

Kris
class AbstractServer : IServer #
Exposes the foundation of a multi-threaded Socket server. This is subclassed by mango.net.http.server.HttpServer, which itself would likely be subclassed by a SecureHttpServer.
this(InternetAddress bind, int threads, int backlog, Logger logger) #
Setup this server with the requisite attributes. The number of threads specified dictate exactly that. You might have anything between 1 thread and several hundred, dependent upon the underlying O/S and hardware.
Parameter 'backlog' specifies the max number of"simultaneous" connection requests to be handled by an underlying socket implementation.
char[] toString() [abstract] #
Concrete server must expose a name
ServerSocket createSocket(InternetAddress bind, int backlog, bool reuse = false) [protected, abstract] #
Concrete server must expose a ServerSocket factory
void createThread(ServerSocket socket) [protected, abstract] #
Concrete server must expose a thread factory
void service(SocketConduit conduit) [abstract] #
Concrete server must expose a service handler
IPv4Address remoteAddress(IConduit conduit) #
Provide support for figuring out the remote address
IPv4Address localAddress() #
Provide support for figuring out the remote address
char[] getRemoteAddress(IConduit conduit) #
Provide support for figuring out the remote address
char[] getRemoteHost(IConduit conduit) #
Provide support for figuring out the remote host. Not currently implemented.
int getPort() #
Return the local port we're attached to
char[] getHost() #
Return the local address we're attached to
Logger getLogger() #
Return the logger associated with this server
void start(bool reuse = false) #
Start this server