| Index: chrome/browser/prefs/testing_pref_store.cc
|
| diff --git a/chrome/browser/prefs/testing_pref_store.cc b/chrome/browser/prefs/testing_pref_store.cc
|
| index 519473757f0848e3ee794a3b1242c87843b89e3f..39c20f266c50bfab24e8aa51d168406b6fa003c7 100644
|
| --- a/chrome/browser/prefs/testing_pref_store.cc
|
| +++ b/chrome/browser/prefs/testing_pref_store.cc
|
| @@ -7,14 +7,40 @@
|
| #include "base/values.h"
|
|
|
| TestingPrefStore::TestingPrefStore()
|
| - : prefs_(new DictionaryValue()),
|
| - read_only_(true),
|
| + : read_only_(true),
|
| prefs_written_(false),
|
| init_complete_(false) { }
|
|
|
| -PrefStore::PrefReadError TestingPrefStore::ReadPrefs() {
|
| - prefs_.reset(new DictionaryValue());
|
| - return PrefStore::PREF_READ_ERROR_NONE;
|
| +PrefStore::ReadResult TestingPrefStore::GetValue(const std::string& key,
|
| + Value** value) const {
|
| + return prefs_.GetValue(key, value) ? READ_OK : READ_NO_VALUE;
|
| +}
|
| +
|
| +void TestingPrefStore::AddObserver(PrefStore::Observer* observer) {
|
| + observers_.AddObserver(observer);
|
| +}
|
| +
|
| +void TestingPrefStore::RemoveObserver(PrefStore::Observer* observer) {
|
| + observers_.RemoveObserver(observer);
|
| +}
|
| +
|
| +void TestingPrefStore::SetValue(const std::string& key, Value* value) {
|
| + if (prefs_.SetValue(key, value))
|
| + NotifyPrefValueChanged(key);
|
| +}
|
| +
|
| +void TestingPrefStore::SetValueSilently(const std::string& key, Value* value) {
|
| + prefs_.SetValue(key, value);
|
| +}
|
| +
|
| +void TestingPrefStore::RemoveValue(const std::string& key) {
|
| + if (prefs_.RemoveValue(key))
|
| + NotifyPrefValueChanged(key);
|
| +}
|
| +
|
| +PersistentPrefStore::PrefReadError TestingPrefStore::ReadPrefs() {
|
| + prefs_.Clear();
|
| + return PersistentPrefStore::PREF_READ_ERROR_NONE;
|
| }
|
|
|
| bool TestingPrefStore::WritePrefs() {
|
| @@ -22,15 +48,53 @@ bool TestingPrefStore::WritePrefs() {
|
| return prefs_written_;
|
| }
|
|
|
| +void TestingPrefStore::SetInitializationCompleted() {
|
| + init_complete_ = true;
|
| + NotifyInitializationCompleted();
|
| +}
|
| +
|
| void TestingPrefStore::NotifyPrefValueChanged(const std::string& key) {
|
| - PrefStoreBase::NotifyPrefValueChanged(key);
|
| + FOR_EACH_OBSERVER(Observer, observers_, OnPrefValueChanged(key));
|
| }
|
|
|
| void TestingPrefStore::NotifyInitializationCompleted() {
|
| - PrefStoreBase::NotifyInitializationCompleted();
|
| + FOR_EACH_OBSERVER(Observer, observers_, OnInitializationCompleted());
|
| }
|
|
|
| -void TestingPrefStore::SetInitializationCompleted() {
|
| - init_complete_ = true;
|
| - NotifyInitializationCompleted();
|
| +void TestingPrefStore::SetString(const std::string& key,
|
| + const std::string& value) {
|
| + SetValue(key, Value::CreateStringValue(value));
|
| +}
|
| +
|
| +void TestingPrefStore::SetInteger(const std::string& key, int value) {
|
| + SetValue(key, Value::CreateIntegerValue(value));
|
| +}
|
| +
|
| +void TestingPrefStore::SetBoolean(const std::string& key, bool value) {
|
| + SetValue(key, Value::CreateBooleanValue(value));
|
| +}
|
| +
|
| +bool TestingPrefStore::GetString(const std::string& key,
|
| + std::string* value) const {
|
| + Value* stored_value;
|
| + if (!prefs_.GetValue(key, &stored_value) || !stored_value)
|
| + return false;
|
| +
|
| + return stored_value->GetAsString(value);
|
| +}
|
| +
|
| +bool TestingPrefStore::GetInteger(const std::string& key, int* value) const {
|
| + Value* stored_value;
|
| + if (!prefs_.GetValue(key, &stored_value) || !stored_value)
|
| + return false;
|
| +
|
| + return stored_value->GetAsInteger(value);
|
| +}
|
| +
|
| +bool TestingPrefStore::GetBoolean(const std::string& key, bool* value) const {
|
| + Value* stored_value;
|
| + if (!prefs_.GetValue(key, &stored_value) || !stored_value)
|
| + return false;
|
| +
|
| + return stored_value->GetAsBoolean(value);
|
| }
|
|
|