Inheritance diagram for CacheServer:
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 |
|
Definition at line 300 of file ClusterServer.d. |
|
Return the protocol in use. Reimplemented from IServer. Definition at line 312 of file ClusterServer.d. Referenced by toString(). |
|
Return a text string identifying this server Implements AbstractServer. Definition at line 323 of file ClusterServer.d. References getProtocol(). |
|
Create a ServerSocket instance. Implements AbstractServer. Definition at line 334 of file ClusterServer.d. References ServerSocket. |
|
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. |
|
Factory method for servicing a request. Reimplemented from AbstractServer. Definition at line 358 of file ClusterServer.d. References CacheServer::LoaderThread::load(). |
|
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. |
|
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(). |
|
Provide support for figuring out the remote host. Not currently implemented. Reimplemented from IServer. Definition at line 155 of file AbstractServer.d. |
|
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. |
|
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(). |
|
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(). |
|
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(). |
|
Definition at line 294 of file ClusterServer.d. Referenced by createThread(), and this(). |