hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
stateful_validator_impl.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_STATEFUL_VALIDATIOR_IMPL_HPP
7 #define IROHA_STATEFUL_VALIDATIOR_IMPL_HPP
8 
10 
13 #include "logger/logger.hpp"
14 
15 namespace iroha {
16  namespace validation {
17 
22  public:
24  std::unique_ptr<shared_model::interface::UnsafeProposalFactory>
25  factory,
26  std::shared_ptr<shared_model::interface::TransactionBatchParser>
27  batch_parser,
28  logger::Logger log = logger::log("SFV"));
29 
30  std::unique_ptr<validation::VerifiedProposalAndErrors> validate(
31  const shared_model::interface::Proposal &proposal,
32  ametsuchi::TemporaryWsv &temporaryWsv) override;
33 
34  private:
35  std::unique_ptr<shared_model::interface::UnsafeProposalFactory> factory_;
36  std::shared_ptr<shared_model::interface::TransactionBatchParser>
37  batch_parser_;
38  logger::Logger log_;
39  };
40 
41  } // namespace validation
42 } // namespace iroha
43 
44 #endif // IROHA_STATEFUL_VALIDATION_IMPL_HPP
Definition: stateful_validator_impl.hpp:21
Definition: proposal.hpp:17
std::shared_ptr< spdlog::logger > Logger
Definition: logger.hpp:26
Definition: stateful_validator.hpp:19
Definition: temporary_wsv.hpp:27
Definition: block_query.hpp:16
Logger log(const std::string &tag)
Definition: logger.cpp:48
StatefulValidatorImpl(std::unique_ptr< shared_model::interface::UnsafeProposalFactory > factory, std::shared_ptr< shared_model::interface::TransactionBatchParser > batch_parser, logger::Logger log=logger::log("SFV"))
Definition: stateful_validator_impl.cpp:116
std::unique_ptr< validation::VerifiedProposalAndErrors > validate(const shared_model::interface::Proposal &proposal, ametsuchi::TemporaryWsv &temporaryWsv) override
Definition: stateful_validator_impl.cpp:126