refactor
This commit is contained in:
parent
62489245cb
commit
031e8e3495
@ -108,12 +108,39 @@ private:
|
|||||||
private:
|
private:
|
||||||
template <typename dest>
|
template <typename dest>
|
||||||
auto get_value(const json &data, const std::string &name, dest &dst,
|
auto get_value(const json &data, const std::string &name, dest &dst,
|
||||||
bool &found) -> bool;
|
bool &found) -> bool {
|
||||||
|
REPERTORY_USES_FUNCTION_NAME();
|
||||||
|
|
||||||
|
try {
|
||||||
|
if (data.find(name) == data.end()) {
|
||||||
|
found = false;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
data.at(name).get_to(dst);
|
||||||
|
return true;
|
||||||
|
} catch (const std::exception &ex) {
|
||||||
|
utils::error::raise_error(
|
||||||
|
function_name, ex, fmt::format("failed to get value|name|{}", name));
|
||||||
|
}
|
||||||
|
|
||||||
|
found = false;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
[[nodiscard]] auto load() -> bool;
|
[[nodiscard]] auto load() -> bool;
|
||||||
|
|
||||||
template <typename dest, typename source>
|
template <typename dest, typename source>
|
||||||
auto set_value(dest &dst, const source &src) -> bool;
|
auto set_value(dest &dst, const source &src) -> bool {
|
||||||
|
if (dst.load() == src) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
dst = src;
|
||||||
|
config_changed_ = true;
|
||||||
|
save();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
[[nodiscard]] auto get_api_auth() const -> std::string { return api_auth_; }
|
[[nodiscard]] auto get_api_auth() const -> std::string { return api_auth_; }
|
||||||
|
@ -866,28 +866,6 @@ auto app_config::get_provider_name(const provider_type &prov) -> std::string {
|
|||||||
return PROVIDER_NAMES.at(static_cast<std::size_t>(prov));
|
return PROVIDER_NAMES.at(static_cast<std::size_t>(prov));
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename dest>
|
|
||||||
auto app_config::get_value(const json &data, const std::string &name, dest &dst,
|
|
||||||
bool &found) -> bool {
|
|
||||||
REPERTORY_USES_FUNCTION_NAME();
|
|
||||||
|
|
||||||
try {
|
|
||||||
if (data.find(name) == data.end()) {
|
|
||||||
found = false;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
data.at(name).get_to(dst);
|
|
||||||
return true;
|
|
||||||
} catch (const std::exception &ex) {
|
|
||||||
utils::error::raise_error(function_name, ex,
|
|
||||||
fmt::format("failed to get value|name|{}", name));
|
|
||||||
}
|
|
||||||
|
|
||||||
found = false;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
auto app_config::get_value_by_name(const std::string &name) const
|
auto app_config::get_value_by_name(const std::string &name) const
|
||||||
-> std::string {
|
-> std::string {
|
||||||
REPERTORY_USES_FUNCTION_NAME();
|
REPERTORY_USES_FUNCTION_NAME();
|
||||||
@ -1046,18 +1024,6 @@ void app_config::set_s3_config(s3_config cfg) { set_value(s3_config_, cfg); }
|
|||||||
|
|
||||||
void app_config::set_sia_config(sia_config cfg) { set_value(sia_config_, cfg); }
|
void app_config::set_sia_config(sia_config cfg) { set_value(sia_config_, cfg); }
|
||||||
|
|
||||||
template <typename dest, typename source>
|
|
||||||
auto app_config::set_value(dest &dst, const source &src) -> bool {
|
|
||||||
if (dst.load() == src) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
dst = src;
|
|
||||||
config_changed_ = true;
|
|
||||||
save();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
auto app_config::set_value_by_name(const std::string &name,
|
auto app_config::set_value_by_name(const std::string &name,
|
||||||
const std::string &value) -> std::string {
|
const std::string &value) -> std::string {
|
||||||
REPERTORY_USES_FUNCTION_NAME();
|
REPERTORY_USES_FUNCTION_NAME();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user