Chromium Code Reviews| 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 // 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 #pragma once | 9 #pragma once |
| 10 | 10 |
| (...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 182 | 182 |
| 183 SpellCheckProfile* GetSpellCheckProfile(); | 183 SpellCheckProfile* GetSpellCheckProfile(); |
| 184 | 184 |
| 185 void UpdateProfileUserNameCache(); | 185 void UpdateProfileUserNameCache(); |
| 186 | 186 |
| 187 content::NotificationRegistrar registrar_; | 187 content::NotificationRegistrar registrar_; |
| 188 PrefChangeRegistrar pref_change_registrar_; | 188 PrefChangeRegistrar pref_change_registrar_; |
| 189 | 189 |
| 190 FilePath path_; | 190 FilePath path_; |
| 191 FilePath base_cache_path_; | 191 FilePath base_cache_path_; |
| 192 | |
| 193 // !!! BIG HONKING WARNING !!! | |
| 194 // The order of the members below is important. Do not change it unless | |
| 195 // you know what you're doing. Also, if adding a new member here make sure | |
| 196 // that the declaration occurs AFTER things it depends on as destruction | |
| 197 // happens in reverse order of declaration. | |
| 198 | |
| 192 scoped_ptr<ExtensionPrefValueMap> extension_pref_value_map_; | 199 scoped_ptr<ExtensionPrefValueMap> extension_pref_value_map_; |
| 193 // Keep |prefs_| on top for destruction order because |extension_prefs_|, | 200 // Keep |prefs_| on top for destruction order because |extension_prefs_|, |
| 194 // |net_pref_observer_|, |web_resource_service_|, and |io_data_| store | 201 // |net_pref_observer_|, |web_resource_service_|, and |io_data_| store |
| 195 // pointers to |prefs_| and shall be destructed first. | 202 // pointers to |prefs_| and shall be destructed first. |
| 196 scoped_ptr<PrefService> prefs_; | 203 scoped_ptr<PrefService> prefs_; |
| 197 scoped_ptr<PrefService> otr_prefs_; | 204 scoped_ptr<PrefService> otr_prefs_; |
| 198 scoped_ptr<VisitedLinkEventListener> visited_link_event_listener_; | 205 scoped_ptr<VisitedLinkEventListener> visited_link_event_listener_; |
| 199 scoped_ptr<VisitedLinkMaster> visited_link_master_; | 206 scoped_ptr<VisitedLinkMaster> visited_link_master_; |
| 200 // Keep extension_prefs_ on top of extension_service_ because the latter | 207 // Keep extension_prefs_ on top of extension_service_ because the latter |
| 201 // maintains a pointer to the first and shall be destructed first. | 208 // maintains a pointer to the first and shall be destructed first. |
| 202 scoped_ptr<ExtensionPrefs> extension_prefs_; | 209 scoped_ptr<ExtensionPrefs> extension_prefs_; |
| 203 scoped_ptr<ExtensionService> extension_service_; | 210 scoped_ptr<ExtensionService> extension_service_; |
| 204 scoped_refptr<UserScriptMaster> user_script_master_; | 211 scoped_refptr<UserScriptMaster> user_script_master_; |
| 212 | |
| 213 // io_data_ needs to outlive extension_process_manager_. | |
|
willchan no longer on Chromium
2011/11/17 20:11:32
|io_data_| needs to outlive a lot of things. Rathe
robertshield
2011/11/17 21:00:43
Done.
| |
| 214 // While the extension_process_manager_ still lives, we handle incoming | |
| 215 // resource requests from extension processes and those require access | |
| 216 // to the ResourceContext owned by io_data_. | |
| 217 ProfileImplIOData::Handle io_data_; | |
| 218 | |
| 205 scoped_refptr<ExtensionDevToolsManager> extension_devtools_manager_; | 219 scoped_refptr<ExtensionDevToolsManager> extension_devtools_manager_; |
| 206 // extension_info_map_ needs to outlive extension_process_manager_. | 220 // extension_info_map_ needs to outlive extension_process_manager_. |
| 207 scoped_refptr<ExtensionInfoMap> extension_info_map_; | 221 scoped_refptr<ExtensionInfoMap> extension_info_map_; |
| 208 scoped_ptr<ExtensionProcessManager> extension_process_manager_; | 222 scoped_ptr<ExtensionProcessManager> extension_process_manager_; |
| 209 scoped_refptr<ExtensionMessageService> extension_message_service_; | 223 scoped_refptr<ExtensionMessageService> extension_message_service_; |
| 210 scoped_ptr<ExtensionEventRouter> extension_event_router_; | 224 scoped_ptr<ExtensionEventRouter> extension_event_router_; |
| 211 scoped_ptr<ExtensionNavigationObserver> extension_navigation_observer_; | 225 scoped_ptr<ExtensionNavigationObserver> extension_navigation_observer_; |
| 212 scoped_refptr<ExtensionSpecialStoragePolicy> | 226 scoped_refptr<ExtensionSpecialStoragePolicy> |
| 213 extension_special_storage_policy_; | 227 extension_special_storage_policy_; |
| 214 scoped_ptr<SSLHostState> ssl_host_state_; | 228 scoped_ptr<SSLHostState> ssl_host_state_; |
| 215 scoped_ptr<NetPrefObserver> net_pref_observer_; | 229 scoped_ptr<NetPrefObserver> net_pref_observer_; |
| 216 scoped_ptr<TemplateURLFetcher> template_url_fetcher_; | 230 scoped_ptr<TemplateURLFetcher> template_url_fetcher_; |
| 217 scoped_ptr<BookmarkModel> bookmark_bar_model_; | 231 scoped_ptr<BookmarkModel> bookmark_bar_model_; |
| 218 scoped_refptr<PromoResourceService> promo_resource_service_; | 232 scoped_refptr<PromoResourceService> promo_resource_service_; |
| 219 scoped_refptr<ProtocolHandlerRegistry> protocol_handler_registry_; | 233 scoped_refptr<ProtocolHandlerRegistry> protocol_handler_registry_; |
| 220 | 234 |
| 221 scoped_ptr<TokenService> token_service_; | 235 scoped_ptr<TokenService> token_service_; |
| 222 scoped_ptr<ProfileSyncFactory> profile_sync_factory_; | 236 scoped_ptr<ProfileSyncFactory> profile_sync_factory_; |
| 223 scoped_ptr<ProfileSyncService> sync_service_; | 237 scoped_ptr<ProfileSyncService> sync_service_; |
| 224 | 238 |
| 225 ProfileImplIOData::Handle io_data_; | |
| 226 | |
| 227 scoped_ptr<SSLConfigServiceManager> ssl_config_service_manager_; | 239 scoped_ptr<SSLConfigServiceManager> ssl_config_service_manager_; |
| 228 | 240 |
| 229 scoped_refptr<HostContentSettingsMap> host_content_settings_map_; | 241 scoped_refptr<HostContentSettingsMap> host_content_settings_map_; |
| 230 scoped_refptr<HostZoomMap> host_zoom_map_; | 242 scoped_refptr<HostZoomMap> host_zoom_map_; |
| 231 scoped_refptr<GeolocationPermissionContext> | 243 scoped_refptr<GeolocationPermissionContext> |
| 232 geolocation_permission_context_; | 244 geolocation_permission_context_; |
| 233 scoped_refptr<SpeechInputPreferences> speech_input_preferences_; | 245 scoped_refptr<SpeechInputPreferences> speech_input_preferences_; |
| 234 scoped_refptr<UserStyleSheetWatcher> user_style_sheet_watcher_; | 246 scoped_refptr<UserStyleSheetWatcher> user_style_sheet_watcher_; |
| 235 scoped_ptr<FindBarState> find_bar_state_; | 247 scoped_ptr<FindBarState> find_bar_state_; |
| 236 scoped_refptr<HistoryService> history_service_; | 248 scoped_refptr<HistoryService> history_service_; |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 291 scoped_ptr<ChromeURLDataManager> chrome_url_data_manager_; | 303 scoped_ptr<ChromeURLDataManager> chrome_url_data_manager_; |
| 292 | 304 |
| 293 Profile::Delegate* delegate_; | 305 Profile::Delegate* delegate_; |
| 294 | 306 |
| 295 chrome_browser_net::Predictor* predictor_; | 307 chrome_browser_net::Predictor* predictor_; |
| 296 | 308 |
| 297 DISALLOW_COPY_AND_ASSIGN(ProfileImpl); | 309 DISALLOW_COPY_AND_ASSIGN(ProfileImpl); |
| 298 }; | 310 }; |
| 299 | 311 |
| 300 #endif // CHROME_BROWSER_PROFILES_PROFILE_IMPL_H_ | 312 #endif // CHROME_BROWSER_PROFILES_PROFILE_IMPL_H_ |
| OLD | NEW |