added clear mount location
This commit is contained in:
parent
89507bd0bd
commit
2496679165
@ -74,6 +74,9 @@ private:
|
|||||||
[[nodiscard]] auto data_directory_exists(provider_type prov,
|
[[nodiscard]] auto data_directory_exists(provider_type prov,
|
||||||
std::string_view name) const -> bool;
|
std::string_view name) const -> bool;
|
||||||
|
|
||||||
|
void handle_delete_mount_location(const httplib::Request &req,
|
||||||
|
httplib::Response &res) const;
|
||||||
|
|
||||||
void handle_get_available_locations(httplib::Response &res) const;
|
void handle_get_available_locations(httplib::Response &res) const;
|
||||||
|
|
||||||
void handle_get_mount(const httplib::Request &req,
|
void handle_get_mount(const httplib::Request &req,
|
||||||
|
@ -168,6 +168,10 @@ handlers::handlers(mgmt_app_config *config, httplib::Server *server)
|
|||||||
: http_error_codes::internal_error;
|
: http_error_codes::internal_error;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
server->Delete("/api/v1/mount_location", [this](auto &&req, auto &&res) {
|
||||||
|
handle_delete_mount_location(req, res);
|
||||||
|
});
|
||||||
|
|
||||||
server->Get("/api/v1/locations", [this](auto && /* req */, auto &&res) {
|
server->Get("/api/v1/locations", [this](auto && /* req */, auto &&res) {
|
||||||
handle_get_available_locations(res);
|
handle_get_available_locations(res);
|
||||||
});
|
});
|
||||||
@ -298,6 +302,22 @@ auto handlers::data_directory_exists(provider_type prov,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void handlers::handle_delete_mount_location(const httplib::Request &req,
|
||||||
|
httplib::Response &res) const {
|
||||||
|
REPERTORY_USES_FUNCTION_NAME();
|
||||||
|
|
||||||
|
auto prov = provider_type_from_string(req.get_param_value("type"));
|
||||||
|
auto name = req.get_param_value("name");
|
||||||
|
|
||||||
|
if (not data_directory_exists(prov, name)) {
|
||||||
|
res.status = http_error_codes::not_found;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
config_->set_mount_location(prov, name, "");
|
||||||
|
res.status = http_error_codes::ok;
|
||||||
|
}
|
||||||
|
|
||||||
void handlers::handle_get_available_locations(httplib::Response &res) const {
|
void handlers::handle_get_available_locations(httplib::Response &res) const {
|
||||||
#if defined(_WIN32)
|
#if defined(_WIN32)
|
||||||
constexpr const std::array<std::string_view, 26U> letters{
|
constexpr const std::array<std::string_view, 26U> letters{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user