hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
iroha::consensus::yac::Yac Class Reference

#include "yac.hpp"

Inheritance diagram for iroha::consensus::yac::Yac:
Inheritance graph
Collaboration diagram for iroha::consensus::yac::Yac:
Collaboration graph

Public Member Functions

 Yac (YacVoteStorage vote_storage, std::shared_ptr< YacNetwork > network, std::shared_ptr< YacCryptoProvider > crypto, std::shared_ptr< Timer > timer, ClusterOrdering order, logger::Logger log=logger::log("YAC"))
 
void vote (YacHash hash, ClusterOrdering order) override
 
rxcpp::observable< AnsweronOutcome () override
 
void onState (std::vector< VoteMessage > state) override
 
- Public Member Functions inherited from iroha::consensus::yac::HashGate
virtual ~HashGate ()=default
 
- Public Member Functions inherited from iroha::consensus::yac::YacNetworkNotifications
virtual ~YacNetworkNotifications ()=default
 

Static Public Member Functions

static std::shared_ptr< Yaccreate (YacVoteStorage vote_storage, std::shared_ptr< YacNetwork > network, std::shared_ptr< YacCryptoProvider > crypto, std::shared_ptr< Timer > timer, ClusterOrdering order, logger::Logger log=logger::log("YAC"))
 

Constructor & Destructor Documentation

iroha::consensus::yac::Yac::Yac ( YacVoteStorage  vote_storage,
std::shared_ptr< YacNetwork network,
std::shared_ptr< YacCryptoProvider crypto,
std::shared_ptr< Timer timer,
ClusterOrdering  order,
logger::Logger  log = logger::log("YAC") 
)

Member Function Documentation

std::shared_ptr< Yac > iroha::consensus::yac::Yac::create ( YacVoteStorage  vote_storage,
std::shared_ptr< YacNetwork network,
std::shared_ptr< YacCryptoProvider crypto,
std::shared_ptr< Timer timer,
ClusterOrdering  order,
logger::Logger  log = logger::log("YAC") 
)
static

Method for creating Yac consensus object

Parameters
delayfor timer in milliseconds
rxcpp::observable< Answer > iroha::consensus::yac::Yac::onOutcome ( )
overridevirtual

Observable with consensus outcomes - commits and rejects - in network

Returns
observable for subscription

Implements iroha::consensus::yac::HashGate.

void iroha::consensus::yac::Yac::onState ( std::vector< VoteMessage state)
overridevirtual

Callback on receiving collection of votes

Parameters
state- provided message

Implements iroha::consensus::yac::YacNetworkNotifications.

Here is the call graph for this function:

void iroha::consensus::yac::Yac::vote ( YacHash  hash,
ClusterOrdering  order 
)
overridevirtual

Proposal new hash in network

Parameters
hash- hash for voting
order- peer ordering

Implements iroha::consensus::yac::HashGate.

Here is the call graph for this function:

Here is the caller graph for this function:


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