#include "on_demand_ordering_gate.hpp"


Classes | |
| struct | RoundSwitch |
Public Member Functions | |
| OnDemandOrderingGate (std::shared_ptr< OnDemandOrderingService > ordering_service, std::unique_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::OrderingEvent > | onProposal () override |
| void | stop () override |
| Prevent any new outgoing network activity. Be passive. More... | |
Public Member Functions inherited from iroha::network::OrderingGate | |
| virtual | ~OrderingGate ()=default |
Ordering gate which requests proposals from the ordering service votes for proposals, and passes committed proposals to the pipeline
| OnDemandOrderingGate::OnDemandOrderingGate | ( | std::shared_ptr< OnDemandOrderingService > | ordering_service, |
| std::unique_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 | ||
| ) |
|
override |

|
overridevirtual |
Return observable of all proposals in the consensus
Implements iroha::network::OrderingGate.
|
overridevirtual |
Propagate a transaction batch for further processing
| batch |
Implements iroha::network::OrderingGate.
|
overridevirtual |
Prevent any new outgoing network activity. Be passive.
Implements iroha::network::OrderingGate.

