diff options
| author | Simon Rettberg | 2014-04-16 19:19:50 +0200 |
|---|---|---|
| committer | Simon Rettberg | 2014-04-16 19:19:50 +0200 |
| commit | fc74ee225c6d0c85aa990e20c07b51aca5098c5b (patch) | |
| tree | cbddf7f053b018a00a1eeb9480971de3424bc29f /src/server/net | |
| parent | Don't recreate/clean language files on every run, only when UPDATE_TRANSLATIO... (diff) | |
| parent | New feature. Download of tutor-ip-list and automated assingment. (diff) | |
| download | pvs2-fc74ee225c6d0c85aa990e20c07b51aca5098c5b.tar.gz pvs2-fc74ee225c6d0c85aa990e20c07b51aca5098c5b.tar.xz pvs2-fc74ee225c6d0c85aa990e20c07b51aca5098c5b.zip | |
Merge branch 'master'
Conflicts:
CMakeLists.txt
Diffstat (limited to 'src/server/net')
| -rw-r--r-- | src/server/net/filedownloader.cpp | 36 | ||||
| -rw-r--r-- | src/server/net/filedownloader.h | 44 |
2 files changed, 80 insertions, 0 deletions
diff --git a/src/server/net/filedownloader.cpp b/src/server/net/filedownloader.cpp new file mode 100644 index 0000000..70e1520 --- /dev/null +++ b/src/server/net/filedownloader.cpp @@ -0,0 +1,36 @@ +/* + * FileDownloader.cpp + * + * Created on: Mar 7, 2014 + * Author: nils + */ + +#include <QFileInfo> + +#include "filedownloader.h" + +FileDownloader::FileDownloader(QObject *parent) : + QObject(parent) { + connect(&m_WebCtrl, SIGNAL(finished(QNetworkReply*)), + SLOT(fileDownloaded(QNetworkReply*))); +} + +FileDownloader::~FileDownloader() { + +} + +void FileDownloader::connectSlot(QObject* obj, const char* slot) { + QObject::connect(this, SIGNAL(downloaded(QByteArray&)), + obj, slot); +} + +void FileDownloader::fileDownloaded(QNetworkReply* pReply) { + QByteArray downloadedData = pReply->readAll(); + //emit a signal + pReply->deleteLater(); + emit downloaded(downloadedData); +} + +void FileDownloader::downloadFile(const QUrl& fileUrl) { + m_WebCtrl.get(QNetworkRequest(fileUrl)); +} diff --git a/src/server/net/filedownloader.h b/src/server/net/filedownloader.h new file mode 100644 index 0000000..68eaa39 --- /dev/null +++ b/src/server/net/filedownloader.h @@ -0,0 +1,44 @@ +/* + * filedownloader.h + * + * Created on: Mar 7, 2014 + * Author: nils + */ + +#ifndef FILEDOWNLOADER_H_ +#define FILEDOWNLOADER_H_ + +#include <QObject> +#include <QByteArray> +#include <QNetworkAccessManager> +#include <QNetworkRequest> +#include <QNetworkReply> + +class FileDownloader : public QObject +{ + Q_OBJECT +public: + explicit FileDownloader(QObject *parent = 0); + + virtual ~FileDownloader(); + + void downloadFile(const QUrl& fileUrl); + + void connectSlot(QObject* obj, const char* slot); + + QByteArray downloadedData() const; + +signals: + void downloaded(QByteArray& downloadedData); + +private slots: + + void fileDownloaded(QNetworkReply* pReply); + +private: + + QNetworkAccessManager m_WebCtrl; + +}; + +#endif /* FILEDOWNLOADER_H_ */ |
