| 
    rippled
    
   | 
 
Provides server functionality for clients. More...
#include <NetworkOPs.h>


Public Types | |
| enum class | FailHard : unsigned char { no , 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, bool bLocal, FailHard failType)=0 | 
| Process transactions as they arrive from the network or which are submitted by clients.   | |
| virtual void | processTransactionSet (CanonicalTXSet const &set)=0 | 
| Process a set of transactions synchronously, and ensuring that they are processed in one batch.   | |
| 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, std::unique_ptr< std::stringstream > const &clog)=0 | 
| virtual void | endConsensus (std::unique_ptr< std::stringstream > const &clog)=0 | 
| virtual void | setStandAlone ()=0 | 
| virtual void | setStateTimer ()=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.   | |
| 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 | 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   | |
| virtual void | unsubAccountHistory (ref ispListener, AccountID const &account, bool historyOnly)=0 | 
| unsubscribe an account's transactions   | |
| 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 88 of file NetworkOPs.h.
Definition at line 91 of file NetworkOPs.h.
      
  | 
  strong | 
| Enumerator | |
|---|---|
| no | |
| yes | |
Definition at line 93 of file NetworkOPs.h.
      
  | 
  overridedefault | 
      
  | 
  static | 
Definition at line 95 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 transactions as they arrive from the network or which are submitted by clients.
Process local transactions synchronously
| transaction | Transaction object | 
| bUnlimited | Whether a privileged client connection submitted it. | 
| bLocal | Client submission. | 
| failType | fail_hard setting from transaction submission. | 
Implemented in ripple::NetworkOPsImp.
      
  | 
  pure virtual | 
Process a set of transactions synchronously, and ensuring that they are processed in one batch.
| set | Transaction object set | 
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 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.