| Index: chrome/browser/chromeos/login/enrollment/enrollment_screen.cc
|
| diff --git a/chrome/browser/chromeos/login/enrollment/enrollment_screen.cc b/chrome/browser/chromeos/login/enrollment/enrollment_screen.cc
|
| index f68556c931ce96ae56f35803a2cd425ea3a54895..be632d5a85fdb933c4726803fa82ced98d4473a2 100644
|
| --- a/chrome/browser/chromeos/login/enrollment/enrollment_screen.cc
|
| +++ b/chrome/browser/chromeos/login/enrollment/enrollment_screen.cc
|
| @@ -21,22 +21,11 @@
|
| #include "chromeos/dbus/dbus_method_call_status.h"
|
| #include "chromeos/dbus/dbus_thread_manager.h"
|
| #include "chromeos/dbus/session_manager_client.h"
|
| -#include "components/policy/core/common/cloud/enterprise_metrics.h"
|
| #include "google_apis/gaia/gaia_auth_util.h"
|
| #include "google_apis/gaia/google_service_auth_error.h"
|
|
|
| namespace chromeos {
|
|
|
| -namespace {
|
| -
|
| -void UMA(int sample) {
|
| - UMA_HISTOGRAM_ENUMERATION(policy::kMetricEnrollment,
|
| - sample,
|
| - policy::kMetricEnrollmentSize);
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| EnrollmentScreen::EnrollmentScreen(
|
| ScreenObserver* observer,
|
| EnrollmentScreenActor* actor)
|
| @@ -74,6 +63,7 @@ void EnrollmentScreen::Show() {
|
| actor_->ShowEnrollmentSpinnerScreen();
|
| actor_->FetchOAuthToken();
|
| } else {
|
| + UMA(policy::kMetricEnrollmentTriggered);
|
| actor_->ResetAuth(base::Bind(&EnrollmentScreen::ShowSigninScreen,
|
| weak_ptr_factory_.GetWeakPtr()));
|
| }
|
| @@ -91,15 +81,18 @@ std::string EnrollmentScreen::GetName() const {
|
| void EnrollmentScreen::OnLoginDone(const std::string& user) {
|
| user_ = gaia::CanonicalizeEmail(user);
|
|
|
| - UMA(is_auto_enrollment() ? policy::kMetricEnrollmentAutoRetried
|
| - : policy::kMetricEnrollmentStarted);
|
| + if (is_auto_enrollment())
|
| + UMA(policy::kMetricEnrollmentAutoRetried);
|
| + else if (enrollment_failed_once_)
|
| + UMA(policy::kMetricEnrollmentRetried);
|
| + else
|
| + UMA(policy::kMetricEnrollmentStarted);
|
|
|
| actor_->ShowEnrollmentSpinnerScreen();
|
| actor_->FetchOAuthToken();
|
| }
|
|
|
| -void EnrollmentScreen::OnAuthError(
|
| - const GoogleServiceAuthError& error) {
|
| +void EnrollmentScreen::OnAuthError(const GoogleServiceAuthError& error) {
|
| enrollment_failed_once_ = true;
|
| actor_->ShowAuthError(error);
|
|
|
| @@ -145,7 +138,8 @@ void EnrollmentScreen::OnRetry() {
|
| }
|
|
|
| void EnrollmentScreen::OnCancel() {
|
| - if (enrollment_mode_ == EnrollmentScreenActor::ENROLLMENT_MODE_FORCED) {
|
| + if (enrollment_mode_ == EnrollmentScreenActor::ENROLLMENT_MODE_FORCED ||
|
| + enrollment_mode_ == EnrollmentScreenActor::ENROLLMENT_MODE_RECOVERY) {
|
| actor_->ResetAuth(
|
| base::Bind(&ScreenObserver::OnExit,
|
| base::Unretained(get_screen_observer()),
|
| @@ -308,7 +302,17 @@ void EnrollmentScreen::ReportEnrollmentStatus(
|
| UMAFailure(policy::kMetricEnrollmentOtherFailed);
|
| }
|
|
|
| -void EnrollmentScreen::UMAFailure(int sample) {
|
| +void EnrollmentScreen::UMA(policy::MetricEnrollment sample) {
|
| + if (enrollment_mode_ == EnrollmentScreenActor::ENROLLMENT_MODE_RECOVERY) {
|
| + UMA_HISTOGRAM_ENUMERATION(policy::kMetricEnrollmentRecovery, sample,
|
| + policy::kMetricEnrollmentSize);
|
| + } else {
|
| + UMA_HISTOGRAM_ENUMERATION(policy::kMetricEnrollment, sample,
|
| + policy::kMetricEnrollmentSize);
|
| + }
|
| +}
|
| +
|
| +void EnrollmentScreen::UMAFailure(policy::MetricEnrollment sample) {
|
| if (is_auto_enrollment())
|
| sample = policy::kMetricEnrollmentAutoFailed;
|
| UMA(sample);
|
|
|