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

Side by Side Diff: chrome/browser/profiles/profile_keyed_base_factory.cc

Issue 12079097: Introduce PrefRegistrySyncable, simplifying PrefServiceSyncable. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to head again; base::File changes conflicted. Created 7 years, 10 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/profiles/profile_keyed_base_factory.h" 5 #include "chrome/browser/profiles/profile_keyed_base_factory.h"
6 6
7 #include "chrome/browser/prefs/pref_registry_syncable.h"
8 #include "chrome/browser/prefs/pref_service.h"
7 #include "chrome/browser/profiles/profile.h" 9 #include "chrome/browser/profiles/profile.h"
8 #include "chrome/browser/profiles/profile_dependency_manager.h" 10 #include "chrome/browser/profiles/profile_dependency_manager.h"
9 11
10 ProfileKeyedBaseFactory::ProfileKeyedBaseFactory( 12 ProfileKeyedBaseFactory::ProfileKeyedBaseFactory(
11 const char* name, ProfileDependencyManager* manager) 13 const char* name, ProfileDependencyManager* manager)
12 : dependency_manager_(manager) 14 : dependency_manager_(manager)
13 #ifndef NDEBUG 15 #ifndef NDEBUG
14 , service_name_(name) 16 , service_name_(name)
15 #endif 17 #endif
16 { 18 {
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 // registration to happen at service creation time). 71 // registration to happen at service creation time).
70 // 72 //
71 // Now that services are responsible for declaring their preferences, we have 73 // Now that services are responsible for declaring their preferences, we have
72 // to enforce a uniquenes check here because some tests create one profile and 74 // to enforce a uniquenes check here because some tests create one profile and
73 // multiple services of the same type attached to that profile (serially, not 75 // multiple services of the same type attached to that profile (serially, not
74 // parallel) and we don't want to register multiple times on the same profile. 76 // parallel) and we don't want to register multiple times on the same profile.
75 DCHECK(!profile->IsOffTheRecord()); 77 DCHECK(!profile->IsOffTheRecord());
76 78
77 std::set<Profile*>::iterator it = registered_preferences_.find(profile); 79 std::set<Profile*>::iterator it = registered_preferences_.find(profile);
78 if (it == registered_preferences_.end()) { 80 if (it == registered_preferences_.end()) {
79 RegisterUserPrefs(profile->GetPrefs()); 81 PrefService* prefs = profile->GetPrefs();
82 PrefRegistrySyncable* registry = static_cast<PrefRegistrySyncable*>(
83 prefs->DeprecatedGetPrefRegistry());
84 RegisterUserPrefs(registry);
85 // A few registration functions still need the PrefService pointer
86 // (e.g. to clear preferences).
87 DeprecatedRegisterUserPrefs(prefs, registry);
80 registered_preferences_.insert(profile); 88 registered_preferences_.insert(profile);
81 } 89 }
82 } 90 }
83 91
84 bool ProfileKeyedBaseFactory::ServiceRedirectedInIncognito() const { 92 bool ProfileKeyedBaseFactory::ServiceRedirectedInIncognito() const {
85 return false; 93 return false;
86 } 94 }
87 95
88 bool ProfileKeyedBaseFactory::ServiceHasOwnInstanceInIncognito() const { 96 bool ProfileKeyedBaseFactory::ServiceHasOwnInstanceInIncognito() const {
89 return false; 97 return false;
(...skipping 17 matching lines...) Expand all
107 115
108 bool ProfileKeyedBaseFactory::ArePreferencesSetOn(Profile* profile) const { 116 bool ProfileKeyedBaseFactory::ArePreferencesSetOn(Profile* profile) const {
109 return registered_preferences_.find(profile) != 117 return registered_preferences_.find(profile) !=
110 registered_preferences_.end(); 118 registered_preferences_.end();
111 } 119 }
112 120
113 void ProfileKeyedBaseFactory::MarkPreferencesSetOn(Profile* profile) { 121 void ProfileKeyedBaseFactory::MarkPreferencesSetOn(Profile* profile) {
114 DCHECK(!ArePreferencesSetOn(profile)); 122 DCHECK(!ArePreferencesSetOn(profile));
115 registered_preferences_.insert(profile); 123 registered_preferences_.insert(profile);
116 } 124 }
OLDNEW
« no previous file with comments | « chrome/browser/profiles/profile_keyed_base_factory.h ('k') | chrome/browser/search_engines/template_url_prepopulate_data.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698