diff options
author | John Firebaugh <john.firebaugh@gmail.com> | 2016-02-15 17:35:13 -0800 |
---|---|---|
committer | John Firebaugh <john.firebaugh@gmail.com> | 2016-04-14 14:18:19 -0700 |
commit | 3af3e72bb3cb3f05b33be304d59e66cc244ef4d9 (patch) | |
tree | ef1d237c3083694307081c219c9da94ae43fe540 /platform/default/online_file_source.cpp | |
parent | 6d88a23a60bc0a6dc9945bf09a659d15dd827192 (diff) | |
download | qtlocation-mapboxgl-3af3e72bb3cb3f05b33be304d59e66cc244ef4d9.tar.gz |
[all] Replace HTTPContextBase/HTTPRequestBase with FileSource
Diffstat (limited to 'platform/default/online_file_source.cpp')
-rw-r--r-- | platform/default/online_file_source.cpp | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/platform/default/online_file_source.cpp b/platform/default/online_file_source.cpp index 533046850a..6753b34f25 100644 --- a/platform/default/online_file_source.cpp +++ b/platform/default/online_file_source.cpp @@ -1,5 +1,5 @@ #include <mbgl/storage/online_file_source.hpp> -#include <mbgl/storage/http_context_base.hpp> +#include <mbgl/storage/http_file_source.hpp> #include <mbgl/storage/network_status.hpp> #include <mbgl/storage/response.hpp> @@ -35,7 +35,7 @@ public: OnlineFileSource::Impl& impl; Resource resource; - HTTPRequestBase* request = nullptr; + std::unique_ptr<AsyncRequest> request; util::Timer timer; Callback callback; @@ -82,7 +82,7 @@ public: assert(activeRequests.find(request) == activeRequests.end()); assert(!request->request); - if (activeRequests.size() >= HTTPContextBase::maximumConcurrentRequests()) { + if (activeRequests.size() >= HTTPFileSource::maximumConcurrentRequests()) { queueRequest(request); } else { activateRequest(request); @@ -96,10 +96,10 @@ public: void activateRequest(OnlineFileRequest* request) { activeRequests.insert(request); - request->request = httpContext->createRequest(request->resource, [=] (Response response) { + request->request = httpFileSource.request(request->resource, [=] (Response response) { activeRequests.erase(request); activatePendingRequest(); - request->request = nullptr; + request->request.reset(); request->completed(response); }); } @@ -140,7 +140,7 @@ private: std::unordered_map<OnlineFileRequest*, std::list<OnlineFileRequest*>::iterator> pendingRequestsMap; std::unordered_set<OnlineFileRequest*> activeRequests; - const std::unique_ptr<HTTPContextBase> httpContext { HTTPContextBase::createContext() }; + HTTPFileSource httpFileSource; util::AsyncTask reachability { std::bind(&Impl::networkIsReachableAgain, this) }; }; @@ -198,9 +198,6 @@ OnlineFileRequest::OnlineFileRequest(const Resource& resource_, Callback callbac OnlineFileRequest::~OnlineFileRequest() { impl.remove(this); - if (request) { - request->cancel(); - } } static Duration errorRetryTimeout(Response::Error::Reason failedRequestReason, uint32_t failedRequests) { |