24#ifndef GCS_CONTROL_EVENT_LISTENER_INCLUDED
25#define GCS_CONTROL_EVENT_LISTENER_INCLUDED
39typedef std::vector<std::pair<Gcs_member_identifier *, Gcs_message_data *>>
91 const std::vector<Gcs_member_identifier> &members,
92 const std::vector<Gcs_member_identifier> &unreachable)
const = 0;
This interface is implemented by those who wish to receive Control Interface notifications.
Definition: gcs_control_event_listener.h:52
virtual Gcs_message_data * get_exchangeable_data() const =0
This method is called when the Data Exchange is about to happen in order for the client to provide wh...
virtual void on_suspicions(const std::vector< Gcs_member_identifier > &members, const std::vector< Gcs_member_identifier > &unreachable) const =0
This member function is called when the set of suspicions has changed in the underlying communication...
virtual void on_view_changed(const Gcs_view &new_view, const Exchanged_data &exchanged_data) const =0
This method is called when the view is ready to be installed.
virtual ~Gcs_control_event_listener()=default
This class serves as data container for information flowing in the GCS ecosystem.
Definition: gcs_message.h:48
This represents the membership view that a member has from a group.
Definition: gcs_view.h:55
std::vector< std::pair< Gcs_member_identifier *, Gcs_message_data * > > Exchanged_data
Alias for the Data exchanged and delivered from all nodes.
Definition: gcs_control_event_listener.h:40