|
rippled
|
Provides server functionality for clients. More...


Public Types | |
| enum | FailHard : unsigned char { FailHard::no, FailHard::yes } |
| using | clock_type = beast::abstract_clock< std::chrono::steady_clock > |
Public Member Functions | |
| ~NetworkOPs () override=default | |
| virtual void | stop ()=0 |
| virtual OperatingMode | getOperatingMode () const =0 |
| virtual std::string | strOperatingMode (OperatingMode const mode, bool const admin=false) const =0 |
| virtual std::string | strOperatingMode (bool const admin=false) const =0 |
| virtual void | submitTransaction (std::shared_ptr< STTx const > const &)=0 |
| virtual void | processTransaction (std::shared_ptr< Transaction > &transaction, bool bUnlimited, RPC::SubmitSync sync, bool bLocal, FailHard failType)=0 |
| Process a transaction. More... | |
| virtual bool | transactionBatch (bool drain)=0 |
| Apply transactions in batches. More... | |
| virtual Json::Value | getOwnerInfo (std::shared_ptr< ReadView const > lpLedger, AccountID const &account)=0 |
| virtual void | getBookPage (std::shared_ptr< ReadView const > &lpLedger, Book const &book, AccountID const &uTakerID, bool const bProof, unsigned int iLimit, Json::Value const &jvMarker, Json::Value &jvResult)=0 |
| virtual bool | processTrustedProposal (RCLCxPeerPos peerPos)=0 |
| virtual bool | recvValidation (std::shared_ptr< STValidation > const &val, std::string const &source)=0 |
| virtual void | mapComplete (std::shared_ptr< SHAMap > const &map, bool fromAcquire)=0 |
| virtual bool | beginConsensus (uint256 const &netLCL)=0 |
| virtual void | endConsensus ()=0 |
| virtual void | setStandAlone ()=0 |
| virtual void | setStateTimer ()=0 |
| virtual void | setBatchApplyTimer ()=0 |
| virtual void | setNeedNetworkLedger ()=0 |
| virtual void | clearNeedNetworkLedger ()=0 |
| virtual bool | isNeedNetworkLedger ()=0 |
| virtual bool | isFull ()=0 |
| virtual void | setMode (OperatingMode om)=0 |
| virtual bool | isBlocked ()=0 |
| virtual bool | isAmendmentBlocked ()=0 |
| virtual void | setAmendmentBlocked ()=0 |
| virtual bool | isAmendmentWarned ()=0 |
| virtual void | setAmendmentWarned ()=0 |
| virtual void | clearAmendmentWarned ()=0 |
| virtual bool | isUNLBlocked ()=0 |
| virtual void | setUNLBlocked ()=0 |
| virtual void | clearUNLBlocked ()=0 |
| virtual void | consensusViewChange ()=0 |
| virtual Json::Value | getConsensusInfo ()=0 |
| virtual Json::Value | getServerInfo (bool human, bool admin, bool counters)=0 |
| virtual void | clearLedgerFetch ()=0 |
| virtual Json::Value | getLedgerFetchInfo ()=0 |
| virtual std::uint32_t | acceptLedger (std::optional< std::chrono::milliseconds > consensusDelay=std::nullopt)=0 |
| Accepts the current transaction tree, return the new ledger's sequence. More... | |
| virtual void | reportFeeChange ()=0 |
| virtual void | updateLocalTx (ReadView const &newValidLedger)=0 |
| virtual std::size_t | getLocalTxCount ()=0 |
| virtual void | pubLedger (std::shared_ptr< ReadView const > const &lpAccepted)=0 |
| virtual void | pubProposedTransaction (std::shared_ptr< ReadView const > const &ledger, std::shared_ptr< STTx const > const &transaction, TER result)=0 |
| virtual void | pubValidation (std::shared_ptr< STValidation > const &val)=0 |
| virtual void | forwardValidation (Json::Value const &jvObj)=0 |
| virtual void | forwardManifest (Json::Value const &jvObj)=0 |
| virtual void | forwardProposedTransaction (Json::Value const &jvObj)=0 |
| virtual void | forwardProposedAccountTransaction (Json::Value const &jvObj)=0 |
| virtual void | stateAccounting (Json::Value &obj)=0 |
| virtual void | subAccount (ref ispListener, hash_set< AccountID > const &vnaAccountIDs, bool realTime)=0 |
| virtual void | unsubAccount (ref isplistener, hash_set< AccountID > const &vnaAccountIDs, bool realTime)=0 |
| virtual void | unsubAccountInternal (std::uint64_t uListener, hash_set< AccountID > const &vnaAccountIDs, bool realTime)=0 |
| virtual error_code_i | subAccountHistory (ref ispListener, AccountID const &account)=0 |
| subscribe an account's new transactions and retrieve the account's historical transactions More... | |
| virtual void | unsubAccountHistory (ref ispListener, AccountID const &account, bool historyOnly)=0 |
| unsubscribe an account's transactions More... | |
| virtual void | unsubAccountHistoryInternal (std::uint64_t uListener, AccountID const &account, bool historyOnly)=0 |
| virtual bool | subLedger (ref ispListener, Json::Value &jvResult)=0 |
| virtual bool | unsubLedger (std::uint64_t uListener)=0 |
| virtual bool | subBookChanges (ref ispListener)=0 |
| virtual bool | unsubBookChanges (std::uint64_t uListener)=0 |
| virtual bool | subManifests (ref ispListener)=0 |
| virtual bool | unsubManifests (std::uint64_t uListener)=0 |
| virtual void | pubManifest (Manifest const &)=0 |
| virtual bool | subServer (ref ispListener, Json::Value &jvResult, bool admin)=0 |
| virtual bool | unsubServer (std::uint64_t uListener)=0 |
| virtual bool | subBook (ref ispListener, Book const &)=0 |
| virtual bool | unsubBook (std::uint64_t uListener, Book const &)=0 |
| virtual bool | subTransactions (ref ispListener)=0 |
| virtual bool | unsubTransactions (std::uint64_t uListener)=0 |
| virtual bool | subRTTransactions (ref ispListener)=0 |
| virtual bool | unsubRTTransactions (std::uint64_t uListener)=0 |
| virtual bool | subValidations (ref ispListener)=0 |
| virtual bool | unsubValidations (std::uint64_t uListener)=0 |
| virtual bool | subPeerStatus (ref ispListener)=0 |
| virtual bool | unsubPeerStatus (std::uint64_t uListener)=0 |
| virtual void | pubPeerStatus (std::function< Json::Value(void)> const &)=0 |
| virtual bool | subConsensus (ref ispListener)=0 |
| virtual bool | unsubConsensus (std::uint64_t uListener)=0 |
| virtual pointer | findRpcSub (std::string const &strUrl)=0 |
| virtual pointer | addRpcSub (std::string const &strUrl, ref rspEntry)=0 |
| virtual bool | tryRemoveRpcSub (std::string const &strUrl)=0 |
Static Public Member Functions | |
| static FailHard | doFailHard (bool noMeansDont) |
Provides server functionality for clients.
Clients include backend applications, local commands, and connected clients. This class acts as a proxy, fulfilling the command with local data if possible, or asking the network and returning the results if needed.
A backend application or local client can trust a local instance of rippled / NetworkOPs. However, client software connecting to non-local instances of rippled will need to be hardened to protect against hostile or unreliable servers.
Definition at line 90 of file NetworkOPs.h.
Definition at line 93 of file NetworkOPs.h.
|
strong |
| Enumerator | |
|---|---|
| no | |
| yes | |
Definition at line 95 of file NetworkOPs.h.
|
overridedefault |
|
static |
Definition at line 97 of file NetworkOPs.h.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Process a transaction.
The transaction has been submitted either from the peer network or from a client. For client submissions, there are 3 distinct behaviors: 1) sync (default): process transactions in a batch immediately, and return only once the transaction has been processed. 2) async: Put transaction into the batch for the next processing interval and return immediately. 3) wait: Put transaction into the batch for the next processing interval and return only after it is processed.
| transaction | Transaction object. |
| bUnlimited | Whether a privileged client connection submitted it. |
| sync | Client submission synchronous behavior type requested. |
| bLocal | Whether submitted by client (local) or peer. |
| failType | Whether to fail hard or not. |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Apply transactions in batches.
Only a single batch unless drain is set. This is to optimize performance because there is significant overhead in applying each batch, whereas processing an individual transaction is fast.
Setting the drain parameter is relevant for some transaction processing unit tests that expect all submitted transactions to be processed synchronously.
| drain | Whether to process batches until none remain. |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Accepts the current transaction tree, return the new ledger's sequence.
This API is only used via RPC with the server in STANDALONE mode and performs a virtual consensus round, with all the transactions we are proposing being accepted.
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtual |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
subscribe an account's new transactions and retrieve the account's historical transactions
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
unsubscribe an account's transactions
| historyOnly | if true, only stop historical transactions |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
|
pure virtualinherited |
Implemented in ripple::NetworkOPsImp.
1.8.17