Class: Google::Apis::DriveV3::File

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

Overview

The metadata for a file.

Defined Under Namespace

Classes: Capabilities, ContentHints, ImageMediaMetadata, LabelInfo, LinkShareMetadata, ShortcutDetails, VideoMediaMetadata

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ File

Returns a new instance of File.



1410
1411
1412
# File 'lib/google/apis/drive_v3/classes.rb', line 1410

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

Instance Attribute Details

#app_propertiesHash<String,String>

A collection of arbitrary key-value pairs which are private to the requesting app. Entries with null values are cleared in update and copy requests. These properties can only be retrieved using an authenticated request. An authenticated request uses an access token obtained with a OAuth 2 client ID. You cannot use an API key to retrieve private properties. Corresponds to the JSON property appProperties

Returns:

  • (Hash<String,String>)


1029
1030
1031
# File 'lib/google/apis/drive_v3/classes.rb', line 1029

def app_properties
  @app_properties
end

#capabilitiesGoogle::Apis::DriveV3::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



1035
1036
1037
# File 'lib/google/apis/drive_v3/classes.rb', line 1035

def capabilities
  @capabilities
end

#content_hintsGoogle::Apis::DriveV3::File::ContentHints

Additional information about the content of the file. These fields are never populated in responses. Corresponds to the JSON property contentHints



1041
1042
1043
# File 'lib/google/apis/drive_v3/classes.rb', line 1041

def content_hints
  @content_hints
end

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

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



1047
1048
1049
# File 'lib/google/apis/drive_v3/classes.rb', line 1047

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)


1053
1054
1055
# File 'lib/google/apis/drive_v3/classes.rb', line 1053

def copy_requires_writer_permission
  @copy_requires_writer_permission
end

#created_timeDateTime

The time at which the file was created (RFC 3339 date-time). Corresponds to the JSON property createdTime

Returns:

  • (DateTime)


1059
1060
1061
# File 'lib/google/apis/drive_v3/classes.rb', line 1059

def created_time
  @created_time
end

#descriptionString

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

Returns:

  • (String)


1064
1065
1066
# File 'lib/google/apis/drive_v3/classes.rb', line 1064

def description
  @description
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)


1070
1071
1072
# File 'lib/google/apis/drive_v3/classes.rb', line 1070

def drive_id
  @drive_id
end

#explicitly_trashedBoolean Also known as: explicitly_trashed?

Whether the file has been explicitly trashed, as opposed to recursively trashed from a parent folder. Corresponds to the JSON property explicitlyTrashed

Returns:

  • (Boolean)


1076
1077
1078
# File 'lib/google/apis/drive_v3/classes.rb', line 1076

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>)


1082
1083
1084
# File 'lib/google/apis/drive_v3/classes.rb', line 1082

def export_links
  @export_links
end

#file_extensionString

The final component of fullFileExtension. This is only available for files with binary content in Google Drive. Corresponds to the JSON property fileExtension

Returns:

  • (String)


1088
1089
1090
# File 'lib/google/apis/drive_v3/classes.rb', line 1088

def file_extension
  @file_extension
end

#folder_color_rgbString

The color for a folder or shortcut to a folder as an RGB hex string. The supported colors are published in the folderColorPalette field of the About resource. If an unsupported color is specified, the closest color in the palette will be used instead. Corresponds to the JSON property folderColorRgb

Returns:

  • (String)


1097
1098
1099
# File 'lib/google/apis/drive_v3/classes.rb', line 1097

def folder_color_rgb
  @folder_color_rgb
end

#full_file_extensionString

The full file extension extracted from the name field. May contain multiple concatenated extensions, such as "tar.gz". This is only available for files with binary content in Google Drive. This is automatically updated when the name field changes, however it is not cleared if the new name does not contain a valid extension. Corresponds to the JSON property fullFileExtension

Returns:

  • (String)


1106
1107
1108
# File 'lib/google/apis/drive_v3/classes.rb', line 1106

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)


