summaryrefslogtreecommitdiffstats
path: root/base/prefs/testing_pref_service.cc
diff options
context:
space:
mode:
authorjoi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-14 17:20:19 +0000
committerjoi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-14 17:20:19 +0000
commite5ba874f019eb505a048ffb38aadf8bb5f495d7f (patch)
treecd845816e0959333555fc883d2fac49e3374fecc /base/prefs/testing_pref_service.cc
parentad694eb0fddfdbcb74e31d13e473ce277c680ca8 (diff)
downloadchromium_src-e5ba874f019eb505a048ffb38aadf8bb5f495d7f.zip
chromium_src-e5ba874f019eb505a048ffb38aadf8bb5f495d7f.tar.gz
chromium_src-e5ba874f019eb505a048ffb38aadf8bb5f495d7f.tar.bz2
Moving last generic Prefs implementation files to base/prefs/.
This completes componentization of Prefs, although there are some remaining TODOs that were created during componentization and interface improvement that still need to be tackled. TBR=ben@chromium.org BUG=155525 Review URL: https://chromiumcodereview.appspot.com/12253004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@182485 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/prefs/testing_pref_service.cc')
-rw-r--r--base/prefs/testing_pref_service.cc56
1 files changed, 56 insertions, 0 deletions
diff --git a/base/prefs/testing_pref_service.cc b/base/prefs/testing_pref_service.cc
new file mode 100644
index 0000000..22755da
--- /dev/null
+++ b/base/prefs/testing_pref_service.cc
@@ -0,0 +1,56 @@
+// Copyright (c) 2012 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 "base/prefs/testing_pref_service.h"
+
+#include "base/bind.h"
+#include "base/compiler_specific.h"
+#include "base/prefs/default_pref_store.h"
+#include "base/prefs/pref_notifier_impl.h"
+#include "base/prefs/pref_registry_simple.h"
+#include "base/prefs/pref_value_store.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+template<>
+TestingPrefServiceBase<PrefService, PrefRegistry>::TestingPrefServiceBase(
+ TestingPrefStore* managed_prefs,
+ TestingPrefStore* user_prefs,
+ TestingPrefStore* recommended_prefs,
+ PrefRegistry* pref_registry,
+ PrefNotifierImpl* pref_notifier)
+ : PrefService(pref_notifier,
+ new PrefValueStore(
+ managed_prefs,
+ NULL,
+ NULL,
+ user_prefs,
+ recommended_prefs,
+ pref_registry->defaults(),
+ pref_notifier),
+ user_prefs,
+ pref_registry,
+ base::Bind(
+ &TestingPrefServiceBase<
+ PrefService, PrefRegistry>::HandleReadError),
+ false),
+ managed_prefs_(managed_prefs),
+ user_prefs_(user_prefs),
+ recommended_prefs_(recommended_prefs) {
+}
+
+TestingPrefServiceSimple::TestingPrefServiceSimple()
+ : TestingPrefServiceBase<PrefService, PrefRegistry>(
+ new TestingPrefStore(),
+ new TestingPrefStore(),
+ new TestingPrefStore(),
+ new PrefRegistrySimple(),
+ new PrefNotifierImpl()) {
+}
+
+TestingPrefServiceSimple::~TestingPrefServiceSimple() {
+}
+
+PrefRegistrySimple* TestingPrefServiceSimple::registry() {
+ return static_cast<PrefRegistrySimple*>(DeprecatedGetPrefRegistry());
+}