// Copyright 2015 The Chromium Authors. All rights reserved.
// 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 content;

enum SyncNetworkState {
  NETWORK_STATE_ANY = 0;
  NETWORK_STATE_AVOID_CELLULAR = 1;
  NETWORK_STATE_ONLINE = 2;
}

message BackgroundSyncRegistrationProto {
  required int64 id = 1;
  required string tag = 2;
  // required SyncPeriodicity periodicity = 3;
  // required int64 min_period = 4;
  required SyncNetworkState network_state = 5;
  // required SyncPowerState power_state = 6;
  required int32 num_attempts = 7;
  required int64 delay_until = 8;
}

message BackgroundSyncRegistrationsProto {
  repeated BackgroundSyncRegistrationProto registration = 1;
  required int64 next_registration_id = 2;
  required string origin = 3;
}