Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / sync / protocol / client_commands.proto
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 //
5 // Sync protocol for communication between sync client and server.
6
7 // Update proto_value_conversions{.h,.cc,_unittest.cc} if you change
8 // any fields in this file.
9
10 syntax = "proto2";
11
12 option optimize_for = LITE_RUNTIME;
13 option retain_unknown_fields = true;
14
15 package sync_pb;
16
17 message CustomNudgeDelay {
18   optional int32 datatype_id = 1;  // Datatype id.
19   optional int32 delay_ms = 2;     // Delay in milliseconds.
20 };
21
22 message ClientCommand {
23   // Time to wait before sending any requests to the server.
24   optional int32 set_sync_poll_interval = 1;  // in seconds
25   optional int32 set_sync_long_poll_interval = 2;  // in seconds
26
27   optional int32 max_commit_batch_size = 3;
28
29   // Number of seconds to delay between a sessions action and sending a commit
30   // message to the server. Can be overridden by |custom_nudge_delays|.
31   optional int32 sessions_commit_delay_seconds = 4;
32
33   // Number of seconds to delay before the throttled client should retry.
34   optional int32 throttle_delay_seconds = 5;
35
36   // Maximum number of local nudges to buffer per-type.
37   optional int32 client_invalidation_hint_buffer_size = 6;
38
39   // Time to wait before issuing a retry GU.
40   optional int32 gu_retry_delay_seconds = 7;
41
42   // A dictionary of custom nudge delays.
43   // Note: if a SESSIONS value is present, this will override
44   // |sessions_commit_delay_seconds|
45   // New in M39.
46   repeated CustomNudgeDelay custom_nudge_delays = 8;
47 };