23 #ifndef __IP2CUPDATER_H__
24 #define __IP2CUPDATER_H__
28 #include <QNetworkAccessManager>
29 #include <QNetworkReply>
30 #include <QNetworkRequest>
32 #include <wadseeker/protocols/fixednetworkaccessmanager.h>
55 static bool needsUpdate(
const QString& filePath,
unsigned minimumUpdateAge);
60 void downloadDatabase(
const QUrl& netLocation);
61 const QByteArray& downloadedData();
63 const QString& filePath()
const {
return pathToFile; }
78 bool hasDownloadedData()
const {
return !retrievedData.isEmpty(); }
79 bool hasRollbackData()
const {
return !rollbackData.isEmpty(); }
105 void setFilePath(
const QString& filePath) { pathToFile = filePath; }
112 void downloadProgress(qint64 value, qint64 max);
115 FixedNetworkAccessManager* pNetworkAccessManager;
116 QNetworkReply* pCurrentNetworkReply;
126 QByteArray retrievedData;
127 QByteArray rollbackData;
129 bool save(
const QByteArray& saveWhat);
132 void downloadFinished();
static bool needsUpdate(const QString &filePath, unsigned minimumUpdateAge)
Checks if IP2C file must be updated.
IP2CUpdater is responsible for downloading a new version of database from the site.
bool getRollbackData()
Obtains rollback data from pathToFile file.
void databaseDownloadFinished(const QByteArray &downloadedData)
In case of failure the downloadedData array will be empty.
bool rollback()
Saves data to the pathToFile file. This data must be first obtained through the rollback method...
bool saveDownloadedData()
Saves recently downloaded data to the pathToFile file.