#include "components/download/internal/background_service/scheduler/scheduler_impl.h"
#include "components/download/internal/background_service/client_set.h"
#include "components/download/internal/background_service/config.h"
#include "components/download/internal/background_service/entry_utils.h"
#include "components/download/internal/background_service/scheduler/device_status.h"
#include "components/download/public/background_service/download_params.h"
#include "components/download/public/task/task_scheduler.h"
namespace download {
namespace {
template <typename T>
std::vector<T> ToList(const std::set<T>& set) { … }
}
SchedulerImpl::SchedulerImpl(TaskScheduler* task_scheduler,
Configuration* config,
const ClientSet* clients)
: … { … }
SchedulerImpl::SchedulerImpl(TaskScheduler* task_scheduler,
Configuration* config,
const std::vector<DownloadClient>& clients)
: … { … }
SchedulerImpl::~SchedulerImpl() = default;
void SchedulerImpl::Reschedule(const Model::EntryList& entries) { … }
Entry* SchedulerImpl::Next(const Model::EntryList& entries,
const DeviceStatus& device_status) { … }
std::map<DownloadClient, Entry*> SchedulerImpl::FindCandidates(
const Model::EntryList& entries,
const DeviceStatus& device_status) { … }
}