]> git.sur5r.net Git - minitube/blob - src/networkaccess.h
Imported Upstream version 1.9
[minitube] / src / networkaccess.h
1 #ifndef NETWORKACCESS_H
2 #define NETWORKACCESS_H
3
4 #include <QtCore>
5 #include <QtNetwork>
6
7 namespace The {
8     QNetworkAccessManager* networkAccessManager();
9 }
10
11 class NetworkReply : public QObject {
12
13     Q_OBJECT
14
15 public:
16     NetworkReply(QNetworkReply* networkReply);
17
18 public slots:
19     void finished();
20     void requestError(QNetworkReply::NetworkError);
21     void downloadProgress(qint64 bytesReceived, qint64 bytesTotal);
22     void readTimeout();
23
24 signals:
25     void data(QByteArray);
26     void error(QNetworkReply*);
27     void finished(QNetworkReply*);
28
29 private:
30     QNetworkReply *networkReply;
31     QTimer *readTimeoutTimer;
32
33 };
34
35 class NetworkAccess : public QObject {
36
37     Q_OBJECT
38
39 public:
40     NetworkAccess( QObject* parent=0);
41     QNetworkReply* manualGet(QNetworkRequest request, int operation = QNetworkAccessManager::GetOperation);
42     QNetworkRequest buildRequest(QUrl url);
43     QNetworkReply* simpleGet(QUrl url, int operation = QNetworkAccessManager::GetOperation);
44     NetworkReply* get(QUrl url);
45     NetworkReply* head(QUrl url);
46
47 private slots:
48     void error(QNetworkReply::NetworkError);
49
50 };
51
52 #endif // NETWORKACCESS_H