-
Notifications
You must be signed in to change notification settings - Fork 0
/
UpdateManager.cpp
31 lines (23 loc) · 1006 Bytes
/
UpdateManager.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include "UpdateManager.hpp"
const QString UpdateManager::UPDATE_SOURCE = "http://personales.alumno.upv.es/ragonca2/easyreceipt.html";
UpdateManager::UpdateManager(){
}
void UpdateManager::connectToServer(){
http = new QNetworkAccessManager(this);
QObject::connect(http,SIGNAL(finished(QNetworkReply*)),this,SLOT(reply(QNetworkReply*)));
http->get(QNetworkRequest(QUrl(UPDATE_SOURCE)));
}
void UpdateManager::reply(QNetworkReply *reply){
//Aquí se guardará la información de la actualización.
char dataRead[256];
reply->readLine(dataRead,256);
//Se almacena en un array.
QString dataString(dataRead);
//Y se parte en trozos para obtener lo que interesa: por un lado el número
//de versión y por otro la web de descarga.
QStringList tokenized = dataString.split(" ");
if (tokenized.size()==2){
emit newUpdate(Version(tokenized.at(0)),tokenized.at(1));
}
reply->deleteLater();//Según la documentación hay que eliminarlo así.
}