xrpld
Loading...
Searching...
No Matches
xrpl::ServiceRegistry Class Referenceabstract

Service registry for dependency injection. More...

#include <ServiceRegistry.h>

Inheritance diagram for xrpl::ServiceRegistry:

Public Member Functions

 ServiceRegistry ()=default
virtual ~ServiceRegistry ()=default
virtual CollectorManagergetCollectorManager ()=0
virtual FamilygetNodeFamily ()=0
virtual TimeKeepergetTimeKeeper ()=0
virtual JobQueuegetJobQueue ()=0
virtual NodeCachegetTempNodeCache ()=0
virtual CachedSLEsgetCachedSLEs ()=0
virtual NetworkIDServicegetNetworkIDService ()=0
virtual AmendmentTablegetAmendmentTable ()=0
virtual HashRoutergetHashRouter ()=0
virtual LoadFeeTrackgetFeeTrack ()=0
virtual LoadManagergetLoadManager ()=0
virtual RCLValidationsgetValidations ()=0
virtual ValidatorListgetValidators ()=0
virtual ValidatorSitegetValidatorSites ()=0
virtual ManifestCachegetValidatorManifests ()=0
virtual ManifestCachegetPublisherManifests ()=0
virtual OverlaygetOverlay ()=0
virtual ClustergetCluster ()=0
virtual PeerReservationTablegetPeerReservations ()=0
virtual Resource::ManagergetResourceManager ()=0
virtual NodeStore::DatabasegetNodeStore ()=0
virtual SHAMapStoregetSHAMapStore ()=0
virtual RelationalDatabasegetRelationalDatabase ()=0
virtual InboundLedgersgetInboundLedgers ()=0
virtual InboundTransactionsgetInboundTransactions ()=0
virtual TaggedCache< uint256, AcceptedLedger > & getAcceptedLedgerCache ()=0
virtual LedgerMastergetLedgerMaster ()=0
virtual LedgerCleanergetLedgerCleaner ()=0
virtual LedgerReplayergetLedgerReplayer ()=0
virtual PendingSavesgetPendingSaves ()=0
virtual OpenLedgergetOpenLedger ()=0
virtual OpenLedger const & getOpenLedger () const =0
virtual NetworkOPsgetOPs ()=0
virtual OrderBookDBgetOrderBookDB ()=0
virtual TransactionMastergetMasterTransaction ()=0
virtual TxQgetTxQ ()=0
virtual PathRequestManagergetPathRequestManager ()=0
virtual ServerHandlergetServerHandler ()=0
virtual perf::PerfLoggetPerfLog ()=0
virtual bool isStopping () const =0
virtual beast::Journal getJournal (std::string const &name)=0
virtual boost::asio::io_context & getIOContext ()=0
virtual LogsgetLogs ()=0
virtual std::optional< uint256 > const & getTrapTxID () const =0
virtual DatabaseCongetWalletDB ()=0
 Retrieve the "wallet database".
virtual ApplicationgetApp ()=0

Detailed Description

Service registry for dependency injection.

This abstract interface provides access to various services and components used throughout the application. It separates the service locator pattern from the Application lifecycle management.

Components that need access to services can hold a reference to ServiceRegistry rather than Application when they only need service access and not lifecycle management.

Definition at line 91 of file ServiceRegistry.h.

Constructor & Destructor Documentation

◆ ServiceRegistry()

xrpl::ServiceRegistry::ServiceRegistry ( )
default

◆ ~ServiceRegistry()

virtual xrpl::ServiceRegistry::~ServiceRegistry ( )
virtualdefault

Member Function Documentation

◆ getCollectorManager()

virtual CollectorManager & xrpl::ServiceRegistry::getCollectorManager ( )
pure virtual

◆ getNodeFamily()

virtual Family & xrpl::ServiceRegistry::getNodeFamily ( )
pure virtual

◆ getTimeKeeper()

virtual TimeKeeper & xrpl::ServiceRegistry::getTimeKeeper ( )
pure virtual

◆ getJobQueue()

virtual JobQueue & xrpl::ServiceRegistry::getJobQueue ( )
pure virtual

◆ getTempNodeCache()

virtual NodeCache & xrpl::ServiceRegistry::getTempNodeCache ( )
pure virtual

◆ getCachedSLEs()

virtual CachedSLEs & xrpl::ServiceRegistry::getCachedSLEs ( )
pure virtual

◆ getNetworkIDService()

virtual NetworkIDService & xrpl::ServiceRegistry::getNetworkIDService ( )
pure virtual

◆ getAmendmentTable()

virtual AmendmentTable & xrpl::ServiceRegistry::getAmendmentTable ( )
pure virtual

◆ getHashRouter()

virtual HashRouter & xrpl::ServiceRegistry::getHashRouter ( )
pure virtual

◆ getFeeTrack()

virtual LoadFeeTrack & xrpl::ServiceRegistry::getFeeTrack ( )
pure virtual

◆ getLoadManager()

