X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Fupdatechecker.cpp;h=07b333580b143a9d8197d99df15f4a431f605841;hb=HEAD;hp=f8d381d2ecca99d7ecdfcaa182281a1e20bd0a81;hpb=7b529d6a918efe39ca6d63201fcdb954a3c881b4;p=minitube diff --git a/src/updatechecker.cpp b/src/updatechecker.cpp deleted file mode 100644 index f8d381d..0000000 --- a/src/updatechecker.cpp +++ /dev/null @@ -1,62 +0,0 @@ -#include "updatechecker.h" -#include "networkaccess.h" -#include "constants.h" - -namespace The { - NetworkAccess* http(); -} - -UpdateChecker::UpdateChecker() { - m_needUpdate = false; -} - -void UpdateChecker::checkForUpdate() { - QUrl updateUrl(QString(Constants::WEBSITE) + "-ws/release.xml"); - // QUrl updateUrl("http://flavio.tordini.org:8012/release.xml"); - - QObject *reply = The::http()->get(updateUrl); - connect(reply, SIGNAL(data(QByteArray)), SLOT(requestFinished(QByteArray))); - -} - -void UpdateChecker::requestFinished(QByteArray data) { - UpdateCheckerStreamReader reader; - reader.read(data); - m_needUpdate = reader.needUpdate(); - m_remoteVersion = reader.remoteVersion(); - if (m_needUpdate && !m_remoteVersion.isEmpty()) emit newVersion(m_remoteVersion); -} - -QString UpdateChecker::remoteVersion() { - return m_remoteVersion; -} - -// --- Reader --- - -bool UpdateCheckerStreamReader::read(QByteArray data) { - addData(data); - - while (!atEnd()) { - readNext(); - if (isStartElement()) { - if (name() == "release") { - while (!atEnd()) { - readNext(); - if (isStartElement() && name() == "version") { - QString remoteVersion = readElementText(); - qDebug() << remoteVersion << QString(Constants::VERSION); - m_needUpdate = remoteVersion != QString(Constants::VERSION); - m_remoteVersion = remoteVersion; - break; - } - } - } - } - } - - return !error(); -} - -QString UpdateCheckerStreamReader::remoteVersion() { - return m_remoteVersion; -}