OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef SYNC_UTIL_EXPERIMENTS_ | 5 #ifndef SYNC_UTIL_EXPERIMENTS_ |
6 #define SYNC_UTIL_EXPERIMENTS_ | 6 #define SYNC_UTIL_EXPERIMENTS_ |
7 | 7 |
8 #include "sync/internal_api/public/base/model_type.h" | 8 #include "sync/internal_api/public/base/model_type.h" |
9 | 9 |
10 namespace syncer { | 10 namespace syncer { |
11 | 11 |
12 const char kKeystoreEncryptionTag[] = "keystore_encryption"; | 12 const char kKeystoreEncryptionTag[] = "keystore_encryption"; |
13 const char kKeystoreEncryptionFlag[] = "sync-keystore-encryption"; | 13 const char kKeystoreEncryptionFlag[] = "sync-keystore-encryption"; |
14 const char kAutofillCullingTag[] = "autofill_culling"; | 14 const char kAutofillCullingTag[] = "autofill_culling"; |
| 15 const char kFullHistorySyncTag[] = "history_delete_directives"; |
| 16 const char kFullHistorySyncFlag[] = "full-history-sync"; |
15 | 17 |
16 // A structure to hold the enable status of experimental sync features. | 18 // A structure to hold the enable status of experimental sync features. |
17 struct Experiments { | 19 struct Experiments { |
18 Experiments() : sync_tab_favicons(false), | 20 Experiments() : sync_tab_favicons(false), |
19 keystore_encryption(false), | 21 keystore_encryption(false), |
20 autofill_culling(false) {} | 22 autofill_culling(false), |
| 23 full_history_sync(false) {} |
21 | 24 |
22 bool Matches(const Experiments& rhs) { | 25 bool Matches(const Experiments& rhs) { |
23 return (sync_tab_favicons == rhs.sync_tab_favicons && | 26 return (sync_tab_favicons == rhs.sync_tab_favicons && |
24 keystore_encryption == rhs.keystore_encryption && | 27 keystore_encryption == rhs.keystore_encryption && |
25 autofill_culling == rhs.autofill_culling); | 28 autofill_culling == rhs.autofill_culling && |
| 29 full_history_sync == rhs.full_history_sync); |
26 } | 30 } |
27 | 31 |
28 // Enable syncing of favicons within tab sync (only has an effect if tab sync | 32 // Enable syncing of favicons within tab sync (only has an effect if tab sync |
29 // is already enabled). This takes effect on the next restart. | 33 // is already enabled). This takes effect on the next restart. |
30 bool sync_tab_favicons; | 34 bool sync_tab_favicons; |
31 | 35 |
32 // Enable keystore encryption logic and the new encryption UI. | 36 // Enable keystore encryption logic and the new encryption UI. |
33 bool keystore_encryption; | 37 bool keystore_encryption; |
34 | 38 |
35 // Enable deletion of expired autofill entries (if autofill sync is enabled). | 39 // Enable deletion of expired autofill entries (if autofill sync is enabled). |
36 bool autofill_culling; | 40 bool autofill_culling; |
| 41 |
| 42 // Enable full history sync (and history delete directives) for this client. |
| 43 bool full_history_sync; |
37 }; | 44 }; |
38 | 45 |
39 } // namespace syncer | 46 } // namespace syncer |
40 | 47 |
41 #endif // SYNC_UTIL_EXPERIMENTS_ | 48 #endif // SYNC_UTIL_EXPERIMENTS_ |
OLD | NEW |