Rename GData* to Drive* in gdata.proto
* gdata.proto has been renamed to drive.proto.
* The following classes are renamed:
GDataFileSpecificInfo -> DriveFileSpecificInfo
GDataEntryProto -> DriveEntryProto
GDataDirectoryProto -> DriveDirectoryProto
GDataCacheEntry -> DriveCacheEntry
More GData* to Drive* conversion come in later CLs.
BUG=137151
TEST=pass all trybots
[email protected], [email protected]
(estade for chrome/browser/ui/webui, ben for gypi changes)
Review URL: https://chromiumcodereview.appspot.com/10836354
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152539 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/chromeos/gdata/drive.proto b/chrome/browser/chromeos/gdata/drive.proto
new file mode 100644
index 0000000..b74bd87
--- /dev/null
+++ b/chrome/browser/chromeos/gdata/drive.proto
@@ -0,0 +1,116 @@
+// Copyright (c) 2012 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.
+//
+// Protocol buffer definitions for serializing Drive files and directories.
+
+syntax = "proto2";
+
+option optimize_for = LITE_RUNTIME;
+
+package gdata;
+
+// Represents base::PlatformFileInfo.
+message PlatformFileInfoProto {
+ optional int64 size = 1;
+ optional bool is_directory = 2;
+ optional bool is_symbolic_link = 3;
+ optional int64 last_modified = 4;
+ optional int64 last_accessed = 5;
+ optional int64 creation_time = 6;
+}
+
+// File specific info, which is a part of DriveEntryProto.
+message DriveFileSpecificInfo {
+ // This URL points to a thumbnail image. The thumbnail URL is not permanent
+ // as it's not protected by authentication. See crbug.com/127697 for how
+ // stale thumbnail URLs are handled.
+ optional string thumbnail_url = 1;
+
+ // This URL is used for opening hosted documents with Google Docs's web
+ // interface.
+ optional string alternate_url = 2;
+
+ // Content mime type like "text/plain".
+ optional string content_mime_type = 3;
+
+ // The MD5 of contents of a regular file.
+ optional string file_md5 = 4;
+
+ // File extension, including the dot, used for hosted documents
+ // (ex. ".gsheet" for hosted spreadsheet documents).
+ optional string document_extension = 5;
+
+ // True if the file is a hosted document.
+ optional bool is_hosted_document = 6;
+}
+
+// Represents DriveEntry, DriveFile, and DriveDirectory without children.
+message DriveEntryProto {
+ optional PlatformFileInfoProto file_info = 1;
+ optional string base_name = 2;
+ optional string title = 3;
+ optional string resource_id = 4;
+ optional string edit_url = 5;
+ optional string content_url = 6;
+ optional string parent_resource_id = 7;
+ // For a file, this is "resumable-edit-media" URL, used to update an
+ // existing file. For a directory, this is "resumable-create-media" URL,
+ // used to upload a new file to that directory. See
+ // https://developers.google.com/google-apps/documents-list/
+ optional string upload_url = 8;
+
+ // File specific information, such as MD5.
+ optional DriveFileSpecificInfo file_specific_info = 9;
+}
+
+// Represents DriveDirectory. This message type is defined to keep children
+// separate from DriveEntryProto. This design allows us to get the metadata
+// of a directory efficiently as DriveEntryProto, without carrying the
+// metadata of children.
+//
+// TODO(satorux): With the new metadata storage system, we plan to store
+// children as pairs of base name and resource ID. We should remove this
+// message type once we get there.
+message DriveDirectoryProto {
+ optional DriveEntryProto gdata_entry = 1;
+ repeated DriveDirectoryProto child_directories = 7;
+ repeated DriveEntryProto child_files = 9;
+}
+
+// Container for the root directory and the largest changestamp.
+// TODO(satorux): Remove this: crbug.com/137862
+message DriveRootDirectoryProto {
+ optional DriveDirectoryProto gdata_directory = 1;
+ optional int64 largest_changestamp = 4;
+ // Monotonically increasing version number, which is changed when
+ // incompatible change is made in the proto file.
+ // kProtoVersion in gdata_files.h defines the current version.
+ optional int32 version = 3;
+}
+
+// Message to store information of an existing cache file.
+// Cache files are stored in 'tmp' or 'persistent' directory under the
+// root cache directory. See DriveCache::GetCacheRootPath().
+message DriveCacheEntry {
+ // MD5 of the cache file. "local" if the file is locally modified.
+ optional string md5 = 1;
+
+ // True if the file is present locally.
+ optional bool is_present = 2;
+
+ // True if the file is pinned (i.e. available offline).
+ optional bool is_pinned = 3;
+
+ // True if the file is dirty (i.e. modified locally).
+ optional bool is_dirty = 4;
+
+ // True if the file is a mounted archive file.
+ optional bool is_mounted = 5;
+
+ // True if the file is in the persistent directory.
+ optional bool is_persistent = 6;
+
+ // When adding a new state, be sure to update TestDriveCacheState and test
+ // functions defined in gdata_test_util.cc.
+}