Index: chrome/browser/sync_file_system/drive_backend/metadata_database.proto |
diff --git a/chrome/browser/sync_file_system/drive_backend/metadata_database.proto b/chrome/browser/sync_file_system/drive_backend/metadata_database.proto |
index 24e001bd336683a7ebcf85af4a491cb7871c45f0..fbdfa2cdfa2c40d543a63f4bb09b90e8c09dbb38 100644 |
--- a/chrome/browser/sync_file_system/drive_backend/metadata_database.proto |
+++ b/chrome/browser/sync_file_system/drive_backend/metadata_database.proto |
@@ -18,5 +18,62 @@ enum FileKind { |
message ServiceMetadata { |
optional int64 largest_change_id = 1; |
- optional string sync_root_folder_id = 2; |
+ optional int64 sync_root_tracker_id = 2; |
+ |
+ // The sequence number of FileTrackers. Must be positive. |
+ optional int64 next_tracker_id = 3; |
+} |
+ |
+// Holds details of file/folder metadata. |
+message FileDetails { |
+ repeated string parent_folder_ids = 1; |
+ |
+ optional string title = 2; |
+ optional FileKind kind = 3; |
+ optional string md5 = 4; |
+ optional string etag = 5; |
+ |
+ // Creation time and modification time of the resource. |
+ // Serialized by Time::ToInternalValue. |
+ optional int64 creation_time = 6; |
+ optional int64 modification_time = 7; |
+ |
+ optional bool deleted = 8; |
+ optional int64 change_id = 9; |
+} |
+ |
+// Represents a server-side file. |
+message FileMetadata { |
+ // File ID of the remote file/folder which the FileMetadata represents. |
+ required string file_id = 1; |
+ |
+ optional FileDetails details = 2; |
+} |
+ |
+// Represents synced local file. |
+message FileTracker { |
+ // A unique sequence number to identify the tracker. Must be positive. |
+ required int64 tracker_id = 1; |
+ |
+ // Points the parent tracker in the tracker tree. 0 if there's no parent. |
+ required int64 parent_tracker_id = 2; |
+ |
+ required string file_id = 3; |
+ |
+ optional string app_id = 4; |
+ optional bool is_app_root = 5; |
+ |
+ optional FileDetails synced_details = 6; |
+ |
+ // True if the file is changed since the last update for this file. |
+ optional bool dirty = 7; |
+ |
+ // True if the FileTracker is active. |
+ // Remote file modification should only be applied to active trackers. |
+ // Active FileTracker must have a unique title under its parent. |
+ optional bool active = 8; |
+ |
+ // Valid only for folders. |
+ // True if the folder contents have not yet been fetched. |
+ optional bool needs_folder_listing = 9; |
} |