rippled
Loading...
Searching...
No Matches
ManagerImp.h
1#ifndef XRPL_NODESTORE_MANAGERIMP_H_INCLUDED
2#define XRPL_NODESTORE_MANAGERIMP_H_INCLUDED
3
4#include <xrpl/nodestore/Manager.h>
5
6namespace ripple {
7
8namespace NodeStore {
9
10class ManagerImp : public Manager
11{
12private:
15
16public:
17 static ManagerImp&
18 instance();
19
20 static void
22
23 ManagerImp();
24
25 ~ManagerImp() = default;
26
27 Factory*
28 find(std::string const& name) override;
29
30 void
31 insert(Factory& factory) override;
32
33 void
34 erase(Factory& factory) override;
35
38 Section const& parameters,
40 Scheduler& scheduler,
41 beast::Journal journal) override;
42
46 Scheduler& scheduler,
47 int readThreads,
48 Section const& config,
49 beast::Journal journal) override;
50};
51
52} // namespace NodeStore
53} // namespace ripple
54
55#endif
A generic endpoint for log messages.
Definition Journal.h:41
Base class for backend factories.
Definition Factory.h:17
Factory * find(std::string const &name) override
Return a pointer to the matching factory if it exists.
std::vector< Factory * > list_
Definition ManagerImp.h:14
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.
static ManagerImp & instance()
void insert(Factory &factory) override
Add a factory.
std::unique_ptr< Backend > make_Backend(Section const &parameters, std::size_t burstSize, Scheduler &scheduler, beast::Journal journal) override
Create a backend.
void erase(Factory &factory) override
Remove a factory.
Singleton for managing NodeStore factories and back ends.
Definition Manager.h:13
Scheduling for asynchronous backend activity.
Holds a collection of configuration values.
Definition BasicConfig.h:26
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:6