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

Builder for Ticket ledger entries. More...

#include <Ticket.h>

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

Public Member Functions

 TicketBuilder (std::decay_t< typename SF_ACCOUNT::type::value_type > const &account, std::decay_t< typename SF_UINT64::type::value_type > const &ownerNode, std::decay_t< typename SF_UINT32::type::value_type > const &ticketSequence, 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 TicketBuilder with required fields.
 
 TicketBuilder (std::shared_ptr< SLE const > sle)
 Construct a TicketBuilder from an existing SLE object.
 
TicketBuildersetAccount (std::decay_t< typename SF_ACCOUNT::type::value_type > const &value)
 Ledger entry-specific field setters.
 
TicketBuildersetOwnerNode (std::decay_t< typename SF_UINT64::type::value_type > const &value)
 Set sfOwnerNode (soeREQUIRED)
 
TicketBuildersetTicketSequence (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfTicketSequence (soeREQUIRED)
 
TicketBuildersetPreviousTxnID (std::decay_t< typename SF_UINT256::type::value_type > const &value)
 Set sfPreviousTxnID (soeREQUIRED)
 
TicketBuildersetPreviousTxnLgrSeq (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfPreviousTxnLgrSeq (soeREQUIRED)
 
Ticket build (uint256 const &index)
 Build and return the completed Ticket wrapper.
 
bool validate () const
 Validate the ledger entry.
 
TicketBuildersetLedgerIndex (uint256 const &value)
 Set the ledger index.
 
TicketBuildersetFlags (uint32_t value)
 Set the flags.
 

Protected Attributes

STObject object_
 

Detailed Description

Builder for Ticket 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 111 of file Ticket.h.

Constructor & Destructor Documentation

◆ TicketBuilder() [1/2]

xrpl::ledger_entries::TicketBuilder::TicketBuilder ( std::decay_t< typename SF_ACCOUNT::type::value_type > const &  account,
std::decay_t< typename SF_UINT64::type::value_type > const &  ownerNode,
std::decay_t< typename SF_UINT32::type::value_type > const &  ticketSequence,
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 TicketBuilder with required fields.

Parameters
accountThe sfAccount field value.
ownerNodeThe sfOwnerNode field value.
ticketSequenceThe sfTicketSequence field value.
previousTxnIDThe sfPreviousTxnID field value.
previousTxnLgrSeqThe sfPreviousTxnLgrSeq field value.

Definition at line 122 of file Ticket.h.

◆ TicketBuilder() [2/2]

xrpl::ledger_entries::TicketBuilder::TicketBuilder ( std::shared_ptr< SLE const >  sle)

Construct a TicketBuilder 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 137 of file Ticket.h.

Member Function Documentation

◆ setAccount()

TicketBuilder & xrpl::ledger_entries::TicketBuilder::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 153 of file Ticket.h.

◆ setOwnerNode()

TicketBuilder & xrpl::ledger_entries::TicketBuilder::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 164 of file Ticket.h.

◆ setTicketSequence()

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

Set sfTicketSequence (soeREQUIRED)

Returns
Reference to this builder for method chaining.

Definition at line 175 of file Ticket.h.

◆ setPreviousTxnID()

TicketBuilder & xrpl::ledger_entries::TicketBuilder::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 186 of file Ticket.h.

◆ setPreviousTxnLgrSeq()

TicketBuilder & xrpl::ledger_entries::TicketBuilder::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 197 of file Ticket.h.

◆ build()

Ticket xrpl::ledger_entries::TicketBuilder::build ( uint256 const &  index)

Build and return the completed Ticket wrapper.

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

Definition at line 209 of file Ticket.h.

◆ validate()

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

Validate the ledger entry.

Returns
true if validation passes, false otherwise

Definition at line 45 of file LedgerEntryBuilderBase.h.

◆ setLedgerIndex()

TicketBuilder & xrpl::ledger_entries::LedgerEntryBuilderBase< TicketBuilder >::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()

TicketBuilder & xrpl::ledger_entries::LedgerEntryBuilderBase< TicketBuilder >::setFlags ( uint32_t  value)
inherited

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.