]> git.stg.codes - stg.git/blobdiff - projects/stargazer/plugins/configuration/sgconfig/configproto.cpp
Minor changes in plugin interface.
[stg.git] / projects / stargazer / plugins / configuration / sgconfig / configproto.cpp
index 7f46fab22d806406ee660769f5802cd3bd6c2ca8..eb8fbcdea81e30eb687eca0a8a2f03b573eca8e7 100644 (file)
@@ -38,6 +38,7 @@
 #include "stg/admins.h"
 #include "stg/tariffs.h"
 #include "stg/logger.h"
 #include "stg/admins.h"
 #include "stg/tariffs.h"
 #include "stg/logger.h"
+#include "stg/common.h"
 
 #include <unistd.h>
 
 
 #include <unistd.h>
 
@@ -48,23 +49,23 @@ CONFIGPROTO * cp = static_cast<CONFIGPROTO *>(data);
 
 if (cp->currParser)
     {
 
 if (cp->currParser)
     {
-    cp->currParser->SetCurrAdmin(*cp->currAdmin);
-    cp->currParser->ParseStart(data, el, attr);
+    //cp->currParser->SetCurrAdmin(*cp->currAdmin);
+    cp->currParser->Start(data, el, attr);
     }
 else
     {
     for (size_t i = 0; i < cp->dataParser.size(); i++)
         {
     }
 else
     {
     for (size_t i = 0; i < cp->dataParser.size(); i++)
         {
-        cp->dataParser[i]->SetCurrAdmin(*cp->currAdmin);
-        cp->dataParser[i]->Reset();
-        if (cp->dataParser[i]->ParseStart(data, el, attr) == 0)
+        //cp->dataParser[i]->SetCurrAdmin(*cp->currAdmin);
+        //cp->dataParser[i]->Reset();
+        if (cp->dataParser[i]->Start(data, el, attr) == 0)
             {
             cp->currParser = cp->dataParser[i];
             break;
             }
         else
             {
             {
             cp->currParser = cp->dataParser[i];
             break;
             }
         else
             {
-            cp->dataParser[i]->Reset();
+            //cp->dataParser[i]->Reset();
             }
         }
     }
             }
         }
     }
@@ -75,8 +76,9 @@ void ParseXMLEnd(void *data, const char *el)
 CONFIGPROTO * cp = static_cast<CONFIGPROTO *>(data);
 if (cp->currParser)
     {
 CONFIGPROTO * cp = static_cast<CONFIGPROTO *>(data);
 if (cp->currParser)
     {
-    if (cp->currParser->ParseEnd(data, el) == 0)
+    if (cp->currParser->End(data, el) == 0)
         {
         {
+        cp->dataAnswer = cp->currParser->GetAnswer();
         cp->currParser = NULL;
         }
     }
         cp->currParser = NULL;
         }
     }
@@ -84,8 +86,10 @@ else
     {
     for (size_t i = 0; i < cp->dataParser.size(); i++)
         {
     {
     for (size_t i = 0; i < cp->dataParser.size(); i++)
         {
-        if (cp->dataParser[i]->ParseEnd(data, el) == 0)
+        if (cp->dataParser[i]->End(data, el) == 0)
             {
             {
+            cp->dataAnswer = cp->currParser->GetAnswer();
+            cp->currParser = NULL;
             break;
             }
         }
             break;
             }
         }
@@ -103,7 +107,7 @@ CONFIGPROTO::CONFIGPROTO(PLUGIN_LOGGER & l)
       admins(NULL),
       currParser(NULL)
 {
       admins(NULL),
       currParser(NULL)
 {
-dataParser.push_back(new PARSER_GET_SERVER_INFO);
+/*dataParser.push_back(new PARSER_GET_SERVER_INFO);
 
 dataParser.push_back(new PARSER_GET_USERS);
 dataParser.push_back(new PARSER_GET_USER);
 
 dataParser.push_back(new PARSER_GET_USERS);
 dataParser.push_back(new PARSER_GET_USER);
@@ -123,7 +127,7 @@ dataParser.push_back(new PARSER_CHG_TARIFF);
 dataParser.push_back(new PARSER_GET_ADMINS);
 dataParser.push_back(new PARSER_CHG_ADMIN);
 dataParser.push_back(new PARSER_DEL_ADMIN);
 dataParser.push_back(new PARSER_GET_ADMINS);
 dataParser.push_back(new PARSER_CHG_ADMIN);
 dataParser.push_back(new PARSER_DEL_ADMIN);
-dataParser.push_back(new PARSER_ADD_ADMIN);
+dataParser.push_back(new PARSER_ADD_ADMIN);*/
 
 xmlParser = XML_ParserCreate(NULL);
 
 
 xmlParser = XML_ParserCreate(NULL);
 
@@ -180,7 +184,7 @@ while(nonstop)
         if (currParser)
             {
             printfd(__FILE__, "Parser reset\n");
         if (currParser)
             {
             printfd(__FILE__, "Parser reset\n");
-            currParser->Reset();
+            //currParser->Reset();
             currParser = NULL;
             }
 
             currParser = NULL;
             }
 
@@ -199,31 +203,5 @@ return 0;
 void CONFIGPROTO::SetAdmins(ADMINS * a)
 {
 admins = a;
 void CONFIGPROTO::SetAdmins(ADMINS * a)
 {
 admins = a;
-for (size_t i = 0; i < dataParser.size(); i++)
-    dataParser[i]->SetAdmins(a);
-}
-//-----------------------------------------------------------------------------
-void CONFIGPROTO::SetUsers(USERS * u)
-{
-for (size_t i = 0; i < dataParser.size(); i++)
-    dataParser[i]->SetUsers(u);
-}
-//-----------------------------------------------------------------------------
-void CONFIGPROTO::SetTariffs(TARIFFS * t)
-{
-for (size_t i = 0; i < dataParser.size(); i++)
-    dataParser[i]->SetTariffs(t);
-}
-//-----------------------------------------------------------------------------
-void CONFIGPROTO::SetStore(STORE * s)
-{
-for (size_t i = 0; i < dataParser.size(); i++)
-    dataParser[i]->SetStore(s);
-}
-//-----------------------------------------------------------------------------
-void CONFIGPROTO::SetStgSettings(const SETTINGS * s)
-{
-for (size_t i = 0; i < dataParser.size(); i++)
-    dataParser[i]->SetStgSettings(s);
 }
 //-----------------------------------------------------------------------------
 }
 //-----------------------------------------------------------------------------