rippled
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
xrpl::ledger_entries::DelegateBuilder Class Reference

Builder for Delegate ledger entries. More...

#include <Delegate.h>

Inheritance diagram for xrpl::ledger_entries::DelegateBuilder:
Inheritance graph
[legend]
Collaboration diagram for xrpl::ledger_entries::DelegateBuilder:
Collaboration graph
[legend]

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 (std::shared_ptr< SLE const > 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)
 
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 Json::Value internally for flexible ledger entry construction. Inherits common field setters from LedgerEntryBuilderBase.

Definition at line 123 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 135 of file Delegate.h.

◆ DelegateBuilder() [2/2]

xrpl::ledger_entries::DelegateBuilder::DelegateBuilder ( std::shared_ptr< SLE const >  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 151 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 167 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 178 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 189 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 200 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 211 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 222 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 234 of file Delegate.h.

◆ validate()

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

Validate the ledger entry.

Returns
true if validation passes, false otherwise

Definition at line 45 of file LedgerEntryBuilderBase.h.

◆ setLedgerIndex()

DelegateBuilder & xrpl::ledger_entries::LedgerEntryBuilderBase< DelegateBuilder >::setLedgerIndex ( uint256 const &  value)
inherited

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.