refactor
This commit is contained in:
@@ -30,27 +30,27 @@
|
||||
#include "utils/cli_utils.hpp"
|
||||
|
||||
namespace repertory::cli::actions {
|
||||
[[nodiscard]] inline auto set(int argc, char *argv[],
|
||||
[[nodiscard]] inline auto set(std::vector<const char *> args,
|
||||
const std::string &data_directory,
|
||||
const provider_type &pt,
|
||||
const provider_type &prov,
|
||||
const std::string &unique_id, std::string user,
|
||||
std::string password) -> exit_code {
|
||||
auto ret = exit_code::success;
|
||||
auto data = utils::cli::parse_option(argc, argv, "-set", 2u);
|
||||
auto data = utils::cli::parse_option(args, "-set", 2U);
|
||||
if (data.empty()) {
|
||||
data = utils::cli::parse_option(argc, argv, "--set", 2u);
|
||||
data = utils::cli::parse_option(args, "--set", 2U);
|
||||
if (data.empty()) {
|
||||
ret = exit_code::invalid_syntax;
|
||||
std::cerr << "Invalid syntax for '-set'" << std::endl;
|
||||
}
|
||||
}
|
||||
if (ret == exit_code::success) {
|
||||
lock_data lock(pt, unique_id);
|
||||
const auto res = lock.grab_lock(1u);
|
||||
lock_data lock(prov, unique_id);
|
||||
const auto res = lock.grab_lock(1U);
|
||||
if (res == lock_result::success) {
|
||||
app_config config(pt, data_directory);
|
||||
const auto value = config.set_value_by_name(data[0u], data[1u]);
|
||||
const auto notFound = value.empty() && not data[1u].empty();
|
||||
app_config config(prov, data_directory);
|
||||
const auto value = config.set_value_by_name(data[0U], data[1U]);
|
||||
const auto notFound = value.empty() && not data[1U].empty();
|
||||
ret = notFound ? exit_code::set_option_not_found : exit_code::success;
|
||||
std::cout << (notFound ? static_cast<int>(
|
||||
rpc_response_type::config_value_not_found)
|
||||
@@ -58,11 +58,11 @@ namespace repertory::cli::actions {
|
||||
<< std::endl;
|
||||
std::cout << json({{"value", value}}).dump(2) << std::endl;
|
||||
} else if (res == lock_result::locked) {
|
||||
auto port = app_config::default_api_port(pt);
|
||||
utils::cli::get_api_authentication_data(user, password, port, pt,
|
||||
auto port = app_config::default_api_port(prov);
|
||||
utils::cli::get_api_authentication_data(user, password, port, prov,
|
||||
data_directory);
|
||||
const auto response = client({"localhost", password, port, user})
|
||||
.set_config_value_by_name(data[0u], data[1u]);
|
||||
.set_config_value_by_name(data[0U], data[1U]);
|
||||
std::cout << static_cast<int>(response.response_type) << std::endl;
|
||||
std::cout << response.data.dump(2) << std::endl;
|
||||
ret = response.response_type == rpc_response_type::config_value_not_found
|
||||
|
Reference in New Issue
Block a user