Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / sync / protocol / experiments_specifics.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 datatype extension for experimental feature flags.
6
7 syntax = "proto2";
8
9 option optimize_for = LITE_RUNTIME;
10 option retain_unknown_fields = true;
11
12 package sync_pb;
13
14 // A flag to enable support for keystore encryption.
15 message KeystoreEncryptionFlags {
16   optional bool enabled = 1;
17 }
18
19 // Whether history delete directives are enabled.
20 message HistoryDeleteDirectives {
21   optional bool enabled = 1;
22 }
23
24 // Whether this client should cull (delete) expired autofill
25 // entries when autofill sync is enabled.
26 message AutofillCullingFlags {
27   optional bool enabled = 1;
28 }
29
30 // Whether the favicon sync datatypes are enabled, and what parameters
31 // they should operate under.
32 message FaviconSyncFlags {
33   optional bool enabled = 1;
34   optional int32 favicon_sync_limit = 2 [default = 200];
35 }
36
37 // Flags for enabling the experimental no-precommit GU feature.
38 message PreCommitUpdateAvoidanceFlags {
39   optional bool enabled = 1;
40 }
41
42 // Flags for enabling the GCM feature.
43 message GcmChannelFlags {
44   optional bool enabled = 1;
45 }
46
47 // Flags for enabling the experimental enhanced bookmarks feature.
48 message EnhancedBookmarksFlags {
49   optional bool enabled = 1;
50   optional string extension_id = 2;
51 }
52
53 // Contains one flag or set of related flags.  Each node of the experiments type
54 // will have a unique_client_tag identifying which flags it contains.  By
55 // convention, the tag name should match the sub-message name.
56 message ExperimentsSpecifics {
57   optional KeystoreEncryptionFlags keystore_encryption = 1;
58   optional HistoryDeleteDirectives history_delete_directives = 2;
59   optional AutofillCullingFlags autofill_culling = 3;
60   optional FaviconSyncFlags favicon_sync = 4;
61   optional PreCommitUpdateAvoidanceFlags pre_commit_update_avoidance = 5;
62   optional GcmChannelFlags gcm_channel = 6;
63   optional EnhancedBookmarksFlags enhanced_bookmarks = 7;
64 }