| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <list> | 9 #include <list> |
| 10 #include <string> | 10 #include <string> |
| 11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
| 12 #include "base/memory/ref_counted.h" | 12 #include "base/memory/ref_counted.h" |
| 13 #include "base/memory/scoped_ptr.h" | 13 #include "base/memory/scoped_ptr.h" |
| 14 #include "chrome/browser/browser_process_sub_thread.h" | 14 #include "chrome/browser/browser_process_sub_thread.h" |
| 15 #include "chrome/common/net/predictor_common.h" | 15 #include "chrome/common/net/predictor_common.h" |
| 16 #include "net/base/network_change_notifier.h" | 16 #include "net/base/network_change_notifier.h" |
| 17 | 17 |
| 18 class ChromeNetLog; | 18 class ChromeNetLog; |
| 19 class ChromeURLRequestContextGetter; | 19 class ChromeURLRequestContextGetter; |
| 20 class ExtensionEventRouterForwarder; | 20 class ExtensionEventRouterForwarder; |
| 21 class ListValue; | 21 class ListValue; |
| 22 template<class T> class PrefMember; |
| 22 class PrefProxyConfigTracker; | 23 class PrefProxyConfigTracker; |
| 23 class PrefService; | 24 class PrefService; |
| 24 class SystemURLRequestContextGetter; | 25 class SystemURLRequestContextGetter; |
| 25 | 26 |
| 26 namespace chrome_browser_net { | 27 namespace chrome_browser_net { |
| 27 class ConnectInterceptor; | 28 class ConnectInterceptor; |
| 28 class Predictor; | 29 class Predictor; |
| 29 } // namespace chrome_browser_net | 30 } // namespace chrome_browser_net |
| 30 | 31 |
| 31 namespace net { | 32 namespace net { |
| 32 class CertVerifier; | 33 class CertVerifier; |
| 33 class DnsRRResolver; | 34 class DnsRRResolver; |
| 34 class HostResolver; | 35 class HostResolver; |
| 35 class HttpAuthHandlerFactory; | 36 class HttpAuthHandlerFactory; |
| 36 class HttpTransactionFactory; | 37 class HttpTransactionFactory; |
| 37 class NetworkDelegate; | 38 class NetworkDelegate; |
| 38 class ProxyConfigService; | 39 class ProxyConfigService; |
| 39 class ProxyScriptFetcher; | 40 class ProxyScriptFetcher; |
| 40 class ProxyService; | 41 class ProxyService; |
| 41 class SSLConfigService; | 42 class SSLConfigService; |
| 42 class URLRequestContext; | 43 class URLRequestContext; |
| 43 class URLRequestContextGetter; | 44 class URLRequestContextGetter; |
| 44 class URLSecurityManager; | 45 class URLSecurityManager; |
| 45 } // namespace net | 46 } // namespace net |
| 46 | 47 |
| 48 typedef PrefMember<bool> BooleanPrefMember; |
| 49 |
| 47 class IOThread : public BrowserProcessSubThread { | 50 class IOThread : public BrowserProcessSubThread { |
| 48 public: | 51 public: |
| 49 struct Globals { | 52 struct Globals { |
| 50 Globals(); | 53 Globals(); |
| 51 ~Globals(); | 54 ~Globals(); |
| 52 | 55 |
| 53 // The "system" NetworkDelegate, used for Profile-agnostic network events. | 56 // The "system" NetworkDelegate, used for Profile-agnostic network events. |
| 54 scoped_ptr<net::NetworkDelegate> system_network_delegate; | 57 scoped_ptr<net::NetworkDelegate> system_network_delegate; |
| 55 scoped_ptr<net::HostResolver> host_resolver; | 58 scoped_ptr<net::HostResolver> host_resolver; |
| 56 scoped_ptr<net::CertVerifier> cert_verifier; | 59 scoped_ptr<net::CertVerifier> cert_verifier; |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 170 | 173 |
| 171 // These member variables are initialized in Init() and do not change for the | 174 // These member variables are initialized in Init() and do not change for the |
| 172 // lifetime of the IO thread. | 175 // lifetime of the IO thread. |
| 173 | 176 |
| 174 Globals* globals_; | 177 Globals* globals_; |
| 175 | 178 |
| 176 // Observer that logs network changes to the ChromeNetLog. | 179 // Observer that logs network changes to the ChromeNetLog. |
| 177 scoped_ptr<net::NetworkChangeNotifier::IPAddressObserver> | 180 scoped_ptr<net::NetworkChangeNotifier::IPAddressObserver> |
| 178 network_change_observer_; | 181 network_change_observer_; |
| 179 | 182 |
| 183 scoped_ptr<BooleanPrefMember> enable_referrers_; |
| 184 |
| 180 // Store HTTP Auth-related policies in this thread. | 185 // Store HTTP Auth-related policies in this thread. |
| 181 std::string auth_schemes_; | 186 std::string auth_schemes_; |
| 182 bool negotiate_disable_cname_lookup_; | 187 bool negotiate_disable_cname_lookup_; |
| 183 bool negotiate_enable_port_; | 188 bool negotiate_enable_port_; |
| 184 std::string auth_server_whitelist_; | 189 std::string auth_server_whitelist_; |
| 185 std::string auth_delegate_whitelist_; | 190 std::string auth_delegate_whitelist_; |
| 186 std::string gssapi_library_name_; | 191 std::string gssapi_library_name_; |
| 187 | 192 |
| 188 // These member variables are initialized by a task posted to the IO thread, | 193 // These member variables are initialized by a task posted to the IO thread, |
| 189 // which gets posted by calling certain member functions of IOThread. | 194 // which gets posted by calling certain member functions of IOThread. |
| (...skipping 14 matching lines...) Expand all Loading... |
| 204 | 209 |
| 205 // Keeps track of all live ChromeURLRequestContextGetters, so the | 210 // Keeps track of all live ChromeURLRequestContextGetters, so the |
| 206 // ChromeURLRequestContexts can be released during | 211 // ChromeURLRequestContexts can be released during |
| 207 // IOThread::CleanUp(). | 212 // IOThread::CleanUp(). |
| 208 std::list<ChromeURLRequestContextGetter*> url_request_context_getters_; | 213 std::list<ChromeURLRequestContextGetter*> url_request_context_getters_; |
| 209 | 214 |
| 210 DISALLOW_COPY_AND_ASSIGN(IOThread); | 215 DISALLOW_COPY_AND_ASSIGN(IOThread); |
| 211 }; | 216 }; |
| 212 | 217 |
| 213 #endif // CHROME_BROWSER_IO_THREAD_H_ | 218 #endif // CHROME_BROWSER_IO_THREAD_H_ |
| OLD | NEW |