Clio
develop
The XRP Ledger API server.
Theme:
Default
Round
Robot
Toggle main menu visibility
Loading...
Searching...
No Matches
SettingsProvider.hpp
1
#pragma once
2
3
#include "data/cassandra/Types.hpp"
4
#include "data/cassandra/impl/Cluster.hpp"
5
#include "util/config/ObjectView.hpp"
6
7
#include <chrono>
8
#include <cstdint>
9
#include <optional>
10
#include <string>
11
12
namespace
data::cassandra
{
13
17
class
SettingsProvider
{
18
util::config::ObjectView
config_;
19
20
std::string keyspace_;
21
std::optional<std::string> tablePrefix_;
22
uint16_t replicationFactor_;
23
std::chrono::milliseconds initialRetryDelay_;
24
std::chrono::milliseconds maxRetryDelay_;
25
Settings settings_;
26
27
public
:
33
explicit
SettingsProvider
(
util::config::ObjectView
const
& cfg);
34
38
[[nodiscard]] Settings
39
getSettings
()
const
;
40
44
[[nodiscard]] std::string
45
getKeyspace
()
const
46
{
47
return
keyspace_;
48
}
49
53
[[nodiscard]] std::optional<std::string>
54
getTablePrefix
()
const
55
{
56
return
tablePrefix_;
57
}
58
62
[[nodiscard]] uint16_t
63
getReplicationFactor
()
const
64
{
65
return
replicationFactor_;
66
}
67
71
[[nodiscard]] std::chrono::milliseconds
72
getInitialRetryDelay
()
const
73
{
74
return
initialRetryDelay_;
75
}
76
80
[[nodiscard]] std::chrono::milliseconds
81
getMaxRetryDelay
()
const
82
{
83
return
maxRetryDelay_;
84
}
85
86
private
:
87
[[nodiscard]] std::optional<std::string>
88
parseOptionalCertificate()
const
;
89
90
[[nodiscard]] Settings
91
parseSettings()
const
;
92
};
93
94
}
// namespace data::cassandra
data::cassandra::SettingsProvider::getSettings
Settings getSettings() const
Definition
SettingsProvider.cpp:40
data::cassandra::SettingsProvider::getMaxRetryDelay
std::chrono::milliseconds getMaxRetryDelay() const
Definition
SettingsProvider.hpp:81
data::cassandra::SettingsProvider::getTablePrefix
std::optional< std::string > getTablePrefix() const
Definition
SettingsProvider.hpp:54
data::cassandra::SettingsProvider::getInitialRetryDelay
std::chrono::milliseconds getInitialRetryDelay() const
Definition
SettingsProvider.hpp:72
data::cassandra::SettingsProvider::getKeyspace
std::string getKeyspace() const
Definition
SettingsProvider.hpp:45
data::cassandra::SettingsProvider::getReplicationFactor
uint16_t getReplicationFactor() const
Definition
SettingsProvider.hpp:63
data::cassandra::SettingsProvider::SettingsProvider
SettingsProvider(util::config::ObjectView const &cfg)
Create a settings provider from the specified config.
Definition
SettingsProvider.cpp:24
util::config::ObjectView
Provides a view into a subset of configuration data defined by a prefix.
Definition
ObjectView.hpp:21
data::cassandra
This namespace implements a wrapper for the Cassandra C++ driver.
Definition
CassandraBackendFamily.hpp:47
src
data
cassandra
SettingsProvider.hpp
Generated by
1.17.0