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

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

Issue 2852133002: Remove PAC-fetching URLRequestContext. (Closed)
Patch Set: More upstream merge conflicts! Fun! Created 3 years, 6 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') | no next file with comments »
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 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
75 } 75 }
76 76
77 namespace net { 77 namespace net {
78 class CTPolicyEnforcer; 78 class CTPolicyEnforcer;
79 class CertVerifier; 79 class CertVerifier;
80 class CTLogVerifier; 80 class CTLogVerifier;
81 class HostMappingRules; 81 class HostMappingRules;
82 class HostResolver; 82 class HostResolver;
83 class HttpAuthPreferences; 83 class HttpAuthPreferences;
84 class HttpServerProperties; 84 class HttpServerProperties;
85 class HttpTransactionFactory;
86 class HttpUserAgentSettings; 85 class HttpUserAgentSettings;
87 class LoggingNetworkChangeObserver; 86 class LoggingNetworkChangeObserver;
88 class NetworkDelegate; 87 class NetworkDelegate;
89 class NetworkQualityEstimator; 88 class NetworkQualityEstimator;
90 class ProxyConfigService; 89 class ProxyConfigService;
91 class ProxyService;
92 class SSLConfigService; 90 class SSLConfigService;
93 class TransportSecurityState; 91 class TransportSecurityState;
94 class URLRequestContext; 92 class URLRequestContext;
95 class URLRequestContextGetter; 93 class URLRequestContextGetter;
96 class URLRequestContextStorage; 94 class URLRequestContextStorage;
97 class URLRequestJobFactory;
98 95
99 namespace ct { 96 namespace ct {
100 class STHObserver; 97 class STHObserver;
101 } 98 }
102 99
103 } // namespace net 100 } // namespace net
104 101
105 namespace net_log { 102 namespace net_log {
106 class ChromeNetLog; 103 class ChromeNetLog;
107 } 104 }
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 // This TransportSecurityState doesn't load or save any state. It's only 150 // 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 151 // used to enforce pinning for system requests and will only use built-in
155 // pins. 152 // pins.
156 std::unique_ptr<net::TransportSecurityState> transport_security_state; 153 std::unique_ptr<net::TransportSecurityState> transport_security_state;
157 std::vector<scoped_refptr<const net::CTLogVerifier>> ct_logs; 154 std::vector<scoped_refptr<const net::CTLogVerifier>> ct_logs;
158 std::unique_ptr<net::CTVerifier> cert_transparency_verifier; 155 std::unique_ptr<net::CTVerifier> cert_transparency_verifier;
159 std::unique_ptr<net::CTPolicyEnforcer> ct_policy_enforcer; 156 std::unique_ptr<net::CTPolicyEnforcer> ct_policy_enforcer;
160 scoped_refptr<net::SSLConfigService> ssl_config_service; 157 scoped_refptr<net::SSLConfigService> ssl_config_service;
161 std::unique_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory; 158 std::unique_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory;
162 std::unique_ptr<net::HttpServerProperties> http_server_properties; 159 std::unique_ptr<net::HttpServerProperties> http_server_properties;
163 std::unique_ptr<net::ProxyService> proxy_script_fetcher_proxy_service;
164 std::unique_ptr<net::HttpNetworkSession>
165 proxy_script_fetcher_http_network_session;
166 std::unique_ptr<net::HttpTransactionFactory>
167 proxy_script_fetcher_http_transaction_factory;
168 std::unique_ptr<net::URLRequestJobFactory>
169 proxy_script_fetcher_url_request_job_factory;
170 std::unique_ptr<net::HttpAuthPreferences> http_auth_preferences; 160 std::unique_ptr<net::HttpAuthPreferences> http_auth_preferences;
171 // TODO(willchan): Remove proxy script fetcher context since it's not
172 // necessary now that I got rid of refcounting URLRequestContexts.
173 //
174 // The first URLRequestContext is |system_url_request_context|. We introduce
175 // |proxy_script_fetcher_context| for the second context. It has a direct
176 // ProxyService, since we always directly connect to fetch the PAC script.
177 std::unique_ptr<net::URLRequestContext> proxy_script_fetcher_context;
178 std::unique_ptr<net::URLRequestContextStorage> 161 std::unique_ptr<net::URLRequestContextStorage>
179 system_request_context_storage; 162 system_request_context_storage;
180 std::unique_ptr<net::URLRequestContext> system_request_context; 163 std::unique_ptr<net::URLRequestContext> system_request_context;
181 SystemRequestContextLeakChecker system_request_context_leak_checker; 164 SystemRequestContextLeakChecker system_request_context_leak_checker;
182 #if BUILDFLAG(ENABLE_EXTENSIONS) 165 #if BUILDFLAG(ENABLE_EXTENSIONS)
183 scoped_refptr<extensions::EventRouterForwarder> 166 scoped_refptr<extensions::EventRouterForwarder>
184 extension_event_router_forwarder; 167 extension_event_router_forwarder;
185 #endif 168 #endif
186 std::unique_ptr<net::HostMappingRules> host_mapping_rules; 169 std::unique_ptr<net::HostMappingRules> host_mapping_rules;
187 std::unique_ptr<net::HttpUserAgentSettings> http_user_agent_settings; 170 std::unique_ptr<net::HttpUserAgentSettings> http_user_agent_settings;
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
296 void ConstructSystemRequestContext(); 279 void ConstructSystemRequestContext();
297 280
298 // Parse command line flags and use components/network_session_configurator to 281 // Parse command line flags and use components/network_session_configurator to
299 // configure |params|. 282 // configure |params|.
300 static void ConfigureParamsFromFieldTrialsAndCommandLine( 283 static void ConfigureParamsFromFieldTrialsAndCommandLine(
301 const base::CommandLine& command_line, 284 const base::CommandLine& command_line,
302 bool is_quic_allowed_by_policy, 285 bool is_quic_allowed_by_policy,
303 bool http_09_on_non_default_ports_enabled, 286 bool http_09_on_non_default_ports_enabled,
304 net::HttpNetworkSession::Params* params); 287 net::HttpNetworkSession::Params* params);
305 288
306 // TODO(willchan): Remove proxy script fetcher context since it's not
307 // necessary now that I got rid of refcounting URLRequestContexts.
308 // See IOThread::Globals for details.
309 static net::URLRequestContext* ConstructProxyScriptFetcherContext(
310 IOThread::Globals* globals,
311 const net::HttpNetworkSession::Params& params,
312 net::NetLog* net_log);
313
314 // The NetLog is owned by the browser process, to allow logging from other 289 // The NetLog is owned by the browser process, to allow logging from other
315 // threads during shutdown, but is used most frequently on the IOThread. 290 // threads during shutdown, but is used most frequently on the IOThread.
316 net_log::ChromeNetLog* net_log_; 291 net_log::ChromeNetLog* net_log_;
317 292
318 #if BUILDFLAG(ENABLE_EXTENSIONS) 293 #if BUILDFLAG(ENABLE_EXTENSIONS)
319 // The extensions::EventRouterForwarder allows for sending events to 294 // The extensions::EventRouterForwarder allows for sending events to
320 // extensions from the IOThread. 295 // extensions from the IOThread.
321 extensions::EventRouterForwarder* extension_event_router_forwarder_; 296 extensions::EventRouterForwarder* extension_event_router_forwarder_;
322 #endif 297 #endif
323 298
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
390 bool http_09_on_non_default_ports_enabled_; 365 bool http_09_on_non_default_ports_enabled_;
391 366
392 const base::TimeTicks creation_time_; 367 const base::TimeTicks creation_time_;
393 368
394 base::WeakPtrFactory<IOThread> weak_factory_; 369 base::WeakPtrFactory<IOThread> weak_factory_;
395 370
396 DISALLOW_COPY_AND_ASSIGN(IOThread); 371 DISALLOW_COPY_AND_ASSIGN(IOThread);
397 }; 372 };
398 373
399 #endif // CHROME_BROWSER_IO_THREAD_H_ 374 #endif // CHROME_BROWSER_IO_THREAD_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/io_thread.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698