Unit test for RemoteDBMgr and some stubs
[irwi] / src / remote.h
1 #ifndef REMOTE_H
2 #define REMOTE_H
3
4 #include <QObject>
5 #include <QString>
6 #include <QSettings>
7
8 #include "rating.h"
9
10 class QNetworkReply;
11 class QNetworkAccessManager;
12
13 class Remote : public QObject
14 {
15     Q_OBJECT
16
17 public:
18     Remote();
19     Remote(const QString &name, const QString &mfg = "",
20             int rating = 0, int voteCount = 0);
21     Remote(const Remote &);
22     Remote &operator=(const Remote &);
23     ~Remote();
24
25     //getters
26     QString name()  const { return m_name; }
27     QString mfg()   const { return m_mfg; }
28     int rating()    const { return m_rating; }
29     int voteCount() const { return m_voteCount; }
30
31 public slots:
32     void saveToFile();
33     void updateInfo();
34     void sendRating(Rating::Rating);
35
36 private slots:
37     void remoteDownloadFinished(QNetworkReply *reply);
38     void infoRequestFinished(QNetworkReply *reply);
39
40 signals:
41     void infoUpdated();
42     void saveFinished();
43
44 private:
45     QString m_name;
46     QString m_mfg;
47     int m_rating;
48     int m_voteCount;
49
50     QNetworkAccessManager *m_infoNAM;
51     QNetworkAccessManager *m_remoteNAM;
52     QNetworkAccessManager *m_ratingNAM;
53 };
54
55 #endif
56