From a0459de4d5b4bbb062536146cdefaad796480c7c Mon Sep 17 00:00:00 2001 From: Dominik Riebeling Date: Wed, 16 Mar 2022 22:19:00 +0100 Subject: rbutil: HttpGet: Return NetworkError in done signal. Return the status value instead of simply a bool. Change-Id: I2bffaac0087418656e80c74dc352011a4ea32ab1 --- utils/rbutilqt/base/bootloaderinstallbase.cpp | 13 ++----------- utils/rbutilqt/base/bootloaderinstallbase.h | 3 +-- utils/rbutilqt/base/httpget.cpp | 6 +++--- utils/rbutilqt/base/httpget.h | 2 +- utils/rbutilqt/base/voicefile.cpp | 4 ++-- utils/rbutilqt/base/voicefile.h | 2 +- utils/rbutilqt/base/zipinstaller.cpp | 4 ++-- utils/rbutilqt/base/zipinstaller.h | 2 +- utils/rbutilqt/rbutilqt.cpp | 8 ++++---- utils/rbutilqt/rbutilqt.h | 4 ++-- utils/rbutilqt/test/test-httpget.cpp | 16 ++++++++-------- utils/rbutilqt/themesinstallwindow.cpp | 13 ++++++------- utils/rbutilqt/themesinstallwindow.h | 4 ++-- 13 files changed, 35 insertions(+), 46 deletions(-) (limited to 'utils') diff --git a/utils/rbutilqt/base/bootloaderinstallbase.cpp b/utils/rbutilqt/base/bootloaderinstallbase.cpp index c07d87bf36..a185b25619 100644 --- a/utils/rbutilqt/base/bootloaderinstallbase.cpp +++ b/utils/rbutilqt/base/bootloaderinstallbase.cpp @@ -57,16 +57,7 @@ void BootloaderInstallBase::downloadBlStart(QUrl source) } -void BootloaderInstallBase::downloadReqFinished(int id, bool error) -{ - LOG_INFO() << "Download Request" << id - << "finished, error:" << m_http.errorString(); - - downloadBlFinish(error); -} - - -void BootloaderInstallBase::downloadBlFinish(bool error) +void BootloaderInstallBase::downloadBlFinish(QNetworkReply::NetworkError error) { LOG_INFO() << "Downloading bootloader finished, error:" << error; @@ -80,7 +71,7 @@ void BootloaderInstallBase::downloadBlFinish(bool error) emit done(true); return; } - if(error) { + if(error != QNetworkReply::NoError) { emit logItem(tr("Download error: %1") .arg(m_http.errorString()), LOGERROR); emit done(true); diff --git a/utils/rbutilqt/base/bootloaderinstallbase.h b/utils/rbutilqt/base/bootloaderinstallbase.h index 0d9423a06f..567b4e9093 100644 --- a/utils/rbutilqt/base/bootloaderinstallbase.h +++ b/utils/rbutilqt/base/bootloaderinstallbase.h @@ -68,8 +68,7 @@ class BootloaderInstallBase : public QObject static QString postinstallHints(QString model); protected slots: - void downloadReqFinished(int id, bool error); - void downloadBlFinish(bool error); + void downloadBlFinish(QNetworkReply::NetworkError error); void installBlfile(void); void progressAborted(void); diff --git a/utils/rbutilqt/base/httpget.cpp b/utils/rbutilqt/base/httpget.cpp index 2df9501fd6..fb74514e73 100644 --- a/utils/rbutilqt/base/httpget.cpp +++ b/utils/rbutilqt/base/httpget.cpp @@ -145,7 +145,7 @@ void HttpGet::requestFinished(QNetworkReply* reply) { m_lastStatusCode = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(); - LOG_INFO() << "Request finished, status code:" << m_lastStatusCode; + LOG_INFO() << "Request finished, status code:" << m_lastStatusCode << reply->error(); m_lastServerTimestamp = reply->header(QNetworkRequest::LastModifiedHeader).toDateTime().toLocalTime(); LOG_INFO() << "Data from cache:" @@ -178,11 +178,11 @@ void HttpGet::requestFinished(QNetworkReply* reply) m_outputFile->write(m_data); m_outputFile->close(); } - emit done(false); + emit done(QNetworkReply::NoError); } else { m_data.clear(); - emit done(true); + emit done(reply->error()); } reply->deleteLater(); m_reply = nullptr; diff --git a/utils/rbutilqt/base/httpget.h b/utils/rbutilqt/base/httpget.h index 472ad83b81..443a606e6d 100644 --- a/utils/rbutilqt/base/httpget.h +++ b/utils/rbutilqt/base/httpget.h @@ -78,7 +78,7 @@ class HttpGet : public QObject void abort(void); signals: - void done(bool); + void done(QNetworkReply::NetworkError error); void dataReadProgress(int, int); void headerFinished(void); diff --git a/utils/rbutilqt/base/voicefile.cpp b/utils/rbutilqt/base/voicefile.cpp index eabf7a721a..c5a239d720 100644 --- a/utils/rbutilqt/base/voicefile.cpp +++ b/utils/rbutilqt/base/voicefile.cpp @@ -175,7 +175,7 @@ bool VoiceFileCreator::createVoiceFile() } -void VoiceFileCreator::downloadDone(bool error) +void VoiceFileCreator::downloadDone(QNetworkReply::NetworkError error) { LOG_INFO() << "download done, error:" << error; @@ -190,7 +190,7 @@ void VoiceFileCreator::downloadDone(bool error) if(getter->isCached()) emit logItem(tr("Cached file used."), LOGINFO); - if(error) + if(error != QNetworkReply::NoError) { emit logItem(tr("Download error: %1").arg(getter->errorString()),LOGERROR); emit done(true); diff --git a/utils/rbutilqt/base/voicefile.h b/utils/rbutilqt/base/voicefile.h index c813910a69..feb0ac6e5a 100644 --- a/utils/rbutilqt/base/voicefile.h +++ b/utils/rbutilqt/base/voicefile.h @@ -52,7 +52,7 @@ signals: void logProgress(int, int); //! set progress bar. private slots: - void downloadDone(bool error); + void downloadDone(QNetworkReply::NetworkError error); private: diff --git a/utils/rbutilqt/base/zipinstaller.cpp b/utils/rbutilqt/base/zipinstaller.cpp index 8de6c53b16..ba0b89121c 100644 --- a/utils/rbutilqt/base/zipinstaller.cpp +++ b/utils/rbutilqt/base/zipinstaller.cpp @@ -102,7 +102,7 @@ void ZipInstaller::installStart() } -void ZipInstaller::downloadDone(bool error) +void ZipInstaller::downloadDone(QNetworkReply::NetworkError error) { LOG_INFO() << "download done, error:" << error; QStringList zipContents; // needed later @@ -118,7 +118,7 @@ void ZipInstaller::downloadDone(bool error) } if(m_getter->isCached()) emit logItem(tr("Cached file used."), LOGINFO); - if(error) { + if(error != QNetworkReply::NoError) { emit logItem(tr("Download error: %1").arg(m_getter->errorString()), LOGERROR); emit done(true); return; diff --git a/utils/rbutilqt/base/zipinstaller.h b/utils/rbutilqt/base/zipinstaller.h index 35967af6b1..32a42ef6a2 100644 --- a/utils/rbutilqt/base/zipinstaller.h +++ b/utils/rbutilqt/base/zipinstaller.h @@ -59,7 +59,7 @@ public slots: void abort(void); private slots: - void downloadDone(bool); + void downloadDone(QNetworkReply::NetworkError error); void installStart(void); void installContinue(void); diff --git a/utils/rbutilqt/rbutilqt.cpp b/utils/rbutilqt/rbutilqt.cpp index 9cb5b7cf30..6d0da3390f 100644 --- a/utils/rbutilqt/rbutilqt.cpp +++ b/utils/rbutilqt/rbutilqt.cpp @@ -214,9 +214,9 @@ void RbUtilQt::downloadInfo() } -void RbUtilQt::downloadDone(bool error) +void RbUtilQt::downloadDone(QNetworkReply::NetworkError error) { - if(error) { + if(error != QNetworkReply::NoError) { LOG_INFO() << "network error:" << daily->errorString(); ui.statusbar->showMessage(tr("Can't get version information!")); QMessageBox::critical(this, tr("Network error"), @@ -614,9 +614,9 @@ void RbUtilQt::checkUpdate(void) update->getFile(QUrl(url)); } -void RbUtilQt::downloadUpdateDone(bool error) +void RbUtilQt::downloadUpdateDone(QNetworkReply::NetworkError error) { - if(error) { + if(error != QNetworkReply::NoError) { LOG_INFO() << "network error:" << update->errorString(); } else { diff --git a/utils/rbutilqt/rbutilqt.h b/utils/rbutilqt/rbutilqt.h index e20749d438..c507317fa2 100644 --- a/utils/rbutilqt/rbutilqt.h +++ b/utils/rbutilqt/rbutilqt.h @@ -87,7 +87,7 @@ class RbUtilQt : public QMainWindow void createTalkFiles(void); void createVoiceFile(void); - void downloadDone(bool); + void downloadDone(QNetworkReply::NetworkError error); void downloadInfo(void); void backup(void); @@ -97,7 +97,7 @@ class RbUtilQt : public QMainWindow void updateTabs(int); void checkUpdate(void); - void downloadUpdateDone(bool errror); + void downloadUpdateDone(QNetworkReply::NetworkError error); }; #endif diff --git a/utils/rbutilqt/test/test-httpget.cpp b/utils/rbutilqt/test/test-httpget.cpp index 9230122f63..86f1a6e13e 100644 --- a/utils/rbutilqt/test/test-httpget.cpp +++ b/utils/rbutilqt/test/test-httpget.cpp @@ -195,11 +195,11 @@ void TestHttpGet::cleanup(void) { rmTree(m_cachedir.absolutePath()); if(m_getter) { - m_getter->abort(); delete m_getter; m_getter = NULL; + m_getter->abort(); delete m_getter; m_getter = nullptr; } - if(m_daemon) { delete m_daemon; m_daemon = NULL; } - if(m_doneSpy) { delete m_doneSpy; m_doneSpy = NULL; } - if(m_progressSpy) { delete m_progressSpy; m_progressSpy = NULL; } + if(m_daemon) { delete m_daemon; m_daemon = nullptr; } + if(m_doneSpy) { delete m_doneSpy; m_doneSpy = nullptr; } + if(m_progressSpy) { delete m_progressSpy; m_progressSpy = nullptr; } } void TestHttpGet::testFileUrlRequest(void) @@ -299,7 +299,7 @@ void TestHttpGet::testCachedRequest(void) QList requests = m_daemon->lastRequestData(); QCOMPARE(m_doneSpy->count(), 1); - QCOMPARE(m_doneSpy->at(0).at(0).toBool(), false); + QCOMPARE(m_doneSpy->at(0).at(0).toInt(), QNetworkReply::NoError); QCOMPARE(m_waitTimeoutOccured, false); QCOMPARE(requests.size(), 2); QCOMPARE(requests.at(0).startsWith("GET"), true); @@ -311,7 +311,7 @@ void TestHttpGet::testCachedRequest(void) while(m_doneSpy->count() < 2 && m_waitTimeoutOccured == false) QCoreApplication::processEvents(); QCOMPARE(m_doneSpy->count(), 2); // 2 requests, 2 times done() - QCOMPARE(m_doneSpy->at(1).at(0).toBool(), false); + QCOMPARE(m_doneSpy->at(1).at(0).toInt(), QNetworkReply::NoError); QCOMPARE(m_waitTimeoutOccured, false); QCOMPARE(m_daemon->lastRequestData().size(), 3); // redirect will not cache as the redirection target file. @@ -402,7 +402,7 @@ void TestHttpGet::testResponseCode(void) QCoreApplication::processEvents(); QCOMPARE(m_doneSpy->count(), 1); - QCOMPARE(m_doneSpy->at(0).at(0).toBool(), true); + QCOMPARE(m_doneSpy->at(0).at(0).toInt(), QNetworkReply::ContentNotFoundError); QCOMPARE(m_waitTimeoutOccured, false); QCOMPARE(m_daemon->lastRequestData().size(), 1); QCOMPARE(m_daemon->lastRequestData().at(0).startsWith("GET"), true); @@ -472,7 +472,7 @@ void TestHttpGet::testNoServer(void) QCoreApplication::processEvents(); QCOMPARE(m_doneSpy->count(), 1); - QCOMPARE(m_doneSpy->at(0).at(0).toBool(), true); + QCOMPARE(m_doneSpy->at(0).at(0).toInt(), QNetworkReply::ConnectionRefusedError); QCOMPARE(m_waitTimeoutOccured, false); } diff --git a/utils/rbutilqt/themesinstallwindow.cpp b/utils/rbutilqt/themesinstallwindow.cpp index e6043de892..5be60050d6 100644 --- a/utils/rbutilqt/themesinstallwindow.cpp +++ b/utils/rbutilqt/themesinstallwindow.cpp @@ -100,7 +100,7 @@ void ThemesInstallWindow::downloadInfo() } -void ThemesInstallWindow::downloadDone(bool error) +void ThemesInstallWindow::downloadDone(QNetworkReply::NetworkError error) { LOG_INFO() << "Download done, error:" << error; @@ -116,7 +116,7 @@ void ThemesInstallWindow::downloadDone(bool error) << iniDetails.value("error/description").toString() << iniDetails.value("error/query").toString(); - if(error) { + if(error != QNetworkReply::NoError) { logger->addItem(tr("Network error: %1.\n" "Please check your network and proxy settings.") .arg(getter->errorString()), LOGERROR); @@ -236,19 +236,18 @@ void ThemesInstallWindow::updateDetails(QListWidgetItem* cur, QListWidgetItem* p } -void ThemesInstallWindow::updateImage(bool error) +void ThemesInstallWindow::updateImage(QNetworkReply::NetworkError error) { LOG_INFO() << "Updating image:"<< !error; - if(error) { + if(error != QNetworkReply::NoError) { ui.themePreview->clear(); ui.themePreview->setText(tr("Retrieving theme preview failed.\n" "HTTP response code: %1").arg(igetter.httpResponse())); return; } - - QPixmap p; - if(!error) { + else { + QPixmap p; imgData = igetter.readAll(); if(imgData.isNull()) return; p.loadFromData(imgData); diff --git a/utils/rbutilqt/themesinstallwindow.h b/utils/rbutilqt/themesinstallwindow.h index 96a1ea42b4..c3ea850efd 100644 --- a/utils/rbutilqt/themesinstallwindow.h +++ b/utils/rbutilqt/themesinstallwindow.h @@ -65,8 +65,8 @@ class ThemesInstallWindow : public QDialog bool windowSelectOnly; private slots: - void downloadDone(bool); - void updateImage(bool); + void downloadDone(QNetworkReply::NetworkError error); + void updateImage(QNetworkReply::NetworkError error); void abort(void); void updateDetails(QListWidgetItem* cur, QListWidgetItem* prev); void updateSize(void); -- cgit v1.2.3