6 #ifndef IROHA_COMMON_OBJECTS_FACTORY_HPP 7 #define IROHA_COMMON_OBJECTS_FACTORY_HPP 37 types::PublicKeyHexStringView public_key,
38 const std::optional<types::TLSCertificateType> &tls_certificate =
56 const Amount &balance) = 0;
77 types::PublicKeyHexStringView key,
78 types::SignedHexStringView signed_data) = 0;
85 #endif // IROHA_COMMONOBJECTSFACTORY_HPP virtual FactoryResult< std::unique_ptr< Account > > createAccount(const types::AccountIdType &account_id, const types::DomainIdType &domain_id, types::QuorumType quorum, const types::JsonType &jsonData)=0
std::string AddressType
Type of peer address.
Definition: types.hpp:50
std::string DomainIdType
Iroha domain id type.
Definition: types.hpp:58
Definition: amount.hpp:21
Definition: result_fwd.hpp:27
virtual FactoryResult< std::unique_ptr< AccountAsset > > createAccountAsset(const types::AccountIdType &account_id, const types::AssetIdType &asset_id, const Amount &balance)=0
Definition: common_objects_factory.hpp:27
std::string AccountIdType
Type of account id.
Definition: types.hpp:38
virtual ~CommonObjectsFactory()=default
virtual FactoryResult< std::unique_ptr< Signature > > createSignature(types::PublicKeyHexStringView key, types::SignedHexStringView signed_data)=0
uint8_t PrecisionType
Type of precision.
Definition: types.hpp:46
virtual FactoryResult< std::unique_ptr< Asset > > createAsset(const types::AssetIdType &asset_id, const types::DomainIdType &domain_id, types::PrecisionType precision)=0
Definition: command_executor.hpp:13
virtual FactoryResult< std::unique_ptr< Domain > > createDomain(const types::DomainIdType &domain_id, const types::RoleIdType &default_role)=0
uint16_t QuorumType
Type of Quorum used in transaction and set quorum.
Definition: types.hpp:67
std::string JsonType
Type of JSON data.
Definition: types.hpp:79
virtual FactoryResult< std::unique_ptr< Peer > > createPeer(const types::AddressType &address, types::PublicKeyHexStringView public_key, const std::optional< types::TLSCertificateType > &tls_certificate=std::nullopt)=0
std::string RoleIdType
Type of role (i.e admin, user)
Definition: types.hpp:56
std::string AssetIdType
Type of asset id.
Definition: types.hpp:60