bool GetXmlParam(std::string content, std::string param, bool & data) { std::string str; if (!GetXmlParam(content, param, str)) return false; if (str.length() == 0) return false; data = atoi(str.c_str()) == 0 ? false : true; return true; }
bool zs_ut_s::GetXmlParam(std::string content, std::string param, std::string & data) { data.clear(); std::vector<std::string> vct; GetXmlParam(content, param, vct); if (vct.size() > 0) { data = vct.at(0); return true; } return false; }
bool ConfigFromFile(std::string cfg) { std::string content; std::ifstream f; f.open(cfg.c_str(), std::ios_base::in); content.assign(std::istreambuf_iterator<char>(f), std::istreambuf_iterator<char>()); std::vector<std::string> vctLogger; GetXmlParam(content, "logger", vctLogger); for (unsigned int i=0; i<vctLogger.size(); i++) { LoggerInfo l; GetXmlParam(vctLogger[i], "path", l._path); GetXmlParam(vctLogger[i], "name", l._name); GetXmlParam(vctLogger[i], "level", l._level); GetXmlParam(vctLogger[i], "display", l._display); DynamicCreateLogger(l._path, l._name, l._level, l._display); } return true; }
bool zs_ut_s::GetXmlParam(std::string content, std::string param, int & data) { std::string str; if (!GetXmlParam(content, param, str)) { return false; } if (str.length() == 0) { return false; } data = atoi(str.c_str()); return true; }
bool zs_ut_s::GetXmlParam(std::string content, std::string param, bool & data) { std::string str; if (!GetXmlParam(content, param, str)) { return false; } if (str.length() == 0) { return false; } int n = atoi(str.c_str()); if (n == 0) { data = false; } else { data = true; } return true; }