Main Page | Class Hierarchy | Alphabetical List | Class List | 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

Member Function Documentation

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

Definition at line 297 of file ClusterServer.d.

References cs.

char [] getProtocol  )  [inline]
 

Return the protocol in use.

Reimplemented from IServer.

Definition at line 309 of file ClusterServer.d.

Referenced by toString().

char [] toString  )  [inline, virtual]
 

Return a text string identifying this server

Implements AbstractServer.

Definition at line 320 of file ClusterServer.d.

References getProtocol().

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

Create a ServerSocket instance.

Implements AbstractServer.

Definition at line 331 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 344 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 355 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 81 of file AbstractServer.d.

References AbstractServer::backlog, AbstractServer::bind, and AbstractServer::threads.

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

Provide support for figuring out the remote address

Reimplemented from IServer.

Definition at line 134 of file AbstractServer.d.

References 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 151 of file AbstractServer.d.

int getPort  )  [inline, inherited]
 

Return the local port we're attached to

Reimplemented from IServer.

Definition at line 162 of file AbstractServer.d.

References InternetAddress::port().

char [] getHost  )  [inline, inherited]
 

Return the local address we're attached to

Reimplemented from IServer.

Definition at line 174 of file AbstractServer.d.

References InternetAddress::toAddrString().

ILogger getLogger  )  [inline, inherited]
 

Return the logger associated with this server

Definition at line 186 of file AbstractServer.d.

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

void start  )  [inline, inherited]
 

Start this server

Reimplemented in ClusterServer.

Definition at line 197 of file AbstractServer.d.

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

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


Member Data Documentation

ClusterServer cs [private]
 

Definition at line 291 of file ClusterServer.d.

Referenced by createThread(), and this().


The documentation for this class was generated from the following file:
Generated on Sun Nov 7 19:07:00 2004 for Mango by doxygen 1.3.6