xrpld
Loading...
Searching...
No Matches
xrpl::transactions::ConfidentialMPTSendBuilder Class Reference

Builder for ConfidentialMPTSend transactions. More...

#include <ConfidentialMPTSend.h>

Inheritance diagram for xrpl::transactions::ConfidentialMPTSendBuilder:
Collaboration diagram for xrpl::transactions::ConfidentialMPTSendBuilder:

Public Member Functions

 ConfidentialMPTSendBuilder (SF_ACCOUNT::type::value_type account, std::decay_t< typename SF_UINT192::type::value_type > const &mPTokenIssuanceID, std::decay_t< typename SF_ACCOUNT::type::value_type > const &destination, std::decay_t< typename SF_VL::type::value_type > const &senderEncryptedAmount, std::decay_t< typename SF_VL::type::value_type > const &destinationEncryptedAmount, std::decay_t< typename SF_VL::type::value_type > const &issuerEncryptedAmount, std::decay_t< typename SF_VL::type::value_type > const &zKProof, std::decay_t< typename SF_VL::type::value_type > const &amountCommitment, std::decay_t< typename SF_VL::type::value_type > const &balanceCommitment, std::optional< SF_UINT32::type::value_type > sequence=std::nullopt, std::optional< SF_AMOUNT::type::value_type > fee=std::nullopt)
 Construct a new ConfidentialMPTSendBuilder with required fields.
 ConfidentialMPTSendBuilder (std::shared_ptr< STTx const > tx)
 Construct a ConfidentialMPTSendBuilder from an existing STTx object.
ConfidentialMPTSendBuildersetMPTokenIssuanceID (std::decay_t< typename SF_UINT192::type::value_type > const &value)
 Transaction-specific field setters.
ConfidentialMPTSendBuildersetDestination (std::decay_t< typename SF_ACCOUNT::type::value_type > const &value)
 Set sfDestination (SoeRequired).
