| OLD | NEW |
| 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/signin/signin_manager_factory.h" | 5 #include "chrome/browser/signin/signin_manager_factory.h" |
| 6 | 6 |
| 7 #include "base/prefs/pref_registry_simple.h" | 7 #include "base/prefs/pref_registry_simple.h" |
| 8 #include "chrome/browser/browser_process.h" | 8 #include "chrome/browser/browser_process.h" |
| 9 #include "chrome/browser/profiles/profile.h" | 9 #include "chrome/browser/profiles/profile.h" |
| 10 #include "chrome/browser/signin/account_tracker_service_factory.h" | 10 #include "chrome/browser/signin/account_tracker_service_factory.h" |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 91 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 92 registry->RegisterInt64Pref( | 92 registry->RegisterInt64Pref( |
| 93 prefs::kGoogleServicesRefreshTokenAnnotateScheduledTime, | 93 prefs::kGoogleServicesRefreshTokenAnnotateScheduledTime, |
| 94 base::Time().ToInternalValue(), | 94 base::Time().ToInternalValue(), |
| 95 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 95 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 96 registry->RegisterStringPref( | 96 registry->RegisterStringPref( |
| 97 prefs::kGoogleServicesSigninScopedDeviceId, | 97 prefs::kGoogleServicesSigninScopedDeviceId, |
| 98 std::string(), | 98 std::string(), |
| 99 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 99 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 100 registry->RegisterStringPref( | 100 registry->RegisterStringPref( |
| 101 prefs::kGoogleServicesAccountId, |
| 102 std::string(), |
| 103 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 104 registry->RegisterStringPref( |
| 101 prefs::kGoogleServicesUserAccountId, | 105 prefs::kGoogleServicesUserAccountId, |
| 102 std::string(), | 106 std::string(), |
| 103 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 107 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 104 registry->RegisterStringPref( | |
| 105 prefs::kGoogleServicesUsername, | |
| 106 std::string(), | |
| 107 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | |
| 108 registry->RegisterBooleanPref( | 108 registry->RegisterBooleanPref( |
| 109 prefs::kAutologinEnabled, | 109 prefs::kAutologinEnabled, |
| 110 true, | 110 true, |
| 111 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 111 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 112 registry->RegisterBooleanPref( | 112 registry->RegisterBooleanPref( |
| 113 prefs::kReverseAutologinEnabled, | 113 prefs::kReverseAutologinEnabled, |
| 114 true, | 114 true, |
| 115 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 115 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 116 registry->RegisterListPref(prefs::kReverseAutologinRejectedEmailList, | 116 registry->RegisterListPref(prefs::kReverseAutologinRejectedEmailList, |
| 117 new base::ListValue, | 117 new base::ListValue, |
| 118 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 118 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 119 registry->RegisterInt64Pref( | 119 registry->RegisterInt64Pref( |
| 120 prefs::kSignedInTime, | 120 prefs::kSignedInTime, |
| 121 base::Time().ToInternalValue(), | 121 base::Time().ToInternalValue(), |
| 122 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 122 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 123 |
| 123 LocalAuth::RegisterLocalAuthPrefs(registry); | 124 LocalAuth::RegisterLocalAuthPrefs(registry); |
| 125 |
| 126 // Deprecated prefs: will be removed in a future release. |
| 127 registry->RegisterStringPref( |
| 128 prefs::kGoogleServicesUsername, |
| 129 std::string(), |
| 130 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 124 } | 131 } |
| 125 | 132 |
| 126 // static | 133 // static |
| 127 void SigninManagerFactory::RegisterPrefs(PrefRegistrySimple* registry) { | 134 void SigninManagerFactory::RegisterPrefs(PrefRegistrySimple* registry) { |
| 128 registry->RegisterStringPref(prefs::kGoogleServicesUsernamePattern, | 135 registry->RegisterStringPref(prefs::kGoogleServicesUsernamePattern, |
| 129 std::string()); | 136 std::string()); |
| 130 } | 137 } |
| 131 | 138 |
| 132 void SigninManagerFactory::AddObserver(Observer* observer) { | 139 void SigninManagerFactory::AddObserver(Observer* observer) { |
| 133 observer_list_.AddObserver(observer); | 140 observer_list_.AddObserver(observer); |
| 134 } | 141 } |
| 135 | 142 |
| 136 void SigninManagerFactory::RemoveObserver(Observer* observer) { | 143 void SigninManagerFactory::RemoveObserver(Observer* observer) { |
| 137 observer_list_.RemoveObserver(observer); | 144 observer_list_.RemoveObserver(observer); |
| 138 } | 145 } |
| 139 | 146 |
| 140 void SigninManagerFactory::NotifyObserversOfSigninManagerCreationForTesting( | 147 void SigninManagerFactory::NotifyObserversOfSigninManagerCreationForTesting( |
| 141 SigninManagerBase* manager) { | 148 SigninManagerBase* manager) { |
| 142 FOR_EACH_OBSERVER(Observer, observer_list_, SigninManagerCreated(manager)); | 149 FOR_EACH_OBSERVER(Observer, observer_list_, SigninManagerCreated(manager)); |
| 143 } | 150 } |
| 144 | 151 |
| 145 KeyedService* SigninManagerFactory::BuildServiceInstanceFor( | 152 KeyedService* SigninManagerFactory::BuildServiceInstanceFor( |
| 146 content::BrowserContext* context) const { | 153 content::BrowserContext* context) const { |
| 147 SigninManagerBase* service = NULL; | 154 SigninManagerBase* service = NULL; |
| 148 Profile* profile = static_cast<Profile*>(context); | 155 Profile* profile = static_cast<Profile*>(context); |
| 149 SigninClient* client = | 156 SigninClient* client = |
| 150 ChromeSigninClientFactory::GetInstance()->GetForProfile(profile); | 157 ChromeSigninClientFactory::GetInstance()->GetForProfile(profile); |
| 151 #if defined(OS_CHROMEOS) | 158 #if defined(OS_CHROMEOS) |
| 152 service = new SigninManagerBase(client); | 159 service = new SigninManagerBase( |
| 160 client, |
| 161 AccountTrackerServiceFactory::GetForProfile(profile)); |
| 153 #else | 162 #else |
| 154 service = new SigninManager( | 163 service = new SigninManager( |
| 155 client, | 164 client, |
| 156 ProfileOAuth2TokenServiceFactory::GetForProfile(profile), | 165 ProfileOAuth2TokenServiceFactory::GetForProfile(profile), |
| 157 AccountTrackerServiceFactory::GetForProfile(profile), | 166 AccountTrackerServiceFactory::GetForProfile(profile), |
| 158 GaiaCookieManagerServiceFactory::GetForProfile(profile)); | 167 GaiaCookieManagerServiceFactory::GetForProfile(profile)); |
| 159 #endif | 168 #endif |
| 160 service->Initialize(g_browser_process->local_state()); | 169 service->Initialize(g_browser_process->local_state()); |
| 161 FOR_EACH_OBSERVER(Observer, observer_list_, SigninManagerCreated(service)); | 170 FOR_EACH_OBSERVER(Observer, observer_list_, SigninManagerCreated(service)); |
| 162 return service; | 171 return service; |
| 163 } | 172 } |
| 164 | 173 |
| 165 void SigninManagerFactory::BrowserContextShutdown( | 174 void SigninManagerFactory::BrowserContextShutdown( |
| 166 content::BrowserContext* context) { | 175 content::BrowserContext* context) { |
| 167 SigninManagerBase* manager = static_cast<SigninManagerBase*>( | 176 SigninManagerBase* manager = static_cast<SigninManagerBase*>( |
| 168 GetServiceForBrowserContext(context, false)); | 177 GetServiceForBrowserContext(context, false)); |
| 169 if (manager) | 178 if (manager) |
| 170 FOR_EACH_OBSERVER(Observer, observer_list_, SigninManagerShutdown(manager)); | 179 FOR_EACH_OBSERVER(Observer, observer_list_, SigninManagerShutdown(manager)); |
| 171 BrowserContextKeyedServiceFactory::BrowserContextShutdown(context); | 180 BrowserContextKeyedServiceFactory::BrowserContextShutdown(context); |
| 172 } | 181 } |
| OLD | NEW |