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

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

Issue 763673002: Replace direct access to kGoogleServicesUsername with calls to SigninManager. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebased Created 6 years 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_impl.h" 5 #include "chrome/browser/profiles/profile_impl.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 #include "chrome/browser/profiles/gaia_info_update_service_factory.h" 62 #include "chrome/browser/profiles/gaia_info_update_service_factory.h"
63 #include "chrome/browser/profiles/profile_destroyer.h" 63 #include "chrome/browser/profiles/profile_destroyer.h"
64 #include "chrome/browser/profiles/profile_info_cache.h" 64 #include "chrome/browser/profiles/profile_info_cache.h"
65 #include "chrome/browser/profiles/profile_manager.h" 65 #include "chrome/browser/profiles/profile_manager.h"
66 #include "chrome/browser/profiles/profile_metrics.h" 66 #include "chrome/browser/profiles/profile_metrics.h"
67 #include "chrome/browser/safe_browsing/safe_browsing_service.h" 67 #include "chrome/browser/safe_browsing/safe_browsing_service.h"
68 #include "chrome/browser/services/gcm/gcm_profile_service.h" 68 #include "chrome/browser/services/gcm/gcm_profile_service.h"
69 #include "chrome/browser/services/gcm/gcm_profile_service_factory.h" 69 #include "chrome/browser/services/gcm/gcm_profile_service_factory.h"
70 #include "chrome/browser/services/gcm/push_messaging_service_impl.h" 70 #include "chrome/browser/services/gcm/push_messaging_service_impl.h"
71 #include "chrome/browser/sessions/session_service_factory.h" 71 #include "chrome/browser/sessions/session_service_factory.h"
72 #include "chrome/browser/signin/signin_manager_factory.h"
72 #include "chrome/browser/signin/signin_ui_util.h" 73 #include "chrome/browser/signin/signin_ui_util.h"
73 #include "chrome/browser/ssl/chrome_ssl_host_state_delegate.h" 74 #include "chrome/browser/ssl/chrome_ssl_host_state_delegate.h"
74 #include "chrome/browser/ssl/chrome_ssl_host_state_delegate_factory.h" 75 #include "chrome/browser/ssl/chrome_ssl_host_state_delegate_factory.h"
75 #include "chrome/browser/ui/startup/startup_browser_creator.h" 76 #include "chrome/browser/ui/startup/startup_browser_creator.h"
76 #include "chrome/browser/ui/zoom/chrome_zoom_level_prefs.h" 77 #include "chrome/browser/ui/zoom/chrome_zoom_level_prefs.h"
77 #include "chrome/browser/ui/zoom/zoom_event_manager.h" 78 #include "chrome/browser/ui/zoom/zoom_event_manager.h"
78 #include "chrome/common/chrome_constants.h" 79 #include "chrome/common/chrome_constants.h"
79 #include "chrome/common/chrome_paths_internal.h" 80 #include "chrome/common/chrome_paths_internal.h"
80 #include "chrome/common/chrome_switches.h" 81 #include "chrome/common/chrome_switches.h"
81 #include "chrome/common/chrome_version_info.h" 82 #include "chrome/common/chrome_version_info.h"
82 #include "chrome/common/pref_names.h" 83 #include "chrome/common/pref_names.h"
83 #include "chrome/common/url_constants.h" 84 #include "chrome/common/url_constants.h"
84 #include "chrome/grit/chromium_strings.h" 85 #include "chrome/grit/chromium_strings.h"
85 #include "components/bookmarks/browser/bookmark_model.h" 86 #include "components/bookmarks/browser/bookmark_model.h"
86 #include "components/content_settings/core/browser/host_content_settings_map.h" 87 #include "components/content_settings/core/browser/host_content_settings_map.h"
87 #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_pref s.h" 88 #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_pref s.h"
88 #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_sett ings.h" 89 #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_sett ings.h"
89 #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_stat istics_prefs.h" 90 #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_stat istics_prefs.h"
90 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_param s.h" 91 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_param s.h"
91 #include "components/domain_reliability/monitor.h" 92 #include "components/domain_reliability/monitor.h"
92 #include "components/domain_reliability/service.h" 93 #include "components/domain_reliability/service.h"
93 #include "components/keyed_service/content/browser_context_dependency_manager.h" 94 #include "components/keyed_service/content/browser_context_dependency_manager.h"
94 #include "components/metrics/metrics_service.h" 95 #include "components/metrics/metrics_service.h"
95 #include "components/pref_registry/pref_registry_syncable.h" 96 #include "components/pref_registry/pref_registry_syncable.h"
97 #include "components/signin/core/browser/signin_manager.h"
96 #include "components/startup_metric_utils/startup_metric_utils.h" 98 #include "components/startup_metric_utils/startup_metric_utils.h"
97 #include "components/url_fixer/url_fixer.h" 99 #include "components/url_fixer/url_fixer.h"
98 #include "components/user_prefs/user_prefs.h" 100 #include "components/user_prefs/user_prefs.h"
99 #include "content/public/browser/browser_thread.h" 101 #include "content/public/browser/browser_thread.h"
100 #include "content/public/browser/dom_storage_context.h" 102 #include "content/public/browser/dom_storage_context.h"
101 #include "content/public/browser/notification_service.h" 103 #include "content/public/browser/notification_service.h"
102 #include "content/public/browser/render_process_host.h" 104 #include "content/public/browser/render_process_host.h"
103 #include "content/public/browser/storage_partition.h" 105 #include "content/public/browser/storage_partition.h"
104 #include "content/public/browser/url_data_source.h" 106 #include "content/public/browser/url_data_source.h"
105 #include "content/public/browser/user_metrics.h" 107 #include "content/public/browser/user_metrics.h"
(...skipping 415 matching lines...) Expand 10 before | Expand all | Expand 10 after
521 // Prefs were loaded synchronously so we can continue directly. 523 // Prefs were loaded synchronously so we can continue directly.
522 OnPrefsLoaded(true); 524 OnPrefsLoaded(true);
523 } 525 }
524 } 526 }
525 527
526 void ProfileImpl::DoFinalInit() { 528 void ProfileImpl::DoFinalInit() {
527 TRACE_EVENT0("browser", "ProfileImpl::DoFinalInit") 529 TRACE_EVENT0("browser", "ProfileImpl::DoFinalInit")
528 PrefService* prefs = GetPrefs(); 530 PrefService* prefs = GetPrefs();
529 pref_change_registrar_.Init(prefs); 531 pref_change_registrar_.Init(prefs);
530 pref_change_registrar_.Add( 532 pref_change_registrar_.Add(
531 prefs::kGoogleServicesUsername,
532 base::Bind(&ProfileImpl::UpdateProfileUserNameCache,
533 base::Unretained(this)));
534 pref_change_registrar_.Add(
535 prefs::kSupervisedUserId, 533 prefs::kSupervisedUserId,
536 base::Bind(&ProfileImpl::UpdateProfileSupervisedUserIdCache, 534 base::Bind(&ProfileImpl::UpdateProfileSupervisedUserIdCache,
537 base::Unretained(this))); 535 base::Unretained(this)));
538 536
539 // Changes in the profile avatar. 537 // Changes in the profile avatar.
540 pref_change_registrar_.Add( 538 pref_change_registrar_.Add(
541 prefs::kProfileAvatarIndex, 539 prefs::kProfileAvatarIndex,
542 base::Bind(&ProfileImpl::UpdateProfileAvatarCache, 540 base::Bind(&ProfileImpl::UpdateProfileAvatarCache,
543 base::Unretained(this))); 541 base::Unretained(this)));
544 pref_change_registrar_.Add( 542 pref_change_registrar_.Add(
(...skipping 23 matching lines...) Expand all
568 // It would be nice to use PathService for fetching this directory, but 566 // It would be nice to use PathService for fetching this directory, but
569 // the cache directory depends on the profile directory, which isn't available 567 // the cache directory depends on the profile directory, which isn't available
570 // to PathService. 568 // to PathService.
571 chrome::GetUserCacheDirectory(path_, &base_cache_path_); 569 chrome::GetUserCacheDirectory(path_, &base_cache_path_);
572 // Always create the cache directory asynchronously. 570 // Always create the cache directory asynchronously.
573 scoped_refptr<base::SequencedTaskRunner> sequenced_task_runner = 571 scoped_refptr<base::SequencedTaskRunner> sequenced_task_runner =
574 JsonPrefStore::GetTaskRunnerForFile(base_cache_path_, 572 JsonPrefStore::GetTaskRunnerForFile(base_cache_path_,
575 BrowserThread::GetBlockingPool()); 573 BrowserThread::GetBlockingPool());
576 CreateProfileDirectory(sequenced_task_runner.get(), base_cache_path_); 574 CreateProfileDirectory(sequenced_task_runner.get(), base_cache_path_);
577 575
578 // Now that the profile is hooked up to receive pref change notifications to 576 // Initialize components that depend on the current value.
579 // kGoogleServicesUsername, initialize components that depend on it to reflect
580 // the current value.
581 UpdateProfileUserNameCache();
582 UpdateProfileSupervisedUserIdCache(); 577 UpdateProfileSupervisedUserIdCache();
583 UpdateProfileIsEphemeralCache(); 578 UpdateProfileIsEphemeralCache();
584 GAIAInfoUpdateServiceFactory::GetForProfile(this); 579 GAIAInfoUpdateServiceFactory::GetForProfile(this);
585 580
586 PrefService* local_state = g_browser_process->local_state(); 581 PrefService* local_state = g_browser_process->local_state();
587 ssl_config_service_manager_.reset( 582 ssl_config_service_manager_.reset(
588 SSLConfigServiceManager::CreateDefaultManager(local_state)); 583 SSLConfigServiceManager::CreateDefaultManager(local_state));
589 584
590 #if defined(ENABLE_BACKGROUND) 585 #if defined(ENABLE_BACKGROUND)
591 // Initialize the BackgroundModeManager - this has to be done here before 586 // Initialize the BackgroundModeManager - this has to be done here before
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after
833 pref_proxy_config_tracker_->DetachFromPrefService(); 828 pref_proxy_config_tracker_->DetachFromPrefService();
834 829
835 if (host_content_settings_map_.get()) 830 if (host_content_settings_map_.get())
836 host_content_settings_map_->ShutdownOnUIThread(); 831 host_content_settings_map_->ShutdownOnUIThread();
837 832
838 // This causes the Preferences file to be written to disk. 833 // This causes the Preferences file to be written to disk.
839 if (prefs_loaded) 834 if (prefs_loaded)
840 SetExitType(EXIT_NORMAL); 835 SetExitType(EXIT_NORMAL);
841 } 836 }
842 837
843 std::string ProfileImpl::GetProfileName() { 838 std::string ProfileImpl::GetProfileName() {
noms (inactive) 2014/12/04 16:35:39 Uhoh, yak attack: if this literally returns an ema
Roger Tawa OOO till Jul 10th 2014/12/04 22:26:47 Agreed, function should be renamed, but in a separ
844 return GetPrefs()->GetString(prefs::kGoogleServicesUsername); 839 SigninManagerBase* signin_manager =
840 SigninManagerFactory::GetForProfile(this);
841 if (signin_manager)
842 return signin_manager->GetAuthenticatedUsername();
843
844 return std::string();
845 } 845 }
846 846
847 Profile::ProfileType ProfileImpl::GetProfileType() const { 847 Profile::ProfileType ProfileImpl::GetProfileType() const {
848 return REGULAR_PROFILE; 848 return REGULAR_PROFILE;
849 } 849 }
850 850
851 scoped_ptr<content::ZoomLevelDelegate> 851 scoped_ptr<content::ZoomLevelDelegate>
852 ProfileImpl::CreateZoomLevelDelegate(const base::FilePath& partition_path) { 852 ProfileImpl::CreateZoomLevelDelegate(const base::FilePath& partition_path) {
853 return make_scoped_ptr(new chrome::ChromeZoomLevelPrefs( 853 return make_scoped_ptr(new chrome::ChromeZoomLevelPrefs(
854 GetPrefs(), GetPath(), partition_path, 854 GetPrefs(), GetPath(), partition_path,
(...skipping 464 matching lines...) Expand 10 before | Expand all | Expand 10 after
1319 1319
1320 if (GetPrefs()->GetBoolean(prefs::kHomePageIsNewTabPage)) 1320 if (GetPrefs()->GetBoolean(prefs::kHomePageIsNewTabPage))
1321 return GURL(chrome::kChromeUINewTabURL); 1321 return GURL(chrome::kChromeUINewTabURL);
1322 GURL home_page(url_fixer::FixupURL(GetPrefs()->GetString(prefs::kHomePage), 1322 GURL home_page(url_fixer::FixupURL(GetPrefs()->GetString(prefs::kHomePage),
1323 std::string())); 1323 std::string()));
1324 if (!home_page.is_valid()) 1324 if (!home_page.is_valid())
1325 return GURL(chrome::kChromeUINewTabURL); 1325 return GURL(chrome::kChromeUINewTabURL);
1326 return home_page; 1326 return home_page;
1327 } 1327 }
1328 1328
1329 void ProfileImpl::UpdateProfileUserNameCache() {
1330 ProfileManager* profile_manager = g_browser_process->profile_manager();
1331 ProfileInfoCache& cache = profile_manager->GetProfileInfoCache();
1332 size_t index = cache.GetIndexOfProfileWithPath(GetPath());
1333 if (index != std::string::npos) {
1334 std::string user_name =
1335 GetPrefs()->GetString(prefs::kGoogleServicesUsername);
1336 cache.SetUserNameOfProfileAtIndex(index, base::UTF8ToUTF16(user_name));
1337 ProfileMetrics::UpdateReportedProfilesStatistics(profile_manager);
1338 }
1339 }
1340
1341 void ProfileImpl::UpdateProfileSupervisedUserIdCache() { 1329 void ProfileImpl::UpdateProfileSupervisedUserIdCache() {
1342 ProfileManager* profile_manager = g_browser_process->profile_manager(); 1330 ProfileManager* profile_manager = g_browser_process->profile_manager();
1343 ProfileInfoCache& cache = profile_manager->GetProfileInfoCache(); 1331 ProfileInfoCache& cache = profile_manager->GetProfileInfoCache();
1344 size_t index = cache.GetIndexOfProfileWithPath(GetPath()); 1332 size_t index = cache.GetIndexOfProfileWithPath(GetPath());
1345 if (index != std::string::npos) { 1333 if (index != std::string::npos) {
1346 std::string supervised_user_id = 1334 std::string supervised_user_id =
1347 GetPrefs()->GetString(prefs::kSupervisedUserId); 1335 GetPrefs()->GetString(prefs::kSupervisedUserId);
1348 cache.SetSupervisedUserIdOfProfileAtIndex(index, supervised_user_id); 1336 cache.SetSupervisedUserIdOfProfileAtIndex(index, supervised_user_id);
1349 ProfileMetrics::UpdateReportedProfilesStatistics(profile_manager); 1337 ProfileMetrics::UpdateReportedProfilesStatistics(profile_manager);
1350 } 1338 }
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
1423 ProfileImpl::CreateDomainReliabilityMonitor(PrefService* local_state) { 1411 ProfileImpl::CreateDomainReliabilityMonitor(PrefService* local_state) {
1424 domain_reliability::DomainReliabilityService* service = 1412 domain_reliability::DomainReliabilityService* service =
1425 domain_reliability::DomainReliabilityServiceFactory::GetInstance()-> 1413 domain_reliability::DomainReliabilityServiceFactory::GetInstance()->
1426 GetForBrowserContext(this); 1414 GetForBrowserContext(this);
1427 if (!service) 1415 if (!service)
1428 return scoped_ptr<domain_reliability::DomainReliabilityMonitor>(); 1416 return scoped_ptr<domain_reliability::DomainReliabilityMonitor>();
1429 1417
1430 return service->CreateMonitor( 1418 return service->CreateMonitor(
1431 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO)); 1419 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO));
1432 } 1420 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698