Class: Google::Apis::DriveV2::File

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/drive_v2/classes.rb,
lib/google/apis/drive_v2/representations.rb,
lib/google/apis/drive_v2/representations.rb

Overview

The metadata for a file.

Defined Under Namespace

Classes: Capabilities, ImageMediaMetadata, IndexableText, LabelInfo, Labels, LinkShareMetadata, ShortcutDetails, Thumbnail, VideoMediaMetadata

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ File

Returns a new instance of File.



2222
2223
2224
# File 'lib/google/apis/drive_v2/classes.rb', line 2222

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

A link for opening the file in a relevant Google editor or viewer. Corresponds to the JSON property alternateLink

Returns:

  • (String)


1785
1786
1787
# File 'lib/google/apis/drive_v2/classes.rb', line 1785

def alternate_link
  @alternate_link
end

#app_data_contentsBoolean Also known as: app_data_contents?

Whether this file is in the Application Data folder. Corresponds to the JSON property appDataContents

Returns:

  • (Boolean)


1790
1791
1792
# File 'lib/google/apis/drive_v2/classes.rb', line 1790

def app_data_contents
  @app_data_contents
end

#can_commentBoolean Also known as: can_comment?

Deprecated: use capabilities/canComment. Corresponds to the JSON property canComment

Returns:

  • (Boolean)


1796
1797
1798
# File 'lib/google/apis/drive_v2/classes.rb', line 1796

def can_comment
  @can_comment
end

#can_read_revisionsBoolean Also known as: can_read_revisions?

Deprecated: use capabilities/canReadRevisions. Corresponds to the JSON property canReadRevisions

Returns:

  • (Boolean)


1802
1803
1804
# File 'lib/google/apis/drive_v2/classes.rb', line 1802

def can_read_revisions
  @can_read_revisions
end

#capabilitiesGoogle::Apis::DriveV2::File::Capabilities

Capabilities the current user has on this file. Each capability corresponds to a fine-grained action that a user may take. Corresponds to the JSON property capabilities



1809
1810
1811
# File 'lib/google/apis/drive_v2/classes.rb', line 1809

def capabilities
  @capabilities
end

#content_restrictionsArray<Google::Apis::DriveV2::ContentRestriction>

Restrictions for accessing the content of the file. Only populated if such a restriction exists. Corresponds to the JSON property contentRestrictions



1815
1816
1817
# File 'lib/google/apis/drive_v2/classes.rb', line 1815

def content_restrictions
  @content_restrictions
end

#copy_requires_writer_permissionBoolean Also known as: copy_requires_writer_permission?

Whether the options to copy, print, or download this file, should be disabled for readers and commenters. Corresponds to the JSON property copyRequiresWriterPermission

Returns:

  • (Boolean)


1821
1822
1823
# File 'lib/google/apis/drive_v2/classes.rb', line 1821

def copy_requires_writer_permission
  @copy_requires_writer_permission
end

#copyableBoolean Also known as: copyable?

Deprecated: use capabilities/canCopy. Corresponds to the JSON property copyable

Returns:

  • (Boolean)


1827
1828
1829
# File 'lib/google/apis/drive_v2/classes.rb', line 1827

def copyable
  @copyable
end

#created_dateDateTime

Create time for this file (formatted RFC 3339 timestamp). Corresponds to the JSON property createdDate

Returns:

  • (DateTime)


1833
1834
1835
# File 'lib/google/apis/drive_v2/classes.rb', line 1833

def created_date
  @created_date
end

A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used. Corresponds to the JSON property defaultOpenWithLink

Returns:

  • (String)


1839
1840
1841
# File 'lib/google/apis/drive_v2/classes.rb', line 1839

def default_open_with_link
  @default_open_with_link
end

#descriptionString

A short description of the file. Corresponds to the JSON property description

Returns:

  • (String)


1844
1845
1846
# File 'lib/google/apis/drive_v2/classes.rb', line 1844

def description
  @description
end

#download_urlString

Short lived download URL for the file. This field is only populated for files with content stored in Google Drive; it is not populated for Docs Editors or shortcut files. Corresponds to the JSON property downloadUrl

Returns:

  • (String)


