3#include <xrpl/basics/Blob.h>
4#include <xrpl/basics/Log.h>
5#include <xrpl/basics/SHAMapHash.h>
6#include <xrpl/basics/TaggedCache.h>
7#include <xrpl/basics/base_uint.h>
8#include <xrpl/beast/utility/Journal.h>
10#include <boost/asio.hpp>
35 class SharedWeakUnionPointer,
36 class SharedPointerType,
79template <
class Adaptor>
228 [[nodiscard]]
virtual bool
234 virtual boost::asio::io_context&
A generic endpoint for log messages.
A ledger that has become irrevocable.
The amendment table stores the list of enabled and potential amendments.
Provides the beast::insight::Collector service.
Routing table for objects identified by hash.
Manages the lifetime of inbound ledgers.
Manages the acquisition and lifetime of transaction sets.
A pool of threads to perform work.
Check the ledger/transaction databases to make sure they have continuity.
Manages the lifetime of ledger replay tasks.
Manages the current fee schedule.
Manages partitions for logging.
Remembers manifests with the highest sequence number.
Service that provides access to the network ID.
Provides server functionality for clients.
Represents the open ledger.
Tracks order books in the ledger.
Manages the set of connected peers.
Keeps track of which ledgers haven't been fully saved.
Generic validations adaptor class for RCL.
class to create database, launch online delete thread, and related SQLite database
ServiceRegistry()=default
virtual NodeCache & getTempNodeCache()=0
virtual PendingSaves & getPendingSaves()=0
virtual perf::PerfLog & getPerfLog()=0
virtual JobQueue & getJobQueue()=0
virtual RelationalDatabase & getRelationalDatabase()=0
virtual PeerReservationTable & getPeerReservations()=0
virtual AmendmentTable & getAmendmentTable()=0
virtual CollectorManager & getCollectorManager()=0
virtual beast::Journal getJournal(std::string const &name)=0
virtual NetworkOPs & getOPs()=0
virtual TransactionMaster & getMasterTransaction()=0
virtual SHAMapStore & getSHAMapStore()=0
virtual OpenLedger & getOpenLedger()=0
virtual ManifestCache & getPublisherManifests()=0
virtual ValidatorList & getValidators()=0
virtual LoadManager & getLoadManager()=0
virtual NetworkIDService & getNetworkIDService()=0
virtual PathRequestManager & getPathRequestManager()=0
virtual ValidatorSite & getValidatorSites()=0
virtual RCLValidations & getValidations()=0
virtual LoadFeeTrack & getFeeTrack()=0
virtual node_store::Database & getNodeStore()=0
virtual ServerHandler & getServerHandler()=0
virtual InboundLedgers & getInboundLedgers()=0
virtual LedgerMaster & getLedgerMaster()=0
virtual HashRouter & getHashRouter()=0
virtual bool isStopping() const =0
virtual boost::asio::io_context & getIOContext()=0
virtual Cluster & getCluster()=0
virtual Family & getNodeFamily()=0
virtual Application & getApp()=0
virtual DatabaseCon & getWalletDB()=0
Retrieve the "wallet database".
virtual LedgerReplayer & getLedgerReplayer()=0
virtual OpenLedger const & getOpenLedger() const =0
virtual resource::Manager & getResourceManager()=0
virtual OrderBookDB & getOrderBookDB()=0
virtual TaggedCache< uint256, AcceptedLedger > & getAcceptedLedgerCache()=0
virtual Overlay & getOverlay()=0
virtual Logs & getLogs()=0
virtual TimeKeeper & getTimeKeeper()=0
virtual LedgerCleaner & getLedgerCleaner()=0
virtual InboundTransactions & getInboundTransactions()=0
virtual CachedSLEs & getCachedSLEs()=0
virtual ManifestCache & getValidatorManifests()=0
virtual ~ServiceRegistry()=default
virtual std::optional< uint256 > const & getTrapTxID() const =0
Manages various times used by the server.
Maintains current and recent ledger validations.
Persistency layer for NodeObject.
Singleton class that maintains performance counters and optionally writes Json-formatted data to a di...
Tracks load and resource consumption.
Dummy class for unit tests.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Validations< RCLValidationsAdaptor > RCLValidations
Alias for RCL-specific instantiation of generic Validations.
TaggedCache< uint256, SLE const > CachedSLEs
TaggedCache< SHAMapHash, Blob > NodeCache