DServerAgent Class Reference
[Core]

#include <DServerAgent.h>

Inherits MicoleAgentThread.

Collaboration diagram for DServerAgent:

Collaboration graph
[legend]
List of all members.

Detailed Description

Dedicated server agent class.

this class provide a dedicated connection beetween a client and the server.

See also:
ServerAgent

Definition at line 65 of file DServerAgent.h.

Public Member Functions

 DServerAgent (SOCKET sock, ServerAgent *srv)
 default constructor do not call it by yourself
 ~DServerAgent ()
 default destructor
virtual void run ()
 thread main loop
void sendOnNetwork (string s)
 send information throught the network do not use it by yourself
AgentState getState ()
virtual void start ()
 start the thread
string getAgentName ()
string getAgentType ()
void onApplicationConnected (MicoleBus *app)
void onApplicationDisconnected (MicoleBus *app)
void handlePingMessage (MicoleBus *app, int argc, const char **argv)
void handleQuitMessage (MicoleBus *app, int argc, const char **argv)
void handleSuspendMessage (MicoleBus *app, int argc, const char **argv)
void handleResumeMessage (MicoleBus *app, int argc, const char **argv)
void handleRegisterReply (MicoleBus *app, int argc, const char **argv)
void handleStartMessage (MicoleBus *app, int argc, const char **argv)
void handlePrintIDMessage (MicoleBus *app, int argc, const char **argv)
int sendMessage (const char *message)
 Sends a message using bus->SendMsg.
int sendMessage (const string message)
 Sends a message using bus->SendMsg.
void sendMessage (const char *to, const char *message)
 Sends a message to the MicoleBus *app by calling app->SendMsg(const char *message) The message goes only to agent specified by const char *to.

Static Public Member Functions

static threadid getthreadid ()
 return thread identifier
static void sleep (long milliseconds=1)
 sleep the thread

Protected Member Functions

virtual void prepareToStop (int argc, const char **argv)
 callback when thread is prepared to be stopped
virtual void prepareToSuspend (int argc, const char **argv)
 callback when thread is prepared to be suspended
void suspendAgent ()
 Suspends the agent.
void resumeAgent ()
 Resumes the agent.
virtual void stopAgent ()
 Gives inheriting class a chance to save state when the agent receives Quit-message.
int bindMessage (const char *regexp, MicoleCallback *cb)
 Binds a callback method to bus.
void unBindMessage (int messageId)
void unBindMessage (MicoleBinding &binding)
void obtainIdentifier ()
 Obtains identifier from the RegistryAgent.

Protected Attributes

vector< MicoleBindingbindings
AgentState state
int resumeId

Static Protected Attributes

static MicoleBusbus = 0


Constructor & Destructor Documentation

DServerAgent::DServerAgent ( SOCKET  sock,
ServerAgent srv 
)

default constructor do not call it by yourself

Definition at line 29 of file DServerAgent.cpp.

DServerAgent::~DServerAgent (  ) 

default destructor

Definition at line 38 of file DServerAgent.cpp.


Member Function Documentation

int MicoleAgent::bindMessage ( const char *  regexp,
MicoleCallback cb 
) [protected, inherited]

Binds a callback method to bus.

When a message that satisfies condition given in *regexp is received, the call back method is called by the bus. Methods that are bound with this message are not called when the agent is SUSPENDED. Methods that are bound using bus->BindMsg() are called also when the agent's state is SUSPENDED.

Definition at line 88 of file MicoleAgent.cpp.

string MicoleAgent::getAgentName (  )  [inherited]

Definition at line 62 of file MicoleAgent.cpp.

string MicoleAgent::getAgentType (  )  [inherited]

Definition at line 67 of file MicoleAgent.cpp.

AgentState MicoleAgentThread::getState (  )  [inherited]

Definition at line 39 of file MicoleAgentThread.cpp.

static threadid lo2k::Thread::getthreadid (  )  [inline, static, inherited]

return thread identifier

Returns:
identifier

Definition at line 85 of file Lo2kThread.h.

void MicoleAgent::handlePingMessage ( MicoleBus app,
int  argc,
const char **  argv 
) [inherited]

Definition at line 130 of file MicoleAgent.cpp.

void MicoleAgent::handlePrintIDMessage ( MicoleBus app,
int  argc,
const char **  argv 
) [inherited]

Definition at line 180 of file MicoleAgent.cpp.

void MicoleAgent::handleQuitMessage ( MicoleBus app,
int  argc,
const char **  argv 
) [inherited]

Reimplemented in RegistryAgent, and SoundPlayerAgent.

