X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/015b23cc8eb304cb6cbcc7eb935d3f7c8169b279..f5ea2a9375e9fb6fc8dc0720395e761ddd3c11c0:/projects/stargazer/settings_impl.cpp diff --git a/projects/stargazer/settings_impl.cpp b/projects/stargazer/settings_impl.cpp index f6a40db3..c1a3951c 100644 --- a/projects/stargazer/settings_impl.cpp +++ b/projects/stargazer/settings_impl.cpp @@ -36,48 +36,13 @@ $Author: faust $ #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"), @@ -97,8 +62,6 @@ SETTINGS_IMPL::SETTINGS_IMPL(const std::string & cd) messageTimeout(0), feeChargeType(0), reconnectOnTariffChange(false), - modulesSettings(), - storeModuleSettings(), logger(GetStgLogger()) { } @@ -136,6 +99,39 @@ SETTINGS_IMPL::SETTINGS_IMPL(const SETTINGS_IMPL & rval) { } //----------------------------------------------------------------------------- +SETTINGS_IMPL & SETTINGS_IMPL::operator=(const SETTINGS_IMPL & rhs) +{ + modulesPath = rhs.modulesPath; + dirName = rhs.dirName; + confDir = rhs.confDir; + scriptsDir = rhs.scriptsDir; + rules = rhs.rules; + logFile = rhs.logFile; + pidFile = rhs.pidFile; + monitorDir = rhs.monitorDir; + scriptParams = rhs.scriptParams; + monitoring = rhs.monitoring; + detailStatWritePeriod = rhs.detailStatWritePeriod; + statWritePeriod = rhs.statWritePeriod; + stgExecMsgKey = rhs.stgExecMsgKey; + executersNum = rhs.executersNum; + fullFee = rhs.fullFee; + dayFee = rhs.dayFee; + dayResetTraff = rhs.dayResetTraff; + spreadFee = rhs.spreadFee; + freeMbAllowInet = rhs.freeMbAllowInet; + dayFeeIsLastDay = rhs.dayFeeIsLastDay; + writeFreeMbTraffCost = rhs.writeFreeMbTraffCost; + showFeeInCash = rhs.showFeeInCash; + messageTimeout = rhs.messageTimeout; + feeChargeType = rhs.feeChargeType; + reconnectOnTariffChange = rhs.reconnectOnTariffChange; + + modulesSettings = rhs.modulesSettings; + storeModuleSettings = rhs.storeModuleSettings; + return *this; +} +//----------------------------------------------------------------------------- int SETTINGS_IMPL::ParseModuleSettings(const DOTCONFDocumentNode * node, std::vector * params) { const DOTCONFDocumentNode * childNode;