1 // Copyright 2014 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.
5 // Sync protocol for attachments.
7 // Update proto_{value,enum}_conversions{.h,.cc,_unittest.cc} if you change any
8 // fields in this file.
12 option optimize_for = LITE_RUNTIME;
13 option retain_unknown_fields = true;
17 // Identifies an attachment.
18 message AttachmentIdProto {
19 // Uniquely identifies the attachment. Two attachments with the same unique_id
20 // are considered equivalent.
21 optional string unique_id = 1;
22 // Size of the attachment data in bytes.
23 optional uint64 size_bytes = 2;
24 // Crc32c of the attachment data.
25 optional uint32 crc32c = 3;
28 // Metadata for a single attachment.
29 message AttachmentMetadataRecord {
30 optional AttachmentIdProto id = 1;
31 // Indicates we know this attachment exists on the server.
32 optional bool is_on_server = 2;
35 // A collection of attachment metadata. This proto is part of EntryKernel's "on
36 // disk" representation. Private to sync.
37 message AttachmentMetadata {
38 // One record per attachment.
39 repeated AttachmentMetadataRecord record = 1;