OLD | NEW |
| (Empty) |
1 // Copyright 2015 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 #include "chrome/browser/safe_browsing/srt_field_trial_win.h" | |
6 | |
7 #include "base/metrics/field_trial.h" | |
8 #include "base/metrics/histogram_macros.h" | |
9 #include "base/strings/string_util.h" | |
10 #include "components/variations/variations_associated_data.h" | |
11 | |
12 namespace { | |
13 | |
14 // Field trial strings. | |
15 const char kSRTPromptTrial[] = "SRTPromptFieldTrial"; | |
16 const char kSRTCanaryGroup[] = "SRTCanary"; | |
17 const char kSRTPromptOffGroup[] = "Off"; | |
18 const char kSRTPromptSeedParam[] = "Seed"; | |
19 | |
20 const char kSRTElevationTrial[] = "SRTElevation"; | |
21 const char kSRTElevationAsNeededGroup[] = "AsNeeded"; | |
22 | |
23 const char kSRTReporterTrial[] = "srt_reporter"; | |
24 const char kSRTReporterOffGroup[] = "Off"; | |
25 | |
26 // The download links of the Software Removal Tool. | |
27 const char kMainSRTDownloadURL[] = | |
28 "https://dl.google.com/dl" | |
29 "/softwareremovaltool/win/chrome_cleanup_tool.exe?chrome-prompt=1"; | |
30 const char kCanarySRTDownloadURL[] = | |
31 "https://dl.google.com/dl" | |
32 "/softwareremovaltool/win/c/chrome_cleanup_tool.exe?chrome-prompt=1"; | |
33 | |
34 } // namespace | |
35 | |
36 namespace safe_browsing { | |
37 | |
38 bool IsInSRTPromptFieldTrialGroups() { | |
39 return !base::StartsWith(base::FieldTrialList::FindFullName(kSRTPromptTrial), | |
40 kSRTPromptOffGroup, base::CompareCase::SENSITIVE); | |
41 } | |
42 | |
43 bool SRTPromptNeedsElevationIcon() { | |
44 return !base::StartsWith( | |
45 base::FieldTrialList::FindFullName(kSRTElevationTrial), | |
46 kSRTElevationAsNeededGroup, base::CompareCase::SENSITIVE); | |
47 } | |
48 | |
49 bool IsSwReporterEnabled() { | |
50 return !base::StartsWith( | |
51 base::FieldTrialList::FindFullName(kSRTReporterTrial), | |
52 kSRTReporterOffGroup, base::CompareCase::SENSITIVE); | |
53 } | |
54 | |
55 const char* GetSRTDownloadURL() { | |
56 if (base::StartsWith(base::FieldTrialList::FindFullName(kSRTPromptTrial), | |
57 kSRTCanaryGroup, base::CompareCase::SENSITIVE)) { | |
58 return kCanarySRTDownloadURL; | |
59 } | |
60 return kMainSRTDownloadURL; | |
61 } | |
62 | |
63 std::string GetIncomingSRTSeed() { | |
64 return variations::GetVariationParamValue(kSRTPromptTrial, | |
65 kSRTPromptSeedParam); | |
66 } | |
67 | |
68 void RecordSRTPromptHistogram(SRTPromptHistogramValue value) { | |
69 UMA_HISTOGRAM_ENUMERATION("SoftwareReporter.PromptUsage", value, | |
70 SRT_PROMPT_MAX); | |
71 } | |
72 | |
73 } // namespace safe_browsing | |
OLD | NEW |