| 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 #include "components/variations/study_filtering.h" | 5 #include "components/variations/study_filtering.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <set> | 10 #include <set> |
| (...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 157 | 157 |
| 158 bool CheckStudyCountry(const Study_Filter& filter, const std::string& country) { | 158 bool CheckStudyCountry(const Study_Filter& filter, const std::string& country) { |
| 159 // Empty country and exclude_country matches all. | 159 // Empty country and exclude_country matches all. |
| 160 if (filter.country_size() == 0 && filter.exclude_country_size() == 0) | 160 if (filter.country_size() == 0 && filter.exclude_country_size() == 0) |
| 161 return true; | 161 return true; |
| 162 | 162 |
| 163 // Checks if we are supposed to filter for a specified set of countries. Note | 163 // Checks if we are supposed to filter for a specified set of countries. Note |
| 164 // that this means this overrides the exclude_country in case that ever occurs | 164 // that this means this overrides the exclude_country in case that ever occurs |
| 165 // (which it shouldn't). | 165 // (which it shouldn't). |
| 166 if (filter.country_size() > 0) | 166 if (filter.country_size() > 0) |
| 167 return ContainsValue(filter.country(), country); | 167 return base::ContainsValue(filter.country(), country); |
| 168 | 168 |
| 169 // Omit if matches any of the exclude entries. | 169 // Omit if matches any of the exclude entries. |
| 170 return !ContainsValue(filter.exclude_country(), country); | 170 return !base::ContainsValue(filter.exclude_country(), country); |
| 171 } | 171 } |
| 172 | 172 |
| 173 bool IsStudyExpired(const Study& study, const base::Time& date_time) { | 173 bool IsStudyExpired(const Study& study, const base::Time& date_time) { |
| 174 if (study.has_expiry_date()) { | 174 if (study.has_expiry_date()) { |
| 175 const base::Time expiry_date = | 175 const base::Time expiry_date = |
| 176 ConvertStudyDateToBaseTime(study.expiry_date()); | 176 ConvertStudyDateToBaseTime(study.expiry_date()); |
| 177 return date_time >= expiry_date; | 177 return date_time >= expiry_date; |
| 178 } | 178 } |
| 179 | 179 |
| 180 return false; | 180 return false; |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 281 } | 281 } |
| 282 | 282 |
| 283 if (!internal::ShouldAddStudy(study, locale, reference_date, version, | 283 if (!internal::ShouldAddStudy(study, locale, reference_date, version, |
| 284 channel, form_factor, hardware_class, | 284 channel, form_factor, hardware_class, |
| 285 country)) { | 285 country)) { |
| 286 continue; | 286 continue; |
| 287 } | 287 } |
| 288 | 288 |
| 289 if (internal::IsStudyExpired(study, reference_date)) { | 289 if (internal::IsStudyExpired(study, reference_date)) { |
| 290 expired_studies.push_back(&study); | 290 expired_studies.push_back(&study); |
| 291 } else if (!ContainsKey(created_studies, study.name())) { | 291 } else if (!base::ContainsKey(created_studies, study.name())) { |
| 292 ProcessedStudy::ValidateAndAppendStudy(&study, false, filtered_studies); | 292 ProcessedStudy::ValidateAndAppendStudy(&study, false, filtered_studies); |
| 293 created_studies.insert(study.name()); | 293 created_studies.insert(study.name()); |
| 294 } | 294 } |
| 295 } | 295 } |
| 296 | 296 |
| 297 for (size_t i = 0; i < expired_studies.size(); ++i) { | 297 for (size_t i = 0; i < expired_studies.size(); ++i) { |
| 298 if (!ContainsKey(created_studies, expired_studies[i]->name())) { | 298 if (!base::ContainsKey(created_studies, expired_studies[i]->name())) { |
| 299 ProcessedStudy::ValidateAndAppendStudy(expired_studies[i], true, | 299 ProcessedStudy::ValidateAndAppendStudy(expired_studies[i], true, |
| 300 filtered_studies); | 300 filtered_studies); |
| 301 } | 301 } |
| 302 } | 302 } |
| 303 } | 303 } |
| 304 | 304 |
| 305 } // namespace variations | 305 } // namespace variations |
| OLD | NEW |