OLD | NEW |
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 <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
12 #include "base/compiler_specific.h" | 12 #include "base/compiler_specific.h" |
13 #include "base/memory/ref_counted.h" | 13 #include "base/memory/ref_counted.h" |
14 #include "base/memory/scoped_ptr.h" | 14 #include "base/memory/scoped_ptr.h" |
15 #include "base/memory/weak_ptr.h" | 15 #include "base/memory/weak_ptr.h" |
16 #include "base/prefs/pref_member.h" | 16 #include "base/prefs/pref_member.h" |
17 #include "base/time/time.h" | 17 #include "base/time/time.h" |
18 #include "chrome/browser/net/ssl_config_service_manager.h" | 18 #include "chrome/browser/net/ssl_config_service_manager.h" |
| 19 #include "components/data_reduction_proxy/browser/data_reduction_proxy_params.h" |
19 #include "content/public/browser/browser_thread.h" | 20 #include "content/public/browser/browser_thread.h" |
20 #include "content/public/browser/browser_thread_delegate.h" | 21 #include "content/public/browser/browser_thread_delegate.h" |
21 #include "net/base/network_change_notifier.h" | 22 #include "net/base/network_change_notifier.h" |
22 #include "net/http/http_network_session.h" | 23 #include "net/http/http_network_session.h" |
23 #include "net/socket/next_proto.h" | 24 #include "net/socket/next_proto.h" |
24 | 25 |
25 class ChromeNetLog; | 26 class ChromeNetLog; |
26 class PrefProxyConfigTracker; | 27 class PrefProxyConfigTracker; |
27 class PrefService; | 28 class PrefService; |
28 class PrefRegistrySimple; | 29 class PrefRegistrySimple; |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
173 Optional<bool> enable_quic_port_selection; | 174 Optional<bool> enable_quic_port_selection; |
174 Optional<size_t> quic_max_packet_length; | 175 Optional<size_t> quic_max_packet_length; |
175 Optional<net::QuicVersionVector> quic_supported_versions; | 176 Optional<net::QuicVersionVector> quic_supported_versions; |
176 Optional<net::HostPortPair> origin_to_force_quic_on; | 177 Optional<net::HostPortPair> origin_to_force_quic_on; |
177 bool enable_user_alternate_protocol_ports; | 178 bool enable_user_alternate_protocol_ports; |
178 // NetErrorTabHelper uses |dns_probe_service| to send DNS probes when a | 179 // NetErrorTabHelper uses |dns_probe_service| to send DNS probes when a |
179 // main frame load fails with a DNS error in order to provide more useful | 180 // main frame load fails with a DNS error in order to provide more useful |
180 // information to the renderer so it can show a more specific error page. | 181 // information to the renderer so it can show a more specific error page. |
181 scoped_ptr<chrome_browser_net::DnsProbeService> dns_probe_service; | 182 scoped_ptr<chrome_browser_net::DnsProbeService> dns_probe_service; |
182 scoped_ptr<net::NetworkTimeNotifier> network_time_notifier; | 183 scoped_ptr<net::NetworkTimeNotifier> network_time_notifier; |
| 184 scoped_ptr<data_reduction_proxy::DataReductionProxyParams> |
| 185 data_reduction_proxy_params; |
183 }; | 186 }; |
184 | 187 |
185 // |net_log| must either outlive the IOThread or be NULL. | 188 // |net_log| must either outlive the IOThread or be NULL. |
186 IOThread(PrefService* local_state, | 189 IOThread(PrefService* local_state, |
187 policy::PolicyService* policy_service, | 190 policy::PolicyService* policy_service, |
188 ChromeNetLog* net_log, | 191 ChromeNetLog* net_log, |
189 extensions::EventRouterForwarder* extension_event_router_forwarder); | 192 extensions::EventRouterForwarder* extension_event_router_forwarder); |
190 | 193 |
191 virtual ~IOThread(); | 194 virtual ~IOThread(); |
192 | 195 |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
340 | 343 |
341 BooleanPrefMember quick_check_enabled_; | 344 BooleanPrefMember quick_check_enabled_; |
342 | 345 |
343 // Store HTTP Auth-related policies in this thread. | 346 // Store HTTP Auth-related policies in this thread. |
344 std::string auth_schemes_; | 347 std::string auth_schemes_; |
345 bool negotiate_disable_cname_lookup_; | 348 bool negotiate_disable_cname_lookup_; |
346 bool negotiate_enable_port_; | 349 bool negotiate_enable_port_; |
347 std::string auth_server_whitelist_; | 350 std::string auth_server_whitelist_; |
348 std::string auth_delegate_whitelist_; | 351 std::string auth_delegate_whitelist_; |
349 std::string gssapi_library_name_; | 352 std::string gssapi_library_name_; |
350 std::vector<GURL> spdyproxy_auth_origins_; | |
351 | 353 |
352 // This is an instance of the default SSLConfigServiceManager for the current | 354 // This is an instance of the default SSLConfigServiceManager for the current |
353 // platform and it gets SSL preferences from local_state object. | 355 // platform and it gets SSL preferences from local_state object. |
354 scoped_ptr<SSLConfigServiceManager> ssl_config_service_manager_; | 356 scoped_ptr<SSLConfigServiceManager> ssl_config_service_manager_; |
355 | 357 |
356 // These member variables are initialized by a task posted to the IO thread, | 358 // These member variables are initialized by a task posted to the IO thread, |
357 // which gets posted by calling certain member functions of IOThread. | 359 // which gets posted by calling certain member functions of IOThread. |
358 scoped_ptr<net::ProxyConfigService> system_proxy_config_service_; | 360 scoped_ptr<net::ProxyConfigService> system_proxy_config_service_; |
359 | 361 |
360 scoped_ptr<PrefProxyConfigTracker> pref_proxy_config_tracker_; | 362 scoped_ptr<PrefProxyConfigTracker> pref_proxy_config_tracker_; |
361 | 363 |
362 scoped_refptr<net::URLRequestContextGetter> | 364 scoped_refptr<net::URLRequestContextGetter> |
363 system_url_request_context_getter_; | 365 system_url_request_context_getter_; |
364 | 366 |
365 net::SdchManager* sdch_manager_; | 367 net::SdchManager* sdch_manager_; |
366 | 368 |
367 // True if SPDY is disabled by policy. | 369 // True if SPDY is disabled by policy. |
368 bool is_spdy_disabled_by_policy_; | 370 bool is_spdy_disabled_by_policy_; |
369 | 371 |
370 base::WeakPtrFactory<IOThread> weak_factory_; | 372 base::WeakPtrFactory<IOThread> weak_factory_; |
371 | 373 |
372 const base::TimeTicks creation_time_; | 374 const base::TimeTicks creation_time_; |
373 | 375 |
374 DISALLOW_COPY_AND_ASSIGN(IOThread); | 376 DISALLOW_COPY_AND_ASSIGN(IOThread); |
375 }; | 377 }; |
376 | 378 |
377 #endif // CHROME_BROWSER_IO_THREAD_H_ | 379 #endif // CHROME_BROWSER_IO_THREAD_H_ |
OLD | NEW |