| Index: chrome/browser/chromeos/login/enterprise_enrollment_screen.cc
|
| diff --git a/chrome/browser/chromeos/login/enterprise_enrollment_screen.cc b/chrome/browser/chromeos/login/enterprise_enrollment_screen.cc
|
| index 4bee026dc31dbb5a3632b66012bbc6f6625e611e..48bc4729e0e516ce341768f0899b6b765fe8214a 100644
|
| --- a/chrome/browser/chromeos/login/enterprise_enrollment_screen.cc
|
| +++ b/chrome/browser/chromeos/login/enterprise_enrollment_screen.cc
|
| @@ -11,7 +11,6 @@
|
| #include "chrome/browser/chromeos/cros/cryptohome_library.h"
|
| #include "chrome/browser/chromeos/login/enterprise_enrollment_screen_actor.h"
|
| #include "chrome/browser/chromeos/login/screen_observer.h"
|
| -#include "chrome/browser/policy/browser_policy_connector.h"
|
| #include "chrome/browser/policy/enterprise_metrics.h"
|
| #include "chrome/common/net/gaia/gaia_constants.h"
|
| #include "chrome/common/net/gaia/google_service_auth_error.h"
|
| @@ -85,6 +84,14 @@ void EnterpriseEnrollmentScreen::OnAuthSubmitted(
|
| }
|
| }
|
|
|
| +void EnterpriseEnrollmentScreen::OnOAuthTokenAvailable(
|
| + const std::string& user,
|
| + const std::string& token) {
|
| + user_ = user;
|
| + RegisterForDevicePolicy(token,
|
| + policy::BrowserPolicyConnector::TOKEN_TYPE_OAUTH);
|
| +}
|
| +
|
| void EnterpriseEnrollmentScreen::OnAuthCancelled() {
|
| UMA_HISTOGRAM_ENUMERATION(policy::kMetricEnrollment,
|
| policy::kMetricEnrollmentCancelled,
|
| @@ -150,25 +157,8 @@ void EnterpriseEnrollmentScreen::OnIssueAuthTokenSuccess(
|
|
|
| scoped_ptr<GaiaAuthFetcher> auth_fetcher(auth_fetcher_.release());
|
|
|
| - policy::BrowserPolicyConnector* connector =
|
| - g_browser_process->browser_policy_connector();
|
| - if (!connector->device_cloud_policy_subsystem()) {
|
| - NOTREACHED() << "Cloud policy subsystem not initialized.";
|
| - UMA_HISTOGRAM_ENUMERATION(policy::kMetricEnrollment,
|
| - policy::kMetricEnrollmentOtherFailed,
|
| - policy::kMetricEnrollmentSize);
|
| - if (is_showing_)
|
| - actor_->ShowFatalEnrollmentError();
|
| - return;
|
| - }
|
| -
|
| - connector->ScheduleServiceInitialization(0);
|
| - registrar_.reset(new policy::CloudPolicySubsystem::ObserverRegistrar(
|
| - connector->device_cloud_policy_subsystem(), this));
|
| -
|
| - // Push the credentials to the policy infrastructure. It'll start enrollment
|
| - // and notify us of progress through CloudPolicySubsystem::Observer.
|
| - connector->SetDeviceCredentials(user_, auth_token);
|
| + RegisterForDevicePolicy(auth_token,
|
| + policy::BrowserPolicyConnector::TOKEN_TYPE_GAIA);
|
| }
|
|
|
| void EnterpriseEnrollmentScreen::OnIssueAuthTokenFailure(
|
| @@ -323,4 +313,28 @@ void EnterpriseEnrollmentScreen::WriteInstallAttributesData() {
|
| NOTREACHED();
|
| }
|
|
|
| +void EnterpriseEnrollmentScreen::RegisterForDevicePolicy(
|
| + const std::string& token,
|
| + policy::BrowserPolicyConnector::TokenType token_type) {
|
| + policy::BrowserPolicyConnector* connector =
|
| + g_browser_process->browser_policy_connector();
|
| + if (!connector->device_cloud_policy_subsystem()) {
|
| + NOTREACHED() << "Cloud policy subsystem not initialized.";
|
| + UMA_HISTOGRAM_ENUMERATION(policy::kMetricEnrollment,
|
| + policy::kMetricEnrollmentOtherFailed,
|
| + policy::kMetricEnrollmentSize);
|
| + if (is_showing_)
|
| + actor_->ShowFatalEnrollmentError();
|
| + return;
|
| + }
|
| +
|
| + connector->ScheduleServiceInitialization(0);
|
| + registrar_.reset(new policy::CloudPolicySubsystem::ObserverRegistrar(
|
| + connector->device_cloud_policy_subsystem(), this));
|
| +
|
| + // Push the credentials to the policy infrastructure. It'll start enrollment
|
| + // and notify us of progress through CloudPolicySubsystem::Observer.
|
| + connector->SetDeviceCredentials(user_, token, token_type);
|
| +}
|
| +
|
| } // namespace chromeos
|
|
|