1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- // Copyright 2018 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/model_type_state.proto";
- import "components/sync/protocol/entity_metadata.proto";
- // Corresponds to a single bookmark id/metadata pair.
- message BookmarkMetadata {
- // Bookmark local id.
- optional int64 id = 1;
- // Bookmarks sync metadata.
- optional EntityMetadata metadata = 2;
- }
- // Sync proto to carry the sync metadata for the bookmarks model. It is used for
- // persisting and loading sync metadata from disk.
- message BookmarkModelMetadata {
- // Bookmark global metadata.
- optional ModelTypeState model_type_state = 1;
- // A set of all bookmarks metadata.
- repeated BookmarkMetadata bookmarks_metadata = 2;
- reserved 3;
- reserved 4;
- reserved 5;
- // Indicates whether the reupload of bookmarks has been triggered such that
- // they include fields like |type|, |unique_position| and |parent_guid|, which
- // means that their sequence number has been increased (independently of
- // whether the commit has succeeded or even started).
- // TODO(crbug.com/1232951): remove this code when most of bookmarks are
- // reuploaded.
- optional bool bookmarks_hierarchy_fields_reuploaded = 6;
- // Number of remote updates that were ignored because the parent folder could
- // not be determined since sync (bookmark sync) started (since initial sync,
- // including initial sync itself). Note that this excludes updates
- // representing changes (moves) to existing/tracked bookmarks (i.e. the parent
- // folder used to be known, but the new one specified in the update isn't).
- //
- // Only a minority of users should have a non-zero value, due to a) corrupt
- // data, reasons unknown; or b) permanent folders that were unsupported at the
- // time the update was received (either for the permanent folder itself or for
- // descendants). The absence of this field should be interpreted as 'unknown',
- // which roughly means the counter wasn't supported by the browser -M77 or
- // below- at the time sync was enabled (it also means, it will remain
- // 'unknown' until initial sync is exercised, e.g. sync disabled and
- // reenabled).
- optional int64 num_ignored_updates_due_to_missing_parent = 7;
- // See field above. Among such ignored updates, this field tracks which was
- // the highest server version. This may be useful -in the future- to get a
- // sense of "time" (or, since versions are opaque to the client, at least a
- // notion of ordering with respect to other updates). The absence of this
- // field should be interpreted as 'unknown' and does not distinguish the
- // case between a) no updates ignored; and b) field wasn't supported at the
- // time the last update was ignored. To distinguish between these two, the
- // field above can be used.
- optional int64 max_version_among_ignored_updates_due_to_missing_parent = 8;
- }
|