virtual LoadManager & xrpl::ServiceRegistry::getLoadManager ( )
pure virtual

◆ getValidations()

virtual RCLValidations & xrpl::ServiceRegistry::getValidations ( )
pure virtual

◆ getValidators()

virtual ValidatorList & xrpl::ServiceRegistry::getValidators ( )
pure virtual

◆ getValidatorSites()

virtual ValidatorSite & xrpl::ServiceRegistry::getValidatorSites ( )
pure virtual

◆ getValidatorManifests()

virtual ManifestCache & xrpl::ServiceRegistry::getValidatorManifests ( )
pure virtual

◆ getPublisherManifests()

virtual ManifestCache & xrpl::ServiceRegistry::getPublisherManifests ( )
pure virtual

◆ getOverlay()

virtual Overlay & xrpl::ServiceRegistry::getOverlay ( )
pure virtual

◆ getCluster()

virtual Cluster & xrpl::ServiceRegistry::getCluster ( )
pure virtual

◆ getPeerReservations()

virtual PeerReservationTable & xrpl::ServiceRegistry::getPeerReservations ( )
pure virtual

◆ getResourceManager()

virtual Resource::Manager & xrpl::ServiceRegistry::getResourceManager ( )
pure virtual

◆ getNodeStore()

virtual NodeStore::Database & xrpl::ServiceRegistry::getNodeStore ( )
pure virtual

◆ getSHAMapStore()

virtual SHAMapStore & xrpl::ServiceRegistry::getSHAMapStore ( )
pure virtual

◆ getRelationalDatabase()

virtual RelationalDatabase & xrpl::ServiceRegistry::getRelationalDatabase ( )
pure virtual

◆ getInboundLedgers()

virtual InboundLedgers & xrpl::ServiceRegistry::getInboundLedgers ( )
pure virtual

◆ getInboundTransactions()

virtual InboundTransactions & xrpl::ServiceRegistry::getInboundTransactions ( )
pure virtual

◆ getAcceptedLedgerCache()

virtual TaggedCache< uint256, AcceptedLedger > & xrpl::ServiceRegistry::getAcceptedLedgerCache ( )
pure virtual

◆ getLedgerMaster()

virtual LedgerMaster & xrpl::ServiceRegistry::getLedgerMaster ( )
pure virtual

◆ getLedgerCleaner()

virtual LedgerCleaner & xrpl::ServiceRegistry::getLedgerCleaner ( )
pure virtual

◆ getLedgerReplayer()

virtual LedgerReplayer & xrpl::ServiceRegistry::getLedgerReplayer ( )
pure virtual

◆ getPendingSaves()

virtual PendingSaves & xrpl::ServiceRegistry::getPendingSaves ( )
pure virtual

◆ getOpenLedger() [1/2]

virtual OpenLedger & xrpl::ServiceRegistry::getOpenLedger ( )
pure virtual

◆ getOpenLedger() [2/2]

virtual OpenLedger const & xrpl::ServiceRegistry::getOpenLedger ( ) const
nodiscardpure virtual

◆ getOPs()

virtual NetworkOPs & xrpl::ServiceRegistry::getOPs ( )
pure virtual

◆ getOrderBookDB()

virtual OrderBookDB & xrpl::ServiceRegistry::getOrderBookDB ( )
pure virtual

◆ getMasterTransaction()

virtual TransactionMaster & xrpl::ServiceRegistry::getMasterTransaction ( )
pure virtual

◆ getTxQ()

virtual TxQ & xrpl::ServiceRegistry::getTxQ ( )
pure virtual

◆ getPathRequestManager()

virtual PathRequestManager & xrpl::ServiceRegistry::getPathRequestManager ( )
pure virtual

◆ getServerHandler()

virtual ServerHandler & xrpl::ServiceRegistry::getServerHandler ( )
pure virtual

◆ getPerfLog()

virtual perf::PerfLog & xrpl::ServiceRegistry::getPerfLog ( )
pure virtual

◆ isStopping()

virtual bool xrpl::ServiceRegistry::isStopping ( ) const
nodiscardpure virtual

◆ getJournal()

virtual beast::Journal xrpl::ServiceRegistry::getJournal ( std::string const & name)
pure virtual

◆ getIOContext()

virtual boost::asio::io_context & xrpl::ServiceRegistry::getIOContext ( )
pure virtual

◆ getLogs()

virtual Logs & xrpl::ServiceRegistry::getLogs ( )
pure virtual

◆ getTrapTxID()

virtual std::optional< uint256 > const & xrpl::ServiceRegistry::getTrapTxID ( ) const
nodiscardpure virtual

◆ getWalletDB()

virtual DatabaseCon & xrpl::ServiceRegistry::getWalletDB ( )
pure virtual

Retrieve the "wallet database".

Implemented in xrpl::ApplicationImp, and xrpl::test::TestServiceRegistry.

◆ getApp()

virtual Application & xrpl::ServiceRegistry::getApp ( )
pure virtual