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 // This class gathers state related to a single user profile. | 5 // This class gathers state related to a single user profile. |
6 | 6 |
7 #ifndef CHROME_BROWSER_PROFILES_PROFILE_IMPL_H_ | 7 #ifndef CHROME_BROWSER_PROFILES_PROFILE_IMPL_H_ |
8 #define CHROME_BROWSER_PROFILES_PROFILE_IMPL_H_ | 8 #define CHROME_BROWSER_PROFILES_PROFILE_IMPL_H_ |
9 | 9 |
10 #include <string> | 10 #include <string> |
11 | 11 |
12 #include "base/files/file_path.h" | 12 #include "base/files/file_path.h" |
13 #include "base/gtest_prod_util.h" | 13 #include "base/gtest_prod_util.h" |
14 #include "base/memory/ref_counted.h" | 14 #include "base/memory/ref_counted.h" |
15 #include "base/memory/scoped_ptr.h" | 15 #include "base/memory/scoped_ptr.h" |
16 #include "base/prefs/pref_change_registrar.h" | 16 #include "base/prefs/pref_change_registrar.h" |
17 #include "base/timer.h" | 17 #include "base/timer.h" |
18 #include "chrome/browser/profiles/profile.h" | 18 #include "chrome/browser/profiles/profile.h" |
19 #include "chrome/browser/profiles/profile_impl_io_data.h" | 19 #include "chrome/browser/profiles/profile_impl_io_data.h" |
20 #include "content/public/browser/content_browser_client.h" | 20 #include "content/public/browser/content_browser_client.h" |
21 #include "content/public/browser/host_zoom_map.h" | 21 #include "content/public/browser/host_zoom_map.h" |
22 | 22 |
23 class NetPrefObserver; | 23 class NetPrefObserver; |
24 class PrefRegistrySyncable; | |
25 class PrefService; | 24 class PrefService; |
26 class PrefServiceSyncable; | 25 class PrefServiceSyncable; |
27 class SSLConfigServiceManager; | 26 class SSLConfigServiceManager; |
28 | 27 |
29 #if defined(OS_CHROMEOS) | 28 #if defined(OS_CHROMEOS) |
30 namespace chromeos { | 29 namespace chromeos { |
31 class EnterpriseExtensionObserver; | 30 class EnterpriseExtensionObserver; |
32 class LocaleChangeGuard; | 31 class LocaleChangeGuard; |
33 class Preferences; | 32 class Preferences; |
34 } | 33 } |
35 #endif | 34 #endif |
36 | 35 |
37 namespace base { | 36 namespace base { |
38 class SequencedTaskRunner; | 37 class SequencedTaskRunner; |
39 } | 38 } |
40 | 39 |
41 namespace content { | 40 namespace content { |
42 class SpeechRecognitionPreferences; | 41 class SpeechRecognitionPreferences; |
43 } | 42 } |
44 | 43 |
45 namespace extensions { | 44 namespace extensions { |
46 class ExtensionSystem; | 45 class ExtensionSystem; |
47 } | 46 } |
48 | 47 |
49 namespace policy { | 48 namespace policy { |
50 class CloudPolicyManager; | 49 class CloudPolicyManager; |
51 class ProfilePolicyConnector; | 50 class ProfilePolicyConnector; |
52 } | 51 } |
53 | 52 |
| 53 namespace user_prefs { |
| 54 class refRegistrySyncable; |
| 55 } |
| 56 |
54 // The default profile implementation. | 57 // The default profile implementation. |
55 class ProfileImpl : public Profile { | 58 class ProfileImpl : public Profile { |
56 public: | 59 public: |
57 // Value written to prefs when the exit type is EXIT_NORMAL. Public for tests. | 60 // Value written to prefs when the exit type is EXIT_NORMAL. Public for tests. |
58 static const char* const kPrefExitTypeNormal; | 61 static const char* const kPrefExitTypeNormal; |
59 | 62 |
60 virtual ~ProfileImpl(); | 63 virtual ~ProfileImpl(); |
61 | 64 |
62 static void RegisterUserPrefs(PrefRegistrySyncable* registry); | 65 static void RegisterUserPrefs(user_prefs::PrefRegistrySyncable* registry); |
63 | 66 |
64 // content::BrowserContext implementation: | 67 // content::BrowserContext implementation: |
65 virtual base::FilePath GetPath() OVERRIDE; | 68 virtual base::FilePath GetPath() OVERRIDE; |
66 virtual content::DownloadManagerDelegate* | 69 virtual content::DownloadManagerDelegate* |
67 GetDownloadManagerDelegate() OVERRIDE; | 70 GetDownloadManagerDelegate() OVERRIDE; |
68 virtual net::URLRequestContextGetter* GetRequestContext() OVERRIDE; | 71 virtual net::URLRequestContextGetter* GetRequestContext() OVERRIDE; |
69 virtual net::URLRequestContextGetter* GetRequestContextForRenderProcess( | 72 virtual net::URLRequestContextGetter* GetRequestContextForRenderProcess( |
70 int renderer_child_id) OVERRIDE; | 73 int renderer_child_id) OVERRIDE; |
71 virtual net::URLRequestContextGetter* GetMediaRequestContext() OVERRIDE; | 74 virtual net::URLRequestContextGetter* GetMediaRequestContext() OVERRIDE; |
72 virtual net::URLRequestContextGetter* GetMediaRequestContextForRenderProcess( | 75 virtual net::URLRequestContextGetter* GetMediaRequestContextForRenderProcess( |
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
203 // This can be removed once |prefs_| becomes a ProfileKeyedService too. | 206 // This can be removed once |prefs_| becomes a ProfileKeyedService too. |
204 // |profile_policy_connector_| in turn depends on |cloud_policy_manager_|. | 207 // |profile_policy_connector_| in turn depends on |cloud_policy_manager_|. |
205 #if defined(ENABLE_CONFIGURATION_POLICY) | 208 #if defined(ENABLE_CONFIGURATION_POLICY) |
206 scoped_ptr<policy::CloudPolicyManager> cloud_policy_manager_; | 209 scoped_ptr<policy::CloudPolicyManager> cloud_policy_manager_; |
207 #endif | 210 #endif |
208 scoped_ptr<policy::ProfilePolicyConnector> profile_policy_connector_; | 211 scoped_ptr<policy::ProfilePolicyConnector> profile_policy_connector_; |
209 | 212 |
210 // Keep |prefs_| on top for destruction order because |extension_prefs_|, | 213 // Keep |prefs_| on top for destruction order because |extension_prefs_|, |
211 // |net_pref_observer_|, |io_data_| and others store pointers to |prefs_| and | 214 // |net_pref_observer_|, |io_data_| and others store pointers to |prefs_| and |
212 // shall be destructed first. | 215 // shall be destructed first. |
213 scoped_refptr<PrefRegistrySyncable> pref_registry_; | 216 scoped_refptr<user_prefs::PrefRegistrySyncable> pref_registry_; |
214 scoped_ptr<PrefServiceSyncable> prefs_; | 217 scoped_ptr<PrefServiceSyncable> prefs_; |
215 scoped_ptr<PrefServiceSyncable> otr_prefs_; | 218 scoped_ptr<PrefServiceSyncable> otr_prefs_; |
216 ProfileImplIOData::Handle io_data_; | 219 ProfileImplIOData::Handle io_data_; |
217 scoped_refptr<ExtensionSpecialStoragePolicy> | 220 scoped_refptr<ExtensionSpecialStoragePolicy> |
218 extension_special_storage_policy_; | 221 extension_special_storage_policy_; |
219 scoped_ptr<NetPrefObserver> net_pref_observer_; | 222 scoped_ptr<NetPrefObserver> net_pref_observer_; |
220 scoped_ptr<SSLConfigServiceManager> ssl_config_service_manager_; | 223 scoped_ptr<SSLConfigServiceManager> ssl_config_service_manager_; |
221 scoped_refptr<HostContentSettingsMap> host_content_settings_map_; | 224 scoped_refptr<HostContentSettingsMap> host_content_settings_map_; |
222 scoped_refptr<history::ShortcutsBackend> shortcuts_backend_; | 225 scoped_refptr<history::ShortcutsBackend> shortcuts_backend_; |
223 | 226 |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
262 // chrome/browser/profile/profile_keyed_dependency_manager.{h,cc} | 265 // chrome/browser/profile/profile_keyed_dependency_manager.{h,cc} |
263 | 266 |
264 Profile::Delegate* delegate_; | 267 Profile::Delegate* delegate_; |
265 | 268 |
266 chrome_browser_net::Predictor* predictor_; | 269 chrome_browser_net::Predictor* predictor_; |
267 | 270 |
268 DISALLOW_COPY_AND_ASSIGN(ProfileImpl); | 271 DISALLOW_COPY_AND_ASSIGN(ProfileImpl); |
269 }; | 272 }; |
270 | 273 |
271 #endif // CHROME_BROWSER_PROFILES_PROFILE_IMPL_H_ | 274 #endif // CHROME_BROWSER_PROFILES_PROFILE_IMPL_H_ |
OLD | NEW |