X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/97f1f905311bcb76c3b500e3e49c1b9f49dff491..2da962edada912d8081f7e15db0ac887b98b179e:/stglibs/srvconf.lib/servconf.cpp?ds=sidebyside diff --git a/stglibs/srvconf.lib/servconf.cpp b/stglibs/srvconf.lib/servconf.cpp index 3684dd54..8b4e259b 100644 --- a/stglibs/srvconf.lib/servconf.cpp +++ b/stglibs/srvconf.lib/servconf.cpp @@ -21,13 +21,14 @@ #include "stg/servconf.h" #include "netunit.h" -#include "parser_auth_by.h" -#include "parser_server_info.h" -#include "parser_check_user.h" -#include "parser_get_users.h" -#include "parser_get_user.h" -#include "parser_chg_user.h" -#include "parser_send_message.h" +#include "parsers/auth_by.h" +#include "parsers/server_info.h" +#include "parsers/check_user.h" +#include "parsers/get_users.h" +#include "parsers/get_user.h" +#include "parsers/chg_user.h" +#include "parsers/send_message.h" +#include "parsers/base.h" #include "stg/common.h" @@ -44,12 +45,19 @@ public: IMPL(const std::string & server, uint16_t port, const std::string & login, const std::string & password); + int ServerInfo(SERVER_INFO::CALLBACK f, void * data); + + int GetAdmins(GET_ADMINS::CALLBACK f, void * data); + int GetAdmin(const std::string & login, GET_ADMIN::CALLBACK f, void * data); + int ChgAdmin(const std::string & login, const ADMIN_CONF_RES & conf, CHG_ADMIN::CALLBACK f, void * data); + int AddAdmin(const std::string & login, const ADMIN_CONF & conf, GET_ADMIN::CALLBACK f, void * data); + int DelAdmin(const std::string & login, DEL_ADMIN::CALLBACK f, void * data); + int GetUsers(GET_USERS::CALLBACK f, void * data); int GetUser(const std::string & login, GET_USER::CALLBACK f, void * data); int ChgUser(const std::string & request, CHG_USER::CALLBACK f, void * data); int AuthBy(const std::string & login, AUTH_BY::CALLBACK f, void * data); int SendMessage(const std::string & request, SEND_MESSAGE::CALLBACK f, void * data); - int ServerInfo(SERVER_INFO::CALLBACK f, void * data); int CheckUser(const std::string & login, const std::string & password, CHECK_USER::CALLBACK f, void * data); const std::string & GetStrError() const; @@ -57,14 +65,6 @@ public: static void End(void * data, const char * el); private: - GET_USERS::PARSER parserGetUsers; - GET_USER::PARSER parserGetUser; - AUTH_BY::PARSER parserAuthBy; - SERVER_INFO::PARSER parserServerInfo; - CHG_USER::PARSER parserChgUser; - CHECK_USER::PARSER parserCheckUser; - SEND_MESSAGE::PARSER parserSendMessage; - NETTRANSACT nt; std::string errorMsg; @@ -153,44 +153,44 @@ nt.SetRxCallback(this, AnsRecv); //----------------------------------------------------------------------------- int SERVCONF::IMPL::GetUser(const std::string & login, GET_USER::CALLBACK f, void * data) { -parserGetUser.SetCallback(f, data); -return Exec("", parserGetUser); +GET_USER::PARSER parser(f, data); +return Exec("", parser); } //----------------------------------------------------------------------------- int SERVCONF::IMPL::AuthBy(const std::string & login, AUTH_BY::CALLBACK f, void * data) { -parserAuthBy.SetCallback(f, data); -return Exec("", parserAuthBy); +AUTH_BY::PARSER parser(f, data); +return Exec("", parser); } //----------------------------------------------------------------------------- int SERVCONF::IMPL::GetUsers(GET_USERS::CALLBACK f, void * data) { -parserGetUsers.SetCallback(f, data); -return Exec("", parserGetUsers); +GET_USERS::PARSER parser(f, data); +return Exec("", parser); } //----------------------------------------------------------------------------- int SERVCONF::IMPL::ServerInfo(SERVER_INFO::CALLBACK f, void * data) { -parserServerInfo.SetCallback(f, data); -return Exec("", parserServerInfo); +SERVER_INFO::PARSER parser(f, data); +return Exec("", parser); } //----------------------------------------------------------------------------- int SERVCONF::IMPL::ChgUser(const std::string & request, CHG_USER::CALLBACK f, void * data) { -parserChgUser.SetCallback(f, data); -return Exec(request, parserChgUser); +CHG_USER::PARSER parser(f, data); +return Exec(request, parser); } //----------------------------------------------------------------------------- int SERVCONF::IMPL::SendMessage(const std::string & request, SEND_MESSAGE::CALLBACK f, void * data) { -parserSendMessage.SetCallback(f, data); -return Exec(request, parserSendMessage); +SEND_MESSAGE::PARSER parser(f, data); +return Exec(request, parser); } //----------------------------------------------------------------------------- int SERVCONF::IMPL::CheckUser(const std::string & login, const std::string & password, CHECK_USER::CALLBACK f, void * data) { -parserCheckUser.SetCallback(f, data); -return Exec("", parserCheckUser); +CHECK_USER::PARSER parser(f, data); +return Exec("", parser); } //----------------------------------------------------------------------------- void SERVCONF::IMPL::Start(void * data, const char * el, const char ** attr)