CMSDK  2.0.1
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
cmlabs::RequestExecutor Class Reference
Inheritance diagram for cmlabs::RequestExecutor:
cmlabs::Runnable cmlabs::NetworkReceiver cmlabs::TestRequestExecutor

Public Member Functions

 RequestExecutor (uint32 id=0, const char *name=NULL)
bool shutdownNetwork ()
bool addLongRequestName (const char *name)
bool addGateway (uint32 id, std::string addr, uint16 port, uint8 encryption=NOENC)
bool setLongRequestLimit (uint32 limit)
bool receiveNetworkEvent (NetworkEvent *evt, NetworkChannel *channel, uint64 conid)
bool receiveMessage (DataMessage *msg, NetworkChannel *channel, uint64 conid)
bool receiveHTTPRequest (HTTPRequest *req, NetworkChannel *channel, uint64 conid)
DataMessagewaitForLongRequest (uint32 timeoutMS)
DataMessagewaitForShortRequest (uint32 timeoutMS)
bool replyToQuery (DataMessage *msg)
- Public Member Functions inherited from cmlabs::Runnable
virtual bool stop (uint32 timeout=200)
- Public Member Functions inherited from cmlabs::NetworkReceiver
virtual bool receiveTelnetLine (TelnetLine *line, NetworkChannel *channel, uint64 conid)
virtual bool receiveHTTPReply (HTTPReply *reply, HTTPRequest *req, NetworkChannel *channel, uint64 conid)

Protected Member Functions

bool run ()
uint32 sendStatusNow ()
bool sendMessageToGateway (DataMessage *msg, RequestGatewayConnection &con)
bool replyToGateway (DataMessage *msg)

Protected Attributes

std::list< RequestGatewayConnectionconnections
uint32 executorID
std::string executorName
utils::WaitQueuePointer< DataMessage * > shortExecQ
utils::WaitQueuePointer< DataMessage * > longExecQ
utils::WaitQueuePointer< DataMessage * > replyQ
std::map< uint64, RequestReply * > requestMap
std::vector< std::string > longReqNames
utils::Mutex mutex
utils::Mutex conMutex
utils::Semaphore shortExecQSemaphore
utils::Semaphore longExecQSemaphore
uint32 threadID
uint64 lastRefID
uint64 repliedCount
uint64 sentCount
uint64 shortReceivedCount
uint64 longReceivedCount
int32 heartbeatIntervalMS
uint64 lastHeartbeat
uint32 longReqLimit
- Protected Attributes inherited from cmlabs::Runnable
uint32 threadID
bool shouldContinue
bool isRunning



The documentation for this class was generated from the following files: