Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4)

Side by Side Diff: chrome/common/translate/translate_common_metrics.h

Issue 25531002: Move language detection to a component (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Run translate unittests on iOS Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2013 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 CHROME_COMMON_TRANSLATE_TRANSLATE_COMMON_METRICS_H_
6 #define CHROME_COMMON_TRANSLATE_TRANSLATE_COMMON_METRICS_H_
7
8 #include <string>
9
10 #include "base/time/time.h"
11
12 namespace TranslateCommonMetrics {
13
14 // An indexing type to query each UMA entry name via GetMetricsName() function.
15 // Note: |kMetricsEntries| should be updated when a new entry is added here.
16 enum MetricsNameIndex {
17 UMA_LANGUAGE_DETECTION,
18 UMA_CONTENT_LANGUAGE,
19 UMA_HTML_LANG,
20 UMA_LANGUAGE_VERIFICATION,
21 UMA_TIME_TO_BE_READY,
22 UMA_TIME_TO_LOAD,
23 UMA_TIME_TO_TRANSLATE,
24 UMA_USER_ACTION_DURATION,
25 UMA_PAGE_SCHEME,
26 UMA_SIMILAR_LANGUAGE_MATCH,
27 UMA_MAX,
28 };
29
30 // A page may provide a Content-Language HTTP header or a META tag.
31 // TranslateHelper checks if a server provides a valid Content-Language.
32 enum LanguageCheckType {
33 LANGUAGE_NOT_PROVIDED,
34 LANGUAGE_VALID,
35 LANGUAGE_INVALID,
36 LANGUAGE_MAX,
37 };
38
39 // When a valid Content-Language is provided, TranslateHelper checks if a
40 // server provided Content-Language matches to a language CLD determined.
41 enum LanguageVerificationType {
42 LANGUAGE_VERIFICATION_CLD_DISABLED, // obsolete
43 LANGUAGE_VERIFICATION_CLD_ONLY,
44 LANGUAGE_VERIFICATION_UNKNOWN,
45 LANGUAGE_VERIFICATION_CLD_AGREE,
46 LANGUAGE_VERIFICATION_CLD_DISAGREE,
47 LANGUAGE_VERIFICATION_TRUST_CLD,
48 LANGUAGE_VERIFICATION_CLD_COMPLEMENT_SUB_CODE,
49 LANGUAGE_VERIFICATION_MAX,
50 };
51
52 // Scheme type of pages Chrome is going to translate.
53 enum SchemeType {
54 SCHEME_HTTP,
55 SCHEME_HTTPS,
56 SCHEME_OTHERS,
57 SCHEME_MAX,
58 };
59
60 // Called after TranslateHelper verifies a server providing Content-Language
61 // header. |provided_code| contains a Content-Language header value which a
62 // server provides. It can be empty string when a server doesn't provide it.
63 // |revised_code| is a value modified by format error corrector.
64 void ReportContentLanguage(const std::string& provided_code,
65 const std::string& revised_code);
66
67 // Called after TranslateHelper verifies a page providing html lang attribute.
68 // |provided_code| contains a html lang attribute which a page provides. It can
69 // be empty string when a page doesn't provide it. |revised_code| is a value
70 // modified by format error corrector.
71 void ReportHtmlLang(const std::string& provided_code,
72 const std::string& revised_code);
73
74 // Called when CLD verifies Content-Language header.
75 void ReportLanguageVerification(LanguageVerificationType type);
76
77 // Called when the Translate Element library is ready.
78 void ReportTimeToBeReady(double time_in_msec);
79
80 // Called when the Translate Element library is loaded.
81 void ReportTimeToLoad(double time_in_msec);
82
83 // Called when a page translation is finished.
84 void ReportTimeToTranslate(double time_in_msec);
85
86 // Called when a translation is triggered.
87 void ReportUserActionDuration(base::TimeTicks begin, base::TimeTicks end);
88
89 // Called when a translation is triggered.
90 void ReportPageScheme(const std::string& scheme);
91
92 // Called when CLD detects page language.
93 void ReportLanguageDetectionTime(base::TimeTicks begin, base::TimeTicks end);
94
95 // Called when CLD agreed on a language which is different, but in the similar
96 // language list.
97 void ReportSimilarLanguageMatch(bool match);
98
99 // Gets UMA name for an entry specified by |index|.
100 const char* GetMetricsName(MetricsNameIndex index);
101
102 } // namespace TranslateCommonMetrics
103
104 #endif // CHROME_COMMON_TRANSLATE_TRANSLATE_COMMON_METRICS_H_
OLDNEW
« no previous file with comments | « chrome/common/translate/language_detection_util_unittest.cc ('k') | chrome/common/translate/translate_common_metrics.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698