hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
iroha::ordering::OnDemandOrderingGate Class Reference

#include "on_demand_ordering_gate.hpp"

Inheritance diagram for iroha::ordering::OnDemandOrderingGate:
Inheritance graph
Collaboration diagram for iroha::ordering::OnDemandOrderingGate:
Collaboration graph

Classes

struct  RoundSwitch
 

Public Member Functions

 OnDemandOrderingGate (std::shared_ptr< OnDemandOrderingService > ordering_service, std::shared_ptr< transport::OdOsNotification > network_client, rxcpp::observable< std::shared_ptr< const cache::OrderingGateCache::HashesSetType >> processed_tx_hashes, rxcpp::observable< RoundSwitch > round_switch_events, std::shared_ptr< cache::OrderingGateCache > cache, std::shared_ptr< shared_model::interface::UnsafeProposalFactory > factory, std::shared_ptr< ametsuchi::TxPresenceCache > tx_cache, std::shared_ptr< ProposalCreationStrategy > proposal_creation_strategy, size_t transaction_limit, logger::LoggerPtr log)
 
 ~OnDemandOrderingGate () override
 
void propagateBatch (std::shared_ptr< shared_model::interface::TransactionBatch > batch) override
 
rxcpp::observable< network::OrderingEventonProposal () override
 
- Public Member Functions inherited from iroha::network::OrderingGate
virtual ~OrderingGate ()=default
 

Detailed Description

Ordering gate which requests proposals from the ordering service votes for proposals, and passes committed proposals to the pipeline

Constructor & Destructor Documentation

OnDemandOrderingGate::OnDemandOrderingGate ( std::shared_ptr< OnDemandOrderingService ordering_service,
std::shared_ptr< transport::OdOsNotification network_client,
rxcpp::observable< std::shared_ptr< const cache::OrderingGateCache::HashesSetType >>  processed_tx_hashes,
rxcpp::observable< RoundSwitch round_switch_events,
std::shared_ptr< cache::OrderingGateCache cache,
std::shared_ptr< shared_model::interface::UnsafeProposalFactory factory,
std::shared_ptr< ametsuchi::TxPresenceCache tx_cache,
std::shared_ptr< ProposalCreationStrategy proposal_creation_strategy,
size_t  transaction_limit,
logger::LoggerPtr  log 
)
OnDemandOrderingGate::~OnDemandOrderingGate ( )
override

Member Function Documentation

rxcpp::observable< network::OrderingEvent > OnDemandOrderingGate::onProposal ( )
overridevirtual

Return observable of all proposals in the consensus

Returns
observable with notifications

Implements iroha::network::OrderingGate.

Here is the call graph for this function:

void OnDemandOrderingGate::propagateBatch ( std::shared_ptr< shared_model::interface::TransactionBatch batch)
overridevirtual

Propagate a transaction batch for further processing

Parameters
batch

Implements iroha::network::OrderingGate.


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