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

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

Issue 1415223002: Add counts of User data to ProfileInfoCache (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added methods in profile_statistics.cc to access ProfileInfoCache, fixed a few style errors Created 5 years, 1 month 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
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/files/file_util.h" 8 #include "base/files/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 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
53 const char kPasswordTokenKey[] = "gaia_password_token"; 53 const char kPasswordTokenKey[] = "gaia_password_token";
54 const char kUseGAIAPictureKey[] = "use_gaia_picture"; 54 const char kUseGAIAPictureKey[] = "use_gaia_picture";
55 const char kBackgroundAppsKey[] = "background_apps"; 55 const char kBackgroundAppsKey[] = "background_apps";
56 const char kGAIAPictureFileNameKey[] = "gaia_picture_file_name"; 56 const char kGAIAPictureFileNameKey[] = "gaia_picture_file_name";
57 const char kIsOmittedFromProfileListKey[] = "is_omitted_from_profile_list"; 57 const char kIsOmittedFromProfileListKey[] = "is_omitted_from_profile_list";
58 const char kSigninRequiredKey[] = "signin_required"; 58 const char kSigninRequiredKey[] = "signin_required";
59 const char kSupervisedUserId[] = "managed_user_id"; 59 const char kSupervisedUserId[] = "managed_user_id";
60 const char kProfileIsEphemeral[] = "is_ephemeral"; 60 const char kProfileIsEphemeral[] = "is_ephemeral";
61 const char kActiveTimeKey[] = "active_time"; 61 const char kActiveTimeKey[] = "active_time";
62 const char kIsAuthErrorKey[] = "is_auth_error"; 62 const char kIsAuthErrorKey[] = "is_auth_error";
63 const char kStatsBrowsingHistoryKey[] = "stats_browsing_history";
64 const char kStatsPasswordsKey[] = "stats_passwords";
65 const char kStatsBookmarksKey[] = "stats_bookmarks";
66 const char kStatsSettingsKey[] = "stats_settings";
63 67
64 // First eight are generic icons, which use IDS_NUMBERED_PROFILE_NAME. 68 // First eight are generic icons, which use IDS_NUMBERED_PROFILE_NAME.
65 const int kDefaultNames[] = { 69 const int kDefaultNames[] = {
66 IDS_DEFAULT_AVATAR_NAME_8, 70 IDS_DEFAULT_AVATAR_NAME_8,
67 IDS_DEFAULT_AVATAR_NAME_9, 71 IDS_DEFAULT_AVATAR_NAME_9,
68 IDS_DEFAULT_AVATAR_NAME_10, 72 IDS_DEFAULT_AVATAR_NAME_10,
69 IDS_DEFAULT_AVATAR_NAME_11, 73 IDS_DEFAULT_AVATAR_NAME_11,
70 IDS_DEFAULT_AVATAR_NAME_12, 74 IDS_DEFAULT_AVATAR_NAME_12,
71 IDS_DEFAULT_AVATAR_NAME_13, 75 IDS_DEFAULT_AVATAR_NAME_13,
72 IDS_DEFAULT_AVATAR_NAME_14, 76 IDS_DEFAULT_AVATAR_NAME_14,
(...skipping 419 matching lines...) Expand 10 before | Expand all | Expand 10 after
492 const { 496 const {
493 std::string icon_url; 497 std::string icon_url;
494 GetInfoForProfileAtIndex(index)->GetString(kAvatarIconKey, &icon_url); 498 GetInfoForProfileAtIndex(index)->GetString(kAvatarIconKey, &icon_url);
495 size_t icon_index = 0; 499 size_t icon_index = 0;
496 if (!profiles::IsDefaultAvatarIconUrl(icon_url, &icon_index)) 500 if (!profiles::IsDefaultAvatarIconUrl(icon_url, &icon_index))
497 DLOG(WARNING) << "Unknown avatar icon: " << icon_url; 501 DLOG(WARNING) << "Unknown avatar icon: " << icon_url;
498 502
499 return icon_index; 503 return icon_index;
500 } 504 }
501 505
506 bool ProfileInfoCache::HasStatsBrowsingHistoryOfProfileAtIndex(size_t index)
507 const {
508 int value = 0;
509 return GetInfoForProfileAtIndex(index)->GetInteger(kStatsBrowsingHistoryKey,
510 &value);
511 }
512
513 int ProfileInfoCache::GetStatsBrowsingHistoryOfProfileAtIndex(size_t index)
514 const {
515 int value = 0;
516 GetInfoForProfileAtIndex(index)->GetInteger(kStatsBrowsingHistoryKey, &value);
517 return value;
518 }
519
520 bool ProfileInfoCache::HasStatsPasswordsOfProfileAtIndex(size_t index)
521 const {
522 int value = 0;
523 return GetInfoForProfileAtIndex(index)->GetInteger(kStatsPasswordsKey,
524 &value);
525 }
526
527 int ProfileInfoCache::GetStatsPasswordsOfProfileAtIndex(size_t index)
528 const {
529 int value = 0;
530 GetInfoForProfileAtIndex(index)->GetInteger(kStatsPasswordsKey, &value);
531 return value;
532 }
533
534 bool ProfileInfoCache::HasStatsBookmarksOfProfileAtIndex(size_t index)
535 const {
536 int value = 0;
537 return GetInfoForProfileAtIndex(index)->GetInteger(kStatsBookmarksKey,
538 &value);
539 }
540
541 int ProfileInfoCache::GetStatsBookmarksOfProfileAtIndex(size_t index)
542 const {
543 int value = 0;
544 GetInfoForProfileAtIndex(index)->GetInteger(kStatsBookmarksKey, &value);
545 return value;
546 }
547
548 bool ProfileInfoCache::HasStatsSettingsOfProfileAtIndex(size_t index)
Mike Lerman 2015/11/17 16:29:51 nit: I think const can go on the line before. (and
lwchkg 2015/11/18 17:34:53 Done. Six pairs replaced.
549 const {
550 int value = 0;
551 return GetInfoForProfileAtIndex(index)->GetInteger(kStatsSettingsKey, &value);
552 }
553
554 int ProfileInfoCache::GetStatsSettingsOfProfileAtIndex(size_t index)
555 const {
556 int value = 0;
557 GetInfoForProfileAtIndex(index)->GetInteger(kStatsSettingsKey, &value);
558 return value;
559 }
560
502 void ProfileInfoCache::SetProfileActiveTimeAtIndex(size_t index) { 561 void ProfileInfoCache::SetProfileActiveTimeAtIndex(size_t index) {
503 if (base::Time::Now() - GetProfileActiveTimeAtIndex(index) < 562 if (base::Time::Now() - GetProfileActiveTimeAtIndex(index) <
504 base::TimeDelta::FromHours(1)) { 563 base::TimeDelta::FromHours(1)) {
505 return; 564 return;
506 } 565 }
507 566
508 scoped_ptr<base::DictionaryValue> info( 567 scoped_ptr<base::DictionaryValue> info(
509 GetInfoForProfileAtIndex(index)->DeepCopy()); 568 GetInfoForProfileAtIndex(index)->DeepCopy());
510 info->SetDouble(kActiveTimeKey, base::Time::Now().ToDoubleT()); 569 info->SetDouble(kActiveTimeKey, base::Time::Now().ToDoubleT());
511 // This takes ownership of |info|. 570 // This takes ownership of |info|.
(...skipping 390 matching lines...) Expand 10 before | Expand all | Expand 10 after
902 if (ChooseAvatarIconIndexForNewProfile(true, true, &icon_index)) 961 if (ChooseAvatarIconIndexForNewProfile(true, true, &icon_index))
903 return icon_index; 962 return icon_index;
904 // Settle for any random icon, even if it's not unique. 963 // Settle for any random icon, even if it's not unique.
905 if (ChooseAvatarIconIndexForNewProfile(true, false, &icon_index)) 964 if (ChooseAvatarIconIndexForNewProfile(true, false, &icon_index))
906 return icon_index; 965 return icon_index;
907 966
908 NOTREACHED(); 967 NOTREACHED();
909 return 0; 968 return 0;
910 } 969 }
911 970
971 void ProfileInfoCache::SetStatsBrowsingHistoryOfProfileAtIndex(size_t index,
972 int value) {
973 scoped_ptr<base::DictionaryValue> info(
974 GetInfoForProfileAtIndex(index)->DeepCopy());
975 info->SetInteger(kStatsBrowsingHistoryKey, value);
976 // This takes ownership of |info|.
977 SetInfoForProfileAtIndex(index, info.release());
978 }
979
980 void ProfileInfoCache::SetStatsPasswordsOfProfileAtIndex(size_t index,
981 int value) {
anthonyvd 2015/11/17 19:03:30 nit: alignment of the params here and the followin
lwchkg 2015/11/18 17:34:53 Done. (Anyway, what's happening with me with those
982 scoped_ptr<base::DictionaryValue> info(
983 GetInfoForProfileAtIndex(index)->DeepCopy());
984 info->SetInteger(kStatsPasswordsKey, value);
985 // This takes ownership of |info|.
986 SetInfoForProfileAtIndex(index, info.release());
987 }
988
989 void ProfileInfoCache::SetStatsBookmarksOfProfileAtIndex(size_t index,
990 int value) {
991 scoped_ptr<base::DictionaryValue> info(
992 GetInfoForProfileAtIndex(index)->DeepCopy());
993 info->SetInteger(kStatsBookmarksKey, value);
994 // This takes ownership of |info|.
995 SetInfoForProfileAtIndex(index, info.release());
996 }
997
998 void ProfileInfoCache::SetStatsSettingsOfProfileAtIndex(size_t index,
999 int value) {
1000 scoped_ptr<base::DictionaryValue> info(
1001 GetInfoForProfileAtIndex(index)->DeepCopy());
1002 info->SetInteger(kStatsSettingsKey, value);
1003 // This takes ownership of |info|.
1004 SetInfoForProfileAtIndex(index, info.release());
1005 }
1006
912 const base::FilePath& ProfileInfoCache::GetUserDataDir() const { 1007 const base::FilePath& ProfileInfoCache::GetUserDataDir() const {
913 return user_data_dir_; 1008 return user_data_dir_;
914 } 1009 }
915 1010
916 // static 1011 // static
917 void ProfileInfoCache::RegisterPrefs(PrefRegistrySimple* registry) { 1012 void ProfileInfoCache::RegisterPrefs(PrefRegistrySimple* registry) {
918 registry->RegisterDictionaryPref(prefs::kProfileInfoCache); 1013 registry->RegisterDictionaryPref(prefs::kProfileInfoCache);
919 } 1014 }
920 1015
921 void ProfileInfoCache::DownloadHighResAvatarIfNeeded( 1016 void ProfileInfoCache::DownloadHighResAvatarIfNeeded(
(...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after
1281 // The profile info is in the cache but its entry isn't created yet, insert 1376 // The profile info is in the cache but its entry isn't created yet, insert
1282 // it in the map. 1377 // it in the map.
1283 scoped_ptr<ProfileAttributesEntry> new_entry(new ProfileAttributesEntry()); 1378 scoped_ptr<ProfileAttributesEntry> new_entry(new ProfileAttributesEntry());
1284 profile_attributes_entries_.add(path, new_entry.Pass()); 1379 profile_attributes_entries_.add(path, new_entry.Pass());
1285 profile_attributes_entries_.get(path)->Initialize(this, path); 1380 profile_attributes_entries_.get(path)->Initialize(this, path);
1286 } 1381 }
1287 1382
1288 *entry = profile_attributes_entries_.get(path); 1383 *entry = profile_attributes_entries_.get(path);
1289 return true; 1384 return true;
1290 } 1385 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698