1851
1852
1853
# File 'lib/google/apis/drive_v2/classes.rb', line 1851

def download_url
  @download_url
end

#drive_idString

ID of the shared drive the file resides in. Only populated for items in shared drives. Corresponds to the JSON property driveId

Returns:

  • (String)


1857
1858
1859
# File 'lib/google/apis/drive_v2/classes.rb', line 1857

def drive_id
  @drive_id
end

#editableBoolean Also known as: editable?

Deprecated: use capabilities/canEdit. Corresponds to the JSON property editable

Returns:

  • (Boolean)


1862
1863
1864
# File 'lib/google/apis/drive_v2/classes.rb', line 1862

def editable
  @editable
end

A link for embedding the file. Corresponds to the JSON property embedLink

Returns:

  • (String)


1868
1869
1870
# File 'lib/google/apis/drive_v2/classes.rb', line 1868

def embed_link
  @embed_link
end

#etagString

ETag of the file. Corresponds to the JSON property etag

Returns:

  • (String)


1873
1874
1875
# File 'lib/google/apis/drive_v2/classes.rb', line 1873

def etag
  @etag
end

#explicitly_trashedBoolean Also known as: explicitly_trashed?

Whether this file has been explicitly trashed, as opposed to recursively trashed. Corresponds to the JSON property explicitlyTrashed

Returns:

  • (Boolean)


1879
1880
1881
# File 'lib/google/apis/drive_v2/classes.rb', line 1879

def explicitly_trashed
  @explicitly_trashed
end

Links for exporting Docs Editors files to specific formats. Corresponds to the JSON property exportLinks

Returns:

  • (Hash<String,String>)


1885
1886
1887
# File 'lib/google/apis/drive_v2/classes.rb', line 1885

def export_links
  @export_links
end

#file_extensionString

The final component of fullFileExtension with trailing text that does not appear to be part of the extension removed. This field is only populated for files with content stored in Google Drive; it is not populated for Docs Editors or shortcut files. Corresponds to the JSON property fileExtension

Returns:

  • (String)


1893
1894
1895
# File 'lib/google/apis/drive_v2/classes.rb', line 1893

def file_extension
  @file_extension
end

#file_sizeFixnum

The size of the file in bytes. This field is populated for files with content stored in Google Drive and for files in Docs Editors; it is not populated for shortcut files. Corresponds to the JSON property fileSize

Returns:

  • (Fixnum)


1900
1901
1902
# File 'lib/google/apis/drive_v2/classes.rb', line 1900

def file_size
  @file_size
end

#folder_color_rgbString

Folder color as an RGB hex string if the file is a folder or a shortcut to a folder. The list of supported colors is available in the folderColorPalette field of the About resource. If an unsupported color is specified, it will be changed to the closest color in the palette. Corresponds to the JSON property folderColorRgb

Returns:

  • (String)


1908
1909
1910
# File 'lib/google/apis/drive_v2/classes.rb', line 1908

def folder_color_rgb
  @folder_color_rgb
end

#full_file_extensionString

The full file extension; extracted from the title. May contain multiple concatenated extensions, such as "tar.gz". Removing an extension from the title does not clear this field; however, changing the extension on the title does update this field. This field is only populated for files with content stored in Google Drive; it is not populated for Docs Editors or shortcut files. Corresponds to the JSON property fullFileExtension

Returns:

  • (String)


1917
1918
1919
# File 'lib/google/apis/drive_v2/classes.rb', line 1917

def full_file_extension
  @full_file_extension
end

#has_augmented_permissionsBoolean Also known as: has_augmented_permissions?

Whether there are permissions directly on this file. This field is only populated for items in shared drives. Corresponds to the JSON property hasAugmentedPermissions

Returns:

  • (Boolean)


1923
1924
1925
# File 'lib/google/apis/drive_v2/classes.rb', line 1923

def has_augmented_permissions
  @has_augmented_permissions
end

#has_thumbnailBoolean Also known as: has_thumbnail?

Whether this file has a thumbnail. This does not indicate whether the requesting app has access to the thumbnail. To check access, look for the presence of the thumbnailLink field. Corresponds to the JSON property hasThumbnail

Returns:

  • (Boolean)


1931
1932
1933
# File 'lib/google/apis/drive_v2/classes.rb', line 1931

