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

Side by Side Diff: chrome/browser/chromeos/login/users/fake_chrome_user_manager.h

Issue 1165323004: We should use UserID object to identify users instead of username. Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 6 months 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_USERS_FAKE_CHROME_USER_MANAGER_H_ 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_USERS_FAKE_CHROME_USER_MANAGER_H_
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_USERS_FAKE_CHROME_USER_MANAGER_H_ 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_USERS_FAKE_CHROME_USER_MANAGER_H_
7 7
8 #include <map> 8 #include <map>
9 #include <string> 9 #include <string>
10 10
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "chrome/browser/chromeos/login/user_flow.h" 12 #include "chrome/browser/chromeos/login/user_flow.h"
13 #include "chrome/browser/chromeos/login/users/user_manager_interface.h" 13 #include "chrome/browser/chromeos/login/users/user_manager_interface.h"
14 #include "components/user_manager/fake_user_manager.h" 14 #include "components/user_manager/fake_user_manager.h"
15 #include "components/user_manager/user.h" 15 #include "components/user_manager/user.h"
16 #include "components/user_manager/user_id.h"
16 #include "components/user_manager/user_image/user_image.h" 17 #include "components/user_manager/user_image/user_image.h"
17 #include "components/user_manager/user_manager_base.h" 18 #include "components/user_manager/user_manager_base.h"
18 19
19 namespace chromeos { 20 namespace chromeos {
20 21
21 class FakeSupervisedUserManager; 22 class FakeSupervisedUserManager;
22 23
23 // Fake chrome user manager with a barebones implementation. Users can be added 24 // Fake chrome user manager with a barebones implementation. Users can be added
24 // and set as logged in, and those users can be returned. 25 // and set as logged in, and those users can be returned.
25 class FakeChromeUserManager : public user_manager::FakeUserManager, 26 class FakeChromeUserManager : public user_manager::FakeUserManager,
26 public UserManagerInterface { 27 public UserManagerInterface {
27 public: 28 public:
28 FakeChromeUserManager(); 29 FakeChromeUserManager();
29 ~FakeChromeUserManager() override; 30 ~FakeChromeUserManager() override;
30 31
31 // Create and add a kiosk app user. 32 // Create and add a kiosk app user.
32 void AddKioskAppUser(const std::string& kiosk_app_username); 33 void AddKioskAppUser(const user_manager::UserID& kiosk_app);
33 34
34 // Create and add a public account user. 35 // Create and add a public account user.
35 const user_manager::User* AddPublicAccountUser(const std::string& email); 36 const user_manager::User* AddPublicAccountUser(const user_manager::UserID& use r_id);
36 37
37 // Calculates the user name hash and calls UserLoggedIn to login a user. 38 // Calculates the user name hash and calls UserLoggedIn to login a user.
38 void LoginUser(const std::string& email); 39 void LoginUser(const user_manager::UserID& user_id);
39 40
40 // UserManager overrides. 41 // UserManager overrides.
41 user_manager::UserList GetUsersAllowedForMultiProfile() const override; 42 user_manager::UserList GetUsersAllowedForMultiProfile() const override;
42 43
43 // user_manager::FakeUserManager override. 44 // user_manager::FakeUserManager override.
44 const user_manager::User* AddUser(const std::string& email) override; 45 const user_manager::User* AddUser(const user_manager::UserID& user_id) overrid e;
45 46
46 // UserManagerInterface implementation. 47 // UserManagerInterface implementation.
47 BootstrapManager* GetBootstrapManager() override; 48 BootstrapManager* GetBootstrapManager() override;
48 MultiProfileUserController* GetMultiProfileUserController() override; 49 MultiProfileUserController* GetMultiProfileUserController() override;
49 UserImageManager* GetUserImageManager(const std::string& user_id) override; 50 UserImageManager* GetUserImageManager(const user_manager::UserID& user_id) ove rride;
50 SupervisedUserManager* GetSupervisedUserManager() override; 51 SupervisedUserManager* GetSupervisedUserManager() override;
51 void SetUserFlow(const std::string& email, UserFlow* flow) override; 52 void SetUserFlow(const user_manager::UserID& user_id, UserFlow* flow) override ;
52 UserFlow* GetCurrentUserFlow() const override; 53 UserFlow* GetCurrentUserFlow() const override;
53 UserFlow* GetUserFlow(const std::string& email) const override; 54 UserFlow* GetUserFlow(const user_manager::UserID& user_id) const override;
54 void ResetUserFlow(const std::string& email) override; 55 void ResetUserFlow(const user_manager::UserID& user_id) override;
55 user_manager::UserList GetUsersAllowedForSupervisedUsersCreation() 56 user_manager::UserList GetUsersAllowedForSupervisedUsersCreation()
56 const override; 57 const override;
57 void SwitchActiveUser(const std::string& email) override; 58 void SwitchActiveUser(const user_manager::UserID& user_id) override;
58 const std::string& GetOwnerEmail() const override; 59 const user_manager::UserID& GetOwnerID() const override;
59 void SessionStarted() override; 60 void SessionStarted() override;
60 void RemoveUser(const std::string& email, 61 void RemoveUser(const user_manager::UserID& user_id,
61 user_manager::RemoveUserDelegate* delegate) override; 62 user_manager::RemoveUserDelegate* delegate) override;
62 bool FindKnownUserPrefs(const user_manager::UserID& user_id, 63 bool FindKnownUserPrefs(const user_manager::UserID& user_id,
63 const base::DictionaryValue** out_value) override; 64 const base::DictionaryValue** out_value) override;
64 void UpdateKnownUserPrefs(const user_manager::UserID& user_id, 65 void UpdateKnownUserPrefs(const user_manager::UserID& user_id,
65 const base::DictionaryValue& values, 66 const base::DictionaryValue& values,
66 bool clear) override; 67 bool clear) override;
67 68
68 void set_owner_email(const std::string& owner_email) { 69 void set_owner_id(const user_manager::UserID& owner_id) {
69 owner_email_ = owner_email; 70 owner_id_ = owner_id;
70 } 71 }
71 72
72 void set_bootstrap_manager(BootstrapManager* bootstrap_manager) { 73 void set_bootstrap_manager(BootstrapManager* bootstrap_manager) {
73 bootstrap_manager_ = bootstrap_manager; 74 bootstrap_manager_ = bootstrap_manager;
74 } 75 }
75 76
76 void set_multi_profile_user_controller( 77 void set_multi_profile_user_controller(
77 MultiProfileUserController* controller) { 78 MultiProfileUserController* controller) {
78 multi_profile_user_controller_ = controller; 79 multi_profile_user_controller_ = controller;
79 } 80 }
80 81
81 private: 82 private:
82 // Lazily creates default user flow. 83 // Lazily creates default user flow.
83 UserFlow* GetDefaultUserFlow() const; 84 UserFlow* GetDefaultUserFlow() const;
84 85
85 scoped_ptr<FakeSupervisedUserManager> supervised_user_manager_; 86 scoped_ptr<FakeSupervisedUserManager> supervised_user_manager_;
86 std::string owner_email_; 87 user_manager::UserID owner_id_;
87 88
88 BootstrapManager* bootstrap_manager_; 89 BootstrapManager* bootstrap_manager_;
89 MultiProfileUserController* multi_profile_user_controller_; 90 MultiProfileUserController* multi_profile_user_controller_;
90 91
91 typedef std::map<std::string, UserFlow*> FlowMap; 92 typedef std::map<user_manager::UserID, UserFlow*> FlowMap;
92 93
93 // Lazy-initialized default flow. 94 // Lazy-initialized default flow.
94 mutable scoped_ptr<UserFlow> default_flow_; 95 mutable scoped_ptr<UserFlow> default_flow_;
95 96
96 // Specific flows by user e-mail. 97 // Specific flows by user e-mail.
97 // Keys should be canonicalized before access. 98 // Keys should be canonicalized before access.
98 FlowMap specific_flows_; 99 FlowMap specific_flows_;
99 100
100 DISALLOW_COPY_AND_ASSIGN(FakeChromeUserManager); 101 DISALLOW_COPY_AND_ASSIGN(FakeChromeUserManager);
101 }; 102 };
102 103
103 } // namespace chromeos 104 } // namespace chromeos
104 105
105 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_USERS_FAKE_CHROME_USER_MANAGER_H_ 106 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_USERS_FAKE_CHROME_USER_MANAGER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698