1112
1113
1114
# File 'lib/google/apis/drive_v3/classes.rb', line 1112

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)


1120
1121
1122
# File 'lib/google/apis/drive_v3/classes.rb', line 1120

def has_thumbnail
  @has_thumbnail
end

#head_revision_idString

The ID of the file's head revision. This is currently only available for files with binary content in Google Drive. Corresponds to the JSON property headRevisionId

Returns:

  • (String)


1127
1128
1129
# File 'lib/google/apis/drive_v3/classes.rb', line 1127

def head_revision_id
  @head_revision_id
end

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

Returns:

  • (String)


1132
1133
1134
# File 'lib/google/apis/drive_v3/classes.rb', line 1132

def icon_link
  @icon_link
end

#idString

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

Returns:

  • (String)


1137
1138
1139
# File 'lib/google/apis/drive_v3/classes.rb', line 1137

def id
  @id
end

#image_media_metadataGoogle::Apis::DriveV3::File::ImageMediaMetadata

Additional metadata about image media, if available. Corresponds to the JSON property imageMediaMetadata



1142
1143
1144
# File 'lib/google/apis/drive_v3/classes.rb', line 1142

def 
  @image_media_metadata
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)


1147
1148
1149
# File 'lib/google/apis/drive_v3/classes.rb', line 1147

def is_app_authorized
  @is_app_authorized
end

#kindString

Identifies what kind of resource this is. Value: the fixed string "drive#file". Corresponds to the JSON property kind

Returns:

  • (String)


1153
1154
1155
# File 'lib/google/apis/drive_v3/classes.rb', line 1153

def kind
  @kind
end

#label_infoGoogle::Apis::DriveV3::File::LabelInfo

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



1158
1159
1160
# File 'lib/google/apis/drive_v3/classes.rb', line 1158

def label_info
  @label_info
end

#last_modifying_userGoogle::Apis::DriveV3::User

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



1163
1164
1165
# File 'lib/google/apis/drive_v3/classes.rb', line 1163

def last_modifying_user
  @last_modifying_user
end

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



1169
1170
1171
# File 'lib/google/apis/drive_v3/classes.rb', line 1169

def 
  @link_share_metadata
end

#md5_checksumString

The MD5 checksum for the content of the file. This is only applicable to files with binary content in Google Drive. Corresponds to the JSON property md5Checksum

Returns:

  • (String)


1175
1176
1177
# File 'lib/google/apis/drive_v3/classes.rb', line 1175

def md5_checksum
  @md5_checksum
end

#mime_typeString

The MIME type of the file. Google Drive will attempt to automatically detect an appropriate value from uploaded content if no value is provided. The value cannot be changed unless a new revision is uploaded. If a file is created with a Google Doc MIME type, the uploaded content will be imported if possible. The supported import formats are published in the About resource. Corresponds to the JSON property mimeType

Returns:

  • (String)


1186
1187
1188
# File 'lib/google/apis/drive_v3/classes.rb', line 1186

def mime_type
  @mime_type
end

#modified_by_meBoolean Also known as: modified_by_me?

Whether the file has been modified by this user. Corresponds to the JSON property modifiedByMe

Returns:

  • (Boolean)


1191
1192
1193
# File 'lib/google/apis/drive_v3/classes.rb', line 1191

def modified_by_me
  @modified_by_me
end

#modified_by_me_timeDateTime

The last time the file was modified by the user (RFC 3339 date-time). Corresponds to the JSON property modifiedByMeTime

Returns:

  • (DateTime)


1197
1198
1199
# File 'lib/google/apis/drive_v3/classes.rb', line 1197

def modified_by_me_time
  @modified_by_me_time
end

#modified_timeDateTime

The last time the file was modified by anyone (RFC 3339 date-time). Note that setting modifiedTime will also update modifiedByMeTime for the user. Corresponds to the JSON property modifiedTime

Returns:

  • (DateTime)


