Index: chrome/browser/chromeos/login/users/chrome_user_manager_impl.h |
diff --git a/chrome/browser/chromeos/login/users/chrome_user_manager.h b/chrome/browser/chromeos/login/users/chrome_user_manager_impl.h |
similarity index 90% |
copy from chrome/browser/chromeos/login/users/chrome_user_manager.h |
copy to chrome/browser/chromeos/login/users/chrome_user_manager_impl.h |
index 84dd7d96288d89eb6848e1069e017f605b8df22a..9ba3c20df6c0c3dd244abc242ff9c31c1b1c4b6a 100644 |
--- a/chrome/browser/chromeos/login/users/chrome_user_manager.h |
+++ b/chrome/browser/chromeos/login/users/chrome_user_manager_impl.h |
@@ -2,8 +2,8 @@ |
// 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_IMPL_H_ |
+#define CHROME_BROWSER_CHROMEOS_LOGIN_USERS_CHROME_USER_MANAGER_IMPL_H_ |
#include <map> |
#include <string> |
@@ -17,9 +17,10 @@ |
#include "base/observer_list.h" |
#include "base/synchronization/lock.h" |
#include "base/time/time.h" |
+#include "chrome/browser/chromeos/login/user_flow.h" |
#include "chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.h" |
+#include "chrome/browser/chromeos/login/users/chrome_user_manager.h" |
#include "chrome/browser/chromeos/login/users/multi_profile_user_controller_delegate.h" |
-#include "chrome/browser/chromeos/login/users/user_manager_base.h" |
#include "chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.h" |
#include "chrome/browser/chromeos/policy/cloud_external_data_policy_observer.h" |
#include "chrome/browser/chromeos/policy/device_local_account_policy_service.h" |
@@ -29,6 +30,7 @@ |
#include "content/public/browser/notification_observer.h" |
#include "content/public/browser/notification_registrar.h" |
+class PrefRegistrySimple; |
class PrefService; |
class ProfileSyncService; |
@@ -36,29 +38,44 @@ namespace policy { |
struct DeviceLocalAccount; |
} |
+namespace user_manager { |
+class RemoveUserDelegate; |
+} |
+ |
namespace chromeos { |
class MultiProfileUserController; |
-class RemoveUserDelegate; |
class SupervisedUserManagerImpl; |
class SessionLengthLimiter; |
// Chrome specific implementation of the UserManager. |
-class ChromeUserManager |
- : public UserManagerBase, |
+class ChromeUserManagerImpl |
+ : public ChromeUserManager, |
public content::NotificationObserver, |
public policy::CloudExternalDataPolicyObserver::Delegate, |
public policy::DeviceLocalAccountPolicyService::Observer, |
public MultiProfileUserControllerDelegate { |
public: |
- virtual ~ChromeUserManager(); |
+ virtual ~ChromeUserManagerImpl(); |
- // UserManager implementation: |
- virtual void Shutdown() OVERRIDE; |
+ // Creates ChromeUserManagerImpl instance. |
+ static scoped_ptr<ChromeUserManager> CreateChromeUserManager(); |
+ |
+ // Registers user manager preferences. |
+ static void RegisterPrefs(PrefRegistrySimple* registry); |
+ |
+ // ChromeUserManager implementation: |
virtual MultiProfileUserController* GetMultiProfileUserController() OVERRIDE; |
virtual UserImageManager* GetUserImageManager( |
const std::string& user_id) OVERRIDE; |
virtual SupervisedUserManager* GetSupervisedUserManager() OVERRIDE; |
+ virtual UserFlow* GetCurrentUserFlow() const OVERRIDE; |
+ virtual UserFlow* GetUserFlow(const std::string& user_id) const OVERRIDE; |
+ virtual void SetUserFlow(const std::string& user_id, UserFlow* flow) OVERRIDE; |
+ virtual void ResetUserFlow(const std::string& user_id) OVERRIDE; |
+ |
+ // UserManager implementation: |
+ virtual void Shutdown() OVERRIDE; |
virtual user_manager::UserList GetUsersAdmittedForMultiProfile() |
const OVERRIDE; |
virtual user_manager::UserList GetUnlockUsers() const OVERRIDE; |
@@ -71,11 +88,6 @@ class ChromeUserManager |
virtual bool CanCurrentUserLock() const OVERRIDE; |
virtual bool IsUserNonCryptohomeDataEphemeral( |
const std::string& user_id) const OVERRIDE; |
- |
- virtual UserFlow* GetCurrentUserFlow() const OVERRIDE; |
- virtual UserFlow* GetUserFlow(const std::string& user_id) const OVERRIDE; |
- virtual void SetUserFlow(const std::string& user_id, UserFlow* flow) OVERRIDE; |
- virtual void ResetUserFlow(const std::string& user_id) OVERRIDE; |
virtual bool AreSupervisedUsersAllowed() const OVERRIDE; |
// content::NotificationObserver implementation. |
@@ -103,6 +115,9 @@ class ChromeUserManager |
virtual bool AreEphemeralUsersEnabled() const OVERRIDE; |
virtual const std::string& GetApplicationLocale() const OVERRIDE; |
virtual PrefService* GetLocalState() const OVERRIDE; |
+ virtual void HandleUserOAuthTokenStatusChange( |
+ const std::string& user_id, |
+ user_manager::User::OAuthTokenStatus status) const OVERRIDE; |
virtual bool IsEnterpriseManaged() const OVERRIDE; |
virtual void LoadPublicAccounts(std::set<std::string>* users_set) OVERRIDE; |
virtual void NotifyOnLogin() OVERRIDE; |
@@ -112,8 +127,9 @@ class ChromeUserManager |
virtual void PerformPostUserListLoadingActions() OVERRIDE; |
virtual void PerformPostUserLoggedInActions(bool browser_restart) OVERRIDE; |
virtual void RemoveNonCryptohomeData(const std::string& user_id) OVERRIDE; |
- virtual void RemoveUserInternal(const std::string& user_email, |
- RemoveUserDelegate* delegate) OVERRIDE; |
+ virtual void RemoveUserInternal( |
+ const std::string& user_email, |
+ user_manager::RemoveUserDelegate* delegate) OVERRIDE; |
virtual bool IsDemoApp(const std::string& user_id) const OVERRIDE; |
virtual bool IsKioskApp(const std::string& user_id) const OVERRIDE; |
virtual bool IsPublicAccountMarkedForRemoval( |
@@ -130,7 +146,6 @@ class ChromeUserManager |
private: |
friend class SupervisedUserManagerImpl; |
- friend class UserManager; |
friend class UserManagerTest; |
friend class WallpaperManager; |
friend class WallpaperManagerTest; |
@@ -138,7 +153,7 @@ class ChromeUserManager |
typedef base::hash_map<std::string, linked_ptr<UserImageManager> > |
UserImageManagerMap; |
- ChromeUserManager(); |
+ ChromeUserManagerImpl(); |
// Retrieves trusted device policies and removes users from the persistent |
// list if ephemeral users are enabled. Schedules a callback to itself if |
@@ -220,11 +235,11 @@ class ChromeUserManager |
scoped_ptr<policy::CloudExternalDataPolicyObserver> |
wallpaper_policy_observer_; |
- base::WeakPtrFactory<ChromeUserManager> weak_factory_; |
+ base::WeakPtrFactory<ChromeUserManagerImpl> weak_factory_; |
- DISALLOW_COPY_AND_ASSIGN(ChromeUserManager); |
+ DISALLOW_COPY_AND_ASSIGN(ChromeUserManagerImpl); |
}; |
} // namespace chromeos |
-#endif // CHROME_BROWSER_CHROMEOS_LOGIN_USERS_CHROME_USER_MANAGER_H_ |
+#endif // CHROME_BROWSER_CHROMEOS_LOGIN_USERS_CHROME_USER_MANAGER_IMPL_H_ |