def has_thumbnail
  @has_thumbnail
end

#head_revision_idString

The ID of the file's head revision. This field is only populated for files with content stored in Google Drive; it is not populated for Docs Editors or shortcut files. Corresponds to the JSON property headRevisionId

Returns:

  • (String)


1939
1940
1941
# File 'lib/google/apis/drive_v2/classes.rb', line 1939

def head_revision_id
  @head_revision_id
end

A link to the file's icon. Corresponds to the JSON property iconLink

Returns:

  • (String)


1944
1945
1946
# File 'lib/google/apis/drive_v2/classes.rb', line 1944

def icon_link
  @icon_link
end

#idString

The ID of the file. Corresponds to the JSON property id

Returns:

  • (String)


1949
1950
1951
# File 'lib/google/apis/drive_v2/classes.rb', line 1949

def id
  @id
end

#image_media_metadataGoogle::Apis::DriveV2::File::ImageMediaMetadata

Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content. Corresponds to the JSON property imageMediaMetadata



1955
1956
1957
# File 'lib/google/apis/drive_v2/classes.rb', line 1955

def 
  @image_media_metadata
end

#indexable_textGoogle::Apis::DriveV2::File::IndexableText

Indexable text attributes for the file (can only be written) Corresponds to the JSON property indexableText



1960
1961
1962
# File 'lib/google/apis/drive_v2/classes.rb', line 1960

def indexable_text
  @indexable_text
end

#is_app_authorizedBoolean Also known as: is_app_authorized?

Whether the file was created or opened by the requesting app. Corresponds to the JSON property isAppAuthorized

Returns:

  • (Boolean)


1965
1966
1967
# File 'lib/google/apis/drive_v2/classes.rb', line 1965

def is_app_authorized
  @is_app_authorized
end

#kindString

The type of file. This is always drive#file. Corresponds to the JSON property kind

Returns:

  • (String)


1971
1972
1973
# File 'lib/google/apis/drive_v2/classes.rb', line 1971

def kind
  @kind
end

#label_infoGoogle::Apis::DriveV2::File::LabelInfo

An overview of the labels on the file. Corresponds to the JSON property labelInfo



1976
1977
1978
# File 'lib/google/apis/drive_v2/classes.rb', line 1976

def label_info
  @label_info
end

#labelsGoogle::Apis::DriveV2::File::Labels

A group of labels for the file. Corresponds to the JSON property labels



1981
1982
1983
# File 'lib/google/apis/drive_v2/classes.rb', line 1981

def labels
  @labels
end

#last_modifying_userGoogle::Apis::DriveV2::User

Information about a Drive user. Corresponds to the JSON property lastModifyingUser



1986
1987
1988
# File 'lib/google/apis/drive_v2/classes.rb', line 1986

def last_modifying_user
  @last_modifying_user
end

#last_modifying_user_nameString

Name of the last user to modify this file. Corresponds to the JSON property lastModifyingUserName

Returns:

  • (String)


1991
1992
1993
# File 'lib/google/apis/drive_v2/classes.rb', line 1991

def last_modifying_user_name
  @last_modifying_user_name
end

#last_viewed_by_me_dateDateTime

Last time this file was viewed by the user (formatted RFC 3339 timestamp). Corresponds to the JSON property lastViewedByMeDate

Returns:

  • (DateTime)


1996
1997
1998
# File 'lib/google/apis/drive_v2/classes.rb', line 1996

def last_viewed_by_me_date
  @last_viewed_by_me_date
end

Contains details about the link URLs that clients are using to refer to this item. Corresponds to the JSON property linkShareMetadata



2002
2003
2004
# File 'lib/google/apis/drive_v2/classes.rb', line 2002

def 
  @link_share_metadata
end

#marked_viewed_by_me_dateDateTime

Deprecated. Corresponds to the JSON property markedViewedByMeDate

Returns:

  • (DateTime)


2007
2008
2009
# File 'lib/google/apis/drive_v2/classes.rb', line 2007

def marked_viewed_by_me_date
  @marked_viewed_by_me_date
end

#md5_checksumString

