X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/483782aff2b8842048b6535ef46d22bcbdb4ce55..474a9dc37f5085103d11cff3afa8642538f06a10:/stglibs/srvconf.lib/servconf.cpp diff --git a/stglibs/srvconf.lib/servconf.cpp b/stglibs/srvconf.lib/servconf.cpp index 11e755ba..e80c3ffa 100644 --- a/stglibs/srvconf.lib/servconf.cpp +++ b/stglibs/srvconf.lib/servconf.cpp @@ -16,6 +16,7 @@ /* * Author : Boris Mikhailenko + * Author : Maxim Mamontov */ #include "stg/servconf.h" @@ -43,6 +44,10 @@ #include "parsers/get_service.h" #include "parsers/chg_service.h" +#include "parsers/get_corporations.h" +#include "parsers/get_corp.h" +#include "parsers/chg_corp.h" + #include "parsers/base.h" #include "stg/common.h" @@ -275,6 +280,38 @@ int SERVCONF::DelService(const std::string & name, SIMPLE::CALLBACK f, void * da return pImpl->Exec("DelService", "", f, data); } +// -- Corporations -- + +int SERVCONF::GetCorporations(GET_CORPORATIONS::CALLBACK f, void * data) +{ +return pImpl->Exec("", f, data); +} + +int SERVCONF::GetCorp(const std::string & name, GET_CORP::CALLBACK f, void * data) +{ +return pImpl->Exec("", f, data); +} + +int SERVCONF::ChgCorp(const CORP_CONF_RES & conf, SIMPLE::CALLBACK f, void * data) +{ +return pImpl->Exec("SetCorp", "" + CHG_CORP::Serialize(conf) + "", f, data); +} + +int SERVCONF::AddCorp(const std::string & name, + const CORP_CONF_RES & conf, + SIMPLE::CALLBACK f, void * data) +{ +int res = pImpl->Exec("AddCorp", "", f, data); +if (res != st_ok) + return res; +return pImpl->Exec("SetCorp", "" + CHG_CORP::Serialize(conf) + "", f, data); +} + +int SERVCONF::DelCorp(const std::string & name, SIMPLE::CALLBACK f, void * data) +{ +return pImpl->Exec("DelCorp", "", f, data); +} + const std::string & SERVCONF::GetStrError() const { return pImpl->GetStrError();