Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

CacheServer Class Reference

Inheritance diagram for CacheServer:

AbstractServer List of all members.

Public Member Functions

 this (ClusterServer cs, InternetAddress bind, int threads, ILogger logger=null)
char[] getProtocol ()
char[] toString ()
ServerSocket createSocket (InternetAddress bind, int backlog)
ServerThread createThread (ServerSocket socket)
void service (ServerThread st, IConduit conduit)

Private Member Functions

 this (InternetAddress bind, int threads, int backlog, ILogger logger=null)
char[] getRemoteAddress (IConduit conduit)
char[] getRemoteHost (IConduit conduit)
int getPort ()
char[] getHost ()
ILogger getLogger ()
void start ()

Private Attributes

ClusterServer cs

Classes

class  LoaderThread

Member Function Documentation

this ClusterServer  cs,
InternetAddress  bind,
int  threads,
ILogger  logger = null
[inline]
 

Definition at line 300 of file ClusterServer.d.

References cs, and logger.

char [] getProtocol  )  [inline]
 

Return the protocol in use.

Reimplemented from IServer.

Definition at line 312 of file ClusterServer.d.

Referenced by toString().

char [] toString  )  [inline, virtual]
 

Return a text string identifying this server

Implements AbstractServer.

Definition at line 323 of file ClusterServer.d.

References getProtocol().

ServerSocket createSocket InternetAddress  bind,
int  backlog
[inline, virtual]
 

Create a ServerSocket instance.

Implements AbstractServer.

Definition at line 334 of file ClusterServer.d.

References ServerSocket.

ServerThread createThread ServerSocket  socket  )  [inline, virtual]
 

Create a ServerThread instance. This can be overridden to create other thread-types, perhaps with additional thread- level data attached.

Implements AbstractServer.

Definition at line 347 of file ClusterServer.d.

References cs.

void service ServerThread  st,
IConduit  conduit
[inline]
 

Factory method for servicing a request.

Reimplemented from AbstractServer.

Definition at line 358 of file ClusterServer.d.

References CacheServer::LoaderThread::load().

this InternetAddress  bind,
int  threads,
int  backlog,
ILogger  logger = null
[inline, inherited]
 

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.

Definition at line 85 of file AbstractServer.d.

References assert(), AbstractServer::backlog, AbstractServer::bind, AbstractServer::logger, and AbstractServer::threads.

char [] getRemoteAddress IConduit  conduit  )  [inline, inherited]
 

Provide support for figuring out the remote address

Reimplemented from IServer.

Definition at line 138 of file AbstractServer.d.

References AbstractServer::socket, and InternetAddress::toAddrString().

char [] getRemoteHost IConduit  conduit  )  [inline, inherited]
 

Provide support for figuring out the remote host. Not currently implemented.

Reimplemented from IServer.

Definition at line 155 of file AbstractServer.d.

int getPort  )  [inline, inherited]
 

Return the local port we're attached to

Reimplemented from IServer.

Definition at line 166 of file AbstractServer.d.

References InternetAddress::port(), and AbstractServer::socket.

char [] getHost  )  [inline, inherited]
 

Return the local address we're attached to

Reimplemented from IServer.

Definition at line 178 of file AbstractServer.d.

References AbstractServer::socket, and InternetAddress::toAddrString().

ILogger getLogger  )  [inline, inherited]
 

Return the logger associated with this server

Definition at line 190 of file AbstractServer.d.

References AbstractServer::logger.

Referenced by ServerThread::run(), CacheServer::LoaderThread::this(), and ClusterServer::this().

void start  )  [inline, inherited]
 

Start this server

Reimplemented in ClusterServer.

Definition at line 201 of file AbstractServer.d.

References AbstractServer::backlog, AbstractServer::bind, AbstractServer::createSocket(), AbstractServer::createThread(), ILogger::info(), AbstractServer::logger, AbstractServer::socket, AbstractServer::threads, and AbstractServer::toString().

Referenced by TaskServer::start(), ClusterServer::start(), and testServer().


Member Data Documentation

ClusterServer cs [private]
 

Definition at line 294 of file ClusterServer.d.

Referenced by createThread(), and this().


The documentation for this class was generated from the following file:
Generated on Fri May 27 18:11:59 2005 for Mango by  doxygen 1.4.0