1203
1204
1205
# File 'lib/google/apis/drive_v3/classes.rb', line 1203

def modified_time
  @modified_time
end

#nameString

The name of the file. This is not necessarily unique within a folder. Note that for immutable items such as the top level folders of shared drives, My Drive root folder, and Application Data folder the name is constant. Corresponds to the JSON property name

Returns:

  • (String)


1210
1211
1212
# File 'lib/google/apis/drive_v3/classes.rb', line 1210

def name
  @name
end

#original_filenameString

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

Returns:

  • (String)


1217
1218
1219
# File 'lib/google/apis/drive_v3/classes.rb', line 1217

def original_filename
  @original_filename
end

#owned_by_meBoolean Also known as: owned_by_me?

Whether the user owns the file. Not populated for items in shared drives. Corresponds to the JSON property ownedByMe

Returns:

  • (Boolean)


1222
1223
1224
# File 'lib/google/apis/drive_v3/classes.rb', line 1222

def owned_by_me
  @owned_by_me
end

#ownersArray<Google::Apis::DriveV3::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:



1229
1230
1231
# File 'lib/google/apis/drive_v3/classes.rb', line 1229

def owners
  @owners
end

#parentsArray<String>

The IDs of the parent folders which contain the file. If not specified as part of a create 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 must use the addParents and removeParents parameters to modify the parents list. Corresponds to the JSON property parents

Returns:

  • (Array<String>)


1239
1240
1241
# File 'lib/google/apis/drive_v3/classes.rb', line 1239

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>)


1244
1245
1246
# File 'lib/google/apis/drive_v3/classes.rb', line 1244

def permission_ids
  @permission_ids
end

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

The full list of permissions for the file. This is only available if the requesting user can share the file. Not populated for items in shared drives. Corresponds to the JSON property permissions



1250
1251
1252
# File 'lib/google/apis/drive_v3/classes.rb', line 1250

def permissions
  @permissions
end

#propertiesHash<String,String>

A collection of arbitrary key-value pairs which are visible to all apps. Entries with null values are cleared in update and copy requests. Corresponds to the JSON property properties

Returns:

  • (Hash<String,String>)


1256
1257
1258
# File 'lib/google/apis/drive_v3/classes.rb', line 1256

def properties
  @properties
end

#quota_bytes_usedFixnum

The number of storage quota bytes used by the file. This includes the head revision as well as previous revisions with keepForever enabled. Corresponds to the JSON property quotaBytesUsed

Returns:

  • (Fixnum)


1262
1263
1264
# File 'lib/google/apis/drive_v3/classes.rb', line 1262

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)


1267
1268
1269
# File 'lib/google/apis/drive_v3/classes.rb', line 1267

def resource_key
  @resource_key
end

#sha1_checksumString

The SHA1 checksum associated with this file, if available. 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 sha1Checksum

Returns:

  • (String)


1274
1275
1276
# File 'lib/google/apis/drive_v3/classes.rb', line 1274

def sha1_checksum
  @sha1_checksum
end

#sha256_checksumString

The SHA256 checksum associated with this file, if available. 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 sha256Checksum

Returns:

  • (String)


1281
1282
1283
# File 'lib/google/apis/drive_v3/classes.rb', line 1281

def sha256_checksum
  @sha256_checksum
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)


1286
1287
1288
# File 'lib/google/apis/drive_v3/classes.rb', line 1286

def shared
  @shared
end

#shared_with_me_timeDateTime

The time at which the file was shared with the user, if applicable (RFC 3339 date-time). Corresponds to the JSON property sharedWithMeTime

Returns:

  • (DateTime)


1293
1294
1295
# File 'lib/google/apis/drive_v3/classes.rb', line 1293

def shared_with_me_time
  @shared_with_me_time
end

#sharing_userGoogle::Apis::DriveV3::User

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



1298
1299
1300
# File 'lib/google/apis/drive_v3/classes.rb', line 1298

def sharing_user
  @sharing_user
end

#shortcut_detailsGoogle::Apis::DriveV3::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



