| Index: components/subresource_filter/core/browser/subresource_filter_features.cc
|
| diff --git a/components/subresource_filter/core/browser/subresource_filter_features.cc b/components/subresource_filter/core/browser/subresource_filter_features.cc
|
| index e85213c37a684ff52f9c6edb9865e3453b45eb8d..9ac0acf69922b6ce64ce4dcb5c8f75076d3bf7fe 100644
|
| --- a/components/subresource_filter/core/browser/subresource_filter_features.cc
|
| +++ b/components/subresource_filter/core/browser/subresource_filter_features.cc
|
| @@ -6,6 +6,7 @@
|
|
|
| #include <string>
|
|
|
| +#include "base/strings/string_number_conversions.h"
|
| #include "base/strings/string_split.h"
|
| #include "base/strings/string_util.h"
|
| #include "components/variations/variations_associated_data.h"
|
| @@ -30,6 +31,9 @@ const char kActivationListSocialEngineeringAdsInterstitial[] =
|
| "social_engineering_ads_interstitial";
|
| const char kActivationListPhishingInterstitial[] = "phishing_interstitial";
|
|
|
| +const char kPerformanceMeasurementRateParameterName[] =
|
| + "performance_measurement_rate";
|
| +
|
| ActivationState GetMaximumActivationState() {
|
| std::string activation_state = variations::GetVariationParamValueByFeature(
|
| kSafeBrowsingSubresourceFilter, kActivationStateParameterName);
|
| @@ -70,4 +74,13 @@ ActivationList GetCurrentActivationList() {
|
| return activation_list_type;
|
| }
|
|
|
| +double GetPerformanceMeasurementRate() {
|
| + const std::string rate = variations::GetVariationParamValueByFeature(
|
| + kSafeBrowsingSubresourceFilter, kPerformanceMeasurementRateParameterName);
|
| + double value = 0;
|
| + if (!base::StringToDouble(rate, &value) || value < 0)
|
| + return 0;
|
| + return value < 1 ? value : 1;
|
| +}
|
| +
|
| } // namespace subresource_filter
|
|
|