rippled
|
Public Member Functions | |
ManagerImp ()=default | |
~ManagerImp ()=default | |
Factory * | find (std::string const &name) override |
Return a pointer to the matching factory if it exists. More... | |
void | insert (Factory &factory) override |
Add a factory. More... | |
void | erase (Factory &factory) override |
Remove a factory. More... | |
std::unique_ptr< Backend > | make_Backend (Section const ¶meters, std::size_t burstSize, Scheduler &scheduler, beast::Journal journal) override |
Create a backend. More... | |
std::unique_ptr< Database > | make_Database (std::size_t burstSize, Scheduler &scheduler, int readThreads, Section const &config, beast::Journal journal) override |
Construct a NodeStore database. More... | |
Static Public Member Functions | |
static ManagerImp & | instance () |
static void | missing_backend () |
Private Attributes | |
std::mutex | mutex_ |
std::vector< Factory * > | list_ |
Definition at line 29 of file ManagerImp.h.
|
default |
|
default |
|
static |
Definition at line 30 of file ManagerImp.cpp.
|
static |
Definition at line 37 of file ManagerImp.cpp.
|
overridevirtual |
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. Implements ripple::NodeStore::Manager.
Definition at line 105 of file ManagerImp.cpp.
|
overridevirtual |
|
overridevirtual |
Remove a factory.
Implements ripple::NodeStore::Manager.
Definition at line 93 of file ManagerImp.cpp.
|
overridevirtual |
Create a backend.
Implements ripple::NodeStore::Manager.
Definition at line 45 of file ManagerImp.cpp.
|
overridevirtual |
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. |
Implements ripple::NodeStore::Manager.
Definition at line 72 of file ManagerImp.cpp.
|
private |
Definition at line 32 of file ManagerImp.h.
|
private |
Definition at line 33 of file ManagerImp.h.