1304
1305
1306
# File 'lib/google/apis/drive_v3/classes.rb', line 1304

def shortcut_details
  @shortcut_details
end

#sizeFixnum

The size of the file's content in bytes. This is applicable to binary files in Google Drive and Google Docs files. Corresponds to the JSON property size

Returns:

  • (Fixnum)


1310
1311
1312
# File 'lib/google/apis/drive_v3/classes.rb', line 1310

def size
  @size
end

#spacesArray<String>

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

Returns:

  • (Array<String>)


1316
1317
1318
# File 'lib/google/apis/drive_v3/classes.rb', line 1316

def spaces
  @spaces
end

#starredBoolean Also known as: starred?

Whether the user has starred the file. Corresponds to the JSON property starred

Returns:

  • (Boolean)


1321
1322
1323
# File 'lib/google/apis/drive_v3/classes.rb', line 1321

def starred
  @starred
end

#team_drive_idString

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

Returns:

  • (String)


1327
1328
1329
# File 'lib/google/apis/drive_v3/classes.rb', line 1327

def team_drive_id
  @team_drive_id
end

A short-lived link to the file's thumbnail, if available. 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)


1335
1336
1337
# File 'lib/google/apis/drive_v3/classes.rb', line 1335

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)


1340
1341
1342
# File 'lib/google/apis/drive_v3/classes.rb', line 1340

def thumbnail_version
  @thumbnail_version
end

#trashedBoolean Also known as: trashed?

Whether the file has been trashed, either explicitly or from a trashed parent folder. Only the owner may trash a file. The trashed item is excluded from all files.list responses returned for any user who does not own the file. However, all users with access to the file can see the trashed item metadata in an API response. All users with access can copy, download, export, and share the file. Corresponds to the JSON property trashed

Returns:

  • (Boolean)


1349
1350
1351
# File 'lib/google/apis/drive_v3/classes.rb', line 1349

def trashed
  @trashed
end

#trashed_timeDateTime

The time that the item was trashed (RFC 3339 date-time). Only populated for items in shared drives. Corresponds to the JSON property trashedTime

Returns:

  • (DateTime)


1356
1357
1358
# File 'lib/google/apis/drive_v3/classes.rb', line 1356

def trashed_time
  @trashed_time
end

#trashing_userGoogle::Apis::DriveV3::User

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



1361
1362
1363
# File 'lib/google/apis/drive_v3/classes.rb', line 1361

def trashing_user
  @trashing_user
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 user. Corresponds to the JSON property version

Returns:

  • (Fixnum)


1367
1368
1369
# File 'lib/google/apis/drive_v3/classes.rb', line 1367

def version
  @version
end

#video_media_metadataGoogle::Apis::DriveV3::File::VideoMediaMetadata

Additional metadata about video media. This may not be available immediately upon upload. Corresponds to the JSON property videoMediaMetadata



1373
1374
1375
# File 'lib/google/apis/drive_v3/classes.rb', line 1373

def 
  @video_media_metadata
end

#viewed_by_meBoolean Also known as: viewed_by_me?

Whether the file has been viewed by this user. Corresponds to the JSON property viewedByMe

Returns:

  • (Boolean)


1378
1379
1380
# File 'lib/google/apis/drive_v3/classes.rb', line 1378

def viewed_by_me
  @viewed_by_me
end

#viewed_by_me_timeDateTime

The last time the file was viewed by the user (RFC 3339 date-time). Corresponds to the JSON property viewedByMeTime

Returns:

  • (DateTime)


1384
1385
1386
# File 'lib/google/apis/drive_v3/classes.rb', line 1384

def viewed_by_me_time
  @viewed_by_me_time
end

#viewers_can_copy_contentBoolean Also known as: viewers_can_copy_content?

Deprecated - use copyRequiresWriterPermission instead. Corresponds to the JSON property viewersCanCopyContent

Returns:

  • (Boolean)


