rippled
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
ripple::SetSignerList Class Reference

See the README.md for an overview of the SetSignerList transaction that this class implements. More...

#include <SetSignerList.h>

Inheritance diagram for ripple::SetSignerList:
Inheritance graph
[legend]
Collaboration diagram for ripple::SetSignerList:
Collaboration graph
[legend]

Public Types

enum  ConsequencesFactoryType { Normal , Blocker , Custom }
 

Public Member Functions

 SetSignerList (ApplyContext &ctx)
 
TER doApply () override
 
void preCompute () override
 
ApplyResult operator() ()
 Process the transaction.
 
ApplyViewview ()
 
ApplyView const & view () const
 

Static Public Member Functions

static NotTEC preflight (PreflightContext const &ctx)
 
static TER removeFromLedger (Application &app, ApplyView &view, AccountID const &account, beast::Journal j)
 
static NotTEC checkSeqProxy (ReadView const &view, STTx const &tx, beast::Journal j)
 
static NotTEC checkPriorTxAndLastLedger (PreclaimContext const &ctx)
 
static TER checkFee (PreclaimContext const &ctx, XRPAmount baseFee)
 
static NotTEC checkSign (PreclaimContext const &ctx)
 
static NotTEC checkBatchSign (PreclaimContext const &ctx)
 
static XRPAmount calculateBaseFee (ReadView const &view, STTx const &tx)
 
static TER preclaim (PreclaimContext const &ctx)
 
static TER checkPermission (ReadView const &view, STTx const &tx)
 
static TER ticketDelete (ApplyView &view, AccountID const &account, uint256 const &ticketIndex, beast::Journal j)
 

Static Public Attributes

static constexpr ConsequencesFactoryType ConsequencesFactory {Blocker}
 

Protected Member Functions

TER apply ()
 

Static Protected Member Functions

static XRPAmount minimumFee (Application &app, XRPAmount baseFee, Fees const &fees, ApplyFlags flags)
 Compute the minimum fee required to process a transaction with a given baseFee based on the current server load.
 

Protected Attributes

ApplyContextctx_
 
beast::WrappedSink sink_
 
beast::Journal const j_
 
AccountID const account_
 
XRPAmount mPriorBalance
 
XRPAmount mSourceBalance
 

Private Types

enum  Operation { unknown , set , destroy }
 

Private Member Functions

TER replaceSignerList ()
 
TER destroySignerList ()
 
void writeSignersToSLE (SLE::pointer const &ledgerEntry, std::uint32_t flags) const
 
std::pair< TER, XRPAmountreset (XRPAmount fee)
 Reset the context, discarding any changes made and adjust the fee.
 
TER consumeSeqProxy (SLE::pointer const &sleAccount)
 
TER payFee ()
 
void trapTransaction (uint256) const
 

Static Private Member Functions

static std::tuple< NotTEC, std::uint32_t, std::vector< SignerEntries::SignerEntry >, OperationdetermineOperation (STTx const &tx, ApplyFlags flags, beast::Journal j)
 
static NotTEC validateQuorumAndSignerEntries (std::uint32_t quorum, std::vector< SignerEntries::SignerEntry > const &signers, AccountID const &account, beast::Journal j, Rules const &)
 
static NotTEC checkSingleSign (AccountID const &idSigner, AccountID const &idAccount, std::shared_ptr< SLE const > sleAccount, Rules const &rules, beast::Journal j)
 
static NotTEC checkMultiSign (ReadView const &view, AccountID const &idAccount, STArray const &txSigners, ApplyFlags const &flags, beast::Journal j)
 

Private Attributes

Operation do_ {unknown}
 
std::uint32_t quorum_ {0}
 
std::vector< SignerEntries::SignerEntrysigners_
 

Detailed Description

See the README.md for an overview of the SetSignerList transaction that this class implements.

Definition at line 38 of file SetSignerList.h.

Member Enumeration Documentation

◆ Operation

Enumerator
unknown 
set 
destroy 

Definition at line 42 of file SetSignerList.h.

◆ ConsequencesFactoryType

Enumerator
Normal 
Blocker 
Custom 

