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>
16class AccountSetBuilder;
60 return this->
tx_->at(sfEmailHash);
73 return this->
tx_->isFieldPresent(sfEmailHash);
86 return this->
tx_->at(sfWalletLocator);
99 return this->
tx_->isFieldPresent(sfWalletLocator);
112 return this->
tx_->at(sfWalletSize);
125 return this->
tx_->isFieldPresent(sfWalletSize);
138 return this->
tx_->at(sfMessageKey);
151 return this->
tx_->isFieldPresent(sfMessageKey);
164 return this->
tx_->at(sfDomain);
177 return this->
tx_->isFieldPresent(sfDomain);
190 return this->
tx_->at(sfTransferRate);
203 return this->
tx_->isFieldPresent(sfTransferRate);
216 return this->
tx_->at(sfSetFlag);
229 return this->
tx_->isFieldPresent(sfSetFlag);
242 return this->
tx_->at(sfClearFlag);
255 return this->
tx_->isFieldPresent(sfClearFlag);
268 return this->
tx_->at(sfTickSize);
281 return this->
tx_->isFieldPresent(sfTickSize);
294 return this->
tx_->at(sfNFTokenMinter);
307 return this->
tx_->isFieldPresent(sfNFTokenMinter);
342 if (tx->getTxnType() != ttACCOUNT_SET)
369 object_[sfWalletLocator] = value;
413 object_[sfTransferRate] = value;
457 object_[sfNFTokenMinter] = value;
470 sign(publicKey, secretKey);
Builder for AccountSet transactions.
AccountSetBuilder(SF_ACCOUNT::type::value_type account, std::optional< SF_UINT32::type::value_type > sequence=std::nullopt, std::optional< SF_AMOUNT::type::value_type > fee=std::nullopt)
Construct a new AccountSetBuilder with required fields.
AccountSetBuilder & setMessageKey(std::decay_t< typename SF_VL::type::value_type > const &value)
Set sfMessageKey (soeOPTIONAL)
AccountSetBuilder & setWalletSize(std::decay_t< typename SF_UINT32::type::value_type > const &value)
Set sfWalletSize (soeOPTIONAL)
AccountSetBuilder(std::shared_ptr< STTx const > tx)
Construct a AccountSetBuilder from an existing STTx object.
AccountSetBuilder & setSetFlag(std::decay_t< typename SF_UINT32::type::value_type > const &value)
Set sfSetFlag (soeOPTIONAL)
AccountSetBuilder & setTransferRate(std::decay_t< typename SF_UINT32::type::value_type > const &value)
Set sfTransferRate (soeOPTIONAL)
AccountSetBuilder & setNFTokenMinter(std::decay_t< typename SF_ACCOUNT::type::value_type > const &value)
Set sfNFTokenMinter (soeOPTIONAL)
AccountSetBuilder & setEmailHash(std::decay_t< typename SF_UINT128::type::value_type > const &value)
Transaction-specific field setters.
AccountSet build(PublicKey const &publicKey, SecretKey const &secretKey)
Build and return the AccountSet wrapper.
AccountSetBuilder & setTickSize(std::decay_t< typename SF_UINT8::type::value_type > const &value)
Set sfTickSize (soeOPTIONAL)
AccountSetBuilder & setClearFlag(std::decay_t< typename SF_UINT32::type::value_type > const &value)
Set sfClearFlag (soeOPTIONAL)
AccountSetBuilder & setDomain(std::decay_t< typename SF_VL::type::value_type > const &value)
Set sfDomain (soeOPTIONAL)
AccountSetBuilder & setWalletLocator(std::decay_t< typename SF_UINT256::type::value_type > const &value)
Set sfWalletLocator (soeOPTIONAL)
AccountSet(std::shared_ptr< STTx const > tx)
Construct a AccountSet transaction wrapper from an existing STTx object.
bool hasDomain() const
Check if sfDomain is present.
protocol_autogen::Optional< SF_VL::type::value_type > getMessageKey() const
Get sfMessageKey (soeOPTIONAL)
protocol_autogen::Optional< SF_ACCOUNT::type::value_type > getNFTokenMinter() const
Get sfNFTokenMinter (soeOPTIONAL)
bool hasClearFlag() const
Check if sfClearFlag is present.
bool hasNFTokenMinter() const
Check if sfNFTokenMinter is present.
bool hasWalletLocator() const
Check if sfWalletLocator is present.
bool hasSetFlag() const
Check if sfSetFlag is present.
bool hasTickSize() const
Check if sfTickSize is present.
protocol_autogen::Optional< SF_UINT32::type::value_type > getTransferRate() const
Get sfTransferRate (soeOPTIONAL)
protocol_autogen::Optional< SF_UINT128::type::value_type > getEmailHash() const
Get sfEmailHash (soeOPTIONAL)
protocol_autogen::Optional< SF_UINT32::type::value_type > getWalletSize() const
Get sfWalletSize (soeOPTIONAL)
static constexpr xrpl::TxType txType
protocol_autogen::Optional< SF_UINT32::type::value_type > getSetFlag() const
Get sfSetFlag (soeOPTIONAL)
protocol_autogen::Optional< SF_UINT32::type::value_type > getClearFlag() const
Get sfClearFlag (soeOPTIONAL)
protocol_autogen::Optional< SF_UINT256::type::value_type > getWalletLocator() const
Get sfWalletLocator (soeOPTIONAL)
bool hasEmailHash() const
Check if sfEmailHash is present.
bool hasWalletSize() const
Check if sfWalletSize is present.
protocol_autogen::Optional< SF_UINT8::type::value_type > getTickSize() const
Get sfTickSize (soeOPTIONAL)
bool hasTransferRate() const
Check if sfTransferRate is present.
protocol_autogen::Optional< SF_VL::type::value_type > getDomain() const
Get sfDomain (soeOPTIONAL)
bool hasMessageKey() const
Check if sfMessageKey is present.
Base class for all transaction wrapper types.
std::shared_ptr< STTx const > tx_
The underlying transaction object being wrapped.
Base class for all transaction builders.
AccountSetBuilder & sign(PublicKey const &publicKey, SecretKey const &secretKey)
Sign the transaction with the given keys.
TxType
Transaction type identifiers.