3#include <xrpl/beast/utility/Journal.h>
4#include <xrpl/nodestore/Backend.h>
5#include <xrpl/nodestore/Database.h>
6#include <xrpl/nodestore/Factory.h>
7#include <xrpl/nodestore/Scheduler.h>
97 Section const& backendParameters,
A generic endpoint for log messages.
Holds a collection of configuration values.
Base class for backend factories.
Manager & operator=(Manager const &)=delete
virtual std::unique_ptr< Backend > makeBackend(Section const ¶meters, std::size_t burstSize, Scheduler &scheduler, beast::Journal journal)=0
Create a backend.
virtual void insert(Factory &factory)=0
Add a factory.
virtual std::unique_ptr< Database > makeDatabase(std::size_t burstSize, Scheduler &scheduler, int readThreads, Section const &backendParameters, beast::Journal journal)=0
Construct a NodeStore database.
Manager(Manager const &)=delete
static Manager & instance()
Returns the instance of the manager singleton.
virtual Factory * find(std::string const &name)=0
Return a pointer to the matching factory if it exists.
virtual void erase(Factory &factory)=0
Remove a factory.
virtual ~Manager()=default
Scheduling for asynchronous backend activity.