Definition at line 155 of file Transactor.h.

Constructor & Destructor Documentation

◆ SetSignerList()

ripple::SetSignerList::SetSignerList ( ApplyContext ctx)
explicit

Definition at line 50 of file SetSignerList.h.

Member Function Documentation

◆ preflight()

NotTEC ripple::SetSignerList::preflight ( PreflightContext const &  ctx)
static

Definition at line 81 of file SetSignerList.cpp.

◆ doApply()

TER ripple::SetSignerList::doApply ( )
overridevirtual

Implements ripple::Transactor.

Definition at line 126 of file SetSignerList.cpp.

◆ preCompute()

void ripple::SetSignerList::preCompute ( )
overridevirtual

Reimplemented from ripple::Transactor.

Definition at line 145 of file SetSignerList.cpp.

◆ removeFromLedger()

TER ripple::SetSignerList::removeFromLedger ( Application app,
ApplyView view,
AccountID const &  account,
beast::Journal  j 
)
static

Definition at line 246 of file SetSignerList.cpp.

◆ determineOperation()

std::tuple< NotTEC, std::uint32_t, std::vector< SignerEntries::SignerEntry >, SetSignerList::Operation > ripple::SetSignerList::determineOperation ( STTx const &  tx,
ApplyFlags  flags,
beast::Journal  j 
)
staticprivate

Definition at line 47 of file SetSignerList.cpp.

◆ validateQuorumAndSignerEntries()

NotTEC ripple::SetSignerList::validateQuorumAndSignerEntries ( std::uint32_t  quorum,
std::vector< SignerEntries::SignerEntry > const &  signers,
AccountID const &  account,
beast::Journal  j,
Rules const &  rules 
)
staticprivate

Definition at line 261 of file SetSignerList.cpp.

◆ replaceSignerList()

TER ripple::SetSignerList::replaceSignerList ( )
private

Definition at line 333 of file SetSignerList.cpp.

◆ destroySignerList()

TER ripple::SetSignerList::destroySignerList ( )
private

Definition at line 402 of file SetSignerList.cpp.

◆ writeSignersToSLE()

void ripple::SetSignerList::writeSignersToSLE ( SLE::pointer const &  ledgerEntry,
std::uint32_t  flags 
) const
private

Definition at line 422 of file SetSignerList.cpp.

◆ operator()()

ApplyResult ripple::Transactor::operator() ( )
inherited

Process the transaction.

Definition at line 1064 of file Transactor.cpp.

◆ view() [1/2]

ApplyView & ripple::Transactor::view ( )
inherited

Definition at line 161 of file Transactor.h.

◆ view() [2/2]

ApplyView const & ripple::Transactor::view ( ) const
inherited

Definition at line 167 of file Transactor.h.

◆ checkSeqProxy()

NotTEC ripple::Transactor::checkSeqProxy ( ReadView const &  view,
STTx const &  tx,
beast::Journal  j 
)
staticinherited

Definition at line 361 of file Transactor.cpp.

◆ checkPriorTxAndLastLedger()

NotTEC ripple::Transactor::checkPriorTxAndLastLedger ( PreclaimContext const &  ctx)
staticinherited

Definition at line 433 of file Transactor.cpp.

◆ checkFee()

TER ripple::Transactor::checkFee ( PreclaimContext const &  ctx,
XRPAmount  baseFee 
)
staticinherited

Definition at line 261 of file Transactor.cpp.

◆ checkSign()

NotTEC ripple::Transactor::checkSign ( PreclaimContext const &  ctx)
staticinherited

Definition at line 581 of file Transactor.cpp.

◆ checkBatchSign()

NotTEC ripple::Transactor::checkBatchSign ( PreclaimContext const &  ctx)
staticinherited

Definition at line 638 of file Transactor.cpp.

◆ calculateBaseFee()

XRPAmount ripple::Transactor::calculateBaseFee ( ReadView const &  view,
STTx const &  tx 
)
staticinherited

Definition at line 233 of file Transactor.cpp.

◆ preclaim()

static TER ripple::Transactor::preclaim ( PreclaimContext const &  ctx)
staticinherited

