X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/b21e41a3a44b08e4460b66cd81953498742d43d3..fe97f14f9caa463e2bc6b81124ce5e9553bc924d:/projects/stargazer/plugins/configuration/sgconfig/configproto.h diff --git a/projects/stargazer/plugins/configuration/sgconfig/configproto.h b/projects/stargazer/plugins/configuration/sgconfig/configproto.h index b10cc938..6e296836 100644 --- a/projects/stargazer/plugins/configuration/sgconfig/configproto.h +++ b/projects/stargazer/plugins/configuration/sgconfig/configproto.h @@ -22,6 +22,8 @@ #ifndef CONFIGPROTO_H #define CONFIGPROTO_H +#include "parser.h" + #include "stg/module_settings.h" #include "stg/os_int.h" @@ -36,6 +38,7 @@ class SETTINGS; class ADMINS; class TARIFFS; class USERS; +class STORE; class PLUGIN_LOGGER; namespace STG @@ -48,12 +51,14 @@ class Conn; class CONFIGPROTO { public: CONFIGPROTO(PLUGIN_LOGGER & l); + ~CONFIGPROTO(); void SetPort(uint16_t port) { m_port = port; } void SetSettings(const SETTINGS * settings) { m_settings = settings; } void SetAdmins(ADMINS * admins) { m_admins = admins; } void SetTariffs(TARIFFS * tariffs) { m_tariffs = tariffs; } void SetUsers(USERS * users) { m_users = users; } + void SetStore(STORE * store) { m_store = store; } int Prepare(); int Stop(); @@ -68,6 +73,7 @@ private: ADMINS * m_admins; TARIFFS * m_tariffs; USERS * m_users; + STORE * m_store; uint16_t m_port; bool m_running; @@ -77,8 +83,11 @@ private: std::string m_errorStr; + BASE_PARSER::REGISTRY m_registry; std::vector m_conns; + void RegisterParsers(); + int MaxFD() const; void BuildFDSet(fd_set & fds) const; void CleanupConns();