#pragma once #include #include #include class Application { with_data_directory data_directory; HttpServer http_server; static void web_server_started(std::size_t port); static void secure_web_server_started(std::size_t port); Application() = delete; Application(const json &cfg); public: std::shared_ptr https_server = nullptr; static Application &get(const json &config); int run(); };