Clio  develop
The XRP Ledger API server.
Loading...
Searching...
No Matches
ConfigFileInterface.hpp
1#pragma once
2
3#include "util/config/Types.hpp"
4
5#include <optional>
6#include <string>
7#include <string_view>
8#include <vector>
9
10namespace util::config {
11
19public:
20 virtual ~ConfigFileInterface() = default;
21
28 virtual Value
29 getValue(std::string_view key) const = 0;
30
37 virtual std::vector<std::optional<Value>>
38 getArray(std::string_view key) const = 0;
39
46 virtual bool
47 containsKey(std::string_view key) const = 0;
48
54 virtual std::vector<std::string>
55 getAllKeys() const = 0;
56};
57
58} // namespace util::config
The interface for configuration files.
Definition ConfigFileInterface.hpp:18
virtual std::vector< std::string > getAllKeys() const =0
Retrieves all keys in the configuration file.
virtual Value getValue(std::string_view key) const =0
Retrieves the value of configValue.
virtual bool containsKey(std::string_view key) const =0
Checks if key exist in configuration file.
virtual std::vector< std::optional< Value > > getArray(std::string_view key) const =0
Retrieves an array of configuration values.