Extensions: Using common ValueStoreFactory for all value stores.
1. Introduce new ValueStoreFactory interface used for the creation of
ValueStore's in all namespaces (local, sync, and managed), and for all
types (extension and application).
2. Delete SettingsStorageFactory/LeveldbSettingsStorageFactory,
and switched to ValueStoreFactory.
3. Created a new TestValueStoreFactory (for testing). This combines
settings_sync_unittest.cc:TestingValueStoreFactory and
ScopedSettingsStorageFactory.
4. ValueStoreFrontend::Backend always lazilily initializes using the
ValueStoreFactory. This makes unnecessary StateStore's deferred
initialization mechanism - which will be removed in an upcoming CL.
5. A new ValueStoreFactoryImpl to mint new ValueStore's for Chrome.
This currently delegates to a new LegacyValueStoreFactory which
creates new LeveldbValueStore. An upcoming CL will add a second
delegated factory (currently called ProfileValueStoreFactory) to
support a unified (per-profile) extensions database.
6. Removed memcheck suppression for SettingsStorageFactory as this
class is now deleted (crbug.com/163922).
BUG=453946,163922
Review URL: https://codereview.chromium.org/1803193002
Cr-Commit-Position: refs/heads/master@{#383137}
diff --git a/extensions/browser/mock_extension_system.h b/extensions/browser/mock_extension_system.h
index 3151edb..b926baad 100644
--- a/extensions/browser/mock_extension_system.h
+++ b/extensions/browser/mock_extension_system.h
@@ -35,6 +35,7 @@
SharedUserScriptMaster* shared_user_script_master() override;
StateStore* state_store() override;
StateStore* rules_store() override;
+ scoped_refptr<ValueStoreFactory> store_factory() override;
InfoMap* info_map() override;
QuotaService* quota_service() override;
AppSorting* app_sorting() override;