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

Unified Diff: services/preferences/pref_store_manager_impl.h

Issue 2856083002: Pref service: support for incognito prefs (Closed)
Patch Set: Rebase Created 3 years, 7 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 | « services/preferences/persistent_pref_store_impl.cc ('k') | services/preferences/pref_store_manager_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: services/preferences/pref_store_manager_impl.h
diff --git a/services/preferences/pref_store_manager_impl.h b/services/preferences/pref_store_manager_impl.h
index b1771c6687a714950f1a1f1c1b849ac9688a36eb..81f785d3902ecaf5683f9c183fd7252e3e0e52bb 100644
--- a/services/preferences/pref_store_manager_impl.h
+++ b/services/preferences/pref_store_manager_impl.h
@@ -55,13 +55,15 @@ class PrefStoreManagerImpl : public mojom::PrefStoreRegistry,
void Register(PrefValueStore::PrefStoreType type,
mojom::PrefStorePtr pref_store_ptr) override;
- // mojom::PrefStoreConnector: |already_connected_types| must not include
- // PrefValueStore::DEFAULT_STORE and PrefValueStore::USER_STORE as these must
- // always be accessed through the service.
+ // mojom::PrefStoreConnector:
+ // |already_connected_types| must not include PrefValueStore::DEFAULT_STORE
+ // and PrefValueStore::USER_STORE as these must always be accessed through the
+ // service.
void Connect(
mojom::PrefRegistryPtr pref_registry,
const std::vector<PrefValueStore::PrefStoreType>& already_connected_types,
const ConnectCallback& callback) override;
+ void ConnectToUserPrefStore(mojom::PrefStoreRequest request) override;
void BindPrefStoreConnectorRequest(
const service_manager::BindSourceInfo& source_info,
@@ -90,6 +92,8 @@ class PrefStoreManagerImpl : public mojom::PrefStoreRegistry,
void ProcessPendingConnects();
+ std::vector<std::string> RegisterPrefs(mojom::PrefRegistryPtr pref_registry);
+
void ConnectImpl(
mojom::PrefRegistryPtr pref_registry,
const std::vector<PrefValueStore::PrefStoreType>& already_connected_types,
@@ -114,6 +118,14 @@ class PrefStoreManagerImpl : public mojom::PrefStoreRegistry,
std::unique_ptr<PersistentPrefStoreImpl> persistent_pref_store_;
mojo::Binding<mojom::PrefServiceControl> init_binding_;
+ mojom::PrefStoreConnectorPtr incognito_connector_;
+ // Read-only connections to the persistent pref store.
+ std::unique_ptr<mojo::BindingSet<mojom::PrefStore>>
+ ro_persistent_pref_store_bindings_;
+ // Requests queued until the persistent pref store is ready.
+ std::vector<mojom::PrefStoreRequest>
+ pending_ro_persistent_pref_store_requests_;
+
const scoped_refptr<DefaultPrefStore> defaults_;
const std::unique_ptr<PrefStoreImpl> defaults_wrapper_;
« no previous file with comments | « services/preferences/persistent_pref_store_impl.cc ('k') | services/preferences/pref_store_manager_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698