]> git.stg.codes - stg.git/blobdiff - projects/stargazer/main.cpp
Add virtual destructor for settings and traffcounter
[stg.git] / projects / stargazer / main.cpp
index 64d1cda28289ed7a8e3ab74003332e6dff75fcb9..7cab078d87bbe567c680b2021a6442e8312b44f7 100644 (file)
@@ -35,6 +35,7 @@
 #include <csignal>
 #include <cerrno>
 #include <cstdio>
+#include <cstdlib> // srandom, exit
 #include <fstream>
 #include <vector>
 #include <set>
@@ -53,6 +54,8 @@
 #include "users_impl.h"
 #include "admins_impl.h"
 #include "tariffs_impl.h"
+#include "services_impl.h"
+#include "corps_impl.h"
 #include "traffcounter_impl.h"
 #include "plugin_runner.h"
 #include "store_loader.h"
@@ -346,12 +349,12 @@ switch (executerPid)
 
     case 0:
         delete settings;
-        Executer(msgKey, *msgID, executerPid, procName);
+        Executer(*msgID, executerPid, procName);
         return 1;
 
     default:
         if (executersPid.empty()) {
-            Executer(msgKey, *msgID, executerPid, NULL);
+            Executer(*msgID, executerPid, NULL);
         }
         executersPid.insert(executerPid);
     }
@@ -445,6 +448,8 @@ TARIFFS_IMPL * tariffs = NULL;
 ADMINS_IMPL * admins = NULL;
 USERS_IMPL * users = NULL;
 TRAFFCOUNTER_IMPL * traffCnt = NULL;
+SERVICES_IMPL * services = NULL;
+CORPORATIONS_IMPL * corps = NULL;
 int msgID = -11;
 
     {
@@ -542,6 +547,8 @@ tariffs = new TARIFFS_IMPL(dataStore);
 admins = new ADMINS_IMPL(dataStore);
 users = new USERS_IMPL(settings, dataStore, tariffs, admins->GetSysAdmin());
 traffCnt = new TRAFFCOUNTER_IMPL(users, settings->GetRulesFileName());
+services = new SERVICES_IMPL(dataStore);
+corps = new CORPORATIONS_IMPL(dataStore);
 traffCnt->SetMonitorDir(settings->GetMonitorDir());
 
 modSettings = settings->GetModulesSettings();
@@ -559,6 +566,8 @@ for (size_t i = 0; i < modSettings.size(); i++)
                       admins,
                       tariffs,
                       users,
+                      services,
+                      corps,
                       traffCnt,
                       dataStore,
                       settings)
@@ -725,6 +734,8 @@ KillExecuters();
 StopStgTimer();
 WriteServLog("StgTimer: Stop successfull.");
 
+delete corps;
+delete services;
 delete traffCnt;
 delete users;
 delete admins;