hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
proto_proposal_validator.hpp
Go to the documentation of this file.
1 
5 #ifndef IROHA_PROTO_PROPOSAL_VALIDATOR_HPP
6 #define IROHA_PROTO_PROPOSAL_VALIDATOR_HPP
7 
9 
10 #include <memory>
11 
12 namespace iroha {
13  namespace protocol {
14  class Proposal;
15  class Transaction;
16  } // namespace protocol
17 } // namespace iroha
18 
19 namespace shared_model {
20  namespace validation {
22  : public AbstractValidator<iroha::protocol::Proposal> {
23  public:
24  using ProtoValidatorType =
27 
28  ProtoProposalValidator(ProtoValidatorType transaction_validator);
29 
30  std::optional<ValidationError> validate(
31  const iroha::protocol::Proposal &proposal) const override;
32 
33  private:
34  ProtoValidatorType transaction_validator_;
35  };
36  } // namespace validation
37 } // namespace shared_model
38 
39 #endif // IROHA_PROTO_PROPOSAL_VALIDATOR_HPP
Definition: abstract_validator.hpp:17
Definition: block_query.hpp:15
Definition: proto_proposal_validator.hpp:21
Definition: command_executor.hpp:12
std::shared_ptr< shared_model::validation::AbstractValidator< typename iroha::protocol::Transaction > > ProtoValidatorType
Definition: proto_proposal_validator.hpp:26