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

Unified Diff: services/preferences/public/cpp/pref_client_store.cc

Issue 2778733003: Pref service: delete old implementation (Closed)
Patch Set: Fix missed merge Created 3 years, 9 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
Index: services/preferences/public/cpp/pref_client_store.cc
diff --git a/services/preferences/public/cpp/pref_client_store.cc b/services/preferences/public/cpp/pref_client_store.cc
deleted file mode 100644
index 289aaaadd20fd276527dabc6930bdaadc4542b5d..0000000000000000000000000000000000000000
--- a/services/preferences/public/cpp/pref_client_store.cc
+++ /dev/null
@@ -1,104 +0,0 @@
-// Copyright 2016 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "services/preferences/public/cpp/pref_client_store.h"
-
-#include "base/memory/ptr_util.h"
-#include "base/values.h"
-#include "services/service_manager/public/cpp/connector.h"
-
-namespace preferences {
-
-PrefClientStore::PrefClientStore(
- prefs::mojom::PreferencesServiceFactoryPtr pref_factory_ptr)
- : prefs_binding_(this),
- pref_factory_ptr_(std::move(pref_factory_ptr)),
- initialized_(false) {
- pref_factory_ptr_->Create(prefs_binding_.CreateInterfacePtrAndBind(),
- mojo::MakeRequest(&prefs_service_ptr_));
-}
-
-void PrefClientStore::Subscribe(const std::set<std::string>& keys) {
- keys_.insert(keys.begin(), keys.end());
-
- std::vector<std::string> pref_array;
- std::copy(keys_.begin(), keys_.end(), std::back_inserter(pref_array));
- prefs_service_ptr_->Subscribe(pref_array);
-}
-
-bool PrefClientStore::GetValue(const std::string& key,
- const base::Value** value) const {
- DCHECK(initialized_);
- DCHECK(keys_.find(key) != keys_.end());
-
- return ValueMapPrefStore::GetValue(key, value);
-}
-
-void PrefClientStore::SetValue(const std::string& key,
- std::unique_ptr<base::Value> value,
- uint32_t flags) {
- DCHECK(keys_.find(key) != keys_.end());
-
- // TODO(jonross): only notify the server if the value changed.
- SetValueOnPreferenceManager(key, *value);
- ValueMapPrefStore::SetValue(key, std::move(value), flags);
-}
-
-void PrefClientStore::RemoveValue(const std::string& key, uint32_t flags) {
- // TODO(jonross): add preference removal to preferences.mojom
- NOTIMPLEMENTED();
-}
-
-bool PrefClientStore::GetMutableValue(const std::string& key,
- base::Value** value) {
- DCHECK(initialized_);
- DCHECK(keys_.find(key) != keys_.end());
-
- return ValueMapPrefStore::GetMutableValue(key, value);
-}
-
-void PrefClientStore::ReportValueChanged(const std::string& key,
- uint32_t flags) {
- DCHECK(keys_.find(key) != keys_.end());
- const base::Value* value = nullptr;
- ValueMapPrefStore::GetValue(key, &value);
- SetValueOnPreferenceManager(key, *value);
- ValueMapPrefStore::ReportValueChanged(key, flags);
-}
-
-void PrefClientStore::SetValueSilently(const std::string& key,
- std::unique_ptr<base::Value> value,
- uint32_t flags) {
- SetValueOnPreferenceManager(key, *value);
- ValueMapPrefStore::SetValueSilently(key, std::move(value), flags);
-}
-
-PrefClientStore::~PrefClientStore() {}
-
-void PrefClientStore::SetValueOnPreferenceManager(const std::string& key,
- const base::Value& value) {
- if (keys_.find(key) == keys_.end())
- return;
-
- auto prefs = base::MakeUnique<base::DictionaryValue>();
- prefs->SetWithoutPathExpansion(key, value.CreateDeepCopy());
- prefs_service_ptr_->SetPreferences(std::move(prefs));
-}
-
-void PrefClientStore::OnPreferencesChanged(
- std::unique_ptr<base::DictionaryValue> preferences) {
- if (!initialized_) {
- initialized_ = true;
- NotifyInitializationCompleted();
- }
-
- for (base::DictionaryValue::Iterator it(*preferences); !it.IsAtEnd();
- it.Advance()) {
- if (keys_.find(it.key()) == keys_.end())
- continue;
- ValueMapPrefStore::SetValue(it.key(), it.value().CreateDeepCopy(), 0);
- }
-}
-
-} // namespace preferences
« no previous file with comments | « services/preferences/public/cpp/pref_client_store.h ('k') | services/preferences/public/cpp/pref_service_factory.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698