m2etis  0.4
m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples > Class Template Reference

#include <AckDeliver.h>

Inheritance diagram for m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >:
Inheritance graph

Public Types

typedef message::AckDeliverInfo DeliverInfoType
 

Public Member Functions

 AckDeliver (PubSubSystemEnvironment *pssi, const typename NetworkType::Key &self)
 
virtual ~AckDeliver ()
 
bool processPublishPayload (typename message::DeliverInfo::Ptr ptr, const typename NetworkType::Key &sender)
 used to process payload More...
 
bool processNotifyPayload (typename message::DeliverInfo::Ptr ptr, const typename NetworkType::Key &sender)
 used to process payload More...
 
bool processSubscribePayload (typename message::DeliverInfo::Ptr ptr, const typename NetworkType::Key &sender)
 used to process payload More...
 
bool processUnsubscribePayload (typename message::DeliverInfo::Ptr ptr, const typename NetworkType::Key &sender)
 used to process payload More...
 
bool process (typename message::DeliverInfo::Ptr ptr, const typename NetworkType::Key &sender)
 
bool processOtherControlPayload (typename message::DeliverInfo::Ptr ptr, const typename NetworkType::Key &sender)
 creates the DeliverInfo More...
 
void configureDeliverInfo (uint64_t id, const message::ActionType mtype, typename message::DeliverInfo::Ptr ptr, const typename NetworkType::Key &receiver, message::ControlType ct)
 creates the DeliverInfo More...
 
bool processControlPayload (typename message::DeliverInfo::Ptr ptr, const typename NetworkType::Key &sender)
 processes Control Messages (id got acked) More...
 
bool periodicCheck ()
 checks the queue for un-acked messages More...
 
- Public Member Functions inherited from m2etis::pubsub::deliver::BaseDeliver< NetworkType >
 BaseDeliver (PubSubSystemEnvironment *pssi)
 
virtual ~BaseDeliver ()
 
void configureCallback (const boost::function< void(uint64_t, msgProcess)> &func)
 used to set the function to be called when a message should be send to the next processing stage call this function with the id given in receive() to deliver the appropriate message More...
 
void configureSendCallback (const boost::function< void(message::DeliverInfo::Ptr, const typename NetworkType::Key &, ControlTarget)> &func)
 with this function, new messages can be sent directly to nodes More...
 

Additional Inherited Members

- Protected Attributes inherited from m2etis::pubsub::deliver::BaseDeliver< NetworkType >
PubSubSystemEnvironmentpssi_
 PubSubSystemEnvironment. More...
 
boost::function< void(uint64_t, msgProcess)> process_
 stores the function to be called for delivering More...
 
boost::function< void(message::DeliverInfo::Ptr, typename NetworkType::Key, ControlTarget)> sendCtrlMsg_
 stores the function to send new messages This function will send a newly created control message containing the given DeliverStruct to the specified sender. The Tree ensures that this message will be sent to the specified receiver and will not be processed by any other strategie. More...
 

Detailed Description

template<class NetworkType, int Retries, Amount Multiples>
class m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >

Definition at line 47 of file AckDeliver.h.

Member Typedef Documentation

template<class NetworkType , int Retries, Amount Multiples>
typedef message::AckDeliverInfo m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::DeliverInfoType

Definition at line 49 of file AckDeliver.h.

Constructor & Destructor Documentation

template<class NetworkType , int Retries, Amount Multiples>
m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::AckDeliver ( PubSubSystemEnvironment pssi,
const typename NetworkType::Key &  self 
)
inline

Definition at line 51 of file AckDeliver.h.

Here is the call graph for this function:

template<class NetworkType , int Retries, Amount Multiples>
virtual m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::~AckDeliver ( )
inlinevirtual

Definition at line 55 of file AckDeliver.h.

Member Function Documentation

template<class NetworkType , int Retries, Amount Multiples>
void m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::configureDeliverInfo ( uint64_t  id,
const message::ActionType  mtype,
typename message::DeliverInfo::Ptr  ptr,
const typename NetworkType::Key &  receiver,
message::ControlType  ct 
)
inlinevirtual

creates the DeliverInfo

Implements m2etis::pubsub::deliver::BaseDeliver< NetworkType >.

Definition at line 121 of file AckDeliver.h.

template<class NetworkType , int Retries, Amount Multiples>
bool m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::periodicCheck ( )
inline

checks the queue for un-acked messages

Definition at line 145 of file AckDeliver.h.

Here is the caller graph for this function:

template<class NetworkType , int Retries, Amount Multiples>
bool m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::process ( typename message::DeliverInfo::Ptr  ptr,
const typename NetworkType::Key &  sender 
)
inline

Definition at line 87 of file AckDeliver.h.

Here is the caller graph for this function:

template<class NetworkType , int Retries, Amount Multiples>
bool m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::processControlPayload ( typename message::DeliverInfo::Ptr  ptr,
const typename NetworkType::Key &  sender 
)
inlinevirtual

processes Control Messages (id got acked)

Implements m2etis::pubsub::deliver::BaseDeliver< NetworkType >.

Definition at line 136 of file AckDeliver.h.

template<class NetworkType , int Retries, Amount Multiples>
bool m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::processNotifyPayload ( typename message::DeliverInfo::Ptr  ptr,
const typename NetworkType::Key &  sender 
)
inlinevirtual

used to process payload

Implements m2etis::pubsub::deliver::BaseDeliver< NetworkType >.

Definition at line 69 of file AckDeliver.h.

Here is the call graph for this function:

template<class NetworkType , int Retries, Amount Multiples>
bool m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::processOtherControlPayload ( typename message::DeliverInfo::Ptr  ptr,
const typename NetworkType::Key &  sender 
)
inlinevirtual

creates the DeliverInfo

Implements m2etis::pubsub::deliver::BaseDeliver< NetworkType >.

Definition at line 105 of file AckDeliver.h.

template<class NetworkType , int Retries, Amount Multiples>
bool m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::processPublishPayload ( typename message::DeliverInfo::Ptr  ptr,
const typename NetworkType::Key &  sender 
)
inlinevirtual

used to process payload

Implements m2etis::pubsub::deliver::BaseDeliver< NetworkType >.

Definition at line 62 of file AckDeliver.h.

Here is the call graph for this function:

template<class NetworkType , int Retries, Amount Multiples>
bool m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::processSubscribePayload ( typename message::DeliverInfo::Ptr  ptr,
const typename NetworkType::Key &  sender 
)
inlinevirtual

used to process payload

Implements m2etis::pubsub::deliver::BaseDeliver< NetworkType >.

Definition at line 76 of file AckDeliver.h.

Here is the call graph for this function:

template<class NetworkType , int Retries, Amount Multiples>
bool m2etis::pubsub::deliver::AckDeliver< NetworkType, Retries, Multiples >::processUnsubscribePayload ( typename message::DeliverInfo::Ptr  ptr,
const typename NetworkType::Key &  sender 
)
inlinevirtual

used to process payload

Implements m2etis::pubsub::deliver::BaseDeliver< NetworkType >.

Definition at line 83 of file AckDeliver.h.

Here is the call graph for this function:


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