CCF
Loading...
Searching...
No Matches
Classes | Typedefs | Enumerations | Functions
ccf::self_healing_open Namespace Reference

Classes

struct  GossipRequest
 
struct  Identity
 
struct  NodeInfo
 
struct  RequestNodeInfo
 
struct  TaggedWithNodeInfo
 

Typedefs

using IntrinsicIdentifier = std::string
 
using NetAddress = std::string
 
using NodeInfoMap = ServiceMap< IntrinsicIdentifier, ccf::self_healing_open::NodeInfo >
 
using Gossips = ServiceMap< IntrinsicIdentifier, ccf::kv::Version >
 
using ChosenNode = ServiceValue< IntrinsicIdentifier >
 
using Votes = ServiceSet< IntrinsicIdentifier >
 
using SMState = ServiceValue< ccf::self_healing_open::StateMachine >
 
using TimeoutSMState = ServiceValue< ccf::self_healing_open::StateMachine >
 
using OpenKind = ServiceValue< ccf::self_healing_open::OpenKinds >
 

Enumerations

enum class  StateMachine : uint8_t {
  GOSSIPING = 0 , VOTING , OPENING , JOINING ,
  OPEN
}
 
enum class  OpenKinds : uint8_t { QUORUM = 0 , FAILOVER }
 

Functions

 DECLARE_JSON_TYPE (Identity)
 
 DECLARE_JSON_REQUIRED_FIELDS (Identity, intrinsic_id, published_address)
 
 DECLARE_JSON_TYPE (NodeInfo)
 
 DECLARE_JSON_REQUIRED_FIELDS (NodeInfo, quote_info, identity, cert_der, service_identity)
 
 DECLARE_JSON_ENUM (StateMachine, {{StateMachine::GOSSIPING, "Gossiping"}, {StateMachine::VOTING, "Voting"}, {StateMachine::OPENING, "Opening"}, {StateMachine::JOINING, "Joining"}, {StateMachine::OPEN, "Open"}})
 
 DECLARE_JSON_ENUM (OpenKinds, {{OpenKinds::QUORUM, "Quorum"}, {OpenKinds::FAILOVER, "Failover"}})
 
 DECLARE_JSON_TYPE (RequestNodeInfo)
 
 DECLARE_JSON_REQUIRED_FIELDS (RequestNodeInfo, quote_info, identity, service_identity)
 
 DECLARE_JSON_TYPE (TaggedWithNodeInfo)
 
 DECLARE_JSON_REQUIRED_FIELDS (TaggedWithNodeInfo, info)
 
 DECLARE_JSON_TYPE_WITH_BASE (GossipRequest, TaggedWithNodeInfo)
 
 DECLARE_JSON_REQUIRED_FIELDS (GossipRequest, txid)
 

Typedef Documentation

◆ ChosenNode

◆ Gossips

◆ IntrinsicIdentifier

using ccf::self_healing_open::IntrinsicIdentifier = typedef std::string

◆ NetAddress

using ccf::self_healing_open::NetAddress = typedef std::string

◆ NodeInfoMap

◆ OpenKind

◆ SMState

◆ TimeoutSMState

◆ Votes

Enumeration Type Documentation

◆ OpenKinds

enum class ccf::self_healing_open::OpenKinds : uint8_t
strong
Enumerator
QUORUM 
FAILOVER 

◆ StateMachine

enum class ccf::self_healing_open::StateMachine : uint8_t
strong
Enumerator
GOSSIPING 
VOTING 
OPENING 
JOINING 
OPEN 

Function Documentation

◆ DECLARE_JSON_ENUM() [1/2]

ccf::self_healing_open::DECLARE_JSON_ENUM ( OpenKinds  ,
{{OpenKinds::QUORUM, "Quorum"}, {OpenKinds::FAILOVER, "Failover"}}   
)

◆ DECLARE_JSON_ENUM() [2/2]

ccf::self_healing_open::DECLARE_JSON_ENUM ( StateMachine  ,
{{StateMachine::GOSSIPING, "Gossiping"}, {StateMachine::VOTING, "Voting"}, {StateMachine::OPENING, "Opening"}, {StateMachine::JOINING, "Joining"}, {StateMachine::OPEN, "Open"}}   
)

◆ DECLARE_JSON_REQUIRED_FIELDS() [1/5]

ccf::self_healing_open::DECLARE_JSON_REQUIRED_FIELDS ( GossipRequest  ,
txid   
)

◆ DECLARE_JSON_REQUIRED_FIELDS() [2/5]

ccf::self_healing_open::DECLARE_JSON_REQUIRED_FIELDS ( Identity  ,
intrinsic_id  ,
published_address   
)

◆ DECLARE_JSON_REQUIRED_FIELDS() [3/5]

ccf::self_healing_open::DECLARE_JSON_REQUIRED_FIELDS ( NodeInfo  ,
quote_info  ,
identity  ,
cert_der  ,
service_identity   
)

◆ DECLARE_JSON_REQUIRED_FIELDS() [4/5]

ccf::self_healing_open::DECLARE_JSON_REQUIRED_FIELDS ( RequestNodeInfo  ,
quote_info  ,
identity  ,
service_identity   
)

◆ DECLARE_JSON_REQUIRED_FIELDS() [5/5]

ccf::self_healing_open::DECLARE_JSON_REQUIRED_FIELDS ( TaggedWithNodeInfo  ,
info   
)

◆ DECLARE_JSON_TYPE() [1/4]

ccf::self_healing_open::DECLARE_JSON_TYPE ( Identity  )

◆ DECLARE_JSON_TYPE() [2/4]

ccf::self_healing_open::DECLARE_JSON_TYPE ( NodeInfo  )

◆ DECLARE_JSON_TYPE() [3/4]

ccf::self_healing_open::DECLARE_JSON_TYPE ( RequestNodeInfo  )

◆ DECLARE_JSON_TYPE() [4/4]

ccf::self_healing_open::DECLARE_JSON_TYPE ( TaggedWithNodeInfo  )

◆ DECLARE_JSON_TYPE_WITH_BASE()

ccf::self_healing_open::DECLARE_JSON_TYPE_WITH_BASE ( GossipRequest  ,
TaggedWithNodeInfo   
)