MySQL 8.3.0
Source Code Documentation
Gcs_xcom_config Class Reference

Keep track of the most recent XCom configuration the node will deliver upwards. More...

#include <gcs_xcom_interface.h>

Public Member Functions

 Gcs_xcom_config ()
 
void reset ()
 Resets the object to its initial state. More...
 
void update (synode_no config_id, Gcs_xcom_nodes const &xcom_nodes, xcom_event_horizon event_horizon)
 Updates this configuration's information. More...
 
bool has_view () const
 Checks whether this configuration pertains to a received XCom view, i.e. More...
 
bool same_view (synode_no config_id) const
 Checks whether this configuration's synod matches the the given synod. More...
 
bool same_xcom_nodes (Gcs_xcom_nodes const &xcom_nodes) const
 Checks whether this configuration's membership matches the given membership. More...
 
bool same_event_horizon (xcom_event_horizon const &event_horizon) const
 Checks whether this configuration's event horizon matches the given event horizon. More...
 
bool same_xcom_nodes_v3 (Gcs_xcom_nodes const &xcom_nodes) const
 Checks whether this configuration's membership matches the given membership. More...
 
 Gcs_xcom_config (Gcs_xcom_config const &)=delete
 
 Gcs_xcom_config (Gcs_xcom_config &&)=delete
 
Gcs_xcom_configoperator= (Gcs_xcom_config const &)=delete
 
Gcs_xcom_configoperator= (Gcs_xcom_config &&)=delete
 

Private Attributes

synode_no config_id_
 
Gcs_xcom_nodes xcom_nodes_
 
xcom_event_horizon event_horizon_
 

Detailed Description

Keep track of the most recent XCom configuration the node will deliver upwards.

Constructor & Destructor Documentation

◆ Gcs_xcom_config() [1/3]

Gcs_xcom_config::Gcs_xcom_config ( )

◆ Gcs_xcom_config() [2/3]

Gcs_xcom_config::Gcs_xcom_config ( Gcs_xcom_config const &  )
delete

◆ Gcs_xcom_config() [3/3]

Gcs_xcom_config::Gcs_xcom_config ( Gcs_xcom_config &&  )
delete

Member Function Documentation

◆ has_view()

bool Gcs_xcom_config::has_view ( ) const

Checks whether this configuration pertains to a received XCom view, i.e.

the configuration object is not in its initial state.

Returns
true if the configuration pertains to a received XCom view, false otherwise

◆ operator=() [1/2]

Gcs_xcom_config & Gcs_xcom_config::operator= ( Gcs_xcom_config &&  )
delete

◆ operator=() [2/2]

Gcs_xcom_config & Gcs_xcom_config::operator= ( Gcs_xcom_config const &  )
delete

◆ reset()

void Gcs_xcom_config::reset ( )

Resets the object to its initial state.

◆ same_event_horizon()

bool Gcs_xcom_config::same_event_horizon ( xcom_event_horizon const &  event_horizon) const

Checks whether this configuration's event horizon matches the given event horizon.

Parameters
event_horizonthe event horizon to compare against
Returns
true if the event horizons are the same, false otherwise

◆ same_view()

bool Gcs_xcom_config::same_view ( synode_no  config_id) const

Checks whether this configuration's synod matches the the given synod.

Parameters
config_idthe synod to compare against
Returns
true if the synods are the same, false otherwise

◆ same_xcom_nodes()

bool Gcs_xcom_config::same_xcom_nodes ( Gcs_xcom_nodes const &  xcom_nodes) const

Checks whether this configuration's membership matches the given membership.

Parameters
xcom_nodesthe membership to compare against
Returns
true if the memberships are the same, false otherwise

◆ same_xcom_nodes_v3()

bool Gcs_xcom_config::same_xcom_nodes_v3 ( Gcs_xcom_nodes const &  xcom_nodes) const

Checks whether this configuration's membership matches the given membership.

Parameters
xcom_nodesthe membership to compare against
Returns
true if the memberships are the same, false otherwise

◆ update()

void Gcs_xcom_config::update ( synode_no  config_id,
Gcs_xcom_nodes const &  xcom_nodes,
xcom_event_horizon  event_horizon 
)

Updates this configuration's information.

Parameters
config_idthe synod of the configuration
xcom_nodesthe XCom configuration's membership
event_horizonthe XCom configuration's event horizon

Member Data Documentation

◆ config_id_

synode_no Gcs_xcom_config::config_id_
private

◆ event_horizon_

xcom_event_horizon Gcs_xcom_config::event_horizon_
private

◆ xcom_nodes_

Gcs_xcom_nodes Gcs_xcom_config::xcom_nodes_
private

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