ConfidentialMPTSendBuildersetDestinationTag (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfDestinationTag (SoeOptional).
ConfidentialMPTSendBuildersetSenderEncryptedAmount (std::decay_t< typename SF_VL::type::value_type > const &value)
 Set sfSenderEncryptedAmount (SoeRequired).
ConfidentialMPTSendBuildersetDestinationEncryptedAmount (std::decay_t< typename SF_VL::type::value_type > const &value)
 Set sfDestinationEncryptedAmount (SoeRequired).
ConfidentialMPTSendBuildersetIssuerEncryptedAmount (std::decay_t< typename SF_VL::type::value_type > const &value)
 Set sfIssuerEncryptedAmount (SoeRequired).
ConfidentialMPTSendBuildersetAuditorEncryptedAmount (std::decay_t< typename SF_VL::type::value_type > const &value)
 Set sfAuditorEncryptedAmount (SoeOptional).
ConfidentialMPTSendBuildersetZKProof (std::decay_t< typename SF_VL::type::value_type > const &value)
 Set sfZKProof (SoeRequired).
ConfidentialMPTSendBuildersetAmountCommitment (std::decay_t< typename SF_VL::type::value_type > const &value)
 Set sfAmountCommitment (SoeRequired).
ConfidentialMPTSendBuildersetBalanceCommitment (std::decay_t< typename SF_VL::type::value_type > const &value)
 Set sfBalanceCommitment (SoeRequired).
ConfidentialMPTSendBuildersetCredentialIDs (std::decay_t< typename SF_VECTOR256::type::value_type > const &value)
 Set sfCredentialIDs (SoeOptional).
ConfidentialMPTSend build (PublicKey const &publicKey, SecretKey const &secretKey)
 Build and return the ConfidentialMPTSend wrapper.
ConfidentialMPTSendBuildersetAccount (AccountID const &value)
 Set the account that is sending the transaction.
ConfidentialMPTSendBuildersetFee (STAmount const &value)
 Set the transaction fee.
ConfidentialMPTSendBuildersetSequence (std::uint32_t const &value)
 Set the sequence number.
ConfidentialMPTSendBuildersetTicketSequence (std::uint32_t const &value)
 Set the ticket sequence to use for this transaction.
ConfidentialMPTSendBuildersetFlags (std::uint32_t const &value)
 Set transaction flags.
ConfidentialMPTSendBuildersetSourceTag (std::uint32_t const &value)
 Set the source tag.
ConfidentialMPTSendBuildersetLastLedgerSequence (std::uint32_t const &value)
 Set the last ledger sequence.
ConfidentialMPTSendBuildersetAccountTxnID (uint256 const &value)
 Set the account transaction ID.
ConfidentialMPTSendBuildersetPreviousTxnID (uint256 const &value)
 Set the previous transaction ID.
ConfidentialMPTSendBuildersetOperationLimit (std::uint32_t const &value)
 Set the operation limit.
ConfidentialMPTSendBuildersetMemos (STArray const &value)
 Set the memos array.
ConfidentialMPTSendBuildersetSigners (STArray const &value)
 Set the signers array for multi-signing.
ConfidentialMPTSendBuildersetNetworkID (std::uint32_t const &value)
 Set the network ID.
ConfidentialMPTSendBuildersetDelegate (AccountID const &value)
 Set the delegate account for delegated transactions.
STObject const & getSTObject () const
 Get the underlying STObject.

Protected Member Functions

ConfidentialMPTSendBuildersign (PublicKey const &publicKey, SecretKey const &secretKey)
 Sign the transaction with the given keys.

Protected Attributes

STObject object_

Detailed Description

Builder for ConfidentialMPTSend transactions.

Provides a fluent interface for constructing transactions with method chaining. Uses STObject internally for flexible transaction construction. Inherits common field setters from TransactionBuilderBase.

Definition at line 224 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

Constructor & Destructor Documentation

◆ ConfidentialMPTSendBuilder() [1/2]

xrpl::transactions::ConfidentialMPTSendBuilder::ConfidentialMPTSendBuilder ( SF_ACCOUNT::type::value_type account,
std::decay_t< typename SF_UINT192::type::value_type > const & mPTokenIssuanceID,
std::decay_t< typename SF_ACCOUNT::type::value_type > const & destination,
std::decay_t< typename SF_VL::type::value_type > const & senderEncryptedAmount,
std::decay_t< typename SF_VL::type::value_type > const & destinationEncryptedAmount,
std::decay_t< typename SF_VL::type::value_type > const & issuerEncryptedAmount,
std::decay_t< typename SF_VL::type::value_type > const & zKProof,
std::decay_t< typename SF_VL::type::value_type > const & amountCommitment,
std::decay_t< typename SF_VL::type::value_type > const & balanceCommitment,
std::optional< SF_UINT32::type::value_type > sequence = std::nullopt,
std::optional< SF_AMOUNT::type::value_type > fee = std::nullopt )

Construct a new ConfidentialMPTSendBuilder with required fields.

Parameters
accountThe account initiating the transaction.
mPTokenIssuanceIDThe sfMPTokenIssuanceID field value.
destinationThe sfDestination field value.
senderEncryptedAmountThe sfSenderEncryptedAmount field value.
destinationEncryptedAmountThe sfDestinationEncryptedAmount field value.
issuerEncryptedAmountThe sfIssuerEncryptedAmount field value.
zKProofThe sfZKProof field value.
amountCommitmentThe sfAmountCommitment field value.
balanceCommitmentThe sfBalanceCommitment field value.
sequenceOptional sequence number for the transaction.
feeOptional fee for the transaction.

Definition at line 241 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ ConfidentialMPTSendBuilder() [2/2]

xrpl::transactions::ConfidentialMPTSendBuilder::ConfidentialMPTSendBuilder ( std::shared_ptr< STTx const > tx)

Construct a ConfidentialMPTSendBuilder from an existing STTx object.

Parameters
txThe existing transaction to copy from.
Exceptions
std::runtime_errorif the transaction type doesn't match.

Definition at line 262 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

Member Function Documentation

◆ setMPTokenIssuanceID()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setMPTokenIssuanceID ( std::decay_t< typename SF_UINT192::type::value_type > const & value)

Transaction-specific field setters.

Set sfMPTokenIssuanceID (SoeRequired)

Returns
Reference to this builder for method chaining.

Definition at line 278 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setDestination()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setDestination ( std::decay_t< typename SF_ACCOUNT::type::value_type > const & value)

Set sfDestination (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 289 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setDestinationTag()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setDestinationTag ( std::decay_t< typename SF_UINT32::type::value_type > const & value)

Set sfDestinationTag (SoeOptional).

Returns
Reference to this builder for method chaining.

Definition at line 300 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setSenderEncryptedAmount()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setSenderEncryptedAmount ( std::decay_t< typename SF_VL::type::value_type > const & value)

Set sfSenderEncryptedAmount (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 311 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setDestinationEncryptedAmount()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setDestinationEncryptedAmount ( std::decay_t< typename SF_VL::type::value_type > const & value)

Set sfDestinationEncryptedAmount (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 322 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setIssuerEncryptedAmount()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setIssuerEncryptedAmount ( std::decay_t< typename SF_VL::type::value_type > const & value)

Set sfIssuerEncryptedAmount (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 333 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setAuditorEncryptedAmount()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setAuditorEncryptedAmount ( std::decay_t< typename SF_VL::type::value_type > const & value)

Set sfAuditorEncryptedAmount (SoeOptional).

Returns
Reference to this builder for method chaining.

Definition at line 344 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setZKProof()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setZKProof ( std::decay_t< typename SF_VL::type::value_type > const & value)

Set sfZKProof (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 355 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setAmountCommitment()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setAmountCommitment ( std::decay_t< typename SF_VL::type::value_type > const & value)

Set sfAmountCommitment (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 366 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setBalanceCommitment()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setBalanceCommitment ( std::decay_t< typename SF_VL::type::value_type > const & value)

Set sfBalanceCommitment (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 377 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setCredentialIDs()

ConfidentialMPTSendBuilder & xrpl::transactions::ConfidentialMPTSendBuilder::setCredentialIDs ( std::decay_t< typename SF_VECTOR256::type::value_type > const & value)

Set sfCredentialIDs (SoeOptional).

Returns
Reference to this builder for method chaining.

Definition at line 388 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ build()

ConfidentialMPTSend xrpl::transactions::ConfidentialMPTSendBuilder::build ( PublicKey const & publicKey,
SecretKey const & secretKey )

Build and return the ConfidentialMPTSend wrapper.

Parameters
publicKeyThe public key for signing.
secretKeyThe secret key for signing.
Returns
The constructed transaction wrapper.

Definition at line 401 of file protocol_autogen/transactions/ConfidentialMPTSend.h.

◆ setAccount()

Set the account that is sending the transaction.

Parameters
valueAccount address (typically as a string)
Returns
Reference to the derived builder for method chaining.

Definition at line 62 of file TransactionBuilderBase.h.

◆ setFee()

Set the transaction fee.

Parameters
valueFee in drops (typically as a string or number)
Returns
Reference to the derived builder for method chaining.

Definition at line 74 of file TransactionBuilderBase.h.

◆ setSequence()

Set the sequence number.

Parameters
valueSequence number
Returns
Reference to the derived builder for method chaining.

Definition at line 86 of file TransactionBuilderBase.h.

◆ setTicketSequence()

Set the ticket sequence to use for this transaction.

When using a ticket, the regular sequence number is set to 0.

Parameters
valueTicket sequence number
Returns
Reference to the derived builder for method chaining.

Definition at line 99 of file TransactionBuilderBase.h.

◆ setFlags()

Set transaction flags.

Parameters
valueFlags value
Returns
Reference to the derived builder for method chaining.

Definition at line 112 of file TransactionBuilderBase.h.

◆ setSourceTag()

Set the source tag.

Parameters
valueSource tag
Returns
Reference to the derived builder for method chaining.

Definition at line 124 of file TransactionBuilderBase.h.

◆ setLastLedgerSequence()

Set the last ledger sequence.

Parameters
valueLast ledger sequence number
Returns
Reference to the derived builder for method chaining.

Definition at line 136 of file TransactionBuilderBase.h.

◆ setAccountTxnID()

Set the account transaction ID.

Parameters
valueAccount transaction ID (typically as a hex string)
Returns
Reference to the derived builder for method chaining.

Definition at line 148 of file TransactionBuilderBase.h.

◆ setPreviousTxnID()

Set the previous transaction ID.

Used for emulate027 compatibility.

Parameters
valuePrevious transaction ID
Returns
Reference to the derived builder for method chaining.

Definition at line 161 of file TransactionBuilderBase.h.

◆ setOperationLimit()

Set the operation limit.

Parameters
valueOperation limit
Returns
Reference to the derived builder for method chaining.

Definition at line 173 of file TransactionBuilderBase.h.

◆ setMemos()

Set the memos array.

Parameters
valueArray of memo objects
Returns
Reference to the derived builder for method chaining.

Definition at line 185 of file TransactionBuilderBase.h.

◆ setSigners()

Set the signers array for multi-signing.

Parameters
valueArray of signer objects
Returns
Reference to the derived builder for method chaining.

Definition at line 197 of file TransactionBuilderBase.h.

◆ setNetworkID()

Set the network ID.

Parameters
valueNetwork ID
Returns
Reference to the derived builder for method chaining.

Definition at line 209 of file TransactionBuilderBase.h.

◆ setDelegate()

Set the delegate account for delegated transactions.

Parameters
valueDelegate account ID
Returns
Reference to the derived builder for method chaining.

Definition at line 221 of file TransactionBuilderBase.h.

◆ getSTObject()

Get the underlying STObject.

Returns
The STObject

Definition at line 232 of file TransactionBuilderBase.h.

◆ sign()

ConfidentialMPTSendBuilder & xrpl::transactions::TransactionBuilderBase< ConfidentialMPTSendBuilder >::sign ( PublicKey const & publicKey,
SecretKey const & secretKey )
protectedinherited

Sign the transaction with the given keys.

This sets the SigningPubKey field and computes the TxnSignature.

Parameters
publicKeyThe public key for signing
secretKeyThe secret key for signing
Returns
Reference to the derived builder for method chaining.

Definition at line 248 of file TransactionBuilderBase.h.

Member Data Documentation

◆ object_