| Index: chrome/browser/metrics/variations/variations_request_scheduler.cc
|
| diff --git a/chrome/browser/metrics/variations/variations_request_scheduler.cc b/chrome/browser/metrics/variations/variations_request_scheduler.cc
|
| index 8f62c350f3963fcdc7d23dbf3f7a67c40b15fe50..932bf6664620bf4eeffd8455dcd35541afb20da2 100644
|
| --- a/chrome/browser/metrics/variations/variations_request_scheduler.cc
|
| +++ b/chrome/browser/metrics/variations/variations_request_scheduler.cc
|
| @@ -4,8 +4,29 @@
|
|
|
| #include "chrome/browser/metrics/variations/variations_request_scheduler.h"
|
|
|
| +#include "base/strings/string_number_conversions.h"
|
| +#include "components/variations/variations_associated_data.h"
|
| +
|
| namespace chrome_variations {
|
|
|
| +namespace {
|
| +
|
| +// Returns the time interval between variations seed fetches.
|
| +base::TimeDelta GetFetchPeriod() {
|
| + // The fetch interval can be overridden by a variation param.
|
| + std::string period_min_str =
|
| + variations::GetVariationParamValue("VarationsServiceControl",
|
| + "fetch_period_min");
|
| + size_t period_min;
|
| + if (base::StringToSizeT(period_min_str, &period_min))
|
| + return base::TimeDelta::FromMinutes(period_min);
|
| +
|
| + // The default fetch interval is every 5 hours.
|
| + return base::TimeDelta::FromHours(5);
|
| +}
|
| +
|
| +} // namespace
|
| +
|
| VariationsRequestScheduler::VariationsRequestScheduler(
|
| const base::Closure& task) : task_(task) {
|
| }
|
| @@ -14,10 +35,8 @@ VariationsRequestScheduler::~VariationsRequestScheduler() {
|
| }
|
|
|
| void VariationsRequestScheduler::Start() {
|
| - // Time between regular seed fetches, in hours.
|
| - const int kFetchPeriodHours = 5;
|
| task_.Run();
|
| - timer_.Start(FROM_HERE, base::TimeDelta::FromHours(kFetchPeriodHours), task_);
|
| + timer_.Start(FROM_HERE, GetFetchPeriod(), task_);
|
| }
|
|
|
| void VariationsRequestScheduler::Reset() {
|
|
|