| 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 // Protocol buffer definitions for serializing Drive files and directories. | 5 // Protocol buffer definitions for serializing Drive files and directories. |
| 6 | 6 |
| 7 syntax = "proto2"; | 7 syntax = "proto2"; |
| 8 | 8 |
| 9 option optimize_for = LITE_RUNTIME; | 9 option optimize_for = LITE_RUNTIME; |
| 10 | 10 |
| 11 package drive; | 11 package drive; |
| 12 | 12 |
| 13 // Represents base::PlatformFileInfo. | 13 // Represents base::PlatformFileInfo. |
| 14 message PlatformFileInfoProto { | 14 message PlatformFileInfoProto { |
| 15 optional int64 size = 1; | 15 optional int64 size = 1; |
| 16 optional bool is_directory = 2; | 16 optional bool is_directory = 2; |
| 17 optional bool is_symbolic_link = 3; | 17 optional bool is_symbolic_link = 3; |
| 18 optional int64 last_modified = 4; | 18 optional int64 last_modified = 4; |
| 19 optional int64 last_accessed = 5; | 19 optional int64 last_accessed = 5; |
| 20 optional int64 creation_time = 6; | 20 optional int64 creation_time = 6; |
| 21 } | 21 } |
| 22 | 22 |
| 23 // File specific info, which is a part of ResourceEntry. | 23 // File specific info, which is a part of ResourceEntry. |
| 24 message DriveFileSpecificInfo { | 24 message FileSpecificInfo { |
| 25 // This URL points to a thumbnail image. The thumbnail URL is not permanent | 25 // This URL points to a thumbnail image. The thumbnail URL is not permanent |
| 26 // as it's not protected by authentication. See crbug.com/127697 for how | 26 // as it's not protected by authentication. See crbug.com/127697 for how |
| 27 // stale thumbnail URLs are handled. | 27 // stale thumbnail URLs are handled. |
| 28 optional string thumbnail_url = 1; | 28 optional string thumbnail_url = 1; |
| 29 | 29 |
| 30 // This URL is used for opening hosted documents with Google Docs's web | 30 // This URL is used for opening hosted documents with Google Docs's web |
| 31 // interface. | 31 // interface. |
| 32 optional string alternate_url = 2; | 32 optional string alternate_url = 2; |
| 33 | 33 |
| 34 // Content mime type like "text/plain". | 34 // Content mime type like "text/plain". |
| 35 optional string content_mime_type = 3; | 35 optional string content_mime_type = 3; |
| 36 | 36 |
| 37 // The MD5 of contents of a regular file. | 37 // The MD5 of contents of a regular file. |
| 38 optional string file_md5 = 4; | 38 optional string file_md5 = 4; |
| 39 | 39 |
| 40 // File extension, including the dot, used for hosted documents | 40 // File extension, including the dot, used for hosted documents |
| 41 // (ex. ".gsheet" for hosted spreadsheet documents). | 41 // (ex. ".gsheet" for hosted spreadsheet documents). |
| 42 optional string document_extension = 5; | 42 optional string document_extension = 5; |
| 43 | 43 |
| 44 // True if the file is a hosted document. | 44 // True if the file is a hosted document. |
| 45 optional bool is_hosted_document = 6; | 45 optional bool is_hosted_document = 6; |
| 46 } | 46 } |
| 47 | 47 |
| 48 message DriveDirectorySpecificInfo { | 48 // Directory specific info, which is a part of ResourceEntry. |
| 49 message DirectorySpecificInfo { |
| 49 // The changestamp of this directory. This value can be larger than the | 50 // The changestamp of this directory. This value can be larger than the |
| 50 // changestamp of DriveResourceMetadata, if this directory was | 51 // changestamp of DriveResourceMetadata, if this directory was |
| 51 // "fast-fetched". See crbug.com/178348 for details about the "fast-fetch" | 52 // "fast-fetched". See crbug.com/178348 for details about the "fast-fetch" |
| 52 // feature. | 53 // feature. |
| 53 optional int64 changestamp = 1; | 54 optional int64 changestamp = 1; |
| 54 } | 55 } |
| 55 | 56 |
| 56 // Represents DriveEntry, DriveFile, and DriveDirectory without children. | 57 // Represents an entry in the resource metadata. |
| 57 message ResourceEntry { | 58 message ResourceEntry { |
| 58 optional PlatformFileInfoProto file_info = 1; | 59 optional PlatformFileInfoProto file_info = 1; |
| 59 optional string base_name = 2; | 60 optional string base_name = 2; |
| 60 optional string title = 3; | 61 optional string title = 3; |
| 61 optional string resource_id = 4; | 62 optional string resource_id = 4; |
| 62 optional string parent_resource_id = 7; | 63 optional string parent_resource_id = 7; |
| 63 // This field is used for processing the feeds from the server. Deleted | 64 // This field is used for processing the feeds from the server. Deleted |
| 64 // entries won't be stored in the metadata storage. | 65 // entries won't be stored in the metadata storage. |
| 65 optional bool deleted = 11; | 66 optional bool deleted = 11; |
| 66 // True if the entry is labeled with "shared-with-me". | 67 // True if the entry is labeled with "shared-with-me". |
| 67 optional bool shared_with_me = 14; | 68 optional bool shared_with_me = 14; |
| 68 | 69 |
| 69 // File specific information, such as MD5. | 70 // File specific information, such as MD5. |
| 70 optional DriveFileSpecificInfo file_specific_info = 9; | 71 optional FileSpecificInfo file_specific_info = 9; |
| 71 | 72 |
| 72 // Directory specific information, such as changestamp. | 73 // Directory specific information, such as changestamp. |
| 73 optional DriveDirectorySpecificInfo directory_specific_info = 13; | 74 optional DirectorySpecificInfo directory_specific_info = 13; |
| 74 } | 75 } |
| 75 | 76 |
| 76 // Container for the header part of ResourceMetadata. | 77 // Container for the header part of ResourceMetadata. |
| 77 message ResourceMetadataHeader { | 78 message ResourceMetadataHeader { |
| 78 // Monotonically increasing version number, which is changed when | 79 // Monotonically increasing version number, which is changed when |
| 79 // incompatible change is made to the DB format. kDBVersion in | 80 // incompatible change is made to the DB format. kDBVersion in |
| 80 // drive_resource_metadata_storage.h defines the current version. | 81 // drive_resource_metadata_storage.h defines the current version. |
| 81 optional int32 version = 1; | 82 optional int32 version = 1; |
| 82 optional int64 largest_changestamp = 2; | 83 optional int64 largest_changestamp = 2; |
| 83 } | 84 } |
| (...skipping 16 matching lines...) Expand all Loading... |
| 100 | 101 |
| 101 // True if the file is a mounted archive file. | 102 // True if the file is a mounted archive file. |
| 102 optional bool is_mounted = 5; | 103 optional bool is_mounted = 5; |
| 103 | 104 |
| 104 // True if the file is in the persistent directory. | 105 // True if the file is in the persistent directory. |
| 105 optional bool is_persistent = 6; | 106 optional bool is_persistent = 6; |
| 106 | 107 |
| 107 // When adding a new state, be sure to update TestFileCacheState and test | 108 // When adding a new state, be sure to update TestFileCacheState and test |
| 108 // functions defined in drive_test_util.cc. | 109 // functions defined in drive_test_util.cc. |
| 109 } | 110 } |
| OLD | NEW |