X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/4744fe9d82281dd743a92bec37e27e1b4777ba66..c963a109219ed101fa42f501b16f90d7b7b4f3f2:/projects/stargazer/main.cpp diff --git a/projects/stargazer/main.cpp b/projects/stargazer/main.cpp index 26eba647..8eacc9ac 100644 --- a/projects/stargazer/main.cpp +++ b/projects/stargazer/main.cpp @@ -24,7 +24,7 @@ $Author: faust $ */ -#include +//#include #include #include #include @@ -35,9 +35,10 @@ #include #include #include -#include #include +#include +#include #include #include #include @@ -45,11 +46,12 @@ #include "settings.h" #include "user.h" -#include "users.h" -#include "admins.h" +#include "users_impl.h" +#include "admins_impl.h" +#include "tariffs_impl.h" #include "common.h" #include "traffcounter.h" -#include "base_plugin.h" +#include "plugin.h" #include "stg_logger.h" #include "stg_timer.h" #include "plugin_runner.h" @@ -93,7 +95,7 @@ class STG_STOPPER { public: STG_STOPPER() { nonstop = true; } - bool GetStatus() { return nonstop; }; + bool GetStatus() const { return nonstop; }; #ifdef NO_DAEMON void Stop(const char * __file__, int __line__) #else @@ -449,7 +451,7 @@ int main(int argc, char * argv[]) * */ SETTINGS * settings = NULL; -BASE_STORE * dataStore = NULL; +STORE * dataStore = NULL; TARIFFS * tariffs = NULL; ADMINS * admins = NULL; USERS * users = NULL; @@ -493,7 +495,6 @@ if (settings->ReadSettings()) string startFile(settings->GetConfDir() + START_FILE); #endif -//SetSignalHandlers(); if (ForkAndWait(settings->GetConfDir()) < 0) { STG_LOGGER & WriteServLog = GetStgLogger(); @@ -505,14 +506,13 @@ STG_LOGGER & WriteServLog = GetStgLogger(); WriteServLog.SetLogFileName(settings->GetLogFileName()); WriteServLog("Stg v. %s", SERVER_VERSION); -for (int i = 0; i < settings->GetExecutersNum(); i++) +for (size_t i = 0; i < settings->GetExecutersNum(); i++) { int ret = StartScriptExecuter(argv[0], settings->GetExecMsgKey(), &msgID, settings); if (ret < 0) { STG_LOGGER & WriteServLog = GetStgLogger(); WriteServLog("Start Script Executer error!"); - //goto exitLbl; return 1; } if (ret == 1) @@ -550,12 +550,11 @@ if (loop.Start()) dataStore = storeLoader.GetStore(); WriteServLog("Storage plugin: %s. Loading successfull.", dataStore->GetVersion().c_str()); -tariffs = new TARIFFS(dataStore); -admins = new ADMINS(dataStore); -users = new USERS(settings, dataStore, tariffs, admins->GetSysAdmin()); +tariffs = new TARIFFS_IMPL(dataStore); +admins = new ADMINS_IMPL(dataStore); +users = new USERS_IMPL(settings, dataStore, tariffs, *admins->GetSysAdmin()); traffCnt = new TRAFFCOUNTER(users, tariffs, settings->GetRulesFileName()); traffCnt->SetMonitorDir(settings->GetMonitorDir()); -//tariffs->SetUsers(users); modSettings = settings->GetModulesSettings(); @@ -647,8 +646,6 @@ WriteServLog("+++++++++++++++++++++++++++++++++++++++++++++"); creat(startFile.c_str(), S_IRUSR); #endif -//*a_kill_it = 0; - while (nonstop.GetStatus()) { if (needRulesReloading) @@ -702,7 +699,7 @@ if (loop.Stop()) exitLblNotStarted: -/*modIter = modules.begin(); +modIter = modules.begin(); while (modIter != modules.end()) { std::string name = modIter->GetFileName(); @@ -715,7 +712,7 @@ while (modIter != modules.end()) printfd(__FILE__, "Failed to unload module '%s'\n", name.c_str()); } ++modIter; - }*/ + } if (traffCnt) { @@ -763,5 +760,3 @@ delete settings; return 0; } //----------------------------------------------------------------------------- - -