Definition at line 202 of file Transactor.h.

◆ checkPermission()

TER ripple::Transactor::checkPermission ( ReadView const &  view,
STTx const &  tx 
)
staticinherited

Definition at line 217 of file Transactor.cpp.

◆ ticketDelete()

TER ripple::Transactor::ticketDelete ( ApplyView view,
AccountID const &  account,
uint256 const &  ticketIndex,
beast::Journal  j 
)
staticinherited

Definition at line 482 of file Transactor.cpp.

◆ apply()

TER ripple::Transactor::apply ( )
protectedinherited

Definition at line 544 of file Transactor.cpp.

◆ minimumFee()

XRPAmount ripple::Transactor::minimumFee ( Application app,
XRPAmount  baseFee,
Fees const &  fees,
ApplyFlags  flags 
)
staticprotectedinherited

Compute the minimum fee required to process a transaction with a given baseFee based on the current server load.

Parameters
appThe application hosting the server
baseFeeThe base fee of a candidate transaction
See also
ripple::calculateBaseFee
Parameters
feesFee settings from the current ledger
flagsTransaction processing fees

Definition at line 251 of file Transactor.cpp.

◆ reset()

std::pair< TER, XRPAmount > ripple::Transactor::reset ( XRPAmount  fee)
privateinherited

Reset the context, discarding any changes made and adjust the fee.

Parameters
feeThe transaction fee to be charged.
Returns
A pair containing the transaction result and the actual fee charged.

Definition at line 1002 of file Transactor.cpp.

◆ consumeSeqProxy()

TER ripple::Transactor::consumeSeqProxy ( SLE::pointer const &  sleAccount)
privateinherited

Definition at line 463 of file Transactor.cpp.

◆ payFee()

TER ripple::Transactor::payFee ( )
privateinherited

Definition at line 326 of file Transactor.cpp.

◆ checkSingleSign()

NotTEC ripple::Transactor::checkSingleSign ( AccountID const &  idSigner,
AccountID const &  idAccount,
std::shared_ptr< SLE const >  sleAccount,
Rules const &  rules,
beast::Journal  j 
)
staticprivateinherited

Definition at line 685 of file Transactor.cpp.

◆ checkMultiSign()

NotTEC ripple::Transactor::checkMultiSign ( ReadView const &  view,
AccountID const &  idAccount,
STArray const &  txSigners,
ApplyFlags const &  flags,
beast::Journal  j 
)
staticprivateinherited

Definition at line 746 of file Transactor.cpp.

◆ trapTransaction()

void ripple::Transactor::trapTransaction ( uint256  txHash) const
privateinherited

Definition at line 1057 of file Transactor.cpp.

Member Data Documentation

◆ do_

Operation ripple::SetSignerList::do_ {unknown}
private

Definition at line 43 of file SetSignerList.h.

◆ quorum_

std::uint32_t ripple::SetSignerList::quorum_ {0}
private

Definition at line 44 of file SetSignerList.h.

◆ signers_

std::vector<SignerEntries::SignerEntry> ripple::SetSignerList::signers_
private

Definition at line 45 of file SetSignerList.h.

◆ ConsequencesFactory

constexpr ConsequencesFactoryType ripple::SetSignerList::ConsequencesFactory {Blocker}
staticconstexpr

Definition at line 48 of file SetSignerList.h.

◆ ctx_

ApplyContext& ripple::Transactor::ctx_
protectedinherited

Definition at line 141 of file Transactor.h.

◆ sink_

beast::WrappedSink ripple::Transactor::sink_
protectedinherited

Definition at line 142 of file Transactor.h.

◆ j_

beast::Journal const ripple::Transactor::j_
protectedinherited

Definition at line 143 of file Transactor.h.

◆ account_

AccountID const ripple::Transactor::account_
protectedinherited

Definition at line 145 of file Transactor.h.

◆ mPriorBalance

XRPAmount ripple::Transactor::mPriorBalance
protectedinherited

Definition at line 146 of file Transactor.h.

◆ mSourceBalance

XRPAmount ripple::Transactor::mSourceBalance
protectedinherited

Definition at line 147 of file Transactor.h.