26#ifndef ROUTER_SRC_REST_MRS_SRC_REST_MRS_CONFIG_H_
27#define ROUTER_SRC_REST_MRS_SRC_REST_MRS_CONFIG_H_
61 const std::vector<std::string> &routing_sections,
62 const std::string &router_name);
67 bool is_required(std::string_view option)
const override;
68 std::string
get_default(std::string_view option)
const override;
76 template <
typename ErrorReport = NoReporting>
81 throw std::runtime_error(
"Keyring not running");
84 }
catch (
const std::exception &e) {
85 ErrorReport()(
user.c_str());
86 throw std::runtime_error(std::string(
"Could not fetch value for '") +
87 user +
"' from the keyring: " + e.what());
Definition: mysql_rest_service_plugin_config.h:41
void operator()(const char *variable)
Definition: configuration.h:47
Definition: mysql_rest_service_plugin_config.h:71
void operator()(const char *)
Definition: mysql_rest_service_plugin_config.h:73
Definition: mysql_rest_service_plugin_config.h:49
std::set< std::string > get_waiting_for_routing_plugins()
Definition: mysql_rest_service_plugin_config.cc:328
PluginConfig(const ConfigSection *section, const std::vector< std::string > &routing_sections, const std::string &router_name)
Definition: mysql_rest_service_plugin_config.cc:280
static std::string get_keyring_value(const std::string &user, const char *attr)
Definition: mysql_rest_service_plugin_config.h:77
const std::string k_option_metadata_refresh
Definition: mysql_rest_service_plugin_config.h:57
bool is_required(std::string_view option) const override
Returns whether the given option is required.
Definition: mysql_rest_service_plugin_config.cc:365
std::string get_default(std::string_view option) const override
Gets the default for the given option.
Definition: mysql_rest_service_plugin_config.cc:373
bool init_runtime_configuration()
Definition: mysql_rest_service_plugin_config.cc:337
Retrieve and manage plugin configuration.
Definition: plugin_config.h:62
Configuration section.
Definition: config_parser.h:141
Definition: config_option.h:203
Definition: config_option.h:112
virtual std::string fetch(const std::string &uid, const std::string &attribute) const =0
Retrieves attribute value from an entry.
Definition: config_option.h:156
mysql_harness::StringOption StringOption
Definition: http_auth_backend_plugin.cc:65
char * user
Definition: mysqladmin.cc:67
Definition: authorize_manager.h:48
HARNESS_EXPORT Keyring * get_keyring() noexcept
Gets a previously initialized singleton instance of the keyring.
Definition: keyring_manager.cc:212
DurationOption< std::chrono::seconds > SecondsOption
Definition: config_option.h:227