#include "stg/dotconfpp.h"
#include "settings_impl.h"
-//-----------------------------------------------------------------------------
-SETTINGS_IMPL::SETTINGS_IMPL()
- : SETTINGS(),
- strError(),
- modulesPath("/usr/lib/stg"),
- dirName(DIR_NUM),
- confDir("/etc/stargazer"),
- scriptsDir("/etc/stargazer"),
- rules("/etc/stargazer/rules"),
- logFile("/var/log/stargazer.log"),
- pidFile("/var/run/stargazer.pid"),
- monitorDir("/var/stargazer/monitoring"),
- monitoring(false),
- detailStatWritePeriod(dsPeriod_1_6),
- statWritePeriod(10),
- stgExecMsgKey(5555),
- executersNum(1),
- fullFee(false),
- dayFee(0),
- dayResetTraff(0),
- spreadFee(false),
- freeMbAllowInet(false),
- dayFeeIsLastDay(false),
- writeFreeMbTraffCost(false),
- showFeeInCash(true),
- messageTimeout(0),
- feeChargeType(0),
- reconnectOnTariffChange(false),
- modulesSettings(),
- storeModuleSettings(),
- logger(GetStgLogger())
-{
-}
//-----------------------------------------------------------------------------
SETTINGS_IMPL::SETTINGS_IMPL(const std::string & cd)
- : SETTINGS(),
- strError(),
- modulesPath("/usr/lib/stg"),
+ : modulesPath("/usr/lib/stg"),
dirName(DIR_NUM),
- confDir(cd),
- scriptsDir(cd),
- rules(cd + "/rules"),
+ confDir(cd.empty() ? "/etc/stargazer" : cd),
+ scriptsDir(confDir),
+ rules(confDir + "/rules"),
logFile("/var/log/stargazer.log"),
pidFile("/var/run/stargazer.pid"),
monitorDir("/var/stargazer/monitoring"),
messageTimeout(0),
feeChargeType(0),
reconnectOnTariffChange(false),
- modulesSettings(),
- storeModuleSettings(),
logger(GetStgLogger())
{
}
{
}
//-----------------------------------------------------------------------------
+SETTINGS_IMPL & SETTINGS_IMPL::operator=(const SETTINGS_IMPL & set)
+{
+ modulesPath = set.modulesPath;
+ dirName = set.dirName;
+ confDir = set.confDir;
+ scriptsDir = set.scriptsDir;
+ rules = set.rules;
+ logFile = set.logFile;
+ pidFile = set.pidFile;
+ monitorDir = set.monitorDir;
+ scriptParams = set.scriptParams;
+ monitoring = set.monitoring;
+ detailStatWritePeriod = set.detailStatWritePeriod;
+ statWritePeriod = set.statWritePeriod;
+ stgExecMsgKey = set.stgExecMsgKey;
+ executersNum = set.executersNum;
+ fullFee = set.fullFee;
+ dayFee = set.dayFee;
+ dayResetTraff = set.dayResetTraff;
+ spreadFee = set.spreadFee;
+ freeMbAllowInet = set.freeMbAllowInet;
+ dayFeeIsLastDay = set.dayFeeIsLastDay;
+ writeFreeMbTraffCost = set.writeFreeMbTraffCost;
+ showFeeInCash = set.showFeeInCash;
+ messageTimeout = set.messageTimeout;
+ feeChargeType = set.feeChargeType;
+ reconnectOnTariffChange = set.reconnectOnTariffChange;
+
+ modulesSettings = set.modulesSettings;
+ storeModuleSettings = set.storeModuleSettings;
+ return *this;
+}
+//-----------------------------------------------------------------------------
int SETTINGS_IMPL::ParseModuleSettings(const DOTCONFDocumentNode * node, std::vector<PARAM_VALUE> * params)
{
const DOTCONFDocumentNode * childNode;