m2etis  0.4
m2etis::pubsub::partition::NullPartition< NetworkType, EventType > Class Template Reference

#include <NullPartition.h>

Inheritance diagram for m2etis::pubsub::partition::NullPartition< NetworkType, EventType >:
Inheritance graph

Public Types

enum  TreeName { ALL }
 
typedef boost::shared_ptr< EventType > PayloadPtr
 
- Public Types inherited from m2etis::pubsub::partition::BasePartition< NetworkType, EventType >
typedef boost::shared_ptr< EventType > PayloadPtr
 

Public Member Functions

 NullPartition ()
 
virtual ~NullPartition ()
 
void createRendezvousPartition (const typename NetworkType::Key &)
 creates a base partition for the RP (dynamic) More...
 
std::vector< int > getTreeNames ()
 returns amount of partitions this strategy contains (static & dynamic) More...
 
std::vector< int >::size_type getPublishTree (const PayloadPtr, const typename NetworkType::Key &)
 returns the tree index the given node with the given payload should publish on (static & dynamic) More...
 
std::vector< unsigned int > getSubscribeTrees (boost::shared_ptr< filter::FilterExp< EventType >>)
 returns the tree indices of all trees matching the predicate to subscribe on (static & dynamic) More...
 
boost::shared_ptr< filter::FilterExp< EventType > > getPredicate (size_t)
 returns the predicate for the given partition id (dynamic) More...
 
bool createPartition (const typename NetworkType::Key &)
 can create a new partition for this channel if a new node (root) joins, return true, if a new partition was created, otherwise false (dynamic) More...
 
void addPartition (boost::shared_ptr< filter::FilterExp< EventType >>, const typename NetworkType::Key &)
 
void removePartition (size_t)
 removes the partition with the given id (dynamic) More...
 
void changePredicate (size_t, boost::shared_ptr< filter::FilterExp< EventType >>)
 changes the filter predicate for the partition with the given id (dynamic) More...
 
void changeRoot (size_t, typename NetworkType::Key &)
 
- Public Member Functions inherited from m2etis::pubsub::partition::BasePartition< NetworkType, EventType >
 BasePartition ()
 
virtual ~BasePartition ()
 
virtual void addPartition (boost::shared_ptr< filter::FilterExp< EventType > > predicate, const typename NetworkType::Key &root)=0
 adds a new partition to the strategy at nodes not being RP (dynamic) More...
 
virtual std::string toString ()
 

Static Public Attributes

static const bool DYNAMIC_PARTITION
 

Detailed Description

template<typename NetworkType, typename EventType>
class m2etis::pubsub::partition::NullPartition< NetworkType, EventType >

Definition at line 34 of file NullPartition.h.

Member Typedef Documentation

template<typename NetworkType , typename EventType >
typedef boost::shared_ptr<EventType> m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::PayloadPtr

Definition at line 36 of file NullPartition.h.

Constructor & Destructor Documentation

template<typename NetworkType , typename EventType >
m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::NullPartition ( )
inline

Definition at line 44 of file NullPartition.h.

template<typename NetworkType , typename EventType >
virtual m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::~NullPartition ( )
inlinevirtual

Definition at line 47 of file NullPartition.h.

Member Function Documentation

template<typename NetworkType , typename EventType >
void m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::addPartition ( boost::shared_ptr< filter::FilterExp< EventType >>  ,
const typename NetworkType::Key &   
)
inline

Definition at line 75 of file NullPartition.h.

template<typename NetworkType , typename EventType >
void m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::changePredicate ( size_t  id,
boost::shared_ptr< filter::FilterExp< EventType >>  predicates 
)
inlinevirtual

changes the filter predicate for the partition with the given id (dynamic)

Implements m2etis::pubsub::partition::BasePartition< NetworkType, EventType >.

Definition at line 81 of file NullPartition.h.

template<typename NetworkType , typename EventType >
void m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::changeRoot ( size_t  ,
typename NetworkType::Key &   
)
inlinevirtual
template<typename NetworkType , typename EventType >
bool m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::createPartition ( const typename NetworkType::Key &  root)
inlinevirtual

can create a new partition for this channel if a new node (root) joins, return true, if a new partition was created, otherwise false (dynamic)

Implements m2etis::pubsub::partition::BasePartition< NetworkType, EventType >.

Definition at line 71 of file NullPartition.h.

template<typename NetworkType , typename EventType >
void m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::createRendezvousPartition ( const typename NetworkType::Key &  rendezvous)
inlinevirtual

creates a base partition for the RP (dynamic)

Implements m2etis::pubsub::partition::BasePartition< NetworkType, EventType >.

Definition at line 49 of file NullPartition.h.

template<typename NetworkType , typename EventType >
boost::shared_ptr<filter::FilterExp<EventType> > m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::getPredicate ( size_t  id)
inlinevirtual

returns the predicate for the given partition id (dynamic)

Implements m2etis::pubsub::partition::BasePartition< NetworkType, EventType >.

Definition at line 67 of file NullPartition.h.

template<typename NetworkType , typename EventType >
std::vector<int>::size_type m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::getPublishTree ( const PayloadPtr  message,
const typename NetworkType::Key &  self 
)
inlinevirtual

returns the tree index the given node with the given payload should publish on (static & dynamic)

Implements m2etis::pubsub::partition::BasePartition< NetworkType, EventType >.

Definition at line 57 of file NullPartition.h.

template<typename NetworkType , typename EventType >
std::vector<unsigned int> m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::getSubscribeTrees ( boost::shared_ptr< filter::FilterExp< EventType >>  dynamic_filter)
inlinevirtual

returns the tree indices of all trees matching the predicate to subscribe on (static & dynamic)

Implements m2etis::pubsub::partition::BasePartition< NetworkType, EventType >.

Definition at line 61 of file NullPartition.h.

template<typename NetworkType , typename EventType >
std::vector<int> m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::getTreeNames ( )
inlinevirtual

returns amount of partitions this strategy contains (static & dynamic)

Implements m2etis::pubsub::partition::BasePartition< NetworkType, EventType >.

Definition at line 52 of file NullPartition.h.

template<typename NetworkType , typename EventType >
void m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::removePartition ( size_t  id)
inlinevirtual

removes the partition with the given id (dynamic)

Implements m2etis::pubsub::partition::BasePartition< NetworkType, EventType >.

Definition at line 78 of file NullPartition.h.

Member Data Documentation

template<typename NetworkType , typename EventType >
const bool m2etis::pubsub::partition::NullPartition< NetworkType, EventType >::DYNAMIC_PARTITION
static

Definition at line 38 of file NullPartition.h.


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