OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef MOJO_SERVICES_HTML_VIEWER_WEBURLLOADER_IMPL_H_ | 5 #ifndef MOJO_SERVICES_HTML_VIEWER_WEBURLLOADER_IMPL_H_ |
6 #define MOJO_SERVICES_HTML_VIEWER_WEBURLLOADER_IMPL_H_ | 6 #define MOJO_SERVICES_HTML_VIEWER_WEBURLLOADER_IMPL_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "base/memory/weak_ptr.h" | 9 #include "base/memory/weak_ptr.h" |
10 #include "mojo/common/handle_watcher.h" | 10 #include "mojo/common/handle_watcher.h" |
11 #include "mojo/services/network/public/interfaces/url_loader.mojom.h" | 11 #include "mojo/services/network/public/interfaces/url_loader.mojom.h" |
12 #include "third_party/WebKit/public/platform/WebURLLoader.h" | 12 #include "third_party/WebKit/public/platform/WebURLLoader.h" |
13 #include "third_party/WebKit/public/platform/WebURLRequest.h" | 13 #include "third_party/WebKit/public/platform/WebURLRequest.h" |
14 | 14 |
15 namespace mojo { | 15 namespace mojo { |
16 class NetworkService; | 16 class NetworkService; |
| 17 } |
| 18 |
| 19 namespace html_viewer { |
17 | 20 |
18 // The concrete type of WebURLRequest::ExtraData. | 21 // The concrete type of WebURLRequest::ExtraData. |
19 class WebURLRequestExtraData : public blink::WebURLRequest::ExtraData { | 22 class WebURLRequestExtraData : public blink::WebURLRequest::ExtraData { |
20 public: | 23 public: |
21 WebURLRequestExtraData(); | 24 WebURLRequestExtraData(); |
22 virtual ~WebURLRequestExtraData(); | 25 virtual ~WebURLRequestExtraData(); |
23 | 26 |
24 URLResponsePtr synthetic_response; | 27 mojo::URLResponsePtr synthetic_response; |
25 }; | 28 }; |
26 | 29 |
27 class WebURLLoaderImpl : public blink::WebURLLoader { | 30 class WebURLLoaderImpl : public blink::WebURLLoader { |
28 public: | 31 public: |
29 explicit WebURLLoaderImpl(NetworkService* network_service); | 32 explicit WebURLLoaderImpl(mojo::NetworkService* network_service); |
30 | 33 |
31 private: | 34 private: |
32 virtual ~WebURLLoaderImpl(); | 35 virtual ~WebURLLoaderImpl(); |
33 | 36 |
34 // blink::WebURLLoader methods: | 37 // blink::WebURLLoader methods: |
35 virtual void loadSynchronously( | 38 virtual void loadSynchronously( |
36 const blink::WebURLRequest& request, blink::WebURLResponse& response, | 39 const blink::WebURLRequest& request, blink::WebURLResponse& response, |
37 blink::WebURLError& error, blink::WebData& data) override; | 40 blink::WebURLError& error, blink::WebData& data) override; |
38 virtual void loadAsynchronously( | 41 virtual void loadAsynchronously( |
39 const blink::WebURLRequest&, blink::WebURLLoaderClient* client) override; | 42 const blink::WebURLRequest&, blink::WebURLLoaderClient* client) override; |
40 virtual void cancel() override; | 43 virtual void cancel() override; |
41 virtual void setDefersLoading(bool defers_loading) override; | 44 virtual void setDefersLoading(bool defers_loading) override; |
42 | 45 |
43 void OnReceivedResponse(URLResponsePtr response); | 46 void OnReceivedResponse(mojo::URLResponsePtr response); |
44 void OnReceivedError(URLResponsePtr response); | 47 void OnReceivedError(mojo::URLResponsePtr response); |
45 void OnReceivedRedirect(URLResponsePtr response); | 48 void OnReceivedRedirect(mojo::URLResponsePtr response); |
46 void ReadMore(); | 49 void ReadMore(); |
47 void WaitToReadMore(); | 50 void WaitToReadMore(); |
48 void OnResponseBodyStreamReady(MojoResult result); | 51 void OnResponseBodyStreamReady(MojoResult result); |
49 | 52 |
50 blink::WebURLLoaderClient* client_; | 53 blink::WebURLLoaderClient* client_; |
51 GURL url_; | 54 GURL url_; |
52 URLLoaderPtr url_loader_; | 55 mojo::URLLoaderPtr url_loader_; |
53 ScopedDataPipeConsumerHandle response_body_stream_; | 56 mojo::ScopedDataPipeConsumerHandle response_body_stream_; |
54 common::HandleWatcher handle_watcher_; | 57 mojo::common::HandleWatcher handle_watcher_; |
55 | 58 |
56 base::WeakPtrFactory<WebURLLoaderImpl> weak_factory_; | 59 base::WeakPtrFactory<WebURLLoaderImpl> weak_factory_; |
57 | 60 |
58 DISALLOW_COPY_AND_ASSIGN(WebURLLoaderImpl); | 61 DISALLOW_COPY_AND_ASSIGN(WebURLLoaderImpl); |
59 }; | 62 }; |
60 | 63 |
61 } // namespace mojo | 64 } // namespace html_viewer |
62 | 65 |
63 #endif // MOJO_SERVICES_HTML_VIEWER_WEBURLLOADER_IMPL_H_ | 66 #endif // MOJO_SERVICES_HTML_VIEWER_WEBURLLOADER_IMPL_H_ |
OLD | NEW |