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