4#include <xrpl/protocol/STTx.h>
5#include <xrpl/protocol/STParsedJSON.h>
6#include <xrpl/protocol/jss.h>
7#include <xrpl/protocol_autogen/TransactionBase.h>
8#include <xrpl/protocol_autogen/TransactionBuilderBase.h>
9#include <xrpl/json/json_value.h>
44 throw std::runtime_error(
"Invalid transaction type for MPTokenIssuanceSet");
55 SF_UINT192::type::value_type
58 return this->
tx_->at(sfMPTokenIssuanceID);
71 return this->
tx_->at(sfHolder);
84 return this->
tx_->isFieldPresent(sfHolder);
97 return this->
tx_->at(sfDomainID);
110 return this->
tx_->isFieldPresent(sfDomainID);
123 return this->
tx_->at(sfMPTokenMetadata);
136 return this->
tx_->isFieldPresent(sfMPTokenMetadata);
149 return this->
tx_->at(sfTransferFee);
162 return this->
tx_->isFieldPresent(sfTransferFee);
175 return this->
tx_->at(sfMutableFlags);
188 return this->
tx_->isFieldPresent(sfMutableFlags);
201 return this->
tx_->at(sfIssuerEncryptionKey);
214 return this->
tx_->isFieldPresent(sfIssuerEncryptionKey);
227 return this->
tx_->at(sfAuditorEncryptionKey);
240 return this->
tx_->isFieldPresent(sfAuditorEncryptionKey);
277 if (tx->getTxnType() != ttMPTOKEN_ISSUANCE_SET)
293 object_[sfMPTokenIssuanceID] = value;
326 object_[sfMPTokenMetadata] = value;
337 object_[sfTransferFee] = value;
348 object_[sfMutableFlags] = value;
359 object_[sfIssuerEncryptionKey] = value;
370 object_[sfAuditorEncryptionKey] = value;
383 sign(publicKey, secretKey);
Builder for MPTokenIssuanceSet transactions.
MPTokenIssuanceSetBuilder & setIssuerEncryptionKey(std::decay_t< typename SF_VL::type::value_type > const &value)
Set sfIssuerEncryptionKey (SoeOptional).
MPTokenIssuanceSetBuilder(std::shared_ptr< STTx const > tx)
Construct a MPTokenIssuanceSetBuilder from an existing STTx object.
MPTokenIssuanceSetBuilder & setMPTokenMetadata(std::decay_t< typename SF_VL::type::value_type > const &value)
Set sfMPTokenMetadata (SoeOptional).
MPTokenIssuanceSetBuilder & setMutableFlags(std::decay_t< typename SF_UINT32::type::value_type > const &value)
Set sfMutableFlags (SoeOptional).
MPTokenIssuanceSetBuilder & setAuditorEncryptionKey(std::decay_t< typename SF_VL::type::value_type > const &value)
Set sfAuditorEncryptionKey (SoeOptional).
MPTokenIssuanceSetBuilder & setHolder(std::decay_t< typename SF_ACCOUNT::type::value_type > const &value)
Set sfHolder (SoeOptional).
MPTokenIssuanceSet build(PublicKey const &publicKey, SecretKey const &secretKey)
Build and return the MPTokenIssuanceSet wrapper.
MPTokenIssuanceSetBuilder & setMPTokenIssuanceID(std::decay_t< typename SF_UINT192::type::value_type > const &value)
Transaction-specific field setters.
MPTokenIssuanceSetBuilder & setTransferFee(std::decay_t< typename SF_UINT16::type::value_type > const &value)
Set sfTransferFee (SoeOptional).
MPTokenIssuanceSetBuilder(SF_ACCOUNT::type::value_type account, std::decay_t< typename SF_UINT192::type::value_type > const &mPTokenIssuanceID, std::optional< SF_UINT32::type::value_type > sequence=std::nullopt, std::optional< SF_AMOUNT::type::value_type > fee=std::nullopt)
Construct a new MPTokenIssuanceSetBuilder with required fields.
MPTokenIssuanceSetBuilder & setDomainID(std::decay_t< typename SF_UINT256::type::value_type > const &value)
Set sfDomainID (SoeOptional).
Transaction: MPTokenIssuanceSet.
static constexpr xrpl::TxType txType
SF_UINT192::type::value_type getMPTokenIssuanceID() const
Get sfMPTokenIssuanceID (SoeRequired).
bool hasAuditorEncryptionKey() const
Check if sfAuditorEncryptionKey is present.
bool hasDomainID() const
Check if sfDomainID is present.
bool hasMPTokenMetadata() const
Check if sfMPTokenMetadata is present.
MPTokenIssuanceSet(std::shared_ptr< STTx const > tx)
Construct a MPTokenIssuanceSet transaction wrapper from an existing STTx object.
protocol_autogen::Optional< SF_ACCOUNT::type::value_type > getHolder() const
Get sfHolder (SoeOptional).
protocol_autogen::Optional< SF_UINT256::type::value_type > getDomainID() const
Get sfDomainID (SoeOptional).
bool hasIssuerEncryptionKey() const
Check if sfIssuerEncryptionKey is present.
protocol_autogen::Optional< SF_VL::type::value_type > getIssuerEncryptionKey() const
Get sfIssuerEncryptionKey (SoeOptional).
protocol_autogen::Optional< SF_UINT32::type::value_type > getMutableFlags() const
Get sfMutableFlags (SoeOptional).
bool hasMutableFlags() const
Check if sfMutableFlags is present.
protocol_autogen::Optional< SF_VL::type::value_type > getMPTokenMetadata() const
Get sfMPTokenMetadata (SoeOptional).
protocol_autogen::Optional< SF_VL::type::value_type > getAuditorEncryptionKey() const
Get sfAuditorEncryptionKey (SoeOptional).
bool hasHolder() const
Check if sfHolder is present.
bool hasTransferFee() const
Check if sfTransferFee is present.
protocol_autogen::Optional< SF_UINT16::type::value_type > getTransferFee() const
Get sfTransferFee (SoeOptional).
std::shared_ptr< STTx const > tx_
The underlying transaction object being wrapped.
TransactionBase(std::shared_ptr< STTx const > tx)
Construct a transaction wrapper from an existing STTx object.
TransactionBuilderBase()=default
MPTokenIssuanceSetBuilder & sign(PublicKey const &publicKey, SecretKey const &secretKey)
std::conditional_t< std::is_reference_v< ValueType >, std::optional< std::reference_wrapper< std::remove_reference_t< ValueType > > >, std::optional< ValueType > > Optional
TxType
Transaction type identifiers.