]> git.stg.codes - ssmd.git/blobdiff - src/settingsfileparser.cpp
Control dumping snmp scripts.
[ssmd.git] / src / settingsfileparser.cpp
index bf2fda2ca27a2bb92c0c023da7c36df21947162d..a21130766a8f997e23d50f4f9120b39e0be199df 100644 (file)
@@ -16,7 +16,7 @@ typedef std::map<std::string, std::string> PairsType;
 typedef std::map<std::string, PairsType> SectionsType;
 
 template <typename Iterator>
-struct IniGrammar 
+struct IniGrammar
   : qi::grammar<Iterator, SectionsType()>
 {
     IniGrammar()
@@ -77,9 +77,8 @@ using SSMD::SettingsParser;
 void SettingsParser::parseFile(const std::string & fileName)
 {
     std::ifstream in(fileName.c_str());
-    if (!in) {
+    if (!in)
         throw std::runtime_error("Can't open file");
-    }
 
     std::string text;
     while(!in.eof()) {
@@ -101,28 +100,23 @@ void SettingsParser::parseFile(const std::string & fileName)
     std::string res;
     _settings._isDaemon = fieldExists(data, "general", "daemon");
     _settings._isDebug = fieldExists(data, "general", "debug");
-    if (fieldValue(data, "general", "log_file", res)){
+    if (fieldValue(data, "general", "log_file", res))
         _settings._logFile = res;
-    }
-    if (fieldValue(data, "general", "pid_file", res)){
+    if (fieldValue(data, "general", "pid_file", res))
         _settings._PIDFile = res;
-    }
-    if (fieldValue(data, "sync", "switch_interval", res)){
+    if (fieldValue(data, "sync", "switch_interval", res))
         _settings._switchSyncInterval = boost::lexical_cast<time_t>(res);
-    }
-    if (fieldValue(data, "sync", "info_interval", res)){
+    if (fieldValue(data, "sync", "info_interval", res))
         _settings._infoSyncInterval = boost::lexical_cast<time_t>(res);
-    }
-    if (fieldValue(data, "sync", "up_profile_id", res)){
+    if (fieldValue(data, "sync", "up_profile_id", res))
         _settings._upProfileId = boost::lexical_cast<unsigned>(res);
-    }
-    if (fieldValue(data, "sync", "down_profile_id", res)){
+    if (fieldValue(data, "sync", "down_profile_id", res))
         _settings._downProfileId = boost::lexical_cast<unsigned>(res);
-    }
-    if (fieldValue(data, "sync", "max_acl_per_pdu", res)){
+    if (fieldValue(data, "sync", "max_acl_per_pdu", res))
         _settings._maxACLPerPDU = boost::lexical_cast<size_t>(res);
-    }
-    if (fieldValue(data, "sync", "data_url", res)){
+    if (fieldValue(data, "sync", "data_url", res))
         _settings._dataURL = res;
-    }
+    if (fieldValue(data, "sync", "script_base", res))
+        _settings._scriptBase = res;
+    _settings._dumpScripts = fieldExists(data, "sync", "dump_scripts");
 }