9eb78ad4a2f8bf22b36d64c61d1eaaa25db056be
[platform/framework/web/crosswalk.git] / src / components / signin / core / browser / signin_metrics.h
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef COMPONENTS_SIGNIN_CORE_BROWSER_SIGNIN_METRICS_H_
6 #define COMPONENTS_SIGNIN_CORE_BROWSER_SIGNIN_METRICS_H_
7
8 namespace signin_metrics {
9
10 // Enum for the ways in which primary account detection is done.
11 enum DifferentPrimaryAccounts {
12   // token and cookie had same primary accounts.
13   ACCOUNTS_SAME = 0,
14   // Deprecated. Indicates different primary accounts.
15   UNUSED_ACCOUNTS_DIFFERENT,
16   // No GAIA cookie present, so the primaries are considered different.
17   NO_COOKIE_PRESENT,
18   // There was at least one cookie and one token, and the primaries differed.
19   COOKIE_AND_TOKEN_PRIMARIES_DIFFERENT,
20   NUM_DIFFERENT_PRIMARY_ACCOUNT_METRICS,
21 };
22
23 // Log to UMA histograms and UserCounts stats about a single execution of the
24 // AccountReconciler.
25 // |total_number_accounts| - How many accounts are in the browser for this
26 //                           profile.
27 // |count_added_to_cookie_jar| - How many accounts were in the browser but not
28 //                               the cookie jar.
29 // |count_added_to_token| - How may accounts were in the cookie jar but not in
30 //                          the browser.
31 // |primary_accounts_same| - False if the primary account for the cookie jar
32 //                           and the token service were different; else true.
33 // |is_first_reconcile| - True if these stats are from the first execution of
34 //                        the AccountReconcilor.
35 // |pre_count_gaia_cookies| - How many GAIA cookies were present before
36 //                            the AccountReconcilor began modifying the state.
37 void LogSigninAccountReconciliation(int total_number_accounts,
38                                     int count_added_to_cookie_jar,
39                                     int count_added_to_token,
40                                     bool primary_accounts_same,
41                                     bool is_first_reconcile,
42                                     int pre_count_gaia_cookies);
43
44 // Track a successful signin.
45 void LogSigninAddAccount();
46
47 }  // namespace signin_metrics
48
49 #endif  // COMPONENTS_SIGNIN_CORE_BROWSER_SIGNIN_METRICS_H_