// Copyright 2017 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
syntax = "proto2";
option optimize_for = LITE_RUNTIME;
package protodb;
// Stores the scheduling params associated with a download request.
message SchedulingParams {
// This should stay in sync with the NetworkRequirements enum
// (components/download/public/background_service/download_params.h).
enum NetworkRequirements {
NONE = 0;
OPTIMISTIC = 1;
UNMETERED = 2;
}
// This should stay in sync with the BatteryRequirements enum
// (components/download/public/background_service/download_params.h).
enum BatteryRequirements {
BATTERY_INSENSITIVE = 0;
BATTERY_SENSITIVE = 1;
BATTERY_CHARGING = 2;
}
// This should stay in sync with the Priority enum
// (components/download/public/background_service/download_params.h).
enum Priority {
LOW = 0;
NORMAL = 1;
HIGH = 2;
UI = 3;
}
// Uses internal time representation.
optional int64 cancel_time = 2;
optional Priority priority = 3;
optional NetworkRequirements network_requirements = 4;
optional BatteryRequirements battery_requirements = 5;
}