#pragma once #include #include #include #include "ServerApplicationSettings.h" namespace HttpServer { class ServerApplicationsTree { protected: std::unordered_map list; ServerApplicationSettings *app_sets; public: ServerApplicationsTree(); ~ServerApplicationsTree(); inline bool empty() const { return list.empty(); } void addApplication(const std::string &, ServerApplicationSettings *); void addApplication(std::vector &, ServerApplicationSettings *); ServerApplicationSettings *find(const std::string &) const; ServerApplicationSettings *find(std::vector &) const; void collectApplicationSettings(std::unordered_set &) const; void clear(); }; };