xrpld
Loading...
Searching...
No Matches
xrpl::ledger_entries::DelegateBuilder Class Reference

Builder for Delegate ledger entries. More...

#include <Delegate.h>

Inheritance diagram for xrpl::ledger_entries::DelegateBuilder:
Collaboration diagram for xrpl::ledger_entries::DelegateBuilder:

Public Member Functions

 DelegateBuilder (std::decay_t< typename SF_ACCOUNT::type::value_type > const &account, std::decay_t< typename SF_ACCOUNT::type::value_type > const &authorize, STArray const &permissions, std::decay_t< typename SF_UINT64::type::value_type > const &ownerNode, std::decay_t< typename SF_UINT256::type::value_type > const &previousTxnID, std::decay_t< typename SF_UINT32::type::value_type > const &previousTxnLgrSeq)
 Construct a new DelegateBuilder with required fields.
 DelegateBuilder (SLE::const_pointer sle)
 Construct a DelegateBuilder from an existing SLE object.
DelegateBuildersetAccount (std::decay_t< typename SF_ACCOUNT::type::value_type > const &value)
 Ledger entry-specific field setters.
DelegateBuildersetAuthorize (std::decay_t< typename SF_ACCOUNT::type::value_type > const &value)
 Set sfAuthorize (SoeRequired).
DelegateBuildersetPermissions (STArray const &value)
 Set sfPermissions (SoeRequired).
DelegateBuildersetOwnerNode (std::decay_t< typename SF_UINT64::type::value_type > const &value)
 Set sfOwnerNode (SoeRequired).
DelegateBuildersetDestinationNode (std::decay_t< typename SF_UINT64::type::value_type > const &value)
 Set sfDestinationNode (SoeOptional).
DelegateBuildersetPreviousTxnID (std::decay_t< typename SF_UINT256::type::value_type > const &value)
 Set sfPreviousTxnID (SoeRequired).
DelegateBuildersetPreviousTxnLgrSeq (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfPreviousTxnLgrSeq (SoeRequired).
Delegate build (uint256 const &index)
 Build and return the completed Delegate wrapper.
bool validate () const
 Validate the ledger entry.
DelegateBuildersetLedgerIndex (uint256 const &value)
 Set the ledger index.
DelegateBuildersetFlags (uint32_t value)
 Set the flags.

Protected Attributes

STObject object_

Detailed Description

Builder for Delegate ledger entries.

Provides a fluent interface for constructing ledger entries with method chaining. Uses STObject internally for flexible ledger entry construction. Inherits common field setters from LedgerEntryBuilderBase.

Definition at line 147 of file Delegate.h.

Constructor & Destructor Documentation

◆ DelegateBuilder() [1/2]

xrpl::ledger_entries::DelegateBuilder::DelegateBuilder ( std::decay_t< typename SF_ACCOUNT::type::value_type > const & account,
std::decay_t< typename SF_ACCOUNT::type::value_type > const & authorize,
STArray const & permissions,
std::decay_t< typename SF_UINT64::type::value_type > const & ownerNode,
std::decay_t< typename SF_UINT256::type::value_type > const & previousTxnID,
std::decay_t< typename SF_UINT32::type::value_type > const & previousTxnLgrSeq )

Construct a new DelegateBuilder with required fields.

Parameters
accountThe sfAccount field value.
authorizeThe sfAuthorize field value.
permissionsThe sfPermissions field value.
ownerNodeThe sfOwnerNode field value.
previousTxnIDThe sfPreviousTxnID field value.
previousTxnLgrSeqThe sfPreviousTxnLgrSeq field value.

Definition at line 159 of file Delegate.h.

◆ DelegateBuilder() [2/2]

xrpl::ledger_entries::DelegateBuilder::DelegateBuilder ( SLE::const_pointer sle)

Construct a DelegateBuilder from an existing SLE object.

Parameters
sleThe existing ledger entry to copy from.
Exceptions
std::runtime_errorif the ledger entry type doesn't match.

Definition at line 175 of file Delegate.h.

Member Function Documentation

◆ setAccount()

DelegateBuilder & xrpl::ledger_entries::DelegateBuilder::setAccount ( std::decay_t< typename SF_ACCOUNT::type::value_type > const & value)

Ledger entry-specific field setters.

Set sfAccount (SoeRequired)

Returns
Reference to this builder for method chaining.

Definition at line 191 of file Delegate.h.

◆ setAuthorize()

DelegateBuilder & xrpl::ledger_entries::DelegateBuilder::setAuthorize ( std::decay_t< typename SF_ACCOUNT::type::value_type > const & value)

Set sfAuthorize (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 202 of file Delegate.h.

◆ setPermissions()

DelegateBuilder & xrpl::ledger_entries::DelegateBuilder::setPermissions ( STArray const & value)

Set sfPermissions (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 213 of file Delegate.h.

◆ setOwnerNode()

DelegateBuilder & xrpl::ledger_entries::DelegateBuilder::setOwnerNode ( std::decay_t< typename SF_UINT64::type::value_type > const & value)

Set sfOwnerNode (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 224 of file Delegate.h.

◆ setDestinationNode()

DelegateBuilder & xrpl::ledger_entries::DelegateBuilder::setDestinationNode ( std::decay_t< typename SF_UINT64::type::value_type > const & value)

Set sfDestinationNode (SoeOptional).

Returns
Reference to this builder for method chaining.

Definition at line 235 of file Delegate.h.

◆ setPreviousTxnID()

DelegateBuilder & xrpl::ledger_entries::DelegateBuilder::setPreviousTxnID ( std::decay_t< typename SF_UINT256::type::value_type > const & value)

Set sfPreviousTxnID (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 246 of file Delegate.h.

◆ setPreviousTxnLgrSeq()

DelegateBuilder & xrpl::ledger_entries::DelegateBuilder::setPreviousTxnLgrSeq ( std::decay_t< typename SF_UINT32::type::value_type > const & value)

Set sfPreviousTxnLgrSeq (SoeRequired).

Returns
Reference to this builder for method chaining.

Definition at line 257 of file Delegate.h.

◆ build()

Delegate xrpl::ledger_entries::DelegateBuilder::build ( uint256 const & index)

Build and return the completed Delegate wrapper.

Parameters
indexThe ledger entry index.
Returns
The constructed ledger entry wrapper.

Definition at line 269 of file Delegate.h.

◆ validate()

bool xrpl::ledger_entries::LedgerEntryBuilderBase< DelegateBuilder >::validate ( ) const
nodiscardinherited

Validate the ledger entry.

Returns
true if validation passes, false otherwise

Definition at line 45 of file LedgerEntryBuilderBase.h.

◆ setLedgerIndex()

Set the ledger index.

Parameters
valueLedger index
Returns
Reference to the derived builder for method chaining.

Definition at line 62 of file LedgerEntryBuilderBase.h.

◆ setFlags()

Set the flags.

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

Definition at line 74 of file LedgerEntryBuilderBase.h.

Member Data Documentation

◆ object_

Definition at line 81 of file LedgerEntryBuilderBase.h.