Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(14)

Side by Side Diff: chrome/browser/io_thread.h

Issue 2872133005: IOThread: Move more stuff into system context's URLRequestContextStore. (Closed)
Patch Set: Merge Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | chrome/browser/io_thread.cc » ('j') | chrome/browser/io_thread.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 CHROME_BROWSER_IO_THREAD_H_ 5 #ifndef CHROME_BROWSER_IO_THREAD_H_
6 #define CHROME_BROWSER_IO_THREAD_H_ 6 #define CHROME_BROWSER_IO_THREAD_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 68
69 namespace data_use_measurement { 69 namespace data_use_measurement {
70 class ChromeDataUseAscriber; 70 class ChromeDataUseAscriber;
71 } 71 }
72 72
73 namespace extensions { 73 namespace extensions {
74 class EventRouterForwarder; 74 class EventRouterForwarder;
75 } 75 }
76 76
77 namespace net { 77 namespace net {
78 class CTPolicyEnforcer;
79 class CertVerifier; 78 class CertVerifier;
80 class CTLogVerifier; 79 class CTLogVerifier;
81 class HostMappingRules; 80 class HostMappingRules;
82 class HostResolver; 81 class HostResolver;
83 class HttpAuthPreferences; 82 class HttpAuthPreferences;
84 class HttpServerProperties;
85 class HttpTransactionFactory; 83 class HttpTransactionFactory;
86 class HttpUserAgentSettings;
87 class LoggingNetworkChangeObserver; 84 class LoggingNetworkChangeObserver;
88 class NetworkDelegate;
89 class NetworkQualityEstimator; 85 class NetworkQualityEstimator;
90 class ProxyConfigService; 86 class ProxyConfigService;
91 class ProxyService; 87 class ProxyService;
92 class SSLConfigService; 88 class SSLConfigService;
93 class TransportSecurityState;
94 class URLRequestContext; 89 class URLRequestContext;
95 class URLRequestContextGetter; 90 class URLRequestContextGetter;
96 class URLRequestContextStorage; 91 class URLRequestContextStorage;
97 class URLRequestJobFactory; 92 class URLRequestJobFactory;
98 93
99 namespace ct { 94 namespace ct {
100 class STHObserver; 95 class STHObserver;
101 } 96 }
102 97
103 } // namespace net 98 } // namespace net
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
139 std::unique_ptr<data_use_measurement::ChromeDataUseAscriber> 134 std::unique_ptr<data_use_measurement::ChromeDataUseAscriber>
140 data_use_ascriber; 135 data_use_ascriber;
141 // Global aggregator of data use. It must outlive the 136 // Global aggregator of data use. It must outlive the
142 // |system_network_delegate|. 137 // |system_network_delegate|.
143 std::unique_ptr<data_usage::DataUseAggregator> data_use_aggregator; 138 std::unique_ptr<data_usage::DataUseAggregator> data_use_aggregator;
144 #if defined(OS_ANDROID) 139 #if defined(OS_ANDROID)
145 // An external observer of data use. 140 // An external observer of data use.
146 std::unique_ptr<chrome::android::ExternalDataUseObserver> 141 std::unique_ptr<chrome::android::ExternalDataUseObserver>
147 external_data_use_observer; 142 external_data_use_observer;
148 #endif // defined(OS_ANDROID) 143 #endif // defined(OS_ANDROID)
149 // The "system" NetworkDelegate, used for Profile-agnostic network events.
150 std::unique_ptr<net::NetworkDelegate> system_network_delegate;
151 std::unique_ptr<net::HostResolver> host_resolver; 144 std::unique_ptr<net::HostResolver> host_resolver;
152 std::unique_ptr<net::CertVerifier> cert_verifier; 145 std::unique_ptr<net::CertVerifier> cert_verifier;
153 // This TransportSecurityState doesn't load or save any state. It's only
154 // used to enforce pinning for system requests and will only use built-in
155 // pins.
156 std::unique_ptr<net::TransportSecurityState> transport_security_state;
157 std::vector<scoped_refptr<const net::CTLogVerifier>> ct_logs; 146 std::vector<scoped_refptr<const net::CTLogVerifier>> ct_logs;
158 std::unique_ptr<net::CTVerifier> cert_transparency_verifier; 147 std::unique_ptr<net::CTVerifier> cert_transparency_verifier;
159 std::unique_ptr<net::CTPolicyEnforcer> ct_policy_enforcer;
160 scoped_refptr<net::SSLConfigService> ssl_config_service;
161 std::unique_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory; 148 std::unique_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory;
162 std::unique_ptr<net::HttpServerProperties> http_server_properties;
163 std::unique_ptr<net::ProxyService> proxy_script_fetcher_proxy_service; 149 std::unique_ptr<net::ProxyService> proxy_script_fetcher_proxy_service;
164 std::unique_ptr<net::HttpNetworkSession> 150 std::unique_ptr<net::HttpNetworkSession>
165 proxy_script_fetcher_http_network_session; 151 proxy_script_fetcher_http_network_session;
166 std::unique_ptr<net::HttpTransactionFactory> 152 std::unique_ptr<net::HttpTransactionFactory>
167 proxy_script_fetcher_http_transaction_factory; 153 proxy_script_fetcher_http_transaction_factory;
168 std::unique_ptr<net::URLRequestJobFactory> 154 std::unique_ptr<net::URLRequestJobFactory>
169 proxy_script_fetcher_url_request_job_factory; 155 proxy_script_fetcher_url_request_job_factory;
170 std::unique_ptr<net::HttpAuthPreferences> http_auth_preferences; 156 std::unique_ptr<net::HttpAuthPreferences> http_auth_preferences;
171 // TODO(willchan): Remove proxy script fetcher context since it's not 157 // TODO(willchan): Remove proxy script fetcher context since it's not
172 // necessary now that I got rid of refcounting URLRequestContexts. 158 // necessary now that I got rid of refcounting URLRequestContexts.
173 // 159 //
174 // The first URLRequestContext is |system_url_request_context|. We introduce 160 // The first URLRequestContext is |system_url_request_context|. We introduce
175 // |proxy_script_fetcher_context| for the second context. It has a direct 161 // |proxy_script_fetcher_context| for the second context. It has a direct
176 // ProxyService, since we always directly connect to fetch the PAC script. 162 // ProxyService, since we always directly connect to fetch the PAC script.
177 std::unique_ptr<net::URLRequestContext> proxy_script_fetcher_context; 163 std::unique_ptr<net::URLRequestContext> proxy_script_fetcher_context;
178 std::unique_ptr<net::URLRequestContextStorage> 164 std::unique_ptr<net::URLRequestContextStorage>
179 system_request_context_storage; 165 system_request_context_storage;
180 std::unique_ptr<net::URLRequestContext> system_request_context; 166 std::unique_ptr<net::URLRequestContext> system_request_context;
181 SystemRequestContextLeakChecker system_request_context_leak_checker; 167 SystemRequestContextLeakChecker system_request_context_leak_checker;
182 #if BUILDFLAG(ENABLE_EXTENSIONS) 168 #if BUILDFLAG(ENABLE_EXTENSIONS)
183 scoped_refptr<extensions::EventRouterForwarder> 169 scoped_refptr<extensions::EventRouterForwarder>
184 extension_event_router_forwarder; 170 extension_event_router_forwarder;
185 #endif 171 #endif
186 std::unique_ptr<net::HostMappingRules> host_mapping_rules; 172 std::unique_ptr<net::HostMappingRules> host_mapping_rules;
187 std::unique_ptr<net::HttpUserAgentSettings> http_user_agent_settings;
188 std::unique_ptr<net::NetworkQualityEstimator> network_quality_estimator; 173 std::unique_ptr<net::NetworkQualityEstimator> network_quality_estimator;
189 std::unique_ptr< 174 std::unique_ptr<
190 net::NetworkQualityEstimator::RTTAndThroughputEstimatesObserver> 175 net::NetworkQualityEstimator::RTTAndThroughputEstimatesObserver>
191 network_quality_observer; 176 network_quality_observer;
192 177
193 // NetErrorTabHelper uses |dns_probe_service| to send DNS probes when a 178 // NetErrorTabHelper uses |dns_probe_service| to send DNS probes when a
194 // main frame load fails with a DNS error in order to provide more useful 179 // main frame load fails with a DNS error in order to provide more useful
195 // information to the renderer so it can show a more specific error page. 180 // information to the renderer so it can show a more specific error page.
196 std::unique_ptr<chrome_browser_net::DnsProbeService> dns_probe_service; 181 std::unique_ptr<chrome_browser_net::DnsProbeService> dns_probe_service;
197 182
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after
390 bool http_09_on_non_default_ports_enabled_; 375 bool http_09_on_non_default_ports_enabled_;
391 376
392 const base::TimeTicks creation_time_; 377 const base::TimeTicks creation_time_;
393 378
394 base::WeakPtrFactory<IOThread> weak_factory_; 379 base::WeakPtrFactory<IOThread> weak_factory_;
395 380
396 DISALLOW_COPY_AND_ASSIGN(IOThread); 381 DISALLOW_COPY_AND_ASSIGN(IOThread);
397 }; 382 };
398 383
399 #endif // CHROME_BROWSER_IO_THREAD_H_ 384 #endif // CHROME_BROWSER_IO_THREAD_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/io_thread.cc » ('j') | chrome/browser/io_thread.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698