FinderMessengerBase Class Reference

Base class for FinderMessenger classes. More...

#include <finder_messenger.hh>

Inheritance diagram for FinderMessengerBase:
XrlSender FinderTcpMessenger

List of all members.


class  ResponseState

Public Types

typedef XrlSender::Callback SendCallback

Public Member Functions

 FinderMessengerBase (EventLoop &e, FinderMessengerManager *fmm, XrlCmdMap &cmds)
virtual bool send (const Xrl &xrl, const SendCallback &scb)=0
virtual bool pending () const =0
 Return true if sender has send requests pending.
XrlCmdMapcommand_map ()
EventLoopeventloop ()
void unhook_manager ()
FinderMessengerManagermanager ()

Protected Member Functions

void dispatch_xrl (uint32_t seqno, const Xrl &x)
 Find command associated with Xrl and dispatch it.
bool dispatch_xrl_response (uint32_t seqno, const XrlError &e, XrlArgs *)
bool store_xrl_response (uint32_t seqno, const SendCallback &scb)
virtual void reply (uint32_t seqno, const XrlError &e, const XrlArgs *reply_args)=0
void response_timeout (uint32_t seqno)

Private Types

typedef map< uint32_t,

Private Member Functions

void dispatch_xrl_cb (const XrlCmdError &e, const XrlArgs *reply_args, uint32_t seqno)

Private Attributes

SeqNoResponseMap _expected_responses


class ResponseState

Detailed Description

Base class for FinderMessenger classes.

FinderMessenger classes are expected to handle the transport and dispatch of Xrl's and their responses. This base class provides a common code for actually doing the Xrl dispatch and handling the state associated with their responses.

Member Function Documentation

virtual bool FinderMessengerBase::send ( const Xrl xrl,
const SendCallback &  scb 
) [pure virtual]
xrlXrl to be sent.
scbcallback to be invoked with result from Xrl
true if Xrl is accepted for sending, false otherwise.

Implements XrlSender.

Implemented in FinderTcpMessenger.

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations