summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2016-01-15 12:36:15 -0800
committerJohn Firebaugh <john.firebaugh@gmail.com>2016-01-21 11:22:11 -0800
commit1766d7dcbf9482ceac9bff37e0f7f5a4c60b9123 (patch)
treebf4674142fbfe581c4328dc04641fcaf6b44d133
parent0a2e4af4c5d34a394fd6c32d771f2e8ae92a387c (diff)
downloadqtlocation-mapboxgl-1766d7dcbf9482ceac9bff37e0f7f5a4c60b9123.tar.gz
[core] Eliminate RequestBase
HTTPRequestBase can now itself be the base class.
-rw-r--r--platform/android/src/http_request_android.cpp4
-rw-r--r--platform/darwin/http_request_nsurl.mm4
-rw-r--r--platform/default/http_request_curl.cpp4
-rw-r--r--platform/default/online_file_source.cpp4
-rw-r--r--src/mbgl/storage/http_context_base.hpp3
-rw-r--r--src/mbgl/storage/http_request_base.hpp20
-rw-r--r--src/mbgl/storage/request_base.hpp34
7 files changed, 24 insertions, 49 deletions
diff --git a/platform/android/src/http_request_android.cpp b/platform/android/src/http_request_android.cpp
index 9a554f5281..05d719938c 100644
--- a/platform/android/src/http_request_android.cpp
+++ b/platform/android/src/http_request_android.cpp
@@ -25,7 +25,7 @@ public:
~HTTPAndroidContext();
HTTPRequestBase* createRequest(const std::string& url,
- RequestBase::Callback,
+ HTTPRequestBase::Callback,
std::shared_ptr<const Response>) final;
JavaVM *vm = nullptr;
@@ -110,7 +110,7 @@ HTTPAndroidContext::~HTTPAndroidContext() {
}
HTTPRequestBase* HTTPAndroidContext::createRequest(const std::string& url,
- RequestBase::Callback callback,
+ HTTPRequestBase::Callback callback,
std::shared_ptr<const Response> response) {
return new HTTPAndroidRequest(this, url, callback, response);
}
diff --git a/platform/darwin/http_request_nsurl.mm b/platform/darwin/http_request_nsurl.mm
index 9822c8097e..bb8bb57314 100644
--- a/platform/darwin/http_request_nsurl.mm
+++ b/platform/darwin/http_request_nsurl.mm
@@ -46,7 +46,7 @@ public:
~HTTPNSURLContext();
HTTPRequestBase* createRequest(const std::string& url,
- RequestBase::Callback,
+ HTTPRequestBase::Callback,
std::shared_ptr<const Response>) final;
NSURLSession *session = nil;
@@ -82,7 +82,7 @@ HTTPNSURLContext::~HTTPNSURLContext() {
}
HTTPRequestBase* HTTPNSURLContext::createRequest(const std::string& url,
- RequestBase::Callback callback,
+ HTTPRequestBase::Callback callback,
std::shared_ptr<const Response> response) {
return new HTTPNSURLRequest(this, url, callback, response);
}
diff --git a/platform/default/http_request_curl.cpp b/platform/default/http_request_curl.cpp
index 5ef8cddb74..f5fc395862 100644
--- a/platform/default/http_request_curl.cpp
+++ b/platform/default/http_request_curl.cpp
@@ -47,7 +47,7 @@ public:
~HTTPCURLContext();
HTTPRequestBase* createRequest(const std::string& url,
- RequestBase::Callback,
+ HTTPRequestBase::Callback,
std::shared_ptr<const Response>) final;
static int handleSocket(CURL *handle, curl_socket_t s, int action, void *userp, void *socketp);
@@ -139,7 +139,7 @@ HTTPCURLContext::~HTTPCURLContext() {
}
HTTPRequestBase* HTTPCURLContext::createRequest(const std::string& url,
- RequestBase::Callback callback,
+ HTTPRequestBase::Callback callback,
std::shared_ptr<const Response> response) {
return new HTTPCURLRequest(this, url, callback, response);
}
diff --git a/platform/default/online_file_source.cpp b/platform/default/online_file_source.cpp
index a470a83462..e87a9858ce 100644
--- a/platform/default/online_file_source.cpp
+++ b/platform/default/online_file_source.cpp
@@ -21,8 +21,6 @@
namespace mbgl {
-class RequestBase;
-
class OnlineFileRequest : public FileRequest {
public:
OnlineFileRequest(OnlineFileSource& fileSource_)
@@ -52,7 +50,7 @@ private:
const Resource resource;
std::unique_ptr<WorkRequest> cacheRequest;
- RequestBase* realRequest = nullptr;
+ HTTPRequestBase* realRequest = nullptr;
util::Timer realRequestTimer;
Callback callback;
diff --git a/src/mbgl/storage/http_context_base.hpp b/src/mbgl/storage/http_context_base.hpp
index f2d15e2918..a1a3f5b597 100644
--- a/src/mbgl/storage/http_context_base.hpp
+++ b/src/mbgl/storage/http_context_base.hpp
@@ -1,7 +1,6 @@
#ifndef MBGL_STORAGE_HTTP_CONTEXT_BASE
#define MBGL_STORAGE_HTTP_CONTEXT_BASE
-#include <mbgl/storage/request_base.hpp>
#include <mbgl/storage/http_request_base.hpp>
#include <mbgl/storage/network_status.hpp>
@@ -15,7 +14,7 @@ public:
virtual ~HTTPContextBase() = default;
virtual HTTPRequestBase* createRequest(const std::string& url,
- RequestBase::Callback,
+ HTTPRequestBase::Callback,
std::shared_ptr<const Response>) = 0;
};
diff --git a/src/mbgl/storage/http_request_base.hpp b/src/mbgl/storage/http_request_base.hpp
index a17284e782..8f1caf7bdc 100644
--- a/src/mbgl/storage/http_request_base.hpp
+++ b/src/mbgl/storage/http_request_base.hpp
@@ -1,24 +1,36 @@
#ifndef MBGL_STORAGE_HTTP_REQUEST_BASE
#define MBGL_STORAGE_HTTP_REQUEST_BASE
-#include <mbgl/storage/request_base.hpp>
+#include <mbgl/util/noncopyable.hpp>
#include <mbgl/util/chrono.hpp>
+#include <memory>
+#include <functional>
+#include <utility>
+#include <string>
+
namespace mbgl {
- class HTTPRequestBase : public RequestBase {
+class Response;
+
+class HTTPRequestBase : private util::noncopyable {
public:
+ using Callback = std::function<void (std::shared_ptr<const Response> response)>;
+
HTTPRequestBase(const std::string& url_, Callback notify_)
- : RequestBase(url_, notify_)
+ : url(url_)
+ , notify(std::move(notify_))
, cancelled(false) {
}
virtual ~HTTPRequestBase() = default;
- virtual void cancel() override { cancelled = true; };
+ virtual void cancel() { cancelled = true; };
protected:
static Seconds parseCacheControl(const char *value);
+ std::string url;
+ Callback notify;
bool cancelled;
};
diff --git a/src/mbgl/storage/request_base.hpp b/src/mbgl/storage/request_base.hpp
deleted file mode 100644
index e3d33571d4..0000000000
--- a/src/mbgl/storage/request_base.hpp
+++ /dev/null
@@ -1,34 +0,0 @@
-#ifndef MBGL_STORAGE_REQUEST_BASE
-#define MBGL_STORAGE_REQUEST_BASE
-
-#include <mbgl/util/noncopyable.hpp>
-
-#include <memory>
-#include <functional>
-#include <utility>
-#include <string>
-
-namespace mbgl {
-
-class Response;
-
-class RequestBase : private util::noncopyable {
-public:
- using Callback = std::function<void (std::shared_ptr<const Response> response)>;
-
- RequestBase(const std::string& url_, Callback notify_)
- : url(url_)
- , notify(std::move(notify_)) {
- }
-
- virtual ~RequestBase() = default;
- virtual void cancel() = 0;
-
-protected:
- std::string url;
- Callback notify;
-};
-
-} // namespace mbgl
-
-#endif // MBGL_STORAGE_REQUEST_BASE