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

Builder for Loan ledger entries. More...

#include <Loan.h>

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

Public Member Functions

 LoanBuilder (std::decay_t< typename SF_UINT256::type::value_type > const &previousTxnID, std::decay_t< typename SF_UINT32::type::value_type > const &previousTxnLgrSeq, std::decay_t< typename SF_UINT64::type::value_type > const &ownerNode, std::decay_t< typename SF_UINT64::type::value_type > const &loanBrokerNode, std::decay_t< typename SF_UINT256::type::value_type > const &loanBrokerID, std::decay_t< typename SF_UINT32::type::value_type > const &loanSequence, std::decay_t< typename SF_ACCOUNT::type::value_type > const &borrower, std::decay_t< typename SF_UINT32::type::value_type > const &startDate, std::decay_t< typename SF_UINT32::type::value_type > const &paymentInterval, std::decay_t< typename SF_NUMBER::type::value_type > const &periodicPayment)
 Construct a new LoanBuilder with required fields.
 
 LoanBuilder (std::shared_ptr< SLE const > sle)
 Construct a LoanBuilder from an existing SLE object.
 
LoanBuildersetPreviousTxnID (std::decay_t< typename SF_UINT256::type::value_type > const &value)
 Ledger entry-specific field setters.
 
LoanBuildersetPreviousTxnLgrSeq (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfPreviousTxnLgrSeq (soeREQUIRED)
 
LoanBuildersetOwnerNode (std::decay_t< typename SF_UINT64::type::value_type > const &value)
 Set sfOwnerNode (soeREQUIRED)
 
LoanBuildersetLoanBrokerNode (std::decay_t< typename SF_UINT64::type::value_type > const &value)
 Set sfLoanBrokerNode (soeREQUIRED)
 
LoanBuildersetLoanBrokerID (std::decay_t< typename SF_UINT256::type::value_type > const &value)
 Set sfLoanBrokerID (soeREQUIRED)
 
LoanBuildersetLoanSequence (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfLoanSequence (soeREQUIRED)
 
LoanBuildersetBorrower (std::decay_t< typename SF_ACCOUNT::type::value_type > const &value)
 Set sfBorrower (soeREQUIRED)
 
LoanBuildersetLoanOriginationFee (std::decay_t< typename SF_NUMBER::type::value_type > const &value)
 Set sfLoanOriginationFee (soeDEFAULT)
 
LoanBuildersetLoanServiceFee (std::decay_t< typename SF_NUMBER::type::value_type > const &value)
 Set sfLoanServiceFee (soeDEFAULT)
 
LoanBuildersetLatePaymentFee (std::decay_t< typename SF_NUMBER::type::value_type > const &value)
 Set sfLatePaymentFee (soeDEFAULT)
 
LoanBuildersetClosePaymentFee (std::decay_t< typename SF_NUMBER::type::value_type > const &value)
 Set sfClosePaymentFee (soeDEFAULT)
 
LoanBuildersetOverpaymentFee (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfOverpaymentFee (soeDEFAULT)
 
LoanBuildersetInterestRate (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfInterestRate (soeDEFAULT)
 
LoanBuildersetLateInterestRate (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfLateInterestRate (soeDEFAULT)
 
LoanBuildersetCloseInterestRate (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfCloseInterestRate (soeDEFAULT)
 
LoanBuildersetOverpaymentInterestRate (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfOverpaymentInterestRate (soeDEFAULT)
 
LoanBuildersetStartDate (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfStartDate (soeREQUIRED)
 
LoanBuildersetPaymentInterval (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfPaymentInterval (soeREQUIRED)
 
LoanBuildersetGracePeriod (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfGracePeriod (soeDEFAULT)
 
LoanBuildersetPreviousPaymentDueDate (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfPreviousPaymentDueDate (soeDEFAULT)
 
LoanBuildersetNextPaymentDueDate (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfNextPaymentDueDate (soeDEFAULT)
 
LoanBuildersetPaymentRemaining (std::decay_t< typename SF_UINT32::type::value_type > const &value)
 Set sfPaymentRemaining (soeDEFAULT)
 
LoanBuildersetPeriodicPayment (std::decay_t< typename SF_NUMBER::type::value_type > const &value)
 Set sfPeriodicPayment (soeREQUIRED)
 
LoanBuildersetPrincipalOutstanding (std::decay_t< typename SF_NUMBER::type::value_type > const &value)
 Set sfPrincipalOutstanding (soeDEFAULT)
 
LoanBuildersetTotalValueOutstanding (std::decay_t< typename SF_NUMBER::type::value_type > const &value)
 Set sfTotalValueOutstanding (soeDEFAULT)
 
LoanBuildersetManagementFeeOutstanding (std::decay_t< typename SF_NUMBER::type::value_type > const &value)
 Set sfManagementFeeOutstanding (soeDEFAULT)
 
LoanBuildersetLoanScale (std::decay_t< typename SF_INT32::type::value_type > const &value)
 Set sfLoanScale (soeDEFAULT)
 
Loan build (uint256 const &index)
 Build and return the completed Loan wrapper.
 
bool validate () const
 Validate the ledger entry.
 
LoanBuildersetLedgerIndex (uint256 const &value)
 Set the ledger index.
 
LoanBuildersetFlags (uint32_t value)
 Set the flags.
 

Protected Attributes

STObject object_
 

Detailed Description

Builder for Loan 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 574 of file Loan.h.

Constructor & Destructor Documentation

◆ LoanBuilder() [1/2]

xrpl::ledger_entries::LoanBuilder::LoanBuilder ( std::decay_t< typename SF_UINT256::type::value_type > const &  previousTxnID,
std::decay_t< typename SF_UINT32::type::value_type > const &  previousTxnLgrSeq,
std::decay_t< typename SF_UINT64::type::value_type > const &  ownerNode,
std::decay_t< typename SF_UINT64::type::value_type > const &  loanBrokerNode,
std::decay_t< typename SF_UINT256::type::value_type > const &  loanBrokerID,
std::decay_t< typename SF_UINT32::type::value_type > const &  loanSequence,
std::decay_t< typename SF_ACCOUNT::type::value_type > const &  borrower,
std::decay_t< typename SF_UINT32::type::value_type > const &  startDate,
std::decay_t< typename SF_UINT32::type::value_type > const &  paymentInterval,
std::decay_t< typename SF_NUMBER::type::value_type > const &  periodicPayment 
)

Construct a new LoanBuilder with required fields.

Parameters
previousTxnIDThe sfPreviousTxnID field value.
previousTxnLgrSeqThe sfPreviousTxnLgrSeq field value.
ownerNodeThe sfOwnerNode field value.
loanBrokerNodeThe sfLoanBrokerNode field value.
loanBrokerIDThe sfLoanBrokerID field value.
loanSequenceThe sfLoanSequence field value.
borrowerThe sfBorrower field value.
startDateThe sfStartDate field value.
paymentIntervalThe sfPaymentInterval field value.
periodicPaymentThe sfPeriodicPayment field value.

Definition at line 590 of file Loan.h.

◆ LoanBuilder() [2/2]

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

Construct a LoanBuilder 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 610 of file Loan.h.

Member Function Documentation

◆ setPreviousTxnID()

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

Ledger entry-specific field setters.

Set sfPreviousTxnID (soeREQUIRED)

Returns
Reference to this builder for method chaining.

Definition at line 626 of file Loan.h.

◆ setPreviousTxnLgrSeq()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::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 637 of file Loan.h.

◆ setOwnerNode()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::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 648 of file Loan.h.

◆ setLoanBrokerNode()

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

Set sfLoanBrokerNode (soeREQUIRED)

Returns
Reference to this builder for method chaining.

Definition at line 659 of file Loan.h.

◆ setLoanBrokerID()

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

Set sfLoanBrokerID (soeREQUIRED)

Returns
Reference to this builder for method chaining.

Definition at line 670 of file Loan.h.

◆ setLoanSequence()

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

Set sfLoanSequence (soeREQUIRED)

Returns
Reference to this builder for method chaining.

Definition at line 681 of file Loan.h.

◆ setBorrower()

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

Set sfBorrower (soeREQUIRED)

Returns
Reference to this builder for method chaining.

Definition at line 692 of file Loan.h.

◆ setLoanOriginationFee()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::setLoanOriginationFee ( std::decay_t< typename SF_NUMBER::type::value_type > const &  value)

Set sfLoanOriginationFee (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 703 of file Loan.h.

◆ setLoanServiceFee()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::setLoanServiceFee ( std::decay_t< typename SF_NUMBER::type::value_type > const &  value)

Set sfLoanServiceFee (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 714 of file Loan.h.

◆ setLatePaymentFee()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::setLatePaymentFee ( std::decay_t< typename SF_NUMBER::type::value_type > const &  value)

Set sfLatePaymentFee (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 725 of file Loan.h.

◆ setClosePaymentFee()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::setClosePaymentFee ( std::decay_t< typename SF_NUMBER::type::value_type > const &  value)

Set sfClosePaymentFee (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 736 of file Loan.h.

◆ setOverpaymentFee()

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

Set sfOverpaymentFee (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 747 of file Loan.h.

◆ setInterestRate()

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

Set sfInterestRate (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 758 of file Loan.h.

◆ setLateInterestRate()

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

Set sfLateInterestRate (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 769 of file Loan.h.

◆ setCloseInterestRate()

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

Set sfCloseInterestRate (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 780 of file Loan.h.

◆ setOverpaymentInterestRate()

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

Set sfOverpaymentInterestRate (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 791 of file Loan.h.

◆ setStartDate()

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

Set sfStartDate (soeREQUIRED)

Returns
Reference to this builder for method chaining.

Definition at line 802 of file Loan.h.

◆ setPaymentInterval()

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

Set sfPaymentInterval (soeREQUIRED)

Returns
Reference to this builder for method chaining.

Definition at line 813 of file Loan.h.

◆ setGracePeriod()

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

Set sfGracePeriod (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 824 of file Loan.h.

◆ setPreviousPaymentDueDate()

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

Set sfPreviousPaymentDueDate (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 835 of file Loan.h.

◆ setNextPaymentDueDate()

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

Set sfNextPaymentDueDate (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 846 of file Loan.h.

◆ setPaymentRemaining()

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

Set sfPaymentRemaining (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 857 of file Loan.h.

◆ setPeriodicPayment()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::setPeriodicPayment ( std::decay_t< typename SF_NUMBER::type::value_type > const &  value)

Set sfPeriodicPayment (soeREQUIRED)

Returns
Reference to this builder for method chaining.

Definition at line 868 of file Loan.h.

◆ setPrincipalOutstanding()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::setPrincipalOutstanding ( std::decay_t< typename SF_NUMBER::type::value_type > const &  value)

Set sfPrincipalOutstanding (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 879 of file Loan.h.

◆ setTotalValueOutstanding()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::setTotalValueOutstanding ( std::decay_t< typename SF_NUMBER::type::value_type > const &  value)

Set sfTotalValueOutstanding (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 890 of file Loan.h.

◆ setManagementFeeOutstanding()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::setManagementFeeOutstanding ( std::decay_t< typename SF_NUMBER::type::value_type > const &  value)

Set sfManagementFeeOutstanding (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 901 of file Loan.h.

◆ setLoanScale()

LoanBuilder & xrpl::ledger_entries::LoanBuilder::setLoanScale ( std::decay_t< typename SF_INT32::type::value_type > const &  value)

Set sfLoanScale (soeDEFAULT)

Returns
Reference to this builder for method chaining.

Definition at line 912 of file Loan.h.

◆ build()

Loan xrpl::ledger_entries::LoanBuilder::build ( uint256 const &  index)

Build and return the completed Loan wrapper.

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

Definition at line 924 of file Loan.h.

◆ validate()

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

Validate the ledger entry.

Returns
true if validation passes, false otherwise

Definition at line 45 of file LedgerEntryBuilderBase.h.

◆ setLedgerIndex()

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

LoanBuilder & xrpl::ledger_entries::LedgerEntryBuilderBase< LoanBuilder >::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.