6 #ifndef IROHA_MST_PROCESSOR_IMPL_HPP 7 #define IROHA_MST_PROCESSOR_IMPL_HPP 14 #include <rxcpp/rx-lite.hpp> 37 std::shared_ptr<MstStorage> storage,
38 std::shared_ptr<PropagationStrategy> strategy,
39 std::shared_ptr<MstTimeProvider> time_provider,
95 std::shared_ptr<iroha::network::MstTransport> transport_;
96 std::shared_ptr<MstStorage> storage_;
97 std::shared_ptr<PropagationStrategy> strategy_;
98 std::shared_ptr<MstTimeProvider> time_provider_;
103 rxcpp::subjects::subject<std::shared_ptr<MstState>> state_subject_;
106 rxcpp::subjects::subject<DataType> batches_subject_;
109 rxcpp::subjects::subject<DataType> expired_subject_;
113 rxcpp::composite_subscription propagation_subscriber_;
119 #endif // IROHA_MST_PROCESSOR_IMPL_HPP Definition: mst_processor_impl.hpp:27
FairMstProcessor(std::shared_ptr< iroha::network::MstTransport > transport, std::shared_ptr< MstStorage > storage, std::shared_ptr< PropagationStrategy > strategy, std::shared_ptr< MstTimeProvider > time_provider, logger::LoggerPtr log)
Definition: mst_processor_impl.cpp:13
Definition: mst_transport.hpp:19
bool batchInStorageImpl(const DataType &batch) const override
Definition: mst_processor_impl.cpp:82
rxcpp::observable< DataType > onPreparedBatches() const
Definition: mst_processor.cpp:23
Definition: mst_state.hpp:89
rxcpp::observable< DataType > onExpiredBatches() const
Definition: mst_processor.cpp:27
void onNewState(const shared_model::crypto::PublicKey &from, MstState new_state) override
Definition: mst_processor_impl.cpp:88
std::shared_ptr< Logger > LoggerPtr
Definition: logger_fwd.hpp:22
auto onPreparedBatchesImpl() const -> decltype(onPreparedBatches()) override
Definition: mst_processor_impl.cpp:48
rxcpp::observable< std::shared_ptr< MstState > > onStateUpdate() const
Definition: mst_processor.cpp:18
Definition: block_query.hpp:14
auto propagateBatchImpl(const DataType &batch) -> decltype(propagateBatch(batch)) override
Definition: mst_processor_impl.cpp:34
void propagateBatch(const DataType &batch)
Definition: mst_processor.cpp:14
Definition: mst_processor.hpp:22
auto onStateUpdateImpl() const -> decltype(onStateUpdate()) override
Definition: mst_processor_impl.cpp:43
BatchPtr DataType
Definition: mst_types.hpp:40
Definition: public_key.hpp:16
auto onExpiredBatchesImpl() const -> decltype(onExpiredBatches()) override
Definition: mst_processor_impl.cpp:53
ConstRefT< MstState > ConstRefState
Definition: mst_types.hpp:38
~FairMstProcessor()
Definition: mst_processor_impl.cpp:28
std::vector< std::shared_ptr< shared_model::interface::Peer > > PropagationData
Definition: mst_propagation_strategy.hpp:22