552 lines
21 KiB
Ruby
552 lines
21 KiB
Ruby
# Copyright 2015 Google Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
require 'date'
|
|
require 'google/apis/core/base_service'
|
|
require 'google/apis/core/json_representation'
|
|
require 'google/apis/core/hashable'
|
|
require 'google/apis/errors'
|
|
|
|
module Google
|
|
module Apis
|
|
module DriveV3
|
|
|
|
class About
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
class StorageQuota
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class Change
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class ChangeList
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class Channel
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class Comment
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
class QuotedFileContent
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class CommentList
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class File
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
class Capabilities
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class ContentHints
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
class Thumbnail
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class ImageMediaMetadata
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
class Location
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class VideoMediaMetadata
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class FileList
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class GeneratedIds
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class Permission
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class PermissionList
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class Reply
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class ReplyList
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class Revision
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class RevisionList
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class StartPageToken
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class User
|
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
|
|
include Google::Apis::Core::JsonObjectSupport
|
|
end
|
|
|
|
class About
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :app_installed, as: 'appInstalled'
|
|
hash :export_formats, as: 'exportFormats', :class => Array do
|
|
include Representable::JSON::Collection
|
|
items
|
|
end
|
|
|
|
collection :folder_color_palette, as: 'folderColorPalette'
|
|
hash :import_formats, as: 'importFormats', :class => Array do
|
|
include Representable::JSON::Collection
|
|
items
|
|
end
|
|
|
|
property :kind, as: 'kind'
|
|
hash :max_import_sizes, as: 'maxImportSizes'
|
|
property :max_upload_size, as: 'maxUploadSize'
|
|
property :storage_quota, as: 'storageQuota', class: Google::Apis::DriveV3::About::StorageQuota, decorator: Google::Apis::DriveV3::About::StorageQuota::Representation
|
|
|
|
property :user, as: 'user', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
|
|
|
|
end
|
|
|
|
class StorageQuota
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :limit, as: 'limit'
|
|
property :usage, as: 'usage'
|
|
property :usage_in_drive, as: 'usageInDrive'
|
|
property :usage_in_drive_trash, as: 'usageInDriveTrash'
|
|
end
|
|
end
|
|
end
|
|
|
|
class Change
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :file, as: 'file', class: Google::Apis::DriveV3::File, decorator: Google::Apis::DriveV3::File::Representation
|
|
|
|
property :file_id, as: 'fileId'
|
|
property :kind, as: 'kind'
|
|
property :removed, as: 'removed'
|
|
property :time, as: 'time', type: DateTime
|
|
|
|
end
|
|
end
|
|
|
|
class ChangeList
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
collection :changes, as: 'changes', class: Google::Apis::DriveV3::Change, decorator: Google::Apis::DriveV3::Change::Representation
|
|
|
|
property :kind, as: 'kind'
|
|
property :new_start_page_token, as: 'newStartPageToken'
|
|
property :next_page_token, as: 'nextPageToken'
|
|
end
|
|
end
|
|
|
|
class Channel
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :address, as: 'address'
|
|
property :expiration, as: 'expiration'
|
|
property :id, as: 'id'
|
|
property :kind, as: 'kind'
|
|
hash :params, as: 'params'
|
|
property :payload, as: 'payload'
|
|
property :resource_id, as: 'resourceId'
|
|
property :resource_uri, as: 'resourceUri'
|
|
property :token, as: 'token'
|
|
property :type, as: 'type'
|
|
end
|
|
end
|
|
|
|
class Comment
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :anchor, as: 'anchor'
|
|
property :author, as: 'author', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
|
|
|
|
property :content, as: 'content'
|
|
property :created_time, as: 'createdTime', type: DateTime
|
|
|
|
property :deleted, as: 'deleted'
|
|
property :html_content, as: 'htmlContent'
|
|
property :id, as: 'id'
|
|
property :kind, as: 'kind'
|
|
property :modified_time, as: 'modifiedTime', type: DateTime
|
|
|
|
property :quoted_file_content, as: 'quotedFileContent', class: Google::Apis::DriveV3::Comment::QuotedFileContent, decorator: Google::Apis::DriveV3::Comment::QuotedFileContent::Representation
|
|
|
|
collection :replies, as: 'replies', class: Google::Apis::DriveV3::Reply, decorator: Google::Apis::DriveV3::Reply::Representation
|
|
|
|
property :resolved, as: 'resolved'
|
|
end
|
|
|
|
class QuotedFileContent
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :mime_type, as: 'mimeType'
|
|
property :value, as: 'value'
|
|
end
|
|
end
|
|
end
|
|
|
|
class CommentList
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
collection :comments, as: 'comments', class: Google::Apis::DriveV3::Comment, decorator: Google::Apis::DriveV3::Comment::Representation
|
|
|
|
property :kind, as: 'kind'
|
|
property :next_page_token, as: 'nextPageToken'
|
|
end
|
|
end
|
|
|
|
class File
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
hash :app_properties, as: 'appProperties'
|
|
property :capabilities, as: 'capabilities', class: Google::Apis::DriveV3::File::Capabilities, decorator: Google::Apis::DriveV3::File::Capabilities::Representation
|
|
|
|
property :content_hints, as: 'contentHints', class: Google::Apis::DriveV3::File::ContentHints, decorator: Google::Apis::DriveV3::File::ContentHints::Representation
|
|
|
|
property :created_time, as: 'createdTime', type: DateTime
|
|
|
|
property :description, as: 'description'
|
|
property :explicitly_trashed, as: 'explicitlyTrashed'
|
|
property :file_extension, as: 'fileExtension'
|
|
property :folder_color_rgb, as: 'folderColorRgb'
|
|
property :full_file_extension, as: 'fullFileExtension'
|
|
property :head_revision_id, as: 'headRevisionId'
|
|
property :icon_link, as: 'iconLink'
|
|
property :id, as: 'id'
|
|
property :image_media_metadata, as: 'imageMediaMetadata', class: Google::Apis::DriveV3::File::ImageMediaMetadata, decorator: Google::Apis::DriveV3::File::ImageMediaMetadata::Representation
|
|
|
|
property :is_app_authorized, as: 'isAppAuthorized'
|
|
property :kind, as: 'kind'
|
|
property :last_modifying_user, as: 'lastModifyingUser', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
|
|
|
|
property :md5_checksum, as: 'md5Checksum'
|
|
property :mime_type, as: 'mimeType'
|
|
property :modified_by_me_time, as: 'modifiedByMeTime', type: DateTime
|
|
|
|
property :modified_time, as: 'modifiedTime', type: DateTime
|
|
|
|
property :name, as: 'name'
|
|
property :original_filename, as: 'originalFilename'
|
|
property :owned_by_me, as: 'ownedByMe'
|
|
collection :owners, as: 'owners', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
|
|
|
|
collection :parents, as: 'parents'
|
|
collection :permissions, as: 'permissions', class: Google::Apis::DriveV3::Permission, decorator: Google::Apis::DriveV3::Permission::Representation
|
|
|
|
hash :properties, as: 'properties'
|
|
property :quota_bytes_used, as: 'quotaBytesUsed'
|
|
property :shared, as: 'shared'
|
|
property :shared_with_me_time, as: 'sharedWithMeTime', type: DateTime
|
|
|
|
property :sharing_user, as: 'sharingUser', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
|
|
|
|
property :size, as: 'size'
|
|
collection :spaces, as: 'spaces'
|
|
property :starred, as: 'starred'
|
|
property :thumbnail_link, as: 'thumbnailLink'
|
|
property :trashed, as: 'trashed'
|
|
property :version, as: 'version'
|
|
property :video_media_metadata, as: 'videoMediaMetadata', class: Google::Apis::DriveV3::File::VideoMediaMetadata, decorator: Google::Apis::DriveV3::File::VideoMediaMetadata::Representation
|
|
|
|
property :viewed_by_me, as: 'viewedByMe'
|
|
property :viewed_by_me_time, as: 'viewedByMeTime', type: DateTime
|
|
|
|
property :viewers_can_copy_content, as: 'viewersCanCopyContent'
|
|
property :web_content_link, as: 'webContentLink'
|
|
property :web_view_link, as: 'webViewLink'
|
|
property :writers_can_share, as: 'writersCanShare'
|
|
end
|
|
|
|
class Capabilities
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :can_comment, as: 'canComment'
|
|
property :can_copy, as: 'canCopy'
|
|
property :can_edit, as: 'canEdit'
|
|
property :can_read_revisions, as: 'canReadRevisions'
|
|
property :can_share, as: 'canShare'
|
|
end
|
|
end
|
|
|
|
class ContentHints
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :indexable_text, as: 'indexableText'
|
|
property :thumbnail, as: 'thumbnail', class: Google::Apis::DriveV3::File::ContentHints::Thumbnail, decorator: Google::Apis::DriveV3::File::ContentHints::Thumbnail::Representation
|
|
|
|
end
|
|
|
|
class Thumbnail
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :image, :base64 => true, as: 'image'
|
|
property :mime_type, as: 'mimeType'
|
|
end
|
|
end
|
|
end
|
|
|
|
class ImageMediaMetadata
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :aperture, as: 'aperture'
|
|
property :camera_make, as: 'cameraMake'
|
|
property :camera_model, as: 'cameraModel'
|
|
property :color_space, as: 'colorSpace'
|
|
property :exposure_bias, as: 'exposureBias'
|
|
property :exposure_mode, as: 'exposureMode'
|
|
property :exposure_time, as: 'exposureTime'
|
|
property :flash_used, as: 'flashUsed'
|
|
property :focal_length, as: 'focalLength'
|
|
property :height, as: 'height'
|
|
property :iso_speed, as: 'isoSpeed'
|
|
property :lens, as: 'lens'
|
|
property :location, as: 'location', class: Google::Apis::DriveV3::File::ImageMediaMetadata::Location, decorator: Google::Apis::DriveV3::File::ImageMediaMetadata::Location::Representation
|
|
|
|
property :max_aperture_value, as: 'maxApertureValue'
|
|
property :metering_mode, as: 'meteringMode'
|
|
property :rotation, as: 'rotation'
|
|
property :sensor, as: 'sensor'
|
|
property :subject_distance, as: 'subjectDistance'
|
|
property :time, as: 'time'
|
|
property :white_balance, as: 'whiteBalance'
|
|
property :width, as: 'width'
|
|
end
|
|
|
|
class Location
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :altitude, as: 'altitude'
|
|
property :latitude, as: 'latitude'
|
|
property :longitude, as: 'longitude'
|
|
end
|
|
end
|
|
end
|
|
|
|
class VideoMediaMetadata
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :duration_millis, as: 'durationMillis'
|
|
property :height, as: 'height'
|
|
property :width, as: 'width'
|
|
end
|
|
end
|
|
end
|
|
|
|
class FileList
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
collection :files, as: 'files', class: Google::Apis::DriveV3::File, decorator: Google::Apis::DriveV3::File::Representation
|
|
|
|
property :kind, as: 'kind'
|
|
property :next_page_token, as: 'nextPageToken'
|
|
end
|
|
end
|
|
|
|
class GeneratedIds
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
collection :ids, as: 'ids'
|
|
property :kind, as: 'kind'
|
|
property :space, as: 'space'
|
|
end
|
|
end
|
|
|
|
class Permission
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :allow_file_discovery, as: 'allowFileDiscovery'
|
|
property :display_name, as: 'displayName'
|
|
property :domain, as: 'domain'
|
|
property :email_address, as: 'emailAddress'
|
|
property :expiration_time, as: 'expirationTime', type: DateTime
|
|
|
|
property :id, as: 'id'
|
|
property :kind, as: 'kind'
|
|
property :photo_link, as: 'photoLink'
|
|
property :role, as: 'role'
|
|
property :type, as: 'type'
|
|
end
|
|
end
|
|
|
|
class PermissionList
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :kind, as: 'kind'
|
|
collection :permissions, as: 'permissions', class: Google::Apis::DriveV3::Permission, decorator: Google::Apis::DriveV3::Permission::Representation
|
|
|
|
end
|
|
end
|
|
|
|
class Reply
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :action, as: 'action'
|
|
property :author, as: 'author', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
|
|
|
|
property :content, as: 'content'
|
|
property :created_time, as: 'createdTime', type: DateTime
|
|
|
|
property :deleted, as: 'deleted'
|
|
property :html_content, as: 'htmlContent'
|
|
property :id, as: 'id'
|
|
property :kind, as: 'kind'
|
|
property :modified_time, as: 'modifiedTime', type: DateTime
|
|
|
|
end
|
|
end
|
|
|
|
class ReplyList
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :kind, as: 'kind'
|
|
property :next_page_token, as: 'nextPageToken'
|
|
collection :replies, as: 'replies', class: Google::Apis::DriveV3::Reply, decorator: Google::Apis::DriveV3::Reply::Representation
|
|
|
|
end
|
|
end
|
|
|
|
class Revision
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :id, as: 'id'
|
|
property :keep_forever, as: 'keepForever'
|
|
property :kind, as: 'kind'
|
|
property :last_modifying_user, as: 'lastModifyingUser', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
|
|
|
|
property :md5_checksum, as: 'md5Checksum'
|
|
property :mime_type, as: 'mimeType'
|
|
property :modified_time, as: 'modifiedTime', type: DateTime
|
|
|
|
property :original_filename, as: 'originalFilename'
|
|
property :publish_auto, as: 'publishAuto'
|
|
property :published, as: 'published'
|
|
property :published_outside_domain, as: 'publishedOutsideDomain'
|
|
property :size, as: 'size'
|
|
end
|
|
end
|
|
|
|
class RevisionList
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :kind, as: 'kind'
|
|
collection :revisions, as: 'revisions', class: Google::Apis::DriveV3::Revision, decorator: Google::Apis::DriveV3::Revision::Representation
|
|
|
|
end
|
|
end
|
|
|
|
class StartPageToken
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :kind, as: 'kind'
|
|
property :start_page_token, as: 'startPageToken'
|
|
end
|
|
end
|
|
|
|
class User
|
|
# @private
|
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
property :display_name, as: 'displayName'
|
|
property :email_address, as: 'emailAddress'
|
|
property :kind, as: 'kind'
|
|
property :me, as: 'me'
|
|
property :permission_id, as: 'permissionId'
|
|
property :photo_link, as: 'photoLink'
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|