An MD5 checksum for the content of this file. This field is only populated for files with content stored in Google Drive; it is not populated for Docs Editors or shortcut files. Corresponds to the JSON property md5Checksum

Returns:

  • (String)


2014
2015
2016
# File 'lib/google/apis/drive_v2/classes.rb', line 2014

def md5_checksum
  @md5_checksum
end

#mime_typeString

The MIME type of the file. This is only mutable on update when uploading new content. This field can be left blank, and the mimetype will be determined from the uploaded content's MIME type. Corresponds to the JSON property mimeType

Returns:

  • (String)


2021
2022
2023
# File 'lib/google/apis/drive_v2/classes.rb', line 2021

def mime_type
  @mime_type
end

#modified_by_me_dateDateTime

Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date. Corresponds to the JSON property modifiedByMeDate

Returns:

  • (DateTime)


2028
2029
2030
# File 'lib/google/apis/drive_v2/classes.rb', line 2028

def modified_by_me_date
  @modified_by_me_date
end

#modified_dateDateTime

Last time this file was modified by anyone (formatted RFC 3339 timestamp). This is only mutable on update when the setModifiedDate parameter is set. Corresponds to the JSON property modifiedDate

Returns:

  • (DateTime)


2034
2035
2036
# File 'lib/google/apis/drive_v2/classes.rb', line 2034

def modified_date
  @modified_date
end

A map of the id of each of the user's apps to a link to open this file with that app. Only populated when the drive.apps.readonly scope is used. Corresponds to the JSON property openWithLinks

Returns:

  • (Hash<String,String>)


2040
2041
2042
# File 'lib/google/apis/drive_v2/classes.rb', line 2040

def open_with_links
  @open_with_links
end

#original_filenameString

The original filename of the uploaded content if available, or else the original value of the title field. This is only available for files with binary content in Google Drive. Corresponds to the JSON property originalFilename

Returns:

  • (String)


2047
2048
2049
# File 'lib/google/apis/drive_v2/classes.rb', line 2047

def original_filename
  @original_filename
end

#owned_by_meBoolean Also known as: owned_by_me?

Whether the file is owned by the current user. Not populated for items in shared drives. Corresponds to the JSON property ownedByMe

Returns:

  • (Boolean)


2053
2054
2055
# File 'lib/google/apis/drive_v2/classes.rb', line 2053

def owned_by_me
  @owned_by_me
end

#owner_namesArray<String>

Name(s) of the owner(s) of this file. Not populated for items in shared drives. Corresponds to the JSON property ownerNames

Returns:

  • (Array<String>)


2059
2060
2061
# File 'lib/google/apis/drive_v2/classes.rb', line 2059

def owner_names
  @owner_names
end

#ownersArray<Google::Apis::DriveV2::User>

The owner of this file. Only certain legacy files may have more than one owner. This field isn't populated for items in shared drives. Corresponds to the JSON property owners

Returns:



2065
2066
2067
# File 'lib/google/apis/drive_v2/classes.rb', line 2065

def owners
  @owners
end

#parentsArray<Google::Apis::DriveV2::ParentReference>

Collection of parent folders which contain this file. If not specified as part of an insert request, the file will be placed directly in the user's My Drive folder. If not specified as part of a copy request, the file will inherit any discoverable parents of the source file. Update requests can also use the addParents and removeParents parameters to modify the parents list. Corresponds to the JSON property parents



2075
2076
2077
# File 'lib/google/apis/drive_v2/classes.rb', line 2075

def parents
  @parents
end

#permission_idsArray<String>

List of permission IDs for users with access to this file. Corresponds to the JSON property permissionIds

Returns:

  • (Array<String>)


2080
2081
2082
# File 'lib/google/apis/drive_v2/classes.rb', line 2080

def permission_ids
  @permission_ids
end

#permissionsArray<Google::Apis::DriveV2::Permission>

The list of permissions for users with access to this file. Not populated for items in shared drives. Corresponds to the JSON property permissions



2086
2087
2088
# File 'lib/google/apis/drive_v2/classes.rb', line 2086

def permissions
  @permissions
end

#propertiesArray<Google::Apis::DriveV2::Property>

The list of properties. Corresponds to the JSON property properties



2091
2092
2093
# File 'lib/google/apis/drive_v2/classes.rb', line 2091

