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

Side by Side Diff: chrome/browser/chromeos/login/users/supervised_user_manager_impl.cc

Issue 1425093004: Revert of This CL replaces user_manager::UserID with AccountId. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@468875--Chrome-OS-handles-deletion-of-Gmail-account-poorly--Create-AccountID-structure-part2--user_names
Patch Set: 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/chromeos/login/users/supervised_user_manager_impl.h" 5 #include "chrome/browser/chromeos/login/users/supervised_user_manager_impl.h"
6 6
7 #include "base/files/file_path.h" 7 #include "base/files/file_path.h"
8 #include "base/files/file_util.h" 8 #include "base/files/file_util.h"
9 #include "base/prefs/pref_registry_simple.h" 9 #include "base/prefs/pref_registry_simple.h"
10 #include "base/prefs/pref_service.h" 10 #include "base/prefs/pref_service.h"
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
142 142
143 std::string SupervisedUserManagerImpl::GenerateUserId() { 143 std::string SupervisedUserManagerImpl::GenerateUserId() {
144 int counter = g_browser_process->local_state()-> 144 int counter = g_browser_process->local_state()->
145 GetInteger(kSupervisedUsersNextId); 145 GetInteger(kSupervisedUsersNextId);
146 std::string id; 146 std::string id;
147 bool user_exists; 147 bool user_exists;
148 do { 148 do {
149 id = base::StringPrintf( 149 id = base::StringPrintf(
150 "%d@%s", counter, chromeos::login::kSupervisedUserDomain); 150 "%d@%s", counter, chromeos::login::kSupervisedUserDomain);
151 counter++; 151 counter++;
152 user_exists = (nullptr != owner_->FindUser(AccountId::FromUserEmail(id))); 152 user_exists = (NULL != owner_->FindUser(id));
153 DCHECK(!user_exists); 153 DCHECK(!user_exists);
154 if (user_exists) { 154 if (user_exists) {
155 LOG(ERROR) << "Supervised user with id " << id << " already exists."; 155 LOG(ERROR) << "Supervised user with id " << id << " already exists.";
156 } 156 }
157 } while (user_exists); 157 } while (user_exists);
158 158
159 g_browser_process->local_state()-> 159 g_browser_process->local_state()->
160 SetInteger(kSupervisedUsersNextId, counter); 160 SetInteger(kSupervisedUsersNextId, counter);
161 161
162 g_browser_process->local_state()->CommitPendingWrite(); 162 g_browser_process->local_state()->CommitPendingWrite();
(...skipping 16 matching lines...) Expand all
179 179
180 const user_manager::User* SupervisedUserManagerImpl::CreateUserRecord( 180 const user_manager::User* SupervisedUserManagerImpl::CreateUserRecord(
181 const std::string& manager_id, 181 const std::string& manager_id,
182 const std::string& local_user_id, 182 const std::string& local_user_id,
183 const std::string& sync_user_id, 183 const std::string& sync_user_id,
184 const base::string16& display_name) { 184 const base::string16& display_name) {
185 const user_manager::User* user = FindByDisplayName(display_name); 185 const user_manager::User* user = FindByDisplayName(display_name);
186 DCHECK(!user); 186 DCHECK(!user);
187 if (user) 187 if (user)
188 return user; 188 return user;
189 const user_manager::User* manager = 189 const user_manager::User* manager = owner_->FindUser(manager_id);
190 owner_->FindUser(AccountId::FromUserEmail(manager_id));
191 CHECK(manager); 190 CHECK(manager);
192 191
193 PrefService* local_state = g_browser_process->local_state(); 192 PrefService* local_state = g_browser_process->local_state();
194 193
195 user_manager::User* new_user = user_manager::User::CreateSupervisedUser( 194 user_manager::User* new_user =
196 AccountId::FromUserEmail(local_user_id)); 195 user_manager::User::CreateSupervisedUser(local_user_id);
197 196
198 owner_->AddUserRecord(new_user); 197 owner_->AddUserRecord(new_user);
199 198
200 ListPrefUpdate prefs_new_users_update(local_state, 199 ListPrefUpdate prefs_new_users_update(local_state,
201 kSupervisedUsersFirstRun); 200 kSupervisedUsersFirstRun);
202 DictionaryPrefUpdate sync_id_update(local_state, kSupervisedUserSyncId); 201 DictionaryPrefUpdate sync_id_update(local_state, kSupervisedUserSyncId);
203 DictionaryPrefUpdate manager_update(local_state, kSupervisedUserManagers); 202 DictionaryPrefUpdate manager_update(local_state, kSupervisedUserManagers);
204 DictionaryPrefUpdate manager_name_update(local_state, 203 DictionaryPrefUpdate manager_name_update(local_state,
205 kSupervisedUserManagerNames); 204 kSupervisedUserManagerNames);
206 DictionaryPrefUpdate manager_email_update( 205 DictionaryPrefUpdate manager_email_update(
207 local_state, 206 local_state,
208 kSupervisedUserManagerDisplayEmails); 207 kSupervisedUserManagerDisplayEmails);
209 208
210 prefs_new_users_update->Insert(0, new base::StringValue(local_user_id)); 209 prefs_new_users_update->Insert(0, new base::StringValue(local_user_id));
211 210
212 sync_id_update->SetWithoutPathExpansion(local_user_id, 211 sync_id_update->SetWithoutPathExpansion(local_user_id,
213 new base::StringValue(sync_user_id)); 212 new base::StringValue(sync_user_id));
214 manager_update->SetWithoutPathExpansion(local_user_id, 213 manager_update->SetWithoutPathExpansion(local_user_id,
215 new base::StringValue(manager->email())); 214 new base::StringValue(manager->email()));
216 manager_name_update->SetWithoutPathExpansion(local_user_id, 215 manager_name_update->SetWithoutPathExpansion(local_user_id,
217 new base::StringValue(manager->GetDisplayName())); 216 new base::StringValue(manager->GetDisplayName()));
218 manager_email_update->SetWithoutPathExpansion(local_user_id, 217 manager_email_update->SetWithoutPathExpansion(local_user_id,
219 new base::StringValue(manager->display_email())); 218 new base::StringValue(manager->display_email()));
220 219
221 owner_->SaveUserDisplayName(AccountId::FromUserEmail(local_user_id), 220 owner_->SaveUserDisplayName(local_user_id, display_name);
222 display_name);
223 221
224 g_browser_process->local_state()->CommitPendingWrite(); 222 g_browser_process->local_state()->CommitPendingWrite();
225 return new_user; 223 return new_user;
226 } 224 }
227 225
228 std::string SupervisedUserManagerImpl::GetUserSyncId(const std::string& user_id) 226 std::string SupervisedUserManagerImpl::GetUserSyncId(const std::string& user_id)
229 const { 227 const {
230 std::string result; 228 std::string result;
231 GetUserStringValue(user_id, kSupervisedUserSyncId, &result); 229 GetUserStringValue(user_id, kSupervisedUserSyncId, &result);
232 return result; 230 return result;
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after
437 435
438 if (gaia::ExtractDomainName(user_id) != 436 if (gaia::ExtractDomainName(user_id) !=
439 chromeos::login::kSupervisedUserDomain) { 437 chromeos::login::kSupervisedUserDomain) {
440 LOG(WARNING) << "Clean up transaction for non-supervised user found :" 438 LOG(WARNING) << "Clean up transaction for non-supervised user found :"
441 << user_id << ", will not remove data"; 439 << user_id << ", will not remove data";
442 prefs->ClearPref(kSupervisedUserCreationTransactionDisplayName); 440 prefs->ClearPref(kSupervisedUserCreationTransactionDisplayName);
443 prefs->ClearPref(kSupervisedUserCreationTransactionUserId); 441 prefs->ClearPref(kSupervisedUserCreationTransactionUserId);
444 prefs->CommitPendingWrite(); 442 prefs->CommitPendingWrite();
445 return; 443 return;
446 } 444 }
447 owner_->RemoveNonOwnerUserInternal(AccountId::FromUserEmail(user_id), 445 owner_->RemoveNonOwnerUserInternal(user_id, NULL);
448 nullptr);
449 446
450 prefs->ClearPref(kSupervisedUserCreationTransactionDisplayName); 447 prefs->ClearPref(kSupervisedUserCreationTransactionDisplayName);
451 prefs->ClearPref(kSupervisedUserCreationTransactionUserId); 448 prefs->ClearPref(kSupervisedUserCreationTransactionUserId);
452 prefs->CommitPendingWrite(); 449 prefs->CommitPendingWrite();
453 } 450 }
454 451
455 void SupervisedUserManagerImpl::RemoveNonCryptohomeData( 452 void SupervisedUserManagerImpl::RemoveNonCryptohomeData(
456 const std::string& user_id) { 453 const std::string& user_id) {
457 PrefService* prefs = g_browser_process->local_state(); 454 PrefService* prefs = g_browser_process->local_state();
458 ListPrefUpdate prefs_new_users_update(prefs, kSupervisedUsersFirstRun); 455 ListPrefUpdate prefs_new_users_update(prefs, kSupervisedUsersFirstRun);
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
523 } 520 }
524 521
525 void SupervisedUserManagerImpl::ConfigureSyncWithToken( 522 void SupervisedUserManagerImpl::ConfigureSyncWithToken(
526 Profile* profile, 523 Profile* profile,
527 const std::string& token) { 524 const std::string& token) {
528 if (!token.empty()) 525 if (!token.empty())
529 SupervisedUserServiceFactory::GetForProfile(profile)->InitSync(token); 526 SupervisedUserServiceFactory::GetForProfile(profile)->InitSync(token);
530 } 527 }
531 528
532 } // namespace chromeos 529 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698