summaryrefslogtreecommitdiffstats
path: root/src/server/net
diff options
context:
space:
mode:
authorSimon Rettberg2014-04-16 19:19:50 +0200
committerSimon Rettberg2014-04-16 19:19:50 +0200
commitfc74ee225c6d0c85aa990e20c07b51aca5098c5b (patch)
treecbddf7f053b018a00a1eeb9480971de3424bc29f /src/server/net
parentDon't recreate/clean language files on every run, only when UPDATE_TRANSLATIO... (diff)
parentNew feature. Download of tutor-ip-list and automated assingment. (diff)
downloadpvs2-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.cpp36
-rw-r--r--src/server/net/filedownloader.h44
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_ */