910e62b5创建于 1月15日历史提交
// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "components/component_updater/timer_update_scheduler.h"

#include "base/functional/bind.h"
#include "base/functional/callback_helpers.h"

namespace component_updater {

TimerUpdateScheduler::TimerUpdateScheduler() = default;
TimerUpdateScheduler::~TimerUpdateScheduler() = default;

void TimerUpdateScheduler::Schedule(base::TimeDelta initial_delay,
                                    base::TimeDelta delay,
                                    const UserTask& user_task,
                                    const OnStopTaskCallback& on_stop) {
  timer_.Start(
      initial_delay, delay,
      base::BindRepeating(
          [](const UserTask& user_task) { user_task.Run(base::DoNothing()); },
          user_task));
}

void TimerUpdateScheduler::Stop() {
  timer_.Stop();
}

}  // namespace component_updater