Leosac
0.8.0
Open Source Access Control
Restart.cpp
Go to the documentation of this file.
1
/*
2
Copyright (C) 2014-2017 Leosac
3
4
This file is part of Leosac.
5
6
Leosac is free software: you can redistribute it and/or modify
7
it under the terms of the GNU Affero General Public License as published by
8
the Free Software Foundation, either version 3 of the License, or
9
(at your option) any later version.
10
11
Leosac is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU Affero General Public License for more details.
15
16
You should have received a copy of the GNU Affero General Public License
17
along with this program. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
20
#include "
modules/websock-api/api/Restart.hpp
"
21
#include "
core/CoreAPI.hpp
"
22
#include "
core/CoreUtils.hpp
"
23
#include "
modules/websock-api/WSServer.hpp
"
24
25
namespace
Leosac
26
{
27
namespace
Module
28
{
29
namespace
WebSockAPI
30
{
31
Restart::Restart
(
RequestContext
ctx)
32
:
MethodHandler
(ctx)
33
{
34
}
35
36
MethodHandlerUPtr
Restart::create
(
RequestContext
rc)
37
{
38
return
std::make_unique<Restart>(rc);
39
}
40
41
std::vector<ActionActionParam>
Restart::required_permission
(
const
json
&)
const
42
{
43
std::vector<ActionActionParam> perm;
44
perm.push_back({
SecurityContext::Action::RESTART_SERVER
, {}});
45
return
perm;
46
}
47
48
json
Restart::process_impl
(
const
json
&)
49
{
50
ctx_
.
server
.
core_utils
()->core_api().restart_server();
51
return
json
{};
52
}
53
}
54
}
55
}
Leosac::Module::WebSockAPI::Restart::process_impl
virtual json process_impl(const json &req) override
The API method implementation.
Definition:
Restart.cpp:48
Restart.hpp
Leosac::Module::WebSockAPI::MethodHandler
The base class for API method handler implementation.
Definition:
MethodHandler.hpp:46
Leosac::SecurityContext::Action::RESTART_SERVER
@ RESTART_SERVER
Perform to restart the Leosac server.
Leosac
This is the header file for a generated source file, GitSHA1.cpp.
Definition:
APIStatusCode.hpp:22
Leosac::Module::WebSockAPI::Restart::create
static MethodHandlerUPtr create(RequestContext)
Definition:
Restart.cpp:36
Leosac::Module::WebSockAPI::MethodHandler::ctx_
RequestContext ctx_
Definition:
MethodHandler.hpp:90
CoreAPI.hpp
WSServer.hpp
Leosac::Module::WebSockAPI::MethodHandlerUPtr
std::unique_ptr< MethodHandler > MethodHandlerUPtr
Definition:
WebSockFwd.hpp:36
Leosac::Module::WebSockAPI::WSServer::core_utils
CoreUtilsPtr core_utils()
Retrieve the CoreUtils pointer.
Definition:
WSServer.cpp:342
CoreUtils.hpp
Leosac::Module::WebSockAPI::json
nlohmann::json json
Definition:
AccessOverview.hpp:30
Leosac::Module::WebSockAPI::RequestContext
Holds valuable pointer to provide context to a request.
Definition:
RequestContext.hpp:36
Leosac::Module::WebSockAPI::RequestContext::server
WSServer & server
Definition:
RequestContext.hpp:40
Leosac::Module::WebSockAPI::Restart::Restart
Restart(RequestContext ctx)
Definition:
Restart.cpp:31
Leosac::Module::WebSockAPI::Restart::required_permission
std::vector< ActionActionParam > required_permission(const json &req) const override
Return a list of "Action" / "ActionParam" that must pass before the request is processed.
Definition:
Restart.cpp:41
src
modules
websock-api
api
Restart.cpp
Generated on Tue Mar 22 2022 10:48:28 for Leosac by
1.8.17