1389
1390
1391
# File 'lib/google/apis/drive_v3/classes.rb', line 1389

def viewers_can_copy_content
  @viewers_can_copy_content
end

A link for downloading the content of the file in a browser. This is only available for files with binary content in Google Drive. Corresponds to the JSON property webContentLink

Returns:

  • (String)


1396
1397
1398
# File 'lib/google/apis/drive_v3/classes.rb', line 1396

def web_content_link
  @web_content_link
end

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

Returns:

  • (String)


1401
1402
1403
# File 'lib/google/apis/drive_v3/classes.rb', line 1401

def web_view_link
  @web_view_link
end

#writers_can_shareBoolean Also known as: writers_can_share?

Whether users with only writer permission can modify the file's permissions. Not populated for items in shared drives. Corresponds to the JSON property writersCanShare

Returns:

  • (Boolean)


1407
1408
1409
# File 'lib/google/apis/drive_v3/classes.rb', line 1407

def writers_can_share
  @writers_can_share
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
# File 'lib/google/apis/drive_v3/classes.rb', line 1415

def update!(**args)
  @app_properties = args[:app_properties] if args.key?(:app_properties)
  @capabilities = args[:capabilities] if args.key?(:capabilities)
  @content_hints = args[:content_hints] if args.key?(:content_hints)
  @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)
  @created_time = args[:created_time] if args.key?(:created_time)
  @description = args[:description] if args.key?(:description)
  @drive_id = args[:drive_id] if args.key?(:drive_id)
  @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)
  @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)
  @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)
  @last_modifying_user = args[:last_modifying_user] if args.key?(:last_modifying_user)
  @link_share_metadata = args[:link_share_metadata] if args.key?(:link_share_metadata)
  @md5_checksum = args[:md5_checksum] if args.key?(:md5_checksum)
  @mime_type = args[:mime_type] if args.key?(:mime_type)
  @modified_by_me = args[:modified_by_me] if args.key?(:modified_by_me)
  @modified_by_me_time = args[:modified_by_me_time] if args.key?(:modified_by_me_time)
  @modified_time = args[:modified_time] if args.key?(:modified_time)
  @name = args[:name] if args.key?(:name)
  @original_filename = args[:original_filename] if args.key?(:original_filename)
  @owned_by_me = args[:owned_by_me] if args.key?(:owned_by_me)
  @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)
  @sha1_checksum = args[:sha1_checksum] if args.key?(:sha1_checksum)
  @sha256_checksum = args[:sha256_checksum] if args.key?(:sha256_checksum)
  @shared = args[:shared] if args.key?(:shared)
  @shared_with_me_time = args[:shared_with_me_time] if args.key?(:shared_with_me_time)
  @sharing_user = args[:sharing_user] if args.key?(:sharing_user)
  @shortcut_details = args[:shortcut_details] if args.key?(:shortcut_details)
  @size = args[:size] if args.key?(:size)
  @spaces = args[:spaces] if args.key?(:spaces)
  @starred = args[:starred] if args.key?(:starred)
  @team_drive_id = args[:team_drive_id] if args.key?(:team_drive_id)
  @thumbnail_link = args[:thumbnail_link] if args.key?(:thumbnail_link)
  @thumbnail_version = args[:thumbnail_version] if args.key?(:thumbnail_version)
  @trashed = args[:trashed] if args.key?(:trashed)
  @trashed_time = args[:trashed_time] if args.key?(:trashed_time)
  @trashing_user = args[:trashing_user] if args.key?(:trashing_user)
  @version = args[:version] if args.key?(:version)
  @video_media_metadata = args[:video_media_metadata] if args.key?(:video_media_metadata)
  @viewed_by_me = args[:viewed_by_me] if args.key?(:viewed_by_me)
  @viewed_by_me_time = args[:viewed_by_me_time] if args.key?(:viewed_by_me_time)
  @viewers_can_copy_content = args[:viewers_can_copy_content] if args.key?(:viewers_can_copy_content)
  @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