Roll src/third_party/WebKit 9301d6f:4619053 (svn 201058:201059)
[chromium-blink-merge.git] / sync / protocol / attachments.proto
blob986e29fced4f6e87a4b9c2ea23970781a7a20dc3
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.
4 //
5 // Sync protocol for attachments.
7 // Update proto_{value,enum}_conversions{.h,.cc,_unittest.cc} if you change any
8 // fields in this file.
10 syntax = "proto2";
12 option optimize_for = LITE_RUNTIME;
13 option retain_unknown_fields = true;
15 package sync_pb;
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;