24#ifndef GCS_XCOM_GROUP_MANAGEMENT_INCLUDED 
   25#define GCS_XCOM_GROUP_MANAGEMENT_INCLUDED 
   55      std::vector<Gcs_member_identifier> &preferred_leaders,
 
   56      std::vector<Gcs_member_identifier> &actual_leaders) 
override;
 
   94                      const std::vector<std::string> &filter);
 
  106                      const std::vector<Gcs_member_identifier> &filter);
 
  118                      const std::vector<Gcs_member_identifier *> &filter);
 
This represents the unique identification of a group.
Definition: gcs_group_identifier.h:35
 
Definition: gcs_group_management_interface.h:32
 
This class is to be used to provide parameters to bindings in a transparent and generic way.
Definition: gcs_types.h:59
 
It represents the identity of a group member within a certain group.
Definition: gcs_member_identifier.h:40
 
Definition: gcs_xcom_group_management.h:37
 
Gcs_group_identifier * m_gid
Definition: gcs_xcom_group_management.h:122
 
Gcs_xcom_group_management & operator=(Gcs_xcom_group_management const &)
 
unsigned int m_gid_hash
Definition: gcs_xcom_group_management.h:124
 
Gcs_xcom_group_management(Gcs_xcom_proxy *xcom_proxy, const Gcs_group_identifier &group_identifier, Gcs_xcom_view_change_control_interface *view_control)
Definition: gcs_xcom_group_management.cc:35
 
uint32_t get_maximum_write_concurrency() const override
Retrieves the maximum supported "write concurrency" value.
Definition: gcs_xcom_group_management.cc:204
 
enum_gcs_error get_write_concurrency(uint32_t &event_horizon) const override
Retrieves the group's "write concurrency" value.
Definition: gcs_xcom_group_management.cc:208
 
void set_xcom_nodes(const Gcs_xcom_nodes &xcom_nodes)
Save information on the latest nodes seen by this node so that it can safely reconfigure the group if...
Definition: gcs_xcom_group_management.cc:56
 
enum_gcs_error set_write_concurrency(uint32_t event_horizon) override
Reconfigures the group's "write concurrency" value.
Definition: gcs_xcom_group_management.cc:239
 
Gcs_xcom_group_management(Gcs_xcom_group_management const &)
 
enum_gcs_error modify_configuration(const Gcs_interface_parameters &reconfigured_group) override
Method that allows sending of a new group configuration.
Definition: gcs_xcom_group_management.cc:114
 
My_xp_mutex_impl m_nodes_mutex
Definition: gcs_xcom_group_management.h:129
 
~Gcs_xcom_group_management() override
Definition: gcs_xcom_group_management.cc:51
 
Gcs_xcom_view_change_control_interface * m_view_control
Definition: gcs_xcom_group_management.h:135
 
void get_xcom_nodes(Gcs_xcom_nodes &result_xcom_nodes, const std::vector< std::string > &filter)
Definition: gcs_xcom_group_management.cc:85
 
Gcs_xcom_proxy * m_xcom_proxy
Definition: gcs_xcom_group_management.h:121
 
enum_gcs_error get_leaders(std::vector< Gcs_member_identifier > &preferred_leaders, std::vector< Gcs_member_identifier > &actual_leaders) override
Inspect the group's "consensus leader" configuration.
Definition: gcs_xcom_group_management.cc:280
 
enum_gcs_error set_everyone_leader() override
Reconfigures the group's "consensus leaders.".
Definition: gcs_xcom_group_management.cc:265
 
enum_gcs_error set_single_leader(Gcs_member_identifier const &leader) override
Reconfigures the group's "consensus leaders.".
Definition: gcs_xcom_group_management.cc:248
 
uint32_t get_minimum_write_concurrency() const override
Retrieves the minimum supported "write concurrency" value.
Definition: gcs_xcom_group_management.cc:200
 
Gcs_xcom_nodes m_xcom_nodes
Definition: gcs_xcom_group_management.h:123
 
This class contains information on the configuration, i.e set of nodes or simply site definition.
Definition: gcs_xcom_group_member_information.h:391
 
Definition: gcs_xcom_proxy.h:53
 
Definition: gcs_xcom_state_exchange.h:716
 
Definition: my_xp_mutex.h:123
 
enum_gcs_error
This enumeration describes errors which can occur during group communication operations.
Definition: gcs_types.h:41