forked from qt-creator/qt-creator
AndroidSdkDownloader: Use Utils::NetworkAccessManager
Change-Id: Idd245f578ead0f22e457f9571441a4d9c9a1ce40 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
|
||||
#include <utils/archive.h>
|
||||
#include <utils/filepath.h>
|
||||
#include <utils/networkaccessmanager.h>
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
|
||||
@@ -25,9 +26,7 @@ namespace Android::Internal {
|
||||
*/
|
||||
AndroidSdkDownloader::AndroidSdkDownloader()
|
||||
: m_androidConfig(AndroidConfigurations::currentConfig())
|
||||
{
|
||||
connect(&m_manager, &QNetworkAccessManager::finished, this, &AndroidSdkDownloader::downloadFinished);
|
||||
}
|
||||
{}
|
||||
|
||||
AndroidSdkDownloader::~AndroidSdkDownloader() = default;
|
||||
|
||||
@@ -47,8 +46,9 @@ void AndroidSdkDownloader::downloadAndExtractSdk()
|
||||
return;
|
||||
}
|
||||
|
||||
QNetworkRequest request(m_androidConfig.sdkToolsUrl());
|
||||
m_reply = m_manager.get(request);
|
||||
const QNetworkRequest request(m_androidConfig.sdkToolsUrl());
|
||||
m_reply = NetworkAccessManager::instance()->get(request);
|
||||
connect(m_reply, &QNetworkReply::finished, this, &AndroidSdkDownloader::downloadFinished);
|
||||
|
||||
#if QT_CONFIG(ssl)
|
||||
connect(m_reply, &QNetworkReply::sslErrors, this, &AndroidSdkDownloader::sslErrors);
|
||||
@@ -110,6 +110,7 @@ void AndroidSdkDownloader::cancel()
|
||||
if (m_reply) {
|
||||
m_reply->abort();
|
||||
m_reply->deleteLater();
|
||||
m_reply = nullptr;
|
||||
}
|
||||
if (m_progressDialog)
|
||||
m_progressDialog->cancel();
|
||||
@@ -169,18 +170,18 @@ bool AndroidSdkDownloader::isHttpRedirect(QNetworkReply *reply)
|
||||
|| statusCode == 307 || statusCode == 308;
|
||||
}
|
||||
|
||||
void AndroidSdkDownloader::downloadFinished(QNetworkReply *reply)
|
||||
void AndroidSdkDownloader::downloadFinished()
|
||||
{
|
||||
QUrl url = reply->url();
|
||||
if (reply->error()) {
|
||||
QUrl url = m_reply->url();
|
||||
if (m_reply->error()) {
|
||||
cancelWithError(QString(Tr::tr("Downloading Android SDK Tools from URL %1 has failed: %2."))
|
||||
.arg(url.toString(), reply->errorString()));
|
||||
.arg(url.toString(), m_reply->errorString()));
|
||||
} else {
|
||||
if (isHttpRedirect(reply)) {
|
||||
if (isHttpRedirect(m_reply)) {
|
||||
cancelWithError(QString(Tr::tr("Download from %1 was redirected.")).arg(url.toString()));
|
||||
} else {
|
||||
m_sdkFilename = getSaveFilename(url);
|
||||
if (saveToDisk(m_sdkFilename, reply) && verifyFileIntegrity())
|
||||
if (saveToDisk(m_sdkFilename, m_reply) && verifyFileIntegrity())
|
||||
emit sdkPackageWriteFinished();
|
||||
else
|
||||
cancelWithError(
|
||||
@@ -188,7 +189,8 @@ void AndroidSdkDownloader::downloadFinished(QNetworkReply *reply)
|
||||
}
|
||||
}
|
||||
|
||||
reply->deleteLater();
|
||||
m_reply->deleteLater();
|
||||
m_reply = nullptr;
|
||||
}
|
||||
|
||||
} // namespace Android::Internal
|
||||
|
||||
@@ -42,12 +42,11 @@ private:
|
||||
void cancelWithError(const QString &error);
|
||||
void logError(const QString &error);
|
||||
|
||||
void downloadFinished(QNetworkReply *m_reply);
|
||||
void downloadFinished();
|
||||
#if QT_CONFIG(ssl)
|
||||
void sslErrors(const QList<QSslError> &errors);
|
||||
#endif
|
||||
|
||||
QNetworkAccessManager m_manager;
|
||||
QNetworkReply *m_reply = nullptr;
|
||||
Utils::FilePath m_sdkFilename;
|
||||
QProgressDialog *m_progressDialog = nullptr;
|
||||
|
||||
Reference in New Issue
Block a user