X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/d7a542f962802ad207d823b7e805c9135c1693e3..237f834a52db0d12c85f70c5e65f48ec1923d00a:/projects/stargazer/plugins/configuration/sgconfig/configproto.h?ds=sidebyside diff --git a/projects/stargazer/plugins/configuration/sgconfig/configproto.h b/projects/stargazer/plugins/configuration/sgconfig/configproto.h index aac913f6..623254ac 100644 --- a/projects/stargazer/plugins/configuration/sgconfig/configproto.h +++ b/projects/stargazer/plugins/configuration/sgconfig/configproto.h @@ -28,18 +28,15 @@ #ifndef CONFIGPROTO_H #define CONFIGPROTO_H -#include -#include -#include - #include #include +#include -#include "stg/users.h" -#include "stg/admins.h" -#include "stg/tariffs.h" -#include "stg/logger.h" -#include "parser.h" +#include "stg/module_settings.h" +#include "stg/os_int.h" + +#include +#include #define STG_HEADER "SG04" #define OK_HEADER "OKHD" @@ -49,13 +46,22 @@ #define OK_LOGINS "OKLS" #define ERR_LOGINS "ERLS" +class BASE_PARSER; +class USERS; +class ADMINS; +class ADMIN; +class TARIFFS; +class PLUGIN_LOGGER; +class STORE; +class SETTINGS; + //----------------------------------------------------------------------------- class CONFIGPROTO { public: - CONFIGPROTO(); + CONFIGPROTO(PLUGIN_LOGGER & l); ~CONFIGPROTO(); - void SetPort(uint16_t port); + void SetPort(uint16_t p) { port = p; } void SetAdmins(ADMINS * a); void SetUsers(USERS * u); void SetTariffs(TARIFFS * t); @@ -68,6 +74,9 @@ public: void Run(); private: + CONFIGPROTO(const CONFIGPROTO & rvalue); + CONFIGPROTO & operator=(const CONFIGPROTO & rvalue); + int RecvHdr(int sock); int RecvLogin(int sock); int SendLoginAnswer(int sock); @@ -75,49 +84,29 @@ private: int RecvLoginS(int sock); int SendLoginSAnswer(int sock, int err); int RecvData(int sock); - int SendDataAnswer(int sock); - void SendError(const char * text); + int SendDataAnswer(int sock, const std::string & answer); + int SendError(int sock, const std::string & text); void WriteLogAccessFailed(uint32_t ip); int ParseCommand(); - std::list answerList; std::list requestList; uint32_t adminIP; std::string adminLogin; + std::string adminPassword; uint16_t port; pthread_t thrReciveSendConf; bool nonstop; int state; ADMIN * currAdmin; - STG_LOGGER & WriteServLog; + PLUGIN_LOGGER & logger; int listenSocket; - PARSER_GET_SERVER_INFO parserGetServInfo; - - PARSER_GET_USERS parserGetUsers; - PARSER_GET_USER parserGetUser; - PARSER_CHG_USER parserChgUser; - PARSER_ADD_USER parserAddUser; - PARSER_DEL_USER parserDelUser; - PARSER_CHECK_USER parserCheckUser; - PARSER_SEND_MESSAGE parserSendMessage; - - PARSER_GET_ADMINS parserGetAdmins; - PARSER_ADD_ADMIN parserAddAdmin; - PARSER_DEL_ADMIN parserDelAdmin; - PARSER_CHG_ADMIN parserChgAdmin; - - PARSER_GET_TARIFFS parserGetTariffs; - PARSER_ADD_TARIFF parserAddTariff; - PARSER_DEL_TARIFF parserDelTariff; - PARSER_CHG_TARIFF parserChgTariff; - ADMINS * admins; BASE_PARSER * currParser; - vector dataParser; + std::vector dataParser; XML_Parser xmlParser;