OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Make sure stdint.h includes SIZE_MAX. (See C89, p259, footnote 221.) | 5 // Make sure stdint.h includes SIZE_MAX. (See C89, p259, footnote 221.) |
6 #ifndef __STDC_LIMIT_MACROS | 6 #ifndef __STDC_LIMIT_MACROS |
7 #define __STDC_LIMIT_MACROS 1 | 7 #define __STDC_LIMIT_MACROS 1 |
8 #endif | 8 #endif |
9 | 9 |
10 #include "components/domain_reliability/config.h" | 10 #include "components/domain_reliability/config.h" |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 } | 70 } |
71 | 71 |
72 for (const auto& url : collectors) { | 72 for (const auto& url : collectors) { |
73 if (!url->is_valid()) | 73 if (!url->is_valid()) |
74 return false; | 74 return false; |
75 } | 75 } |
76 | 76 |
77 return true; | 77 return true; |
78 } | 78 } |
79 | 79 |
80 bool DomainReliabilityConfig::DecideIfShouldReportRequest(bool success) const { | 80 bool DomainReliabilityConfig::DecideIfShouldReportRequest( |
| 81 bool success, |
| 82 double* sample_rate_out) const { |
81 double sample_rate = success ? success_sample_rate : failure_sample_rate; | 83 double sample_rate = success ? success_sample_rate : failure_sample_rate; |
| 84 *sample_rate_out = sample_rate; |
82 return base::RandDouble() < sample_rate; | 85 return base::RandDouble() < sample_rate; |
83 } | 86 } |
84 | 87 |
85 // static | 88 // static |
86 void DomainReliabilityConfig::RegisterJSONConverter( | 89 void DomainReliabilityConfig::RegisterJSONConverter( |
87 base::JSONValueConverter<DomainReliabilityConfig>* converter) { | 90 base::JSONValueConverter<DomainReliabilityConfig>* converter) { |
88 converter->RegisterCustomValueField<GURL>( | 91 converter->RegisterCustomValueField<GURL>( |
89 "origin", &DomainReliabilityConfig::origin, &ConvertOrigin); | 92 "origin", &DomainReliabilityConfig::origin, &ConvertOrigin); |
90 converter->RegisterBoolField("include_subdomains", | 93 converter->RegisterBoolField("include_subdomains", |
91 &DomainReliabilityConfig::include_subdomains); | 94 &DomainReliabilityConfig::include_subdomains); |
92 converter->RegisterRepeatedCustomValue( | 95 converter->RegisterRepeatedCustomValue( |
93 "collectors", &DomainReliabilityConfig::collectors, &ConvertURL); | 96 "collectors", &DomainReliabilityConfig::collectors, &ConvertURL); |
94 converter->RegisterRepeatedString("path_prefixes", | 97 converter->RegisterRepeatedString("path_prefixes", |
95 &DomainReliabilityConfig::path_prefixes); | 98 &DomainReliabilityConfig::path_prefixes); |
96 converter->RegisterDoubleField("success_sample_rate", | 99 converter->RegisterDoubleField("success_sample_rate", |
97 &DomainReliabilityConfig::success_sample_rate); | 100 &DomainReliabilityConfig::success_sample_rate); |
98 converter->RegisterDoubleField("failure_sample_rate", | 101 converter->RegisterDoubleField("failure_sample_rate", |
99 &DomainReliabilityConfig::failure_sample_rate); | 102 &DomainReliabilityConfig::failure_sample_rate); |
100 } | 103 } |
101 | 104 |
102 } // namespace domain_reliability | 105 } // namespace domain_reliability |
OLD | NEW |