rippled
Public Member Functions | List of all members
ripple::NodeStore::Factory Class Referenceabstract

Base class for backend factories. More...

Inheritance diagram for ripple::NodeStore::Factory:
Inheritance graph
[legend]

Public Member Functions

virtual ~Factory ()=default
 
virtual std::string getName () const =0
 Retrieve the name of this factory. More...
 
virtual std::unique_ptr< BackendcreateInstance (size_t keyBytes, Section const &parameters, std::size_t burstSize, Scheduler &scheduler, beast::Journal journal)=0
 Create an instance of this factory's backend. More...
 
virtual std::unique_ptr< BackendcreateInstance (size_t keyBytes, Section const &parameters, std::size_t burstSize, Scheduler &scheduler, nudb::context &context, beast::Journal journal)
 Create an instance of this factory's backend. More...
 

Detailed Description

Base class for backend factories.

Definition at line 33 of file Factory.h.

Constructor & Destructor Documentation

◆ ~Factory()

virtual ripple::NodeStore::Factory::~Factory ( )
virtualdefault

Member Function Documentation

◆ getName()

virtual std::string ripple::NodeStore::Factory::getName ( ) const
pure virtual

◆ createInstance() [1/2]

virtual std::unique_ptr<Backend> ripple::NodeStore::Factory::createInstance ( size_t  keyBytes,
Section const &  parameters,
std::size_t  burstSize,
Scheduler scheduler,
beast::Journal  journal 
)
pure virtual

Create an instance of this factory's backend.

Parameters
keyBytesThe fixed number of bytes per key.
parametersA set of key/value configuration pairs.
burstSizeBackend burst size in bytes.
schedulerThe scheduler to use for running tasks.
Returns
A pointer to the Backend object.

Implemented in ripple::NodeStore::NullFactory, ripple::NodeStore::NuDBFactory, and ripple::NodeStore::MemoryFactory.

◆ createInstance() [2/2]

virtual std::unique_ptr<Backend> ripple::NodeStore::Factory::createInstance ( size_t  keyBytes,
Section const &  parameters,
std::size_t  burstSize,
Scheduler scheduler,
nudb::context &  context,
beast::Journal  journal 
)
virtual

Create an instance of this factory's backend.

Parameters
keyBytesThe fixed number of bytes per key.
parametersA set of key/value configuration pairs.
burstSizeBackend burst size in bytes.
schedulerThe scheduler to use for running tasks.
contextThe context used by database.
Returns
A pointer to the Backend object.

Reimplemented in ripple::NodeStore::NuDBFactory.

Definition at line 68 of file Factory.h.