def properties
  @properties
end

#quota_bytes_usedFixnum

The number of quota bytes used by this file. Corresponds to the JSON property quotaBytesUsed

Returns:

  • (Fixnum)


2096
2097
2098
# File 'lib/google/apis/drive_v2/classes.rb', line 2096

def quota_bytes_used
  @quota_bytes_used
end

#resource_keyString

A key needed to access the item via a shared link. Corresponds to the JSON property resourceKey

Returns:

  • (String)


2101
2102
2103
# File 'lib/google/apis/drive_v2/classes.rb', line 2101

def resource_key
  @resource_key
end

A link back to this file. Corresponds to the JSON property selfLink

Returns:

  • (String)


2106
2107
2108
# File 'lib/google/apis/drive_v2/classes.rb', line 2106

def self_link
  @self_link
end

#shareableBoolean Also known as: shareable?

Deprecated: use capabilities/canShare. Corresponds to the JSON property shareable

Returns:

  • (Boolean)


2111
2112
2113
# File 'lib/google/apis/drive_v2/classes.rb', line 2111

def shareable
  @shareable
end

#sharedBoolean Also known as: shared?

Whether the file has been shared. Not populated for items in shared drives. Corresponds to the JSON property shared

Returns:

  • (Boolean)


2117
2118
2119
# File 'lib/google/apis/drive_v2/classes.rb', line 2117

def shared
  @shared
end

#shared_with_me_dateDateTime

Time at which this file was shared with the user (formatted RFC 3339 timestamp) . Corresponds to the JSON property sharedWithMeDate

Returns:

  • (DateTime)


2124
2125
2126
# File 'lib/google/apis/drive_v2/classes.rb', line 2124

def shared_with_me_date
  @shared_with_me_date
end

#sharing_userGoogle::Apis::DriveV2::User

Information about a Drive user. Corresponds to the JSON property sharingUser



2129
2130
2131
# File 'lib/google/apis/drive_v2/classes.rb', line 2129

def sharing_user
  @sharing_user
end

#shortcut_detailsGoogle::Apis::DriveV2::File::ShortcutDetails

Shortcut file details. Only populated for shortcut files, which have the mimeType field set to application/vnd.google-apps.shortcut. Corresponds to the JSON property shortcutDetails



2135
2136
2137
# File 'lib/google/apis/drive_v2/classes.rb', line 2135

def shortcut_details
  @shortcut_details
end

#spacesArray<String>

The list of spaces which contain the file. Supported values are 'drive', ' appDataFolder' and 'photos'. Corresponds to the JSON property spaces

Returns:

  • (Array<String>)


2141
2142
2143
# File 'lib/google/apis/drive_v2/classes.rb', line 2141

def spaces
  @spaces
end

#team_drive_idString

Deprecated - use driveId instead. Corresponds to the JSON property teamDriveId

Returns:

  • (String)


2146
2147
2148
# File 'lib/google/apis/drive_v2/classes.rb', line 2146

def team_drive_id
  @team_drive_id
end

#thumbnailGoogle::Apis::DriveV2::File::Thumbnail

A thumbnail for the file. This will only be used if a standard thumbnail cannot be generated. Corresponds to the JSON property thumbnail



2152
2153
2154
# File 'lib/google/apis/drive_v2/classes.rb', line 2152

def thumbnail
  @thumbnail
end

A short-lived link to the file's thumbnail. Typically lasts on the order of hours. Only populated when the requesting app can access the file's content. If the file isn't shared publicly, the URL returned in Files.thumbnailLink must be fetched using a credentialed request. Corresponds to the JSON property thumbnailLink

Returns:

  • (String)


2160
2161
2162
# File 'lib/google/apis/drive_v2/classes.rb', line 2160

def thumbnail_link
  @thumbnail_link
end

#thumbnail_versionFixnum

The thumbnail version for use in thumbnail cache invalidation. Corresponds to the JSON property thumbnailVersion

Returns:

  • (Fixnum)


2165
2166
2167
# File 'lib/google/apis/drive_v2/classes.rb', line 2165

def thumbnail_version
  @thumbnail_version
end

#titleString

