Chromium Code Reviews| Index: chrome/browser/chromeos/login/users/chrome_user_manager_interface.h |
| diff --git a/chrome/browser/chromeos/login/users/chrome_user_manager.h b/chrome/browser/chromeos/login/users/chrome_user_manager_interface.h |
| similarity index 66% |
| copy from chrome/browser/chromeos/login/users/chrome_user_manager.h |
| copy to chrome/browser/chromeos/login/users/chrome_user_manager_interface.h |
| index 5ec3b8fda71ec34eb7cc859a3146bcdf73dc4759..212de319989b8af1932dcd1f4a5ab3440aaa6a5e 100644 |
| --- a/chrome/browser/chromeos/login/users/chrome_user_manager.h |
| +++ b/chrome/browser/chromeos/login/users/chrome_user_manager_interface.h |
| @@ -1,17 +1,13 @@ |
| -// Copyright 2014 The Chromium Authors. All rights reserved. |
| +// Copyright 2015 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| -#ifndef CHROME_BROWSER_CHROMEOS_LOGIN_USERS_CHROME_USER_MANAGER_H_ |
| -#define CHROME_BROWSER_CHROMEOS_LOGIN_USERS_CHROME_USER_MANAGER_H_ |
| +#ifndef CHROME_BROWSER_CHROMEOS_LOGIN_USERS_CHROME_USER_MANAGER_INTERFACE_H_ |
| +#define CHROME_BROWSER_CHROMEOS_LOGIN_USERS_CHROME_USER_MANAGER_INTERFACE_H_ |
| #include "base/basictypes.h" |
| #include "components/user_manager/user.h" |
| -#include "components/user_manager/user_manager_base.h" |
| - |
| -namespace base { |
| -class TaskRunner; |
| -} |
| +#include "components/user_manager/user_type.h" |
| namespace chromeos { |
| @@ -20,21 +16,24 @@ class SupervisedUserManager; |
| class UserFlow; |
| class UserImageManager; |
| -// Chrome specific interface of the UserManager. |
| -class ChromeUserManager : public user_manager::UserManagerBase { |
| +// Chrome specific add-ons interface for the UserManager. |
| +class ChromeUserManagerInterface { |
| public: |
| - ChromeUserManager(scoped_refptr<base::TaskRunner> task_runner, |
| - scoped_refptr<base::TaskRunner> blocking_task_runner); |
| - ~ChromeUserManager() override; |
| - |
| - // Returns current ChromeUserManager or NULL if instance hasn't been |
| - // yet initialized. |
| - static ChromeUserManager* Get(); |
| + ChromeUserManagerInterface() {} |
| + virtual ~ChromeUserManagerInterface() {} |
| // Helper method for sorting out of user list only users that can create |
| // supervised users. |
| static user_manager::UserList GetUsersAllowedAsSupervisedUserManagers( |
|
Nikita (slow)
2015/01/20 16:39:28
As discussed makes sense to leave in ChromeUserMan
merkulova
2015/01/21 14:10:33
Done.
|
| - const user_manager::UserList& user_list); |
| + const user_manager::UserList& user_list) { |
| + user_manager::UserList result; |
|
ygorshenin1
2015/01/20 18:33:40
Header files are usually used for declarations, no
merkulova
2015/01/21 14:10:33
Done.
|
| + for (user_manager::User* user : user_list) { |
| + if (user->GetType() == user_manager::USER_TYPE_REGULAR) { |
| + result.push_back(user); |
| + } |
| + } |
| + return result; |
| + } |
| virtual MultiProfileUserController* GetMultiProfileUserController() = 0; |
| virtual UserImageManager* GetUserImageManager(const std::string& user_id) = 0; |
| @@ -59,9 +58,15 @@ class ChromeUserManager : public user_manager::UserManagerBase { |
| // Resets user flow for user identified by |user_id|. |
| virtual void ResetUserFlow(const std::string& user_id) = 0; |
| - DISALLOW_COPY_AND_ASSIGN(ChromeUserManager); |
| + // Returns list of users allowed for supervised user creation. |
| + // Returns an empty list in cases when supervised user creation or adding new |
| + // users is restricted. |
| + virtual user_manager::UserList |
| + GetUsersAllowedForSupervisedUsersCreation() const = 0; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(ChromeUserManagerInterface); |
| }; |
| } // namespace chromeos |
| -#endif // CHROME_BROWSER_CHROMEOS_LOGIN_USERS_CHROME_USER_MANAGER_H_ |
| +#endif // CHROME_BROWSER_CHROMEOS_LOGIN_USERS_CHROME_USER_MANAGER_INTERFACE_H_ |