| 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 |