hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
shared_model::validation::ContainerValidator< Iface, FieldValidator, TransactionsCollectionValidator > Class Template Reference

#include "container_validator.hpp"

Collaboration diagram for shared_model::validation::ContainerValidator< Iface, FieldValidator, TransactionsCollectionValidator >:
Collaboration graph

Public Member Functions

 ContainerValidator (std::shared_ptr< ValidatorsConfig > config, FieldValidator field_validator)
 
 ContainerValidator (std::shared_ptr< ValidatorsConfig > config)
 
template<typename Validator >
Answer validate (const Iface &cont, const std::string &reason_name, Validator &&validator) const
 
Answer validate (const Iface &cont, const std::string &reason_name) const
 

Protected Member Functions

void validateTransactions (ReasonsGroupType &reason, const interface::types::TransactionsCollectionType &transactions, interface::types::TimestampType current_timestamp) const
 
 ContainerValidator (FieldValidator field_validator, TransactionsCollectionValidator transactions_collection_validator)
 

Protected Attributes

FieldValidator field_validator_
 

Detailed Description

template<typename Iface, typename FieldValidator, typename TransactionsCollectionValidator>
class shared_model::validation::ContainerValidator< Iface, FieldValidator, TransactionsCollectionValidator >

Class that validates blocks and proposal common fields

Constructor & Destructor Documentation

◆ ContainerValidator() [1/3]

template<typename Iface, typename FieldValidator, typename TransactionsCollectionValidator>
shared_model::validation::ContainerValidator< Iface, FieldValidator, TransactionsCollectionValidator >::ContainerValidator ( FieldValidator  field_validator,
TransactionsCollectionValidator  transactions_collection_validator 
)
inlineexplicitprotected

◆ ContainerValidator() [2/3]

template<typename Iface, typename FieldValidator, typename TransactionsCollectionValidator>
shared_model::validation::ContainerValidator< Iface, FieldValidator, TransactionsCollectionValidator >::ContainerValidator ( std::shared_ptr< ValidatorsConfig config,
FieldValidator  field_validator 
)
inlineexplicit

◆ ContainerValidator() [3/3]

template<typename Iface, typename FieldValidator, typename TransactionsCollectionValidator>
shared_model::validation::ContainerValidator< Iface, FieldValidator, TransactionsCollectionValidator >::ContainerValidator ( std::shared_ptr< ValidatorsConfig config)
inlineexplicit

Member Function Documentation

◆ validate() [1/2]

template<typename Iface, typename FieldValidator, typename TransactionsCollectionValidator>
template<typename Validator >
Answer shared_model::validation::ContainerValidator< Iface, FieldValidator, TransactionsCollectionValidator >::validate ( const Iface &  cont,
const std::string &  reason_name,
Validator &&  validator 
) const
inline
Here is the caller graph for this function:

◆ validate() [2/2]

template<typename Iface, typename FieldValidator, typename TransactionsCollectionValidator>
Answer shared_model::validation::ContainerValidator< Iface, FieldValidator, TransactionsCollectionValidator >::validate ( const Iface &  cont,
const std::string &  reason_name 
) const
inline

◆ validateTransactions()

template<typename Iface, typename FieldValidator, typename TransactionsCollectionValidator>
void shared_model::validation::ContainerValidator< Iface, FieldValidator, TransactionsCollectionValidator >::validateTransactions ( ReasonsGroupType reason,
const interface::types::TransactionsCollectionType transactions,
interface::types::TimestampType  current_timestamp 
) const
inlineprotected
Here is the caller graph for this function:

Member Data Documentation

◆ field_validator_

template<typename Iface, typename FieldValidator, typename TransactionsCollectionValidator>
FieldValidator shared_model::validation::ContainerValidator< Iface, FieldValidator, TransactionsCollectionValidator >::field_validator_
protected

The documentation for this class was generated from the following file: