/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */ #ifndef CONFIGSTAGESHANDLER_H #define CONFIGSTAGESHANDLER_H #include "remote/httphandler.hpp" #include namespace icinga { class ConfigStagesHandler final : public HttpHandler { public: DECLARE_PTR_TYPEDEFS(ConfigStagesHandler); bool HandleRequest( AsioTlsStream& stream, const ApiUser::Ptr& user, boost::beast::http::request& request, const Url::Ptr& url, boost::beast::http::response& response, const Dictionary::Ptr& params, boost::asio::yield_context& yc, HttpServerConnection& server ) override; private: void HandleGet( const ApiUser::Ptr& user, boost::beast::http::request& request, const Url::Ptr& url, boost::beast::http::response& response, const Dictionary::Ptr& params ); void HandlePost( const ApiUser::Ptr& user, boost::beast::http::request& request, const Url::Ptr& url, boost::beast::http::response& response, const Dictionary::Ptr& params ); void HandleDelete( const ApiUser::Ptr& user, boost::beast::http::request& request, const Url::Ptr& url, boost::beast::http::response& response, const Dictionary::Ptr& params ); static std::atomic m_RunningPackageUpdates; }; } #endif /* CONFIGSTAGESHANDLER_H */