Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(819)

Unified Diff: chrome/browser/extensions/extension_system.h

Issue 10545128: Unrevert r141537: Add extensions::StateStore and use that instead of (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix.crash Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/extensions/extension_service.cc ('k') | chrome/browser/extensions/extension_system.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/extensions/extension_system.h
diff --git a/chrome/browser/extensions/extension_system.h b/chrome/browser/extensions/extension_system.h
index 676bdb12bcbc4f514f804ba6ef523c8a291dfd72..23d228f4d3e9a89612bb435097a8c539cde3b006 100644
--- a/chrome/browser/extensions/extension_system.h
+++ b/chrome/browser/extensions/extension_system.h
@@ -30,6 +30,7 @@ class Extension;
class LazyBackgroundTaskQueue;
class ManagementPolicy;
class RulesRegistryService;
+class StateStore;
}
// The ExtensionSystem manages the creation and destruction of services
@@ -74,6 +75,9 @@ class ExtensionSystem : public ProfileKeyedService {
// The AlarmManager is created at startup.
virtual extensions::AlarmManager* alarm_manager() = 0;
+ // The StateStore is created at startup.
+ virtual extensions::StateStore* state_store() = 0;
+
// Returns the IO-thread-accessible extension data.
virtual ExtensionInfoMap* info_map() = 0;
@@ -126,6 +130,7 @@ class ExtensionSystemImpl : public ExtensionSystem {
virtual ExtensionDevToolsManager* devtools_manager() OVERRIDE;
virtual ExtensionProcessManager* process_manager() OVERRIDE;
virtual extensions::AlarmManager* alarm_manager() OVERRIDE;
+ virtual extensions::StateStore* state_store() OVERRIDE;
virtual extensions::LazyBackgroundTaskQueue* lazy_background_task_queue()
OVERRIDE; // shared
virtual ExtensionInfoMap* info_map() OVERRIDE; // shared
@@ -159,6 +164,7 @@ class ExtensionSystemImpl : public ExtensionSystem {
void InitInfoMap();
void Init(bool extensions_enabled);
+ extensions::StateStore* state_store();
ExtensionService* extension_service();
extensions::ManagementPolicy* management_policy();
UserScriptMaster* user_script_master();
@@ -173,9 +179,9 @@ class ExtensionSystemImpl : public ExtensionSystem {
// The services that are shared between normal and incognito profiles.
- // Keep extension_prefs_ above extension_service_, because the latter
- // maintains a pointer to the former and must be destructed first.
+ scoped_ptr<extensions::StateStore> state_store_;
scoped_ptr<ExtensionPrefs> extension_prefs_;
+ // ExtensionService depends on the 2 above.
scoped_ptr<ExtensionService> extension_service_;
scoped_ptr<extensions::ManagementPolicy> management_policy_;
scoped_refptr<UserScriptMaster> user_script_master_;
« no previous file with comments | « chrome/browser/extensions/extension_service.cc ('k') | chrome/browser/extensions/extension_system.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698