Hazelcast C++ Client
Public Types | Public Member Functions | List of all members
hazelcast::client::MembershipEvent Class Reference

Membership event fired when a new member is added to the cluster and/or when a member leaves the cluster. More...

#include <MembershipEvent.h>

+ Inheritance diagram for hazelcast::client::MembershipEvent:

Public Types

enum  MembershipEventType { MEMBER_ADDED = 1, MEMBER_REMOVED = 2 }
 MembershipEventType. More...
 

Public Member Functions

 MembershipEvent (Cluster &cluster, const Member &member, MembershipEventType eventType, const std::vector< Member > &membersList)
 Internal API. More...
 
virtual ~MembershipEvent ()
 Destructor.
 
virtual const std::vector< Member > getMembers () const
 Returns a consistent view of the the members exactly after this MembershipEvent has been processed. More...
 
virtual const Cluster & getCluster () const
 Returns the cluster of the event. More...
 
virtual MembershipEventType getEventType () const
 Returns the membership event type; MembershipEvent::MEMBER_ADDED , MembershipEvent::MEMBER_REMOVED and MembershipEvent::MEMBER_ATTRIBUTE_CHANGED. More...
 
virtual const Member & getMember () const
 Returns the removed or added member. More...
 

Detailed Description

Membership event fired when a new member is added to the cluster and/or when a member leaves the cluster.

See also
MembershipListener

Member Enumeration Documentation

MembershipEventType.

MEMBER_ADDED = 1, MEMBER_REMOVED = 2,

Constructor & Destructor Documentation

hazelcast::client::MembershipEvent::MembershipEvent ( Cluster &  cluster,
const Member &  member,
MembershipEventType  eventType,
const std::vector< Member > &  membersList 
)

Internal API.

Constructor.

Member Function Documentation

const Cluster & hazelcast::client::MembershipEvent::getCluster ( ) const
virtual

Returns the cluster of the event.

Returns
MembershipEvent::MembershipEventType hazelcast::client::MembershipEvent::getEventType ( ) const
virtual

Returns the membership event type; MembershipEvent::MEMBER_ADDED , MembershipEvent::MEMBER_REMOVED and MembershipEvent::MEMBER_ATTRIBUTE_CHANGED.

Returns
the membership event type
const Member & hazelcast::client::MembershipEvent::getMember ( ) const
virtual

Returns the removed or added member.

Returns
member which is removed/added
const std::vector< Member > hazelcast::client::MembershipEvent::getMembers ( ) const
virtual

Returns a consistent view of the the members exactly after this MembershipEvent has been processed.

So if a member is removed, the returned set will not include this member. And if a member is added it will include this member.

The problem with calling the Cluster::getMembers() is that the content could already have changed while processing this event so it becomes very difficult to write a deterministic algorithm since you can't get a deterministic view of the members. This method solves that problem.

The set is immutable and ordered. For more information see Cluster::getMembers().

Returns
the members at the moment after this event.

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