Website updated.
[irwi] / src / remotedbmgr.h
1 #ifndef REMOTEDBMGR_H
2 #define REMOTEDBMGR_H
3
4 #include <QObject>
5 #include <QNetworkAccessManager>
6 #include "remotedb.h"
7
8 class QDomDocument;
9 class QDomElement;
10
11 class RemoteDBMgr : public QObject
12 {
13     Q_OBJECT
14 public:
15     RemoteDBMgr();
16     ~RemoteDBMgr();
17
18 public slots:
19     void getDBAsync();
20
21 signals:
22     void dbReady(RemoteDB *);
23     void downloadFailed(int error);
24
25 private slots:
26     void dbDownloadFinished(QNetworkReply *reply);
27
28 private:
29     void parse(QDomDocument &doc);
30     MfgMap parseMfgMap(QDomElement &charEl);
31     RemoteList parseRemotes(QDomElement &mfgEl);
32
33     RemoteDB db;
34     QNetworkAccessManager netAM;
35     bool processing;
36 };
37
38 #endif
39
40