Iroha - A simple, decentralized ledger http://iroha.tech
iroha::network::OrderingGate Class Referenceabstract

#include "ordering_gate.hpp"

Inheritance diagram for iroha::network::OrderingGate:
Inheritance graph
Collaboration diagram for iroha::network::OrderingGate:
Collaboration graph

Public Member Functions

virtual void propagateBatch (std::shared_ptr< shared_model::interface::TransactionBatch > batch)=0
virtual rxcpp::observable< OrderingEventonProposal ()=0
virtual void setPcs (const PeerCommunicationService &pcs)=0
virtual ~OrderingGate ()=default

Detailed Description

Ordering gate provide interface with network transaction order

Constructor & Destructor Documentation

virtual iroha::network::OrderingGate::~OrderingGate ( )

Member Function Documentation

virtual rxcpp::observable<OrderingEvent> iroha::network::OrderingGate::onProposal ( )
pure virtual

Return observable of all proposals in the consensus

observable with notifications

Implemented in iroha::ordering::OnDemandOrderingGate.

virtual void iroha::network::OrderingGate::propagateBatch ( std::shared_ptr< shared_model::interface::TransactionBatch batch)
pure virtual

Propagate a transaction batch for further processing


Implemented in iroha::ordering::OnDemandOrderingGate.

virtual void iroha::network::OrderingGate::setPcs ( const PeerCommunicationService pcs)
pure virtual

Set peer communication service for commit notification

pcs- const reference for PeerCommunicationService design notes: pcs passed by const reference because of cyclic linking between OG and PCS in the implementation. Same reasons to move the pcs dependency not in ctor but make the setter method.

Implemented in iroha::ordering::OnDemandOrderingGate.

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