1 #pragma once 2 3 #include <mbgl/storage/http_file_source.hpp> 4 #include <mbgl/util/async_request.hpp> 5 6 #include <QNetworkReply> 7 #include <QNetworkRequest> 8 #include <QUrl> 9 10 namespace mbgl { 11 12 class Response; 13 14 class HTTPRequest : public AsyncRequest 15 { 16 public: 17 HTTPRequest(HTTPFileSource::Impl *, const Resource&, FileSource::Callback); 18 virtual ~HTTPRequest(); 19 20 QUrl requestUrl() const; 21 QNetworkRequest networkRequest() const; 22 23 void handleNetworkReply(QNetworkReply *, const QByteArray& data); 24 25 private: 26 HTTPFileSource::Impl* m_context; 27 Resource m_resource; 28 FileSource::Callback m_callback; 29 30 bool m_handled = false; 31 }; 32 33 } // namespace mbgl 34