Index: components/user_manager/user_manager.cc |
diff --git a/chrome/browser/chromeos/login/users/user_manager.cc b/components/user_manager/user_manager.cc |
similarity index 36% |
rename from chrome/browser/chromeos/login/users/user_manager.cc |
rename to components/user_manager/user_manager.cc |
index 1adceeb6e36cf301111f57646698d256b83f1456..597407fa581800990a53f22a873c8beab7a07911 100644 |
--- a/chrome/browser/chromeos/login/users/user_manager.cc |
+++ b/components/user_manager/user_manager.cc |
@@ -2,18 +2,13 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#include "chrome/browser/chromeos/login/users/user_manager.h" |
+#include "components/user_manager/user_manager.h" |
-#include "base/command_line.h" |
-#include "base/prefs/pref_registry_simple.h" |
-#include "chrome/browser/browser_process_platform_part_chromeos.h" |
-#include "chrome/browser/chromeos/login/users/chrome_user_manager.h" |
-#include "chrome/browser/chromeos/profiles/profile_helper.h" |
-#include "chrome/common/chrome_switches.h" |
+#include "base/logging.h" |
-namespace chromeos { |
+namespace user_manager { |
-static UserManager* g_user_manager = NULL; |
+UserManager* UserManager::instance = NULL; |
UserManager::Observer::~Observer() { |
} |
@@ -22,11 +17,11 @@ void UserManager::Observer::LocalStateChanged(UserManager* user_manager) { |
} |
void UserManager::UserSessionStateObserver::ActiveUserChanged( |
- const user_manager::User* active_user) { |
+ const User* active_user) { |
} |
void UserManager::UserSessionStateObserver::UserAddedToSession( |
- const user_manager::User* active_user) { |
+ const User* active_user) { |
} |
void UserManager::UserSessionStateObserver::ActiveUserHashChanged( |
@@ -40,69 +35,51 @@ UserManager::UserAccountData::UserAccountData( |
const base::string16& display_name, |
const base::string16& given_name, |
const std::string& locale) |
- : display_name_(display_name), |
- given_name_(given_name), |
- locale_(locale) { |
+ : display_name_(display_name), given_name_(given_name), locale_(locale) { |
} |
-UserManager::UserAccountData::~UserAccountData() {} |
+UserManager::UserAccountData::~UserAccountData() { |
+} |
-// static |
void UserManager::Initialize() { |
- CHECK(!g_user_manager); |
- g_user_manager = new ChromeUserManager(); |
+ DCHECK(!UserManager::instance); |
+ UserManager::SetInstance(this); |
} |
// static |
bool UserManager::IsInitialized() { |
- return g_user_manager; |
+ return UserManager::instance; |
} |
void UserManager::Destroy() { |
- DCHECK(g_user_manager); |
- delete g_user_manager; |
- g_user_manager = NULL; |
+ DCHECK(UserManager::instance == this); |
+ UserManager::SetInstance(NULL); |
} |
// static |
-UserManager* UserManager::Get() { |
- CHECK(g_user_manager); |
- return g_user_manager; |
+UserManager* user_manager::UserManager::Get() { |
+ CHECK(UserManager::instance); |
+ return UserManager::instance; |
} |
UserManager::~UserManager() { |
} |
// static |
-UserManager* UserManager::SetForTesting(UserManager* user_manager) { |
- UserManager* previous_user_manager = g_user_manager; |
- if (previous_user_manager) |
- previous_user_manager->Shutdown(); |
- |
- g_user_manager = user_manager; |
- return previous_user_manager; |
-} |
- |
-ScopedUserManagerEnabler::ScopedUserManagerEnabler(UserManager* user_manager) |
- : previous_user_manager_(UserManager::SetForTesting(user_manager)) { |
+void UserManager::SetInstance(UserManager* user_manager) { |
+ UserManager::instance = user_manager; |
} |
-ScopedUserManagerEnabler::~ScopedUserManagerEnabler() { |
- UserManager::Get()->Shutdown(); |
- UserManager::Destroy(); |
- UserManager::SetForTesting(previous_user_manager_); |
-} |
- |
-ScopedTestUserManager::ScopedTestUserManager() { |
- UserManager::Initialize(); |
- |
- // ProfileHelper has to be initialized after UserManager instance is created. |
- ProfileHelper::Get()->Initialize(); |
+// static |
+UserManager* user_manager::UserManager::GetForTesting() { |
+ return UserManager::instance; |
} |
-ScopedTestUserManager::~ScopedTestUserManager() { |
- UserManager::Get()->Shutdown(); |
- UserManager::Destroy(); |
+// static |
+UserManager* UserManager::SetForTesting(UserManager* user_manager) { |
+ UserManager* previous_instance = UserManager::instance; |
+ UserManager::instance = user_manager; |
+ return previous_instance; |
} |
-} // namespace chromeos |
+} // namespace user_manager |