The title of this file. Note that for immutable items such as the top level folders of shared drives, My Drive root folder, and Application Data folder the title is constant. Corresponds to the JSON property title

Returns:

  • (String)


2172
2173
2174
# File 'lib/google/apis/drive_v2/classes.rb', line 2172

def title
  @title
end

#trashed_dateDateTime

The time that the item was trashed (formatted RFC 3339 timestamp). Only populated for items in shared drives. Corresponds to the JSON property trashedDate

Returns:

  • (DateTime)


2178
2179
2180
# File 'lib/google/apis/drive_v2/classes.rb', line 2178

def trashed_date
  @trashed_date
end

#trashing_userGoogle::Apis::DriveV2::User

Information about a Drive user. Corresponds to the JSON property trashingUser



2183
2184
2185
# File 'lib/google/apis/drive_v2/classes.rb', line 2183

def trashing_user
  @trashing_user
end

#user_permissionGoogle::Apis::DriveV2::Permission

A permission for a file. Corresponds to the JSON property userPermission



2188
2189
2190
# File 'lib/google/apis/drive_v2/classes.rb', line 2188

def user_permission
  @user_permission
end

#versionFixnum

A monotonically increasing version number for the file. This reflects every change made to the file on the server, even those not visible to the requesting user. Corresponds to the JSON property version

Returns:

  • (Fixnum)


2195
2196
2197
# File 'lib/google/apis/drive_v2/classes.rb', line 2195

def version
  @version
end

#video_media_metadataGoogle::Apis::DriveV2::File::VideoMediaMetadata

Metadata about video media. This will only be present for video types. Corresponds to the JSON property videoMediaMetadata



2200
2201
2202
# File 'lib/google/apis/drive_v2/classes.rb', line 2200

def 
  @video_media_metadata
end

A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials. Corresponds to the JSON property webContentLink

Returns:

  • (String)


2207
2208
2209
# File 'lib/google/apis/drive_v2/classes.rb', line 2207

def web_content_link
  @web_content_link
end

A link only available on public folders for viewing their static web assets ( HTML, CSS, JS, etc) via Google Drive's Website Hosting. Corresponds to the JSON property webViewLink

Returns:

  • (String)


2213
2214
2215
# File 'lib/google/apis/drive_v2/classes.rb', line 2213

def web_view_link
  @web_view_link
end

#writers_can_shareBoolean Also known as: writers_can_share?

Whether writers can share the document with other users. Not populated for items in shared drives. Corresponds to the JSON property writersCanShare

Returns:

  • (Boolean)


2219
2220
2221
# File 'lib/google/apis/drive_v2/classes.rb', line 2219

def writers_can_share
  @writers_can_share
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
# File 'lib/google/apis/drive_v2/classes.rb', line 2227

