| Index: chrome/browser/managed_mode/managed_user_registration_utility.cc
|
| diff --git a/chrome/browser/managed_mode/managed_user_registration_utility.cc b/chrome/browser/managed_mode/managed_user_registration_utility.cc
|
| index 65eb659b14b0e27287cc047ee369a92bc339bf23..cf26a62783d6d0f2f96bbaf3240c48009222fe71 100644
|
| --- a/chrome/browser/managed_mode/managed_user_registration_utility.cc
|
| +++ b/chrome/browser/managed_mode/managed_user_registration_utility.cc
|
| @@ -11,7 +11,10 @@
|
| #include "base/prefs/pref_service.h"
|
| #include "base/rand_util.h"
|
| #include "base/strings/utf_string_conversions.h"
|
| +#include "chrome/browser/managed_mode/managed_user_constants.h"
|
| #include "chrome/browser/managed_mode/managed_user_refresh_token_fetcher.h"
|
| +#include "chrome/browser/managed_mode/managed_user_shared_settings_service.h"
|
| +#include "chrome/browser/managed_mode/managed_user_shared_settings_service_factory.h"
|
| #include "chrome/browser/managed_mode/managed_user_sync_service.h"
|
| #include "chrome/browser/managed_mode/managed_user_sync_service_factory.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| @@ -37,7 +40,8 @@ class ManagedUserRegistrationUtilityImpl
|
| ManagedUserRegistrationUtilityImpl(
|
| PrefService* prefs,
|
| scoped_ptr<ManagedUserRefreshTokenFetcher> token_fetcher,
|
| - ManagedUserSyncService* service);
|
| + ManagedUserSyncService* service,
|
| + ManagedUserSharedSettingsService* shared_settings_service);
|
|
|
| virtual ~ManagedUserRegistrationUtilityImpl();
|
|
|
| @@ -91,6 +95,9 @@ class ManagedUserRegistrationUtilityImpl
|
| // A |BrowserContextKeyedService| owned by the custodian profile.
|
| ManagedUserSyncService* managed_user_sync_service_;
|
|
|
| + // A |BrowserContextKeyedService| owned by the custodian profile.
|
| + ManagedUserSharedSettingsService* managed_user_shared_settings_service_;
|
| +
|
| std::string pending_managed_user_id_;
|
| std::string pending_managed_user_token_;
|
| bool pending_managed_user_acknowledged_;
|
| @@ -141,10 +148,13 @@ ManagedUserRegistrationUtility::Create(Profile* profile) {
|
| profile->GetRequestContext());
|
| ManagedUserSyncService* managed_user_sync_service =
|
| ManagedUserSyncServiceFactory::GetForProfile(profile);
|
| + ManagedUserSharedSettingsService* managed_user_shared_settings_service =
|
| + ManagedUserSharedSettingsServiceFactory::GetForBrowserContext(profile);
|
| return make_scoped_ptr(ManagedUserRegistrationUtility::CreateImpl(
|
| profile->GetPrefs(),
|
| token_fetcher.Pass(),
|
| - managed_user_sync_service));
|
| + managed_user_sync_service,
|
| + managed_user_shared_settings_service));
|
| }
|
|
|
| // static
|
| @@ -166,10 +176,12 @@ void ManagedUserRegistrationUtility::SetUtilityForTests(
|
| ManagedUserRegistrationUtility* ManagedUserRegistrationUtility::CreateImpl(
|
| PrefService* prefs,
|
| scoped_ptr<ManagedUserRefreshTokenFetcher> token_fetcher,
|
| - ManagedUserSyncService* service) {
|
| + ManagedUserSyncService* service,
|
| + ManagedUserSharedSettingsService* shared_settings_service) {
|
| return new ManagedUserRegistrationUtilityImpl(prefs,
|
| token_fetcher.Pass(),
|
| - service);
|
| + service,
|
| + shared_settings_service);
|
| }
|
|
|
| namespace {
|
| @@ -177,10 +189,12 @@ namespace {
|
| ManagedUserRegistrationUtilityImpl::ManagedUserRegistrationUtilityImpl(
|
| PrefService* prefs,
|
| scoped_ptr<ManagedUserRefreshTokenFetcher> token_fetcher,
|
| - ManagedUserSyncService* service)
|
| + ManagedUserSyncService* service,
|
| + ManagedUserSharedSettingsService* shared_settings_service)
|
| : prefs_(prefs),
|
| token_fetcher_(token_fetcher.Pass()),
|
| managed_user_sync_service_(service),
|
| + managed_user_shared_settings_service_(shared_settings_service),
|
| pending_managed_user_acknowledged_(false),
|
| is_existing_managed_user_(false),
|
| avatar_updated_(false),
|
| @@ -218,6 +232,14 @@ void ManagedUserRegistrationUtilityImpl::Register(
|
| // User already exists, don't wait for acknowledgment.
|
| OnManagedUserAcknowledged(managed_user_id);
|
| }
|
| +#if defined(OS_CHROMEOS)
|
| + const char* kAvatarKey = managed_users::kChromeOSAvatarIndex;
|
| +#else
|
| + const char* kAvatarKey = managed_users::kChromeAvatarIndex;
|
| +#endif
|
| + managed_user_shared_settings_service_->SetValue(
|
| + pending_managed_user_id_, kAvatarKey,
|
| + base::FundamentalValue(info.avatar_index));
|
|
|
| browser_sync::DeviceInfo::GetClientName(
|
| base::Bind(&ManagedUserRegistrationUtilityImpl::FetchToken,
|
|
|