]> git.stg.codes - stg.git/blobdiff - projects/stargazer/plugins/configuration/sgconfig/configproto.h
optimization method USER_IMPL::GetParamValue
[stg.git] / projects / stargazer / plugins / configuration / sgconfig / configproto.h
index 06748da8e73c91a1a18a1806260083a6bf7ca016..b8b01f024da3f1f0d8daf32ce7ea50231678ec13 100644 (file)
 #include <string>
 #include <list>
 
+#include "stg/users.h"
+#include "stg/admins.h"
+#include "stg/tariffs.h"
+#include "stg/logger.h"
 #include "parser.h"
-#include "users.h"
-#include "admins.h"
-#include "tariffs.h"
-#include "stg_logger.h"
 
 #define  STG_HEADER     "SG04"
 #define  OK_HEADER      "OKHD"
@@ -52,7 +52,7 @@
 //-----------------------------------------------------------------------------
 class CONFIGPROTO {
 public:
-    CONFIGPROTO();
+    CONFIGPROTO(PLUGIN_LOGGER & l);
     ~CONFIGPROTO();
 
     void            SetPort(uint16_t port);
@@ -61,16 +61,19 @@ public:
     void            SetTariffs(TARIFFS * t);
     void            SetStore(STORE * s);
     void            SetStgSettings(const SETTINGS * s);
-    uint32_t        GetAdminIP() const;
+    uint32_t        GetAdminIP() const { return adminIP; }
     int             Prepare();
     int             Stop();
-    const std::string & GetStrError() const;
-    static void *   Run(void * a);
+    const std::string & GetStrError() const { return errorStr; }
+    void            Run();
 
 private:
+    CONFIGPROTO(const CONFIGPROTO & rvalue);
+    CONFIGPROTO & operator=(const CONFIGPROTO & rvalue);
+
     int             RecvHdr(int sock);
     int             RecvLogin(int sock);
-    int             SendLoginAnswer(int sock, int err);
+    int             SendLoginAnswer(int sock);
     int             SendHdrAnswer(int sock, int err);
     int             RecvLoginS(int sock);
     int             SendLoginSAnswer(int sock, int err);
@@ -85,12 +88,13 @@ private:
     std::list<std::string>      requestList;
     uint32_t                    adminIP;
     std::string                 adminLogin;
+    std::string                 adminPassword;
     uint16_t                    port;
     pthread_t                   thrReciveSendConf;
     bool                        nonstop;
     int                         state;
     ADMIN *                     currAdmin;
-    STG_LOGGER &                WriteServLog;
+    PLUGIN_LOGGER &             logger;
 
     int                         listenSocket;
 
@@ -117,7 +121,7 @@ private:
     ADMINS *                    admins;
 
     BASE_PARSER *               currParser;
-    vector<BASE_PARSER *>       dataParser;
+    std::vector<BASE_PARSER *>  dataParser;
 
     XML_Parser                  xmlParser;