Definition at line 111 of file MicoleAgent.cpp.

void MicoleAgent::handleRegisterReply ( MicoleBus app,
int  argc,
const char **  argv 
) [inherited]

Definition at line 138 of file MicoleAgent.cpp.

void MicoleAgent::handleResumeMessage ( MicoleBus app,
int  argc,
const char **  argv 
) [inherited]

Definition at line 105 of file MicoleAgent.cpp.

void MicoleAgent::handleStartMessage ( MicoleBus app,
int  argc,
const char **  argv 
) [inherited]

Definition at line 175 of file MicoleAgent.cpp.

void MicoleAgent::handleSuspendMessage ( MicoleBus app,
int  argc,
const char **  argv 
) [inherited]

Definition at line 99 of file MicoleAgent.cpp.

void MicoleAgent::obtainIdentifier (  )  [protected, inherited]

Obtains identifier from the RegistryAgent.

Definition at line 185 of file MicoleAgent.cpp.

void MicoleAgent::onApplicationConnected ( MicoleBus app  )  [inherited]

void MicoleAgent::onApplicationDisconnected ( MicoleBus app  )  [inherited]

void DServerAgent::prepareToStop ( int  argc,
const char **  argv 
) [protected, virtual]

callback when thread is prepared to be stopped

Definition at line 74 of file DServerAgent.cpp.

void DServerAgent::prepareToSuspend ( int  argc,
const char **  argv 
) [protected, virtual]

callback when thread is prepared to be suspended

Definition at line 78 of file DServerAgent.cpp.

void MicoleAgentThread::resumeAgent (  )  [protected, virtual, inherited]

Resumes the agent.

Re-binds all callback methods.

Reimplemented from MicoleAgent.

Definition at line 88 of file MicoleAgentThread.cpp.

void DServerAgent::run (  )  [virtual]

thread main loop

Implements MicoleAgentThread.

Definition at line 41 of file DServerAgent.cpp.

void MicoleAgent::sendMessage ( const char *  to,
const char *  message 
) [inherited]

Sends a message to the MicoleBus *app by calling app->SendMsg(const char *message) The message goes only to agent specified by const char *to.

The receiving agent must have appropriate regexp bound to process the message.

int MicoleAgent::sendMessage ( const string  message  )  [inherited]

Sends a message using bus->SendMsg.

The message goes to all agents.

Definition at line 79 of file MicoleAgent.cpp.

int MicoleAgent::sendMessage ( const char *  message  )  [inherited]

Sends a message using bus->SendMsg.

The message goes to all agents.

Definition at line 72 of file MicoleAgent.cpp.

void DServerAgent::sendOnNetwork ( string  s  ) 

send information throught the network do not use it by yourself

Parameters:
s message to send through the network

Definition at line 66 of file DServerAgent.cpp.

static void lo2k::Thread::sleep ( long  milliseconds = 1  )  [inline, static, inherited]

sleep the thread

Parameters:
milliseconds milliseconds

Definition at line 98 of file Lo2kThread.h.

void MicoleAgentThread::start (  )  [virtual, inherited]

start the thread

Reimplemented from lo2k::Thread.

Definition at line 56 of file MicoleAgentThread.cpp.

void MicoleAgentThread::stopAgent (  )  [protected, virtual, inherited]

Gives inheriting class a chance to save state when the agent receives Quit-message.

Reimplemented from MicoleAgent.

Definition at line 102 of file MicoleAgentThread.cpp.

void MicoleAgentThread::suspendAgent (  )  [protected, virtual, inherited]

Suspends the agent.

Unbinds all callback methods that are bound using MicoleAgent::bindMessage()

Reimplemented from MicoleAgent.

Definition at line 77 of file MicoleAgentThread.cpp.

void MicoleAgent::unBindMessage ( MicoleBinding binding  )  [protected, inherited]

void MicoleAgent::unBindMessage ( int  messageId  )  [protected, inherited]


Member Data Documentation

vector<MicoleBinding> MicoleAgent::bindings [protected, inherited]

Definition at line 158 of file MicoleAgent.h.

MicoleBus * MicoleAgent::bus = 0 [static, protected, inherited]

Definition at line 156 of file MicoleAgent.h.

int MicoleAgent::resumeId [protected, inherited]

Definition at line 160 of file MicoleAgent.h.

AgentState MicoleAgent::state [protected, inherited]

Definition at line 159 of file MicoleAgent.h.


The documentation for this class was generated from the following files:
Generated on Tue Oct 16 17:10:52 2007 for Micole by  doxygen 1.4.7