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 CollectorManager & getCollectorManager ()=0
virtual Family & getNodeFamily ()=0
virtual TimeKeeper & getTimeKeeper ()=0
virtual JobQueue & getJobQueue ()=0
virtual NodeCache & getTempNodeCache ()=0
virtual CachedSLEs & getCachedSLEs ()=0
virtual NetworkIDService & getNetworkIDService ()=0
virtual AmendmentTable & getAmendmentTable ()=0
virtual HashRouter & getHashRouter ()=0
virtual LoadFeeTrack & getFeeTrack ()=0
virtual LoadManager & getLoadManager ()=0
virtual RCLValidations & getValidations ()=0
virtual ValidatorList & getValidators ()=0
virtual ValidatorSite & getValidatorSites ()=0
virtual ManifestCache & getValidatorManifests ()=0
virtual ManifestCache & getPublisherManifests ()=0
virtual Overlay & getOverlay ()=0
virtual Cluster & getCluster ()=0
virtual PeerReservationTable & getPeerReservations ()=0
virtual resource::Manager & getResourceManager ()=0
virtual node_store::Database & getNodeStore ()=0
virtual SHAMapStore & getSHAMapStore ()=0
virtual RelationalDatabase & getRelationalDatabase ()=0
virtual InboundLedgers & getInboundLedgers ()=0
virtual InboundTransactions & getInboundTransactions ()=0
virtual TaggedCache< UInt256, AcceptedLedger > & getAcceptedLedgerCache ()=0
virtual LedgerMaster & getLedgerMaster ()=0
virtual LedgerCleaner & getLedgerCleaner ()=0
virtual LedgerReplayer & getLedgerReplayer ()=0
virtual PendingSaves & getPendingSaves ()=0
virtual OpenLedger & getOpenLedger ()=0
virtual OpenLedger const & getOpenLedger () const =0
virtual NetworkOPs & getOPs ()=0
virtual OrderBookDB & getOrderBookDB ()=0
virtual TransactionMaster & getMasterTransaction ()=0
virtual TxQ & getTxQ ()=0
virtual PathRequestManager & getPathRequestManager ()=0
virtual ServerHandler & getServerHandler ()=0
virtual perf::PerfLog & getPerfLog ()=0
virtual bool isStopping () const =0
virtual beast::Journal getJournal (std::string const &name)=0
virtual boost::asio::io_context & getIOContext ()=0
virtual Logs & getLogs ()=0
virtual std::optional< UInt256 > const & getTrapTxID () const =0
virtual DatabaseCon & getWalletDB ()=0
 Retrieve the "wallet database".
virtual Application & getApp ()=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 97 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 node_store::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