def update!(**args)
  @alternate_link = args[:alternate_link] if args.key?(:alternate_link)
  @app_data_contents = args[:app_data_contents] if args.key?(:app_data_contents)
  @can_comment = args[:can_comment] if args.key?(:can_comment)
  @can_read_revisions = args[:can_read_revisions] if args.key?(:can_read_revisions)
  @capabilities = args[:capabilities] if args.key?(:capabilities)
  @content_restrictions = args[:content_restrictions] if args.key?(:content_restrictions)
  @copy_requires_writer_permission = args[:copy_requires_writer_permission] if args.key?(:copy_requires_writer_permission)
  @copyable = args[:copyable] if args.key?(:copyable)
  @created_date = args[:created_date] if args.key?(:created_date)
  @default_open_with_link = args[:default_open_with_link] if args.key?(:default_open_with_link)
  @description = args[:description] if args.key?(:description)
  @download_url = args[:download_url] if args.key?(:download_url)
  @drive_id = args[:drive_id] if args.key?(:drive_id)
  @editable = args[:editable] if args.key?(:editable)
  @embed_link = args[:embed_link] if args.key?(:embed_link)
  @etag = args[:etag] if args.key?(:etag)
  @explicitly_trashed = args[:explicitly_trashed] if args.key?(:explicitly_trashed)
  @export_links = args[:export_links] if args.key?(:export_links)
  @file_extension = args[:file_extension] if args.key?(:file_extension)
  @file_size = args[:file_size] if args.key?(:file_size)
  @folder_color_rgb = args[:folder_color_rgb] if args.key?(:folder_color_rgb)
  @full_file_extension = args[:full_file_extension] if args.key?(:full_file_extension)
  @has_augmented_permissions = args[:has_augmented_permissions] if args.key?(:has_augmented_permissions)
  @has_thumbnail = args[:has_thumbnail] if args.key?(:has_thumbnail)
  @head_revision_id = args[:head_revision_id] if args.key?(:head_revision_id)
  @icon_link = args[:icon_link] if args.key?(:icon_link)
  @id = args[:id] if args.key?(:id)
  @image_media_metadata = args[:image_media_metadata] if args.key?(:image_media_metadata)
  @indexable_text = args[:indexable_text] if args.key?(:indexable_text)
  @is_app_authorized = args[:is_app_authorized] if args.key?(:is_app_authorized)
  @kind = args[:kind] if args.key?(:kind)
  @label_info = args[:label_info] if args.key?(:label_info)
  @labels = args[:labels] if args.key?(:labels)
  @last_modifying_user = args[:last_modifying_user] if args.key?(:last_modifying_user)
  @last_modifying_user_name = args[:last_modifying_user_name] if args.key?(:last_modifying_user_name)
  @last_viewed_by_me_date = args[:last_viewed_by_me_date] if args.key?(:last_viewed_by_me_date)
  @link_share_metadata = args[:link_share_metadata] if args.key?(:link_share_metadata)
  @marked_viewed_by_me_date = args[:marked_viewed_by_me_date] if args.key?(:marked_viewed_by_me_date)
  @md5_checksum = args[:md5_checksum] if args.key?(:md5_checksum)
  @mime_type = args[:mime_type] if args.key?(:mime_type)
  @modified_by_me_date = args[:modified_by_me_date] if args.key?(:modified_by_me_date)
  @modified_date = args[:modified_date] if args.key?(:modified_date)
  @open_with_links = args[:open_with_links] if args.key?(:open_with_links)
  @original_filename = args[:original_filename] if args.key?(:original_filename)
  @owned_by_me = args[:owned_by_me] if args.key?(:owned_by_me)
  @owner_names = args[:owner_names] if args.key?(:owner_names)
  @owners = args[:owners] if args.key?(:owners)
  @parents = args[:parents] if args.key?(:parents)
  @permission_ids = args[:permission_ids] if args.key?(:permission_ids)
  @permissions = args[:permissions] if args.key?(:permissions)
  @properties = args[:properties] if args.key?(:properties)
  @quota_bytes_used = args[:quota_bytes_used] if args.key?(:quota_bytes_used)
  @resource_key = args[:resource_key] if args.key?(:resource_key)
  @self_link = args[:self_link] if args.key?(:self_link)
  @shareable = args[:shareable] if args.key?(:shareable)
  @shared = args[:shared] if args.key?(:shared)
  @shared_with_me_date = args[:shared_with_me_date] if args.key?(:shared_with_me_date)
  @sharing_user = args[:sharing_user] if args.key?(:sharing_user)
  @shortcut_details = args[:shortcut_details] if args.key?(:shortcut_details)
  @spaces = args[:spaces] if args.key?(:spaces)
  @team_drive_id = args[:team_drive_id] if args.key?(:team_drive_id)
  @thumbnail = args[:thumbnail] if args.key?(:thumbnail)
  @thumbnail_link = args[:thumbnail_link] if args.key?(:thumbnail_link)
  @thumbnail_version = args[:thumbnail_version] if args.key?(:thumbnail_version)
  @title = args[:title] if args.key?(:title)
  @trashed_date = args[:trashed_date] if args.key?(:trashed_date)
  @trashing_user = args[:trashing_user] if args.key?(:trashing_user)
  @user_permission = args[:user_permission] if args.key?(:user_permission)
  @version = args[:version] if args.key?(:version)
  @video_media_metadata = args[:video_media_metadata] if args.key?(:video_media_metadata)
  @web_content_link = args[:web_content_link] if args.key?(:web_content_link)
  @web_view_link = args[:web_view_link] if args.key?(:web_view_link)
  @writers_can_share = args[:writers_can_share] if args.key?(:writers_can_share)
end