hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
ordering_gate_transport.hpp
Go to the documentation of this file.
1 
5 #ifndef IROHA_ORDERING_GATE_TRANSPORT_H
6 #define IROHA_ORDERING_GATE_TRANSPORT_H
7 
8 #include <memory>
9 
10 namespace shared_model {
11  namespace interface {
12  class TransactionBatch;
13  class Proposal;
14  } // namespace interface
15 } // namespace shared_model
16 
17 namespace iroha {
18  namespace network {
19 
25  public:
30  virtual void onProposal(
31  std::shared_ptr<shared_model::interface::Proposal>) = 0;
32 
33  virtual ~OrderingGateNotification() = default;
34  };
35 
42  public:
48  virtual void subscribe(
49  std::shared_ptr<OrderingGateNotification> subscriber) = 0;
50 
55  virtual void propagateBatch(
56  std::shared_ptr<shared_model::interface::TransactionBatch> batch) = 0;
57 
58  virtual ~OrderingGateTransport() = default;
59  };
60 
61  } // namespace network
62 } // namespace iroha
63 
64 #endif // IROHA_ORDERING_GATE_TRANSPORT_H
Definition: ordering_gate_transport.hpp:41
Definition: block_query.hpp:16
Definition: command_executor.hpp:12
Definition: ordering_gate_transport.hpp:24