summaryrefslogtreecommitdiffstats
path: root/src/libs/kdtools/kdupdaterfiledownloaderfactory.cpp
diff options
context:
space:
mode:
authorkh1 <karsten.heimrich@nokia.com>2012-04-16 14:08:38 +0200
committerTim Jenssen <tim.jenssen@nokia.com>2012-04-19 11:23:05 +0200
commit8525ec7a17f68f7b2f4d335da2e620a1ecc1720d (patch)
treeb43fea791ed638bcf7281ba0460a7b418569cec3 /src/libs/kdtools/kdupdaterfiledownloaderfactory.cpp
parentaeaf1b84553f337a19b14e1be1aa34c99b4a4e65 (diff)
Implement https support, reuse http downloader.
Fixes Task-number: QTIFW-119 Change-Id: If374603834f5dfe9e7b51f41139cd3b78ad21c61 Reviewed-by: Richard J. Moore <rich@kde.org> Reviewed-by: Niels Weber <niels.2.weber@nokia.com> Reviewed-by: Tim Jenssen <tim.jenssen@nokia.com>
Diffstat (limited to 'src/libs/kdtools/kdupdaterfiledownloaderfactory.cpp')
-rw-r--r--src/libs/kdtools/kdupdaterfiledownloaderfactory.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/libs/kdtools/kdupdaterfiledownloaderfactory.cpp b/src/libs/kdtools/kdupdaterfiledownloaderfactory.cpp
index 8be508cc7..1862a27e5 100644
--- a/src/libs/kdtools/kdupdaterfiledownloaderfactory.cpp
+++ b/src/libs/kdtools/kdupdaterfiledownloaderfactory.cpp
@@ -23,6 +23,8 @@
#include "kdupdaterfiledownloaderfactory.h"
#include "kdupdaterfiledownloader_p.h"
+#include <QtNetwork/QSslSocket>
+
/*!
\internal
\ingroup kdupdater
@@ -64,6 +66,13 @@ FileDownloaderFactory::FileDownloaderFactory()
registerFileDownloader<FtpDownloader>(QLatin1String("ftp"));
registerFileDownloader<HttpDownloader>(QLatin1String("http"));
registerFileDownloader<ResourceFileDownloader >(QLatin1String("resource"));
+
+#ifndef QT_NO_OPENSSL
+ // TODO: once we switch to Qt5, use QT_NO_SSL instead of QT_NO_OPENSSL
+ if (QSslSocket::supportsSsl())
+ registerFileDownloader<HttpDownloader>(QLatin1String("https"));
+#endif
+
d->m_followRedirects = false;
}
@@ -98,6 +107,7 @@ FileDownloader *FileDownloaderFactory::create(const QString &scheme, QObject *pa
FileDownloader *downloader = KDGenericFactory<FileDownloader>::create(scheme);
if (downloader != 0) {
downloader->setParent(parent);
+ downloader->setScheme(scheme);
downloader->setFollowRedirects(d->m_followRedirects);
if (d->m_factory)
downloader->setProxyFactory(d->m_factory->clone());
@@ -108,5 +118,5 @@ FileDownloader *FileDownloaderFactory::create(const QString &scheme, QObject *pa
/*!
KDUpdater::FileDownloaderFactory::registerFileDownlooader
Registers a new file downloader with the factory. If there is already a downloader with the same scheme,
- the downloader is replaced. The ownership of the downloader is transfered to the factory.
+ the downloader is replaced. The ownership of the downloader is transferred to the factory.
*/