summaryrefslogtreecommitdiff
path: root/chrome/browser/signin/easy_unlock_service_signin_chromeos.cc
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2014-10-29 14:53:36 +0000
committerBen Murdoch <benm@google.com>2014-10-29 14:53:36 +0000
commitab8f6f0bd665d3c1ff476eb06c58c42630e462d4 (patch)
tree15b4406dfa6b28391b19bcf760f1aeb04d13898a /chrome/browser/signin/easy_unlock_service_signin_chromeos.cc
parent93b3e633be4a0f65c62fca1805fd44021e04beaa (diff)
downloadchromium_org-ab8f6f0bd665d3c1ff476eb06c58c42630e462d4.tar.gz
Merge from Chromium at DEPS revision 39.0.2171.44
This commit was generated by merge_to_master.py. Change-Id: I12ecf158017b8be5f9a1d33f4152e5a3c812cb7f
Diffstat (limited to 'chrome/browser/signin/easy_unlock_service_signin_chromeos.cc')
-rw-r--r--chrome/browser/signin/easy_unlock_service_signin_chromeos.cc68
1 files changed, 68 insertions, 0 deletions
diff --git a/chrome/browser/signin/easy_unlock_service_signin_chromeos.cc b/chrome/browser/signin/easy_unlock_service_signin_chromeos.cc
index 225bdf2d0a..8dd9ed26cc 100644
--- a/chrome/browser/signin/easy_unlock_service_signin_chromeos.cc
+++ b/chrome/browser/signin/easy_unlock_service_signin_chromeos.cc
@@ -12,6 +12,7 @@
#include "base/thread_task_runner_handle.h"
#include "base/time/time.h"
#include "chrome/browser/chromeos/login/easy_unlock/easy_unlock_key_manager.h"
+#include "chrome/browser/chromeos/login/easy_unlock/easy_unlock_metrics.h"
#include "chrome/browser/chromeos/login/session/user_session_manager.h"
#include "chromeos/login/auth/user_context.h"
@@ -170,6 +171,73 @@ std::string EasyUnlockServiceSignin::GetWrappedSecret() const {
return data->devices[device_index].wrapped_secret;
}
+void EasyUnlockServiceSignin::RecordEasySignInOutcome(
+ const std::string& user_id,
+ bool success) const {
+ DCHECK_EQ(GetUserEmail(), user_id);
+
+ chromeos::RecordEasyUnlockLoginEvent(success
+ ? chromeos::EASY_SIGN_IN_SUCCESS
+ : chromeos::EASY_SIGN_IN_FAILURE);
+ VLOG(1) << "Easy sign-in " << (success ? "success" : "failure");
+}
+
+void EasyUnlockServiceSignin::RecordPasswordLoginEvent(
+ const std::string& user_id) const {
+ DCHECK_EQ(GetUserEmail(), user_id);
+
+ chromeos::EasyUnlockLoginEvent event =
+ chromeos::EASY_SIGN_IN_LOGIN_EVENT_COUNT;
+ if (!GetRemoteDevices() ||
+ GetHardlockState() == EasyUnlockScreenlockStateHandler::NO_PAIRING) {
+ event = chromeos::PASSWORD_SIGN_IN_NO_PAIRING;
+ } else if (GetHardlockState() ==
+ EasyUnlockScreenlockStateHandler::PAIRING_CHANGED) {
+ event = chromeos::PASSWORD_SIGN_IN_PAIRING_CHANGED;
+ } else if (GetHardlockState() ==
+ EasyUnlockScreenlockStateHandler::USER_HARDLOCK) {
+ event = chromeos::PASSWORD_SIGN_IN_USER_HARDLOCK;
+ } else if (!screenlock_state_handler()) {
+ event = chromeos::PASSWORD_SIGN_IN_SERVICE_NOT_ACTIVE;
+ } else {
+ switch (screenlock_state_handler()->state()) {
+ case EasyUnlockScreenlockStateHandler::STATE_INACTIVE:
+ event = chromeos::PASSWORD_SIGN_IN_SERVICE_NOT_ACTIVE;
+ break;
+ case EasyUnlockScreenlockStateHandler::STATE_NO_BLUETOOTH:
+ event = chromeos::PASSWORD_SIGN_IN_NO_BLUETOOTH;
+ break;
+ case EasyUnlockScreenlockStateHandler::STATE_BLUETOOTH_CONNECTING:
+ event = chromeos::PASSWORD_SIGN_IN_BLUETOOTH_CONNECTING;
+ break;
+ case EasyUnlockScreenlockStateHandler::STATE_NO_PHONE:
+ event = chromeos::PASSWORD_SIGN_IN_NO_PHONE;
+ break;
+ case EasyUnlockScreenlockStateHandler::STATE_PHONE_NOT_AUTHENTICATED:
+ event = chromeos::PASSWORD_SIGN_IN_PHONE_NOT_AUTHENTICATED;
+ break;
+ case EasyUnlockScreenlockStateHandler::STATE_PHONE_LOCKED:
+ event = chromeos::PASSWORD_SIGN_IN_PHONE_LOCKED;
+ break;
+ case EasyUnlockScreenlockStateHandler::STATE_PHONE_UNLOCKABLE:
+ event = chromeos::PASSWORD_SIGN_IN_PHONE_NOT_LOCKABLE;
+ break;
+ case EasyUnlockScreenlockStateHandler::STATE_PHONE_NOT_NEARBY:
+ event = chromeos::PASSWORD_SIGN_IN_PHONE_NOT_NEARBY;
+ break;
+ case EasyUnlockScreenlockStateHandler::STATE_PHONE_UNSUPPORTED:
+ event = chromeos::PASSWORD_SIGN_IN_PHONE_UNSUPPORTED;
+ break;
+ case EasyUnlockScreenlockStateHandler::STATE_AUTHENTICATED:
+ event = chromeos::PASSWORD_SIGN_IN_WITH_AUTHENTICATED_PHONE;
+ break;
+ }
+ }
+
+ chromeos::RecordEasyUnlockLoginEvent(event);
+ VLOG(1) << "EasySignIn password login event, event=" << event;
+}
+
void EasyUnlockServiceSignin::InitializeInternal() {
if (chromeos::LoginState::Get()->IsUserLoggedIn())
return;