|
rippled
|
Singleton for managing NodeStore factories and back ends. More...
#include <Manager.h>

Public Member Functions | |
| virtual | ~Manager ()=default |
| Manager ()=default | |
| Manager (Manager const &)=delete | |
| Manager & | operator= (Manager const &)=delete |
| virtual void | insert (Factory &factory)=0 |
| Add a factory. More... | |
| virtual void | erase (Factory &factory)=0 |
| Remove a factory. More... | |
| virtual Factory * | find (std::string const &name)=0 |
| Return a pointer to the matching factory if it exists. More... | |
| virtual std::unique_ptr< Backend > | make_Backend (Section const ¶meters, std::size_t burstSize, Scheduler &scheduler, beast::Journal journal)=0 |
| Create a backend. More... | |
| virtual std::unique_ptr< Database > | make_Database (std::size_t burstSize, Scheduler &scheduler, int readThreads, Section const &backendParameters, beast::Journal journal)=0 |
| Construct a NodeStore database. More... | |
Static Public Member Functions | |
| static Manager & | instance () |
| Returns the instance of the manager singleton. More... | |
|
virtualdefault |
|
default |
|
delete |
|
static |
Returns the instance of the manager singleton.
Definition at line 116 of file ManagerImp.cpp.
|
pure virtual |
Add a factory.
Implemented in ripple::NodeStore::ManagerImp.
|
pure virtual |
Remove a factory.
Implemented in ripple::NodeStore::ManagerImp.
|
pure virtual |
Return a pointer to the matching factory if it exists.
| name | The name to match, performed case-insensitive. |
nullptr if a match was not found. Implemented in ripple::NodeStore::ManagerImp.
|
pure virtual |
Create a backend.
Implemented in ripple::NodeStore::ManagerImp.
|
pure virtual |
Construct a NodeStore database.
The parameters are key value pairs passed to the backend. The 'type' key must exist, it defines the choice of backend. Most backends also require a 'path' field.
Some choices for 'type' are: HyperLevelDB, LevelDBFactory, SQLite, MDB
If the fastBackendParameter is omitted or empty, no ephemeral database is used. If the scheduler parameter is omited or unspecified, a synchronous scheduler is used which performs all tasks immediately on the caller's thread.
| name | A diagnostic label for the database. |
| burstSize | Backend burst size in bytes. |
| scheduler | The scheduler to use for performing asynchronous tasks. |
| readThreads | The number of async read threads to create |
| backendParameters | The parameter string for the persistent backend. |
| fastBackendParameters | [optional] The parameter string for the ephemeral backend. |
Implemented in ripple::NodeStore::ManagerImp.