#include "configparser.h" #include "loghelper.h" ConfigParser::ConfigParser() { this->current_app_version = 0; this->current_seg_version = 0; } bool ConfigParser::readConfig(QString content) { QString errorStr; int errorLine; int errorColumn; QDomDocument doc; if(!doc.setContent(content,false,&errorStr,&errorLine,&errorColumn)) { qDebug()<update = child.toElement().attribute("update"); } if(child.toElement().tagName()=="patch_urls") { parseAppPatchUrlElement(child.toElement()); } if(child.toElement().tagName()=="update_logs") { parseAppUpdateLogElement(child.toElement()); } child = child.nextSibling(); } } void ConfigParser::parseSegElement(const QDomElement &element) { QDomNode child = element.firstChild(); while (!child.isNull()) { if(child.toElement().tagName()=="current_seg_version") { current_seg_version= child.toElement().text().toInt(); } if(child.toElement().tagName()=="patch_urls") { parseSegPatchUrlElement(child.toElement()); } if(child.toElement().tagName()=="update_logs") { parseSegUpdateLogElement(child.toElement()); } child = child.nextSibling(); } } void ConfigParser::parseAppPatchUrlElement(const QDomElement &element) { QDomNode child = element.firstChild(); while (!child.isNull()) { int sn = child.toElement().attribute("sn").toInt(); QString url = child.toElement().text(); app_patch_urls.insert(sn,url); child = child.nextSibling(); } } void ConfigParser::parseAppUpdateLogElement(const QDomElement &element) { QDomNode child = element.firstChild(); while (!child.isNull()) { int sn = child.toElement().attribute("sn").toInt(); QString url = child.toElement().text(); app_update_logs.insert(sn,url); child = child.nextSibling(); } } void ConfigParser::parseSegPatchUrlElement(const QDomElement &element) { QDomNode child = element.firstChild(); while (!child.isNull()) { int sn = child.toElement().attribute("sn").toInt(); QString url = child.toElement().text(); seg_patch_urls.insert(sn,url); child = child.nextSibling(); } } void ConfigParser::parseSegUpdateLogElement(const QDomElement &element) { QDomNode child = element.firstChild(); while (!child.isNull()) { int sn = child.toElement().attribute("sn").toInt(); QString url = child.toElement().text(); seg_update_logs.insert(sn,url); child = child.nextSibling(); } } void ConfigParser::parseAdElement(const QDomElement &element) { QDomNode child = element.firstChild(); while (!child.isNull()) { QString url = child.toElement().attribute("link"); QString content = child.toElement().text(); text_ads.insert(url,content); child = child.nextSibling(); } } void ConfigParser::parseCorpPrefixElement(const QDomElement &element) { QDomNode child = element.firstChild(); while (!child.isNull()) { QString corp = child.toElement().attribute("corp"); QString content = child.toElement().text(); corp_prefix.insert(corp,content); child = child.nextSibling(); } } void ConfigParser::parseClientConfigElement(const QDomElement &element) { QDomNode child = element.firstChild(); while (!child.isNull()) { QStringList list; QString name = child.toElement().attribute("name"); QString ws_url = child.toElement().attribute("ws_url"); QString notice_url = child.toElement().attribute("notice_url"); list<