CatapultServer  v0.5.0.1 (Elephant)
AccountMosaicRestrictionBuilder.h
Go to the documentation of this file.
1 
21 #pragma once
22 #include "TransactionBuilder.h"
24 #include <vector>
25 
26 namespace catapult { namespace builders {
27 
30  public:
31  using Transaction = model::AccountMosaicRestrictionTransaction;
32  using EmbeddedTransaction = model::EmbeddedAccountMosaicRestrictionTransaction;
33 
34  public:
38 
39  public:
42 
45 
46  public:
49  size_t size() const;
50 
52  std::unique_ptr<Transaction> build() const;
53 
55  std::unique_ptr<EmbeddedTransaction> buildEmbedded() const;
56 
57  private:
58  template<typename TTransaction>
59  size_t sizeImpl() const;
60 
61  template<typename TTransaction>
62  std::unique_ptr<TTransaction> buildImpl() const;
63 
64  private:
66  std::vector<model::AccountMosaicRestrictionModification> m_modifications;
67  };
68 }}
catapult::builders::AccountMosaicRestrictionBuilder::m_modifications
std::vector< model::AccountMosaicRestrictionModification > m_modifications
Definition: AccountMosaicRestrictionBuilder.h:66
catapult::builders::AccountMosaicRestrictionBuilder::buildImpl
std::unique_ptr< TTransaction > buildImpl() const
AccountMosaicRestrictionBuilder.h
catapult::builders::TransactionBuilder::signer
const Key & signer() const
Returns signer.
Definition: TransactionBuilder.h:41
catapult::builders::AccountMosaicRestrictionBuilder::AccountMosaicRestrictionBuilder
AccountMosaicRestrictionBuilder(model::NetworkIdentifier networkIdentifier, const Key &signer)
Definition: AccountMosaicRestrictionBuilder.cpp:25
catapult::model::AccountRestrictionType
AccountRestrictionType
Account restriction types.
Definition: AccountRestrictionTypes.h:31
catapult::builders::AccountMosaicRestrictionBuilder::sizeImpl
size_t sizeImpl() const
Definition: AccountMosaicRestrictionBuilder.cpp:52
AccountMosaicRestrictionTransaction.h
catapult::builders::AccountMosaicRestrictionBuilder::m_restrictionType
model::AccountRestrictionType m_restrictionType
Definition: AccountMosaicRestrictionBuilder.h:65
catapult::builders::AccountMosaicRestrictionBuilder::Transaction
model::AccountMosaicRestrictionTransaction Transaction
Definition: AccountMosaicRestrictionBuilder.h:31
catapult::builders::AccountMosaicRestrictionBuilder::build
std::unique_ptr< Transaction > build() const
Builds a new account mosaic restriction transaction.
Definition: AccountMosaicRestrictionBuilder.cpp:43
catapult::builders::AccountMosaicRestrictionBuilder::buildEmbedded
std::unique_ptr< EmbeddedTransaction > buildEmbedded() const
Builds a new embedded account mosaic restriction transaction.
Definition: AccountMosaicRestrictionBuilder.cpp:47
TransactionBuilder.h
catapult::builders::AccountMosaicRestrictionBuilder::addModification
void addModification(const model::AccountMosaicRestrictionModification &modification)
Adds modification to account restriction modifications.
Definition: AccountMosaicRestrictionBuilder.cpp:35
catapult::builders::AccountMosaicRestrictionBuilder
Builder for an account mosaic restriction transaction.
Definition: AccountMosaicRestrictionBuilder.h:29
catapult::model::NetworkIdentifier
NetworkIdentifier
Possible network identifiers.
Definition: NetworkInfo.h:45
catapult::builders::TransactionBuilder
Base transaction builder.
Definition: TransactionBuilder.h:31
catapult
Definition: AddressExtractionExtension.cpp:28
catapult::model::AccountRestrictionModification
Binary layout for an account restriction modification.
Definition: AccountRestrictionTypes.h:61
catapult::utils::ByteArray< Key_Size, Key_tag >
catapult::builders::AccountMosaicRestrictionBuilder::EmbeddedTransaction
model::EmbeddedAccountMosaicRestrictionTransaction EmbeddedTransaction
Definition: AccountMosaicRestrictionBuilder.h:32
catapult::builders::AccountMosaicRestrictionBuilder::setRestrictionType
void setRestrictionType(model::AccountRestrictionType restrictionType)
Sets the account restriction type to restrictionType.
Definition: AccountMosaicRestrictionBuilder.cpp:31
catapult::model::AccountMosaicRestrictionModification
AccountRestrictionModification< UnresolvedMosaicId > AccountMosaicRestrictionModification
Modification type used with account mosaic restriction transaction.
Definition: AccountMosaicRestrictionTransaction.h:27
catapult::builders::AccountMosaicRestrictionBuilder::size
size_t size() const
Definition: AccountMosaicRestrictionBuilder.cpp:39
catapult::builders::TransactionType
model::AggregateTransaction TransactionType
Definition: AggregateTransactionBuilder.cpp:28