]> git.stg.codes - stg.git/blobdiff - projects/stargazer/main.cpp
GetScriptDir -> GetScriptsDir
[stg.git] / projects / stargazer / main.cpp
index 26eba64741cf8bde5991e3e0b19d535b4a953248..6a8c61f51dea08829f1a4fd38a45ccdd585e575b 100644 (file)
@@ -24,7 +24,7 @@
  $Author: faust $
  */
 
-#include <stdio.h>
+//#include <stdio.h>
 #include <sys/types.h>
 #include <sys/socket.h>
 #include <netinet/in.h>
 #include <sys/stat.h>
 #include <sys/wait.h>
 #include <dlfcn.h>
-#include <signal.h>
 #include <fcntl.h>
 
+#include <csignal>
+#include <cerrno>
 #include <fstream>
 #include <vector>
 #include <set>
 
 #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;
 }
 //-----------------------------------------------------------------------------
-
-