hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
unsafe_proposal_factory.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_UNSAFE_PROPOSAL_FACTORY_HPP
7 #define IROHA_UNSAFE_PROPOSAL_FACTORY_HPP
8 
9 #include <memory>
10 
11 #include <boost/range/any_range.hpp>
14 
15 namespace shared_model {
16  namespace interface {
17  class Proposal;
18 
23  public:
25  boost::any_range<Transaction,
26  boost::forward_traversal_tag,
27  const Transaction &>;
28 
29  virtual std::unique_ptr<Proposal> unsafeCreateProposal(
30  types::HeightType height,
31  types::TimestampType created_time,
32  TransactionsCollectionType transactions) = 0;
33 
34  virtual ~UnsafeProposalFactory() = default;
35  };
36  } // namespace interface
37 } // namespace shared_model
38 
39 #endif // IROHA_UNSAFE_PROPOSAL_FACTORY_HPP
uint64_t HeightType
Type of height (for Block, Proposal etc)
Definition: types.hpp:43
virtual std::unique_ptr< Proposal > unsafeCreateProposal(types::HeightType height, types::TimestampType created_time, TransactionsCollectionType transactions)=0
Definition: unsafe_proposal_factory.hpp:22
boost::any_range< Transaction, boost::forward_traversal_tag, const Transaction & > TransactionsCollectionType
Definition: unsafe_proposal_factory.hpp:27
Definition: command_executor.hpp:12
Definition: transaction.hpp:23
uint64_t TimestampType
Type of timestamp.
Definition: types.hpp:64