rippled
Loading...
Searching...
No Matches
Public Member Functions | List of all members
xrpl::ServiceRegistry Class Referenceabstract

Service registry for dependency injection. More...

#include <ServiceRegistry.h>

Inheritance diagram for xrpl::ServiceRegistry:
Inheritance graph
[legend]

Public Member Functions

 ServiceRegistry ()=default
 
virtual ~ServiceRegistry ()=default
 
virtual CollectorManagergetCollectorManager ()=0
 
virtual FamilygetNodeFamily ()=0
 
virtual TimeKeepertimeKeeper ()=0
 
virtual JobQueuegetJobQueue ()=0
 
virtual NodeCachegetTempNodeCache ()=0
 
virtual CachedSLEscachedSLEs ()=0
 
virtual AmendmentTablegetAmendmentTable ()=0
 
virtual HashRoutergetHashRouter ()=0
 
virtual LoadFeeTrackgetFeeTrack ()=0
 
virtual LoadManagergetLoadManager ()=0
 
virtual RCLValidationsgetValidations ()=0
 
virtual ValidatorListvalidators ()=0
 
virtual ValidatorSitevalidatorSites ()=0
 
virtual ManifestCachevalidatorManifests ()=0
 
virtual ManifestCachepublisherManifests ()=0
 
virtual Overlayoverlay ()=0
 
virtual Clustercluster ()=0
 
virtual PeerReservationTablepeerReservations ()=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 PendingSavespendingSaves ()=0
 
virtual OpenLedgeropenLedger ()=0
 
virtual OpenLedger const & openLedger () const =0
 
virtual NetworkOPsgetOPs ()=0
 
virtual OrderBookDBgetOrderBookDB ()=0
 
virtual TransactionMastergetMasterTransaction ()=0
 
virtual TxQgetTxQ ()=0
 
virtual PathRequestsgetPathRequests ()=0
 
virtual ServerHandlergetServerHandler ()=0
 
virtual perf::PerfLoggetPerfLog ()=0
 
virtual bool isStopping () const =0
 
virtual beast::Journal journal (std::string const &name)=0
 
virtual boost::asio::io_context & getIOContext ()=0
 
virtual Logslogs ()=0
 
virtual std::optional< uint256 > const & trapTxID () const =0
 
virtual DatabaseCongetWalletDB ()=0
 Retrieve the "wallet database".
 
virtual Applicationapp ()=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 77 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

Implemented in xrpl::ApplicationImp.

◆ getNodeFamily()

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

Implemented in xrpl::ApplicationImp.

◆ timeKeeper()

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

Implemented in xrpl::ApplicationImp.

◆ getJobQueue()

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

Implemented in xrpl::ApplicationImp.

◆ getTempNodeCache()

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

Implemented in xrpl::ApplicationImp.

◆ cachedSLEs()

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

Implemented in xrpl::ApplicationImp.

◆ getAmendmentTable()

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

Implemented in xrpl::ApplicationImp.

◆ getHashRouter()

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

Implemented in xrpl::ApplicationImp.

◆ getFeeTrack()

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

Implemented in xrpl::ApplicationImp.

◆ getLoadManager()

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

Implemented in xrpl::ApplicationImp.

◆ getValidations()

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

Implemented in xrpl::ApplicationImp.

◆ validators()

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

Implemented in xrpl::ApplicationImp.

◆ validatorSites()

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

Implemented in xrpl::ApplicationImp.

◆ validatorManifests()

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

Implemented in xrpl::ApplicationImp.

◆ publisherManifests()

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

Implemented in xrpl::ApplicationImp.

◆ overlay()

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

Implemented in xrpl::ApplicationImp.

◆ cluster()

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

Implemented in xrpl::ApplicationImp.

◆ peerReservations()

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

Implemented in xrpl::ApplicationImp.

◆ getResourceManager()

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

Implemented in xrpl::ApplicationImp.

◆ getNodeStore()

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

Implemented in xrpl::ApplicationImp.

◆ getSHAMapStore()

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

Implemented in xrpl::ApplicationImp.

◆ getRelationalDatabase()

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

Implemented in xrpl::ApplicationImp.

◆ getInboundLedgers()

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

Implemented in xrpl::ApplicationImp.

◆ getInboundTransactions()

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

Implemented in xrpl::ApplicationImp.

◆ getAcceptedLedgerCache()

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

Implemented in xrpl::ApplicationImp.

◆ getLedgerMaster()

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

Implemented in xrpl::ApplicationImp.

◆ getLedgerCleaner()

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

Implemented in xrpl::ApplicationImp.

◆ getLedgerReplayer()

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

Implemented in xrpl::ApplicationImp.

◆ pendingSaves()

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

Implemented in xrpl::ApplicationImp.

◆ openLedger() [1/2]

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

Implemented in xrpl::ApplicationImp.

◆ openLedger() [2/2]

virtual OpenLedger const & xrpl::ServiceRegistry::openLedger ( ) const
pure virtual

Implemented in xrpl::ApplicationImp.

◆ getOPs()

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

Implemented in xrpl::ApplicationImp.

◆ getOrderBookDB()

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

Implemented in xrpl::ApplicationImp.

◆ getMasterTransaction()

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

Implemented in xrpl::ApplicationImp.

◆ getTxQ()

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

Implemented in xrpl::ApplicationImp.

◆ getPathRequests()

virtual PathRequests & xrpl::ServiceRegistry::getPathRequests ( )
pure virtual

Implemented in xrpl::ApplicationImp.

◆ getServerHandler()

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

Implemented in xrpl::ApplicationImp.

◆ getPerfLog()

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

Implemented in xrpl::ApplicationImp.

◆ isStopping()

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

Implemented in xrpl::ApplicationImp.

◆ journal()

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

Implemented in xrpl::ApplicationImp.

◆ getIOContext()

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

Implemented in xrpl::ApplicationImp.

◆ logs()

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

Implemented in xrpl::ApplicationImp.

◆ trapTxID()

virtual std::optional< uint256 > const & xrpl::ServiceRegistry::trapTxID ( ) const
pure virtual

Implemented in xrpl::ApplicationImp.

◆ getWalletDB()

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

Retrieve the "wallet database".

Implemented in xrpl::ApplicationImp.

◆ app()

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

Implemented in xrpl::ApplicationImp.