1 /* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
2 
3 #ifndef ACTIONSHANDLER_H
4 #define ACTIONSHANDLER_H
5 
6 #include "remote/httphandler.hpp"
7 
8 namespace icinga
9 {
10 
11 class ActionsHandler final : public HttpHandler
12 {
13 public:
14 	DECLARE_PTR_TYPEDEFS(ActionsHandler);
15 
16 	static thread_local ApiUser::Ptr AuthenticatedApiUser;
17 
18 	bool HandleRequest(
19 		AsioTlsStream& stream,
20 		const ApiUser::Ptr& user,
21 		boost::beast::http::request<boost::beast::http::string_body>& request,
22 		const Url::Ptr& url,
23 		boost::beast::http::response<boost::beast::http::string_body>& response,
24 		const Dictionary::Ptr& params,
25 		boost::asio::yield_context& yc,
26 		HttpServerConnection& server
27 	) override;
28 };
29 
30 }
31 
32 #endif /* ACTIONSHANDLER_H */
33