OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 CONTENT_BROWSER_LOADER_NAVIGATION_URL_LOADER_NETWORK_SERVICE_H_ | 5 #ifndef CONTENT_BROWSER_LOADER_NAVIGATION_URL_LOADER_NETWORK_SERVICE_H_ |
6 #define CONTENT_BROWSER_LOADER_NAVIGATION_URL_LOADER_NETWORK_SERVICE_H_ | 6 #define CONTENT_BROWSER_LOADER_NAVIGATION_URL_LOADER_NETWORK_SERVICE_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "content/browser/loader/navigation_url_loader.h" | 9 #include "content/browser/loader/navigation_url_loader.h" |
10 #include "content/common/url_loader.mojom.h" | 10 #include "content/common/url_loader.mojom.h" |
11 #include "content/common/url_loader_factory.mojom.h" | 11 #include "content/common/url_loader_factory.mojom.h" |
| 12 #include "content/public/browser/ssl_status.h" |
12 #include "mojo/public/cpp/bindings/binding.h" | 13 #include "mojo/public/cpp/bindings/binding.h" |
13 #include "services/service_manager/public/cpp/connector.h" | 14 #include "services/service_manager/public/cpp/connector.h" |
14 | 15 |
15 namespace net { | 16 namespace net { |
16 struct RedirectInfo; | 17 struct RedirectInfo; |
17 } | 18 } |
18 | 19 |
19 namespace content { | 20 namespace content { |
20 | 21 |
21 class ResourceContext; | 22 class ResourceContext; |
(...skipping 13 matching lines...) Expand all Loading... |
35 AppCacheNavigationHandle* appcache_handle, | 36 AppCacheNavigationHandle* appcache_handle, |
36 NavigationURLLoaderDelegate* delegate); | 37 NavigationURLLoaderDelegate* delegate); |
37 ~NavigationURLLoaderNetworkService() override; | 38 ~NavigationURLLoaderNetworkService() override; |
38 | 39 |
39 // NavigationURLLoader implementation: | 40 // NavigationURLLoader implementation: |
40 void FollowRedirect() override; | 41 void FollowRedirect() override; |
41 void ProceedWithResponse() override; | 42 void ProceedWithResponse() override; |
42 | 43 |
43 // mojom::URLLoaderClient implementation: | 44 // mojom::URLLoaderClient implementation: |
44 void OnReceiveResponse(const ResourceResponseHead& head, | 45 void OnReceiveResponse(const ResourceResponseHead& head, |
| 46 const base::Optional<net::SSLInfo>& ssl_info, |
45 mojom::DownloadedTempFilePtr downloaded_file) override; | 47 mojom::DownloadedTempFilePtr downloaded_file) override; |
46 void OnReceiveRedirect(const net::RedirectInfo& redirect_info, | 48 void OnReceiveRedirect(const net::RedirectInfo& redirect_info, |
47 const ResourceResponseHead& head) override; | 49 const ResourceResponseHead& head) override; |
48 void OnDataDownloaded(int64_t data_length, int64_t encoded_length) override; | 50 void OnDataDownloaded(int64_t data_length, int64_t encoded_length) override; |
49 void OnUploadProgress(int64_t current_position, | 51 void OnUploadProgress(int64_t current_position, |
50 int64_t total_size, | 52 int64_t total_size, |
51 const OnUploadProgressCallback& callback) override; | 53 const OnUploadProgressCallback& callback) override; |
52 void OnReceiveCachedMetadata(const std::vector<uint8_t>& data) override; | 54 void OnReceiveCachedMetadata(const std::vector<uint8_t>& data) override; |
53 void OnTransferSizeUpdated(int32_t transfer_size_diff) override; | 55 void OnTransferSizeUpdated(int32_t transfer_size_diff) override; |
54 void OnStartLoadingResponseBody( | 56 void OnStartLoadingResponseBody( |
55 mojo::ScopedDataPipeConsumerHandle body) override; | 57 mojo::ScopedDataPipeConsumerHandle body) override; |
56 void OnComplete( | 58 void OnComplete( |
57 const ResourceRequestCompletionStatus& completion_status) override; | 59 const ResourceRequestCompletionStatus& completion_status) override; |
58 | 60 |
59 private: | 61 private: |
60 void ConnectURLLoaderFactory( | 62 void ConnectURLLoaderFactory( |
61 std::unique_ptr<service_manager::Connector> connector); | 63 std::unique_ptr<service_manager::Connector> connector); |
62 | 64 |
63 NavigationURLLoaderDelegate* delegate_; | 65 NavigationURLLoaderDelegate* delegate_; |
64 | 66 |
65 mojom::URLLoaderFactoryRequest url_loader_factory_request_; | 67 mojom::URLLoaderFactoryRequest url_loader_factory_request_; |
66 mojom::URLLoaderFactoryPtr url_loader_factory_; | 68 mojom::URLLoaderFactoryPtr url_loader_factory_; |
67 mojo::Binding<mojom::URLLoaderClient> binding_; | 69 mojo::Binding<mojom::URLLoaderClient> binding_; |
68 mojom::URLLoaderAssociatedPtr url_loader_associated_ptr_; | 70 mojom::URLLoaderAssociatedPtr url_loader_associated_ptr_; |
69 scoped_refptr<ResourceResponse> response_; | 71 scoped_refptr<ResourceResponse> response_; |
| 72 SSLStatus ssl_status_; |
70 | 73 |
71 DISALLOW_COPY_AND_ASSIGN(NavigationURLLoaderNetworkService); | 74 DISALLOW_COPY_AND_ASSIGN(NavigationURLLoaderNetworkService); |
72 }; | 75 }; |
73 | 76 |
74 } // namespace content | 77 } // namespace content |
75 | 78 |
76 #endif // CONTENT_BROWSER_LOADER_NAVIGATION_URL_LOADER_NETWORK_SERVICE_H_ | 79 #endif // CONTENT_BROWSER_LOADER_NAVIGATION_URL_LOADER_NETWORK_SERVICE_H_ |
OLD | NEW |