123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- // Copyright 2021 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 java_multiple_files = true;
- option java_package = "org.chromium.components.sync.protocol";
- option optimize_for = LITE_RUNTIME;
- package sync_pb;
- import "components/sync/protocol/encryption.proto";
- import "components/sync/protocol/app_list_specifics.proto";
- import "components/sync/protocol/app_notification_specifics.proto";
- import "components/sync/protocol/app_setting_specifics.proto";
- import "components/sync/protocol/app_specifics.proto";
- import "components/sync/protocol/arc_package_specifics.proto";
- import "components/sync/protocol/autofill_specifics.proto";
- import "components/sync/protocol/autofill_offer_specifics.proto";
- import "components/sync/protocol/autofill_wallet_usage_specifics.proto";
- import "components/sync/protocol/bookmark_specifics.proto";
- import "components/sync/protocol/contact_info_specifics.proto";
- import "components/sync/protocol/device_info_specifics.proto";
- import "components/sync/protocol/dictionary_specifics.proto";
- import "components/sync/protocol/experiments_specifics.proto";
- import "components/sync/protocol/extension_setting_specifics.proto";
- import "components/sync/protocol/extension_specifics.proto";
- import "components/sync/protocol/favicon_image_specifics.proto";
- import "components/sync/protocol/favicon_tracking_specifics.proto";
- import "components/sync/protocol/history_delete_directive_specifics.proto";
- import "components/sync/protocol/history_specifics.proto";
- import "components/sync/protocol/managed_user_setting_specifics.proto";
- import "components/sync/protocol/managed_user_shared_setting_specifics.proto";
- import "components/sync/protocol/managed_user_specifics.proto";
- import "components/sync/protocol/nigori_specifics.proto";
- import "components/sync/protocol/os_preference_specifics.proto";
- import "components/sync/protocol/os_priority_preference_specifics.proto";
- import "components/sync/protocol/password_specifics.proto";
- import "components/sync/protocol/preference_specifics.proto";
- import "components/sync/protocol/printer_specifics.proto";
- import "components/sync/protocol/printers_authorization_server_specifics.proto";
- import "components/sync/protocol/priority_preference_specifics.proto";
- import "components/sync/protocol/reading_list_specifics.proto";
- import "components/sync/protocol/saved_tab_group_specifics.proto";
- import "components/sync/protocol/search_engine_specifics.proto";
- import "components/sync/protocol/security_event_specifics.proto";
- import "components/sync/protocol/send_tab_to_self_specifics.proto";
- import "components/sync/protocol/session_specifics.proto";
- import "components/sync/protocol/sharing_message_specifics.proto";
- import "components/sync/protocol/synced_notification_app_info_specifics.proto";
- import "components/sync/protocol/synced_notification_specifics.proto";
- import "components/sync/protocol/theme_specifics.proto";
- import "components/sync/protocol/typed_url_specifics.proto";
- import "components/sync/protocol/user_consent_specifics.proto";
- import "components/sync/protocol/user_event_specifics.proto";
- import "components/sync/protocol/web_app_specifics.proto";
- import "components/sync/protocol/webauthn_credential_specifics.proto";
- import "components/sync/protocol/wifi_configuration_specifics.proto";
- import "components/sync/protocol/workspace_desk_specifics.proto";
- message EntitySpecifics {
- // If a datatype is encrypted, this field will contain the encrypted
- // original EntitySpecifics. The extension for the datatype will continue
- // to exist, but contain only the default values.
- // Note that currently passwords employ their own legacy encryption scheme and
- // do not use this field.
- optional EncryptedData encrypted = 1;
- // To add new datatype-specific fields to the protocol, extend
- // EntitySpecifics. First, pick a non-colliding tag number by
- // picking a Cr-Commit-Position of one of your past commits
- // to src.chromium.org. Then, in a different protocol buffer
- // definition, define your message type, and add an optional field
- // to the list below using the unique tag value you selected.
- //
- // optional MyDatatypeSpecifics my_datatype = 32222;
- //
- // where:
- // - 32222 is the non-colliding tag number you picked earlier.
- // - MyDatatypeSpecifics is the type (probably a message type defined
- // in your new .proto file) that you want to associate with each
- // object of the new datatype.
- // - my_datatype is the field identifier you'll use to access the
- // datatype specifics from the code.
- //
- // Server implementations are obligated to preserve the contents of
- // EntitySpecifics when it contains unrecognized fields. In this
- // way, it is possible to add new datatype fields without having
- // to update the server.
- //
- // Note: The tag selection process is based on legacy versions of the
- // protocol which used protobuf extensions. We have kept the process
- // consistent as the old values cannot change. The 5+ digit nature of the
- // tags also makes them recognizable (individually and collectively) from
- // noise in logs and debugging contexts, and creating a divergent subset of
- // tags would only make things a bit more confusing.
- oneof specifics_variant {
- AutofillSpecifics autofill = 31729;
- BookmarkSpecifics bookmark = 32904;
- PreferenceSpecifics preference = 37702;
- TypedUrlSpecifics typed_url = 40781;
- ThemeSpecifics theme = 41210;
- // TODO(crbug.com/1012648): |app_notification| isn't used by the client
- // anymore, but the server still needs it for now.
- AppNotification app_notification = 45184 [deprecated = true];
- PasswordSpecifics password = 45873;
- NigoriSpecifics nigori = 47745;
- ExtensionSpecifics extension = 48119;
- AppSpecifics app = 48364;
- SessionSpecifics session = 50119;
- AutofillProfileSpecifics autofill_profile = 63951;
- SearchEngineSpecifics search_engine = 88610;
- ExtensionSettingSpecifics extension_setting = 96159;
- AppSettingSpecifics app_setting = 103656;
- HistoryDeleteDirectiveSpecifics history_delete_directive = 150251;
- // TODO(crbug.com/1012648): |synced_notification| and
- // |synced_notification_app_info| aren't used by the client anymore, but the
- // server still needs them for now.
- SyncedNotificationSpecifics synced_notification = 153108
- [deprecated = true];
- SyncedNotificationAppInfoSpecifics synced_notification_app_info = 235816
- [deprecated = true];
- DeviceInfoSpecifics device_info = 154522;
- // TODO(crbug.com/1009361): |experiments| isn't used by the client anymore,
- // but the server still needs it for now.
- ExperimentsSpecifics experiments = 161496 [deprecated = true];
- PriorityPreferenceSpecifics priority_preference = 163425;
- DictionarySpecifics dictionary = 170540;
- FaviconTrackingSpecifics favicon_tracking = 181534 [deprecated = true];
- FaviconImageSpecifics favicon_image = 182019 [deprecated = true];
- ManagedUserSettingSpecifics managed_user_setting = 186662;
- // TODO(tschumann): Remove once server-side dependencies are resolved.
- ManagedUserSpecifics managed_user = 194582 [deprecated = true];
- // TODO(tschumann): Remove once server-side dependencies are resolved.
- ManagedUserSharedSettingSpecifics managed_user_shared_setting = 202026
- [deprecated = true];
- AppListSpecifics app_list = 229170;
- EmptySpecifics managed_user_allowlist = 306060 [deprecated = true];
- AutofillWalletSpecifics autofill_wallet = 306270;
- WalletMetadataSpecifics wallet_metadata = 330441;
- ArcPackageSpecifics arc_package = 340906;
- PrinterSpecifics printer = 410745;
- ReadingListSpecifics reading_list = 411028;
- UserEventSpecifics user_event = 455206;
- UserConsentSpecifics user_consent = 556014;
- SendTabToSelfSpecifics send_tab_to_self = 601980;
- SecurityEventSpecifics security_event = 600372;
- WebAppSpecifics web_app = 673225;
- WifiConfigurationSpecifics wifi_configuration = 662827;
- OsPreferenceSpecifics os_preference = 702141;
- OsPriorityPreferenceSpecifics os_priority_preference = 703915;
- SharingMessageSpecifics sharing_message = 728866;
- AutofillOfferSpecifics autofill_offer = 774329;
- WorkspaceDeskSpecifics workspace_desk = 874841;
- // This is not included in model_type.h because it's currently only used by
- // the server and by Play Services. (crbug.com/1223853)
- WebauthnCredentialSpecifics webauthn_credential = 895275;
- HistorySpecifics history = 963985;
- PrintersAuthorizationServerSpecifics printers_authorization_server = 974304;
- SavedTabGroupSpecifics saved_tab_group = 1004874;
- AutofillWalletUsageSpecifics autofill_wallet_usage = 1033580;
- ContactInfoSpecifics contact_info = 1034378;
- }
- reserved 218175;
- reserved "wifi_credential";
- reserved 223759;
- reserved "article";
- reserved 545005;
- reserved "mountain_share";
- }
- message EmptySpecifics {}
|