- /*
- $Revision: 1.27 $
- $Date: 2010/08/19 13:42:30 $
- $Author: faust $
- */
-
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-/*
- * Date: 27.10.2002
- */
-
/*
* Author : Boris Mikhailenko <stg34@stargazer.dp.ua>
*/
- /*
- $Revision: 1.27 $
- $Date: 2010/08/19 13:42:30 $
- */
-
-
#ifndef SETTINGS_IMPL_H
#define SETTINGS_IMPL_H
-#include <string>
-#include <vector>
-
#include "stg/settings.h"
#include "stg/common.h"
#include "stg/module_settings.h"
+#include "stg/ref.h"
+
+#include <string>
+#include <vector>
//-----------------------------------------------------------------------------
enum DETAIL_STAT_PERIOD {
-dsPeriod_1,
-dsPeriod_1_2,
-dsPeriod_1_4,
-dsPeriod_1_6
+ dsPeriod_1,
+ dsPeriod_1_2,
+ dsPeriod_1_4,
+ dsPeriod_1_6
};
//-----------------------------------------------------------------------------
class STG_LOGGER;
//-----------------------------------------------------------------------------
class SETTINGS_IMPL : public SETTINGS {
public:
- SETTINGS_IMPL(const std::string &);
- SETTINGS_IMPL(const SETTINGS_IMPL &);
+ explicit SETTINGS_IMPL(const std::string &);
+ SETTINGS_IMPL(const SETTINGS_IMPL & rhs);
virtual ~SETTINGS_IMPL() {}
SETTINGS_IMPL & operator=(const SETTINGS_IMPL &);
const std::string & GetRulesFileName() const { return rules; }
const std::string & GetLogFileName() const { return logFile; }
const std::string & GetPIDFileName() const { return pidFile; }
- unsigned GetDetailStatWritePeriod() const
+ unsigned GetDetailStatWritePeriod() const
{ return detailStatWritePeriod; }
unsigned GetStatWritePeriod() const { return statWritePeriod * 60; }
unsigned GetDayFee() const { return dayFee; }
unsigned GetMessageTimeout() const { return messageTimeout * 3600 * 24; }
unsigned GetFeeChargeType() const { return feeChargeType; }
bool GetReconnectOnTariffChange() const { return reconnectOnTariffChange; }
+ bool GetDisableSessionLog() const { return disableSessionLog; }
+ const std::vector<std::string> & GetFilterParamsLog() const { return filterParamsLog; }
const std::string & GetModulesPath() const { return modulesPath; }
const MODULE_SETTINGS & GetStoreModuleSettings() const
private:
- int ParseDetailStatWritePeriod(const std::string & str);
- int ParseModuleSettings(const DOTCONFDocumentNode * dirNameNode, std::vector<PARAM_VALUE> * params);
-
static void ErrorCallback(void * data, const char * buf);
std::string strError;
std::string modulesPath;
std::vector<std::string> dirName;
std::string confDir;
- std::string scriptsDir;
+ std::string scriptsDir;
std::string rules;
std::string logFile;
std::string pidFile;
unsigned messageTimeout;
unsigned feeChargeType;
bool reconnectOnTariffChange;
+ bool disableSessionLog;
+ std::vector<std::string> filterParamsLog;
std::vector<MODULE_SETTINGS> modulesSettings;
MODULE_SETTINGS storeModuleSettings;
- STG_LOGGER & logger;
+ STG::RefWrapper<STG_LOGGER> logger;
};
//-----------------------------------------------------------------------------