Showing the changes to libraries/script-engine/src/ScriptCache.cpp (1 of 2 files). Show all
Unified · Split
| @@ -17,7 +17,6 @@ · 16 unmodified lines | ||
| 17 | 17 | #include <QObject> |
| 18 | 18 | |
| 19 | 19 | #include <assert.h> |
| 20 | −#include <NetworkAccessManager.h> | |
| 21 | 20 | #include <SharedUtil.h> |
| 22 | 21 | |
| 23 | 22 | #include "ScriptCache.h" |
| @@ -44,18 +43,10 @@ QString ScriptCache::getScript(const QUrl& url, ScriptUser* scriptUser, bool& is · 20 unmodified lines | ||
| 44 | 43 | if (alreadyWaiting) { |
| 45 | 44 | qCDebug(scriptengine) << "Already downloading script at:" << url.toString(); |
| 46 | 45 | } else { |
| 47 | − QNetworkAccessManager& networkAccessManager = NetworkAccessManager::getInstance(); | |
| 48 | − QNetworkRequest networkRequest = QNetworkRequest(url); | |
| 49 | − networkRequest.setHeader(QNetworkRequest::UserAgentHeader, HIGH_FIDELITY_USER_AGENT); | |
| 50 | − if (reload) { | |
| 51 | − networkRequest.setAttribute(QNetworkRequest::CacheLoadControlAttribute, QNetworkRequest::AlwaysNetwork); | |
| 52 | − qCDebug(scriptengine) << "Redownloading script at:" << url.toString(); | |
| 53 | − } else { | |
| 54 | − qCDebug(scriptengine) << "Downloading script at:" << url.toString(); | |
| 55 | − } | |
| 56 | − | |
| 57 | − QNetworkReply* reply = networkAccessManager.get(networkRequest); | |
| 58 | − connect(reply, &QNetworkReply::finished, this, &ScriptCache::scriptDownloaded); | |
| 46 | + auto request = ResourceManager::createResourceRequest(this, url); | |
| 47 | + request->setCacheEnabled(!reload); | |
| 48 | + connect(request, &ResourceRequest::finished, this, &ScriptCache::scriptDownloaded); | |
| 49 | + request->send(); | |
| 59 | 50 | } |
| 60 | 51 | } |
| 61 | 52 | return scriptContents; |
| @@ -69,27 +60,25 @@ void ScriptCache::deleteScript(const QUrl& url) { · 7 unmodified lines | ||
| 69 | 60 | } |
| 70 | 61 | |
| 71 | 62 | void ScriptCache::scriptDownloaded() { |
| 72 | − QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender()); | |
| 73 | − QUrl url = reply->url(); | |
| 63 | + ResourceRequest* req = qobject_cast<ResourceRequest*>(sender()); | |
| 64 | + QUrl url = req->getUrl(); | |
| 74 | 65 | QList<ScriptUser*> scriptUsers = _scriptUsers.values(url); |
| 75 | 66 | _scriptUsers.remove(url); |
| 76 | 67 | |
| 77 | − if (reply->error() == QNetworkReply::NoError && reply->attribute(QNetworkRequest::HttpStatusCodeAttribute) == 200) { | |
| 78 | − _scriptCache[url] = reply->readAll(); | |
| 68 | + if (req->getResult() == ResourceRequest::SUCCESS) { | |
| 69 | + _scriptCache[url] = req->moveData(); | |
| 79 | 70 | qCDebug(scriptengine) << "Done downloading script at:" << url.toString(); |
| 80 | 71 | |
| 81 | 72 | foreach(ScriptUser* user, scriptUsers) { |
| 82 | 73 | user->scriptContentsAvailable(url, _scriptCache[url]); |
| 83 | 74 | } |
| 84 | 75 | } else { |
| 85 | − qCWarning(scriptengine) << "Error loading script from URL " << reply->url().toString() | |
| 86 | − << "- HTTP status code is" << reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt() | |
| 87 | − << "and error from QNetworkReply is" << reply->errorString(); | |
| 76 | + qCWarning(scriptengine) << "Error loading script from URL " << url; | |
| 88 | 77 | foreach(ScriptUser* user, scriptUsers) { |
| 89 | 78 | user->errorInLoadingScript(url); |
| 90 | 79 | } |
| 91 | 80 | } |
| 92 | − reply->deleteLater(); | |
| 81 | + req->deleteLater(); | |
| 93 | 82 | } |
| 94 | 83 | |
| 95 | 84 | |