#ifndef CONFIGPROTO_H
#define CONFIGPROTO_H
-#include <expat.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-
-#include <string>
-#include <list>
+#include "parser_auth_by.h"
+#include "parser_user_info.h"
#include "stg/users.h"
#include "stg/admins.h"
#include "stg/tariffs.h"
-#include "stg/stg_logger.h"
+#include "stg/logger.h"
#include "parser.h"
+#include <string>
+#include <list>
+
+#include <expat.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+
#define STG_HEADER "SG04"
#define OK_HEADER "OKHD"
#define ERR_HEADER "ERHD"
//-----------------------------------------------------------------------------
class CONFIGPROTO {
public:
- CONFIGPROTO();
+ CONFIGPROTO(PLUGIN_LOGGER & l);
~CONFIGPROTO();
- void SetPort(uint16_t port);
+ void SetPort(uint16_t p) { port = p; }
void SetAdmins(ADMINS * a);
void SetUsers(USERS * u);
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);
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;
PARSER_DEL_USER parserDelUser;
PARSER_CHECK_USER parserCheckUser;
PARSER_SEND_MESSAGE parserSendMessage;
+ PARSER_AUTH_BY parserAuthBy;
+ PARSER_USER_INFO parserUserInfo;
PARSER_GET_ADMINS parserGetAdmins;
PARSER_ADD_ADMIN parserAddAdmin;
ADMINS * admins;
BASE_PARSER * currParser;
- vector<BASE_PARSER *> dataParser;
+ std::vector<BASE_PARSER *> dataParser;
XML_Parser xmlParser;