@@ -20,25 +20,16 @@
20#include <QNetworkDiskCache>
20#include <QNetworkDiskCache>
21#include <QNetworkAccessManager>
21#include <QNetworkAccessManager>
22#include <QStandardPaths>
22#include <QStandardPaths>
23−#include <QNetworkConfigurationManager>
25CachingNetworkAccessManager::CachingNetworkAccessManager(QObject *parent)
24CachingNetworkAccessManager::CachingNetworkAccessManager(QObject *parent)
26 : QNetworkAccessManager(parent)
25 : QNetworkAccessManager(parent)
28− m_networkManager = new QNetworkConfigurationManager(this);
27+ m_networkingStatus = new ubuntu::connectivity::NetworkingStatus(this);
30− QObject::connect(m_networkManager, &QNetworkConfigurationManager::onlineStateChanged, this, &CachingNetworkAccessManager::onlineStateChanged);
31− m_isOnline = m_networkManager->isOnline();
34−void CachingNetworkAccessManager::onlineStateChanged(bool isOnline)
36− m_isOnline = isOnline;
39QNetworkReply* CachingNetworkAccessManager::createRequest(Operation op, const QNetworkRequest &request, QIODevice *outgoingData)
30QNetworkReply* CachingNetworkAccessManager::createRequest(Operation op, const QNetworkRequest &request, QIODevice *outgoingData)
41− if (!m_isOnline) {
32+ if (m_networkingStatus->status() != ubuntu::connectivity::NetworkingStatus::Status::Online) {
42 QNetworkRequest req(request);
33 QNetworkRequest req(request);
43 req.setAttribute(QNetworkRequest::CacheLoadControlAttribute, QNetworkRequest::AlwaysCache);
34 req.setAttribute(QNetworkRequest::CacheLoadControlAttribute, QNetworkRequest::AlwaysCache);
44 return QNetworkAccessManager::createRequest(op, req, outgoingData);
35 return QNetworkAccessManager::createRequest(op, req, outgoingData);