]> git.stg.codes - stg.git/blobdiff - projects/stargazer/plugins/store/files/file_store.cpp
Ticket 37. The readTime() changed to str2x(), default value in the
[stg.git] / projects / stargazer / plugins / store / files / file_store.cpp
index 0c48722c2096d7605692937a5011bba4a2fb3bc3..098f59b4c70cbdb268404526329c9177000716e6 100644 (file)
@@ -1471,13 +1471,16 @@ if (conf.ReadString("ChangePolicy", &str, "allow") < 0)
 else
     td->tariffConf.changePolicy = TARIFF::StringToChangePolicy(str);
 
-if (conf.ReadTime("ChangePolicyTimeout", &td->tariffConf.changePolicyTimeout, 0) < 0)
-    {
-    STG_LOCKER lock(&mutex);
-    errorStr = "Cannot read tariff " + tariffName + ". Parameter ChangePolicyTimeout";
-    printfd(__FILE__, "FILES_STORE::RestoreTariff - changepolicytimeout read failed for tariff '%s'\n", tariffName.c_str());
-    return -1;
-    }
+if (conf.ReadString("ChangePolicyTimeout", &str, "0") < 0)
+{
+    td->tariffConf.changePolicyTimeout = 0;
+}
+else
+{
+    int64_t policyTime = 0;
+    if (str2x(str, policyTime) == 0)
+        td->tariffConf.changePolicyTimeout = (time_t)policyTime;
+}
 return 0;
 }
 //-----------------------------------------------------------------------------
@@ -1540,6 +1543,7 @@ std::string fileName = storeSettings.GetTariffsDir() + "/" + tariffName + ".tf";
     cf.WriteString("TraffType", TARIFF::TraffTypeToString(td.tariffConf.traffType));
     cf.WriteString("Period", TARIFF::PeriodToString(td.tariffConf.period));
     cf.WriteString("ChangePolicy", TARIFF::ChangePolicyToString(td.tariffConf.changePolicy));
+    cf.WriteTime("ChangePolicyTimeout", td.tariffConf.changePolicyTimeout);
     }
 
 return 0;