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

Side by Side Diff: chrome/browser/prefs/pref_value_store.cc

Issue 11741003: Remove PrefServiceSimple, replacing it with PrefService and PrefRegistrySimple. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Switch to desired interfaces. Created 7 years, 11 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/prefs/pref_value_store.h" 5 #include "chrome/browser/prefs/pref_value_store.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/prefs/pref_notifier.h" 8 #include "base/prefs/pref_notifier.h"
9 #include "base/prefs/pref_observer.h" 9 #include "base/prefs/pref_observer.h"
10 #include "chrome/browser/prefs/pref_registry.h"
10 11
11 PrefValueStore::PrefStoreKeeper::PrefStoreKeeper() 12 PrefValueStore::PrefStoreKeeper::PrefStoreKeeper()
12 : pref_value_store_(NULL), 13 : pref_value_store_(NULL),
13 type_(PrefValueStore::INVALID_STORE) { 14 type_(PrefValueStore::INVALID_STORE) {
14 } 15 }
15 16
16 PrefValueStore::PrefStoreKeeper::~PrefStoreKeeper() { 17 PrefValueStore::PrefStoreKeeper::~PrefStoreKeeper() {
17 if (pref_store_.get()) { 18 if (pref_store_.get()) {
18 pref_store_->RemoveObserver(this); 19 pref_store_->RemoveObserver(this);
19 pref_store_ = NULL; 20 pref_store_ = NULL;
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 InitPrefStore(MANAGED_STORE, managed_prefs); 59 InitPrefStore(MANAGED_STORE, managed_prefs);
59 InitPrefStore(EXTENSION_STORE, extension_prefs); 60 InitPrefStore(EXTENSION_STORE, extension_prefs);
60 InitPrefStore(COMMAND_LINE_STORE, command_line_prefs); 61 InitPrefStore(COMMAND_LINE_STORE, command_line_prefs);
61 InitPrefStore(USER_STORE, user_prefs); 62 InitPrefStore(USER_STORE, user_prefs);
62 InitPrefStore(RECOMMENDED_STORE, recommended_prefs); 63 InitPrefStore(RECOMMENDED_STORE, recommended_prefs);
63 InitPrefStore(DEFAULT_STORE, default_prefs); 64 InitPrefStore(DEFAULT_STORE, default_prefs);
64 65
65 CheckInitializationCompleted(); 66 CheckInitializationCompleted();
66 } 67 }
67 68
69 PrefValueStore::PrefValueStore(PrefStore* managed_prefs,
70 PrefStore* extension_prefs,
71 PrefStore* command_line_prefs,
72 PrefStore* user_prefs,
73 PrefStore* recommended_prefs,
74 PrefRegistry* pref_registry,
75 PrefNotifier* pref_notifier)
76 : pref_notifier_(pref_notifier),
77 initialization_failed_(false) {
78 InitPrefStore(MANAGED_STORE, managed_prefs);
79 InitPrefStore(EXTENSION_STORE, extension_prefs);
80 InitPrefStore(COMMAND_LINE_STORE, command_line_prefs);
81 InitPrefStore(USER_STORE, user_prefs);
82 InitPrefStore(RECOMMENDED_STORE, recommended_prefs);
83 InitPrefStore(DEFAULT_STORE, pref_registry->default_prefs_.get());
84
85 CheckInitializationCompleted();
86 }
87
68 PrefValueStore::~PrefValueStore() {} 88 PrefValueStore::~PrefValueStore() {}
69 89
70 PrefValueStore* PrefValueStore::CloneAndSpecialize( 90 PrefValueStore* PrefValueStore::CloneAndSpecialize(
71 PrefStore* managed_prefs, 91 PrefStore* managed_prefs,
72 PrefStore* extension_prefs, 92 PrefStore* extension_prefs,
73 PrefStore* command_line_prefs, 93 PrefStore* command_line_prefs,
74 PrefStore* user_prefs, 94 PrefStore* user_prefs,
75 PrefStore* recommended_prefs, 95 PrefStore* recommended_prefs,
76 PrefStore* default_prefs, 96 PrefStore* default_prefs,
77 PrefNotifier* pref_notifier) { 97 PrefNotifier* pref_notifier) {
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
267 if (initialization_failed_) 287 if (initialization_failed_)
268 return; 288 return;
269 for (size_t i = 0; i <= PREF_STORE_TYPE_MAX; ++i) { 289 for (size_t i = 0; i <= PREF_STORE_TYPE_MAX; ++i) {
270 scoped_refptr<PrefStore> store = 290 scoped_refptr<PrefStore> store =
271 GetPrefStore(static_cast<PrefStoreType>(i)); 291 GetPrefStore(static_cast<PrefStoreType>(i));
272 if (store && !store->IsInitializationComplete()) 292 if (store && !store->IsInitializationComplete())
273 return; 293 return;
274 } 294 }
275 pref_notifier_->OnInitializationCompleted(true); 295 pref_notifier_->OnInitializationCompleted(true);
276 } 296 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698