Upstream the iOS web_shell and supporting code
[chromium-blink-merge.git] / sync / protocol / experiments_specifics.proto
blob4fc0ada6b1ea15a834e12c43b410492a8b1e51aa
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.
7 syntax = "proto2";
9 option optimize_for = LITE_RUNTIME;
10 option retain_unknown_fields = true;
12 package sync_pb;
14 // A flag to enable support for keystore encryption.
15 message KeystoreEncryptionFlags {
16   optional bool enabled = 1;
19 // Whether history delete directives are enabled.
20 message HistoryDeleteDirectives {
21   optional bool enabled = 1;
24 // Whether this client should cull (delete) expired autofill
25 // entries when autofill sync is enabled.
26 message AutofillCullingFlags {
27   optional bool enabled = 1;
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];
37 // Flags for enabling the experimental no-precommit GU feature.
38 message PreCommitUpdateAvoidanceFlags {
39   optional bool enabled = 1;
42 // Flags for enabling the GCM feature.
43 message GcmChannelFlags {
44   optional bool enabled = 1;
47 // Flags for enabling the experimental enhanced bookmarks feature.
48 message EnhancedBookmarksFlags {
49   optional bool enabled = 1;
50   optional string extension_id = 2;
53 // Flags for enabling GCM channel for invalidations.
54 message GcmInvalidationsFlags {
55   optional bool enabled = 1;
58 // Flags for enabling wallet data syncing.
59 message WalletSyncFlags {
60   optional bool enabled = 1;
63 // Contains one flag or set of related flags.  Each node of the experiments type
64 // will have a unique_client_tag identifying which flags it contains.  By
65 // convention, the tag name should match the sub-message name.
66 message ExperimentsSpecifics {
67   optional KeystoreEncryptionFlags keystore_encryption = 1;
68   optional HistoryDeleteDirectives history_delete_directives = 2;
69   optional AutofillCullingFlags autofill_culling = 3;
70   optional FaviconSyncFlags favicon_sync = 4;
71   optional PreCommitUpdateAvoidanceFlags pre_commit_update_avoidance = 5;
72   optional GcmChannelFlags gcm_channel = 6;
73   // No longer used as of M43.
74   optional EnhancedBookmarksFlags obsolete_enhanced_bookmarks = 7;
75   optional GcmInvalidationsFlags gcm_invalidations = 8;
76   optional WalletSyncFlags wallet_sync = 9;