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

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

Issue 316863002: Rename "managed (mode|user)" to "supervised user" (part 1) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 6 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_info_cache.h" 5 #include "chrome/browser/profiles/profile_info_cache.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/file_util.h" 8 #include "base/file_util.h"
9 #include "base/i18n/case_conversion.h" 9 #include "base/i18n/case_conversion.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 const char kShortcutNameKey[] = "shortcut_name"; 42 const char kShortcutNameKey[] = "shortcut_name";
43 const char kGAIANameKey[] = "gaia_name"; 43 const char kGAIANameKey[] = "gaia_name";
44 const char kGAIAGivenNameKey[] = "gaia_given_name"; 44 const char kGAIAGivenNameKey[] = "gaia_given_name";
45 const char kUserNameKey[] = "user_name"; 45 const char kUserNameKey[] = "user_name";
46 const char kIsUsingDefaultName[] = "is_using_default_name"; 46 const char kIsUsingDefaultName[] = "is_using_default_name";
47 const char kAvatarIconKey[] = "avatar_icon"; 47 const char kAvatarIconKey[] = "avatar_icon";
48 const char kAuthCredentialsKey[] = "local_auth_credentials"; 48 const char kAuthCredentialsKey[] = "local_auth_credentials";
49 const char kUseGAIAPictureKey[] = "use_gaia_picture"; 49 const char kUseGAIAPictureKey[] = "use_gaia_picture";
50 const char kBackgroundAppsKey[] = "background_apps"; 50 const char kBackgroundAppsKey[] = "background_apps";
51 const char kGAIAPictureFileNameKey[] = "gaia_picture_file_name"; 51 const char kGAIAPictureFileNameKey[] = "gaia_picture_file_name";
52 const char kIsManagedKey[] = "is_managed"; 52 const char kIsSupervisedKey[] = "is_managed";
53 const char kIsOmittedFromProfileListKey[] = "is_omitted_from_profile_list"; 53 const char kIsOmittedFromProfileListKey[] = "is_omitted_from_profile_list";
54 const char kSigninRequiredKey[] = "signin_required"; 54 const char kSigninRequiredKey[] = "signin_required";
55 const char kManagedUserId[] = "managed_user_id"; 55 const char kSupervisedUserId[] = "managed_user_id";
56 const char kProfileIsEphemeral[] = "is_ephemeral"; 56 const char kProfileIsEphemeral[] = "is_ephemeral";
57 const char kActiveTimeKey[] = "active_time"; 57 const char kActiveTimeKey[] = "active_time";
58 58
59 // First eight are generic icons, which use IDS_NUMBERED_PROFILE_NAME. 59 // First eight are generic icons, which use IDS_NUMBERED_PROFILE_NAME.
60 const int kDefaultNames[] = { 60 const int kDefaultNames[] = {
61 IDS_DEFAULT_AVATAR_NAME_8, 61 IDS_DEFAULT_AVATAR_NAME_8,
62 IDS_DEFAULT_AVATAR_NAME_9, 62 IDS_DEFAULT_AVATAR_NAME_9,
63 IDS_DEFAULT_AVATAR_NAME_10, 63 IDS_DEFAULT_AVATAR_NAME_10,
64 IDS_DEFAULT_AVATAR_NAME_11, 64 IDS_DEFAULT_AVATAR_NAME_11,
65 IDS_DEFAULT_AVATAR_NAME_12, 65 IDS_DEFAULT_AVATAR_NAME_12,
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 base::DictionaryValue* cache = update.Get(); 171 base::DictionaryValue* cache = update.Get();
172 for (base::DictionaryValue::Iterator it(*cache); 172 for (base::DictionaryValue::Iterator it(*cache);
173 !it.IsAtEnd(); it.Advance()) { 173 !it.IsAtEnd(); it.Advance()) {
174 base::DictionaryValue* info = NULL; 174 base::DictionaryValue* info = NULL;
175 cache->GetDictionaryWithoutPathExpansion(it.key(), &info); 175 cache->GetDictionaryWithoutPathExpansion(it.key(), &info);
176 base::string16 name; 176 base::string16 name;
177 info->GetString(kNameKey, &name); 177 info->GetString(kNameKey, &name);
178 sorted_keys_.insert(FindPositionForProfile(it.key(), name), it.key()); 178 sorted_keys_.insert(FindPositionForProfile(it.key(), name), it.key());
179 // TODO(ibraaaa): delete this when 97% of our users are using M31. 179 // TODO(ibraaaa): delete this when 97% of our users are using M31.
180 // http://crbug.com/276163 180 // http://crbug.com/276163
181 bool is_managed = false; 181 bool is_supervised = false;
182 if (info->GetBoolean(kIsManagedKey, &is_managed)) { 182 if (info->GetBoolean(kIsSupervisedKey, &is_supervised)) {
183 info->Remove(kIsManagedKey, NULL); 183 info->Remove(kIsSupervisedKey, NULL);
184 info->SetString(kManagedUserId, is_managed ? "DUMMY_ID" : std::string()); 184 info->SetString(kSupervisedUserId,
185 is_supervised ? "DUMMY_ID" : std::string());
185 } 186 }
186 info->SetBoolean(kIsUsingDefaultName, IsDefaultName(name)); 187 info->SetBoolean(kIsUsingDefaultName, IsDefaultName(name));
187 } 188 }
188 189
189 // If needed, start downloading the high-res avatars. 190 // If needed, start downloading the high-res avatars.
190 if (switches::IsNewAvatarMenu()) { 191 if (switches::IsNewAvatarMenu()) {
191 for (size_t i = 0; i < GetNumberOfProfiles(); i++) { 192 for (size_t i = 0; i < GetNumberOfProfiles(); i++) {
192 DownloadHighResAvatar(GetAvatarIconIndexOfProfileAtIndex(i), 193 DownloadHighResAvatar(GetAvatarIconIndexOfProfileAtIndex(i),
193 GetPathOfProfileAtIndex(i)); 194 GetPathOfProfileAtIndex(i));
194 } 195 }
195 } 196 }
196 } 197 }
197 198
198 ProfileInfoCache::~ProfileInfoCache() { 199 ProfileInfoCache::~ProfileInfoCache() {
199 STLDeleteContainerPairSecondPointers( 200 STLDeleteContainerPairSecondPointers(
200 cached_avatar_images_.begin(), cached_avatar_images_.end()); 201 cached_avatar_images_.begin(), cached_avatar_images_.end());
201 STLDeleteContainerPairSecondPointers( 202 STLDeleteContainerPairSecondPointers(
202 avatar_images_downloads_in_progress_.begin(), 203 avatar_images_downloads_in_progress_.begin(),
203 avatar_images_downloads_in_progress_.end()); 204 avatar_images_downloads_in_progress_.end());
204 } 205 }
205 206
206 void ProfileInfoCache::AddProfileToCache(const base::FilePath& profile_path, 207 void ProfileInfoCache::AddProfileToCache(
207 const base::string16& name, 208 const base::FilePath& profile_path,
208 const base::string16& username, 209 const base::string16& name,
209 size_t icon_index, 210 const base::string16& username,
210 const std::string& managed_user_id) { 211 size_t icon_index,
212 const std::string& supervised_user_id) {
211 std::string key = CacheKeyFromProfilePath(profile_path); 213 std::string key = CacheKeyFromProfilePath(profile_path);
212 DictionaryPrefUpdate update(prefs_, prefs::kProfileInfoCache); 214 DictionaryPrefUpdate update(prefs_, prefs::kProfileInfoCache);
213 base::DictionaryValue* cache = update.Get(); 215 base::DictionaryValue* cache = update.Get();
214 216
215 scoped_ptr<base::DictionaryValue> info(new base::DictionaryValue); 217 scoped_ptr<base::DictionaryValue> info(new base::DictionaryValue);
216 info->SetString(kNameKey, name); 218 info->SetString(kNameKey, name);
217 info->SetString(kUserNameKey, username); 219 info->SetString(kUserNameKey, username);
218 info->SetString(kAvatarIconKey, 220 info->SetString(kAvatarIconKey,
219 profiles::GetDefaultAvatarIconUrl(icon_index)); 221 profiles::GetDefaultAvatarIconUrl(icon_index));
220 // Default value for whether background apps are running is false. 222 // Default value for whether background apps are running is false.
221 info->SetBoolean(kBackgroundAppsKey, false); 223 info->SetBoolean(kBackgroundAppsKey, false);
222 info->SetString(kManagedUserId, managed_user_id); 224 info->SetString(kSupervisedUserId, supervised_user_id);
223 info->SetBoolean(kIsOmittedFromProfileListKey, !managed_user_id.empty()); 225 info->SetBoolean(kIsOmittedFromProfileListKey, !supervised_user_id.empty());
224 info->SetBoolean(kProfileIsEphemeral, false); 226 info->SetBoolean(kProfileIsEphemeral, false);
225 info->SetBoolean(kIsUsingDefaultName, IsDefaultName(name)); 227 info->SetBoolean(kIsUsingDefaultName, IsDefaultName(name));
226 cache->SetWithoutPathExpansion(key, info.release()); 228 cache->SetWithoutPathExpansion(key, info.release());
227 229
228 sorted_keys_.insert(FindPositionForProfile(key, name), key); 230 sorted_keys_.insert(FindPositionForProfile(key, name), key);
229 231
230 FOR_EACH_OBSERVER(ProfileInfoCacheObserver, 232 FOR_EACH_OBSERVER(ProfileInfoCacheObserver,
231 observer_list_, 233 observer_list_,
232 OnProfileAdded(profile_path)); 234 OnProfileAdded(profile_path));
233 235
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after
398 base::FilePath image_path = path.AppendASCII(file_name); 400 base::FilePath image_path = path.AppendASCII(file_name);
399 return LoadAvatarPictureFromPath(key, image_path); 401 return LoadAvatarPictureFromPath(key, image_path);
400 } 402 }
401 403
402 bool ProfileInfoCache::IsUsingGAIAPictureOfProfileAtIndex(size_t index) const { 404 bool ProfileInfoCache::IsUsingGAIAPictureOfProfileAtIndex(size_t index) const {
403 bool value = false; 405 bool value = false;
404 GetInfoForProfileAtIndex(index)->GetBoolean(kUseGAIAPictureKey, &value); 406 GetInfoForProfileAtIndex(index)->GetBoolean(kUseGAIAPictureKey, &value);
405 return value; 407 return value;
406 } 408 }
407 409
408 bool ProfileInfoCache::ProfileIsManagedAtIndex(size_t index) const { 410 bool ProfileInfoCache::ProfileIsSupervisedAtIndex(size_t index) const {
409 return !GetManagedUserIdOfProfileAtIndex(index).empty(); 411 return !GetSupervisedUserIdOfProfileAtIndex(index).empty();
410 } 412 }
411 413
412 bool ProfileInfoCache::IsOmittedProfileAtIndex(size_t index) const { 414 bool ProfileInfoCache::IsOmittedProfileAtIndex(size_t index) const {
413 bool value = false; 415 bool value = false;
414 GetInfoForProfileAtIndex(index)->GetBoolean(kIsOmittedFromProfileListKey, 416 GetInfoForProfileAtIndex(index)->GetBoolean(kIsOmittedFromProfileListKey,
415 &value); 417 &value);
416 return value; 418 return value;
417 } 419 }
418 420
419 bool ProfileInfoCache::ProfileIsSigninRequiredAtIndex(size_t index) const { 421 bool ProfileInfoCache::ProfileIsSigninRequiredAtIndex(size_t index) const {
420 bool value = false; 422 bool value = false;
421 GetInfoForProfileAtIndex(index)->GetBoolean(kSigninRequiredKey, &value); 423 GetInfoForProfileAtIndex(index)->GetBoolean(kSigninRequiredKey, &value);
422 return value; 424 return value;
423 } 425 }
424 426
425 std::string ProfileInfoCache::GetManagedUserIdOfProfileAtIndex( 427 std::string ProfileInfoCache::GetSupervisedUserIdOfProfileAtIndex(
426 size_t index) const { 428 size_t index) const {
427 std::string managed_user_id; 429 std::string supervised_user_id;
428 GetInfoForProfileAtIndex(index)->GetString(kManagedUserId, &managed_user_id); 430 GetInfoForProfileAtIndex(index)->GetString(kSupervisedUserId,
429 return managed_user_id; 431 &supervised_user_id);
432 return supervised_user_id;
430 } 433 }
431 434
432 bool ProfileInfoCache::ProfileIsEphemeralAtIndex(size_t index) const { 435 bool ProfileInfoCache::ProfileIsEphemeralAtIndex(size_t index) const {
433 bool value = false; 436 bool value = false;
434 GetInfoForProfileAtIndex(index)->GetBoolean(kProfileIsEphemeral, &value); 437 GetInfoForProfileAtIndex(index)->GetBoolean(kProfileIsEphemeral, &value);
435 return value; 438 return value;
436 } 439 }
437 440
438 bool ProfileInfoCache::ProfileIsUsingDefaultNameAtIndex(size_t index) const { 441 bool ProfileInfoCache::ProfileIsUsingDefaultNameAtIndex(size_t index) const {
439 bool value = false; 442 bool value = false;
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
534 bool is_omitted) { 537 bool is_omitted) {
535 if (IsOmittedProfileAtIndex(index) == is_omitted) 538 if (IsOmittedProfileAtIndex(index) == is_omitted)
536 return; 539 return;
537 scoped_ptr<base::DictionaryValue> info( 540 scoped_ptr<base::DictionaryValue> info(
538 GetInfoForProfileAtIndex(index)->DeepCopy()); 541 GetInfoForProfileAtIndex(index)->DeepCopy());
539 info->SetBoolean(kIsOmittedFromProfileListKey, is_omitted); 542 info->SetBoolean(kIsOmittedFromProfileListKey, is_omitted);
540 // This takes ownership of |info|. 543 // This takes ownership of |info|.
541 SetInfoForProfileAtIndex(index, info.release()); 544 SetInfoForProfileAtIndex(index, info.release());
542 } 545 }
543 546
544 void ProfileInfoCache::SetManagedUserIdOfProfileAtIndex(size_t index, 547 void ProfileInfoCache::SetSupervisedUserIdOfProfileAtIndex(
545 const std::string& id) { 548 size_t index,
546 if (GetManagedUserIdOfProfileAtIndex(index) == id) 549 const std::string& id) {
550 if (GetSupervisedUserIdOfProfileAtIndex(index) == id)
547 return; 551 return;
548 scoped_ptr<base::DictionaryValue> info( 552 scoped_ptr<base::DictionaryValue> info(
549 GetInfoForProfileAtIndex(index)->DeepCopy()); 553 GetInfoForProfileAtIndex(index)->DeepCopy());
550 info->SetString(kManagedUserId, id); 554 info->SetString(kSupervisedUserId, id);
551 // This takes ownership of |info|. 555 // This takes ownership of |info|.
552 SetInfoForProfileAtIndex(index, info.release()); 556 SetInfoForProfileAtIndex(index, info.release());
553 } 557 }
554 558
555 void ProfileInfoCache::SetLocalAuthCredentialsOfProfileAtIndex( 559 void ProfileInfoCache::SetLocalAuthCredentialsOfProfileAtIndex(
556 size_t index, 560 size_t index,
557 const std::string& credentials) { 561 const std::string& credentials) {
558 scoped_ptr<base::DictionaryValue> info( 562 scoped_ptr<base::DictionaryValue> info(
559 GetInfoForProfileAtIndex(index)->DeepCopy()); 563 GetInfoForProfileAtIndex(index)->DeepCopy());
560 info->SetString(kAuthCredentialsKey, credentials); 564 info->SetString(kAuthCredentialsKey, credentials);
(...skipping 440 matching lines...) Expand 10 before | Expand all | Expand 10 after
1001 OnProfileAvatarChanged(profile_path)); 1005 OnProfileAvatarChanged(profile_path));
1002 1006
1003 // Remove the file from the list of downloads in progress. Note that this list 1007 // Remove the file from the list of downloads in progress. Note that this list
1004 // only contains the high resolution avatars, and not the Gaia profile images. 1008 // only contains the high resolution avatars, and not the Gaia profile images.
1005 if (!avatar_images_downloads_in_progress_[file_name]) 1009 if (!avatar_images_downloads_in_progress_[file_name])
1006 return; 1010 return;
1007 1011
1008 delete avatar_images_downloads_in_progress_[file_name]; 1012 delete avatar_images_downloads_in_progress_[file_name];
1009 avatar_images_downloads_in_progress_[file_name] = NULL; 1013 avatar_images_downloads_in_progress_[file_name] = NULL;
1010 } 1014 }
OLDNEW
« no previous file with comments | « chrome/browser/profiles/profile_info_cache.h ('k') | chrome/browser/profiles/profile_info_cache_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698