Class: Google::Apis::StorageV1::Object

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

Overview

An object.

Defined Under Namespace

Classes: CustomerEncryption, Owner

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Object

Returns a new instance of Object



1191
1192
1193
# File 'generated/google/apis/storage_v1/classes.rb', line 1191

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

Instance Attribute Details

#aclArray<Google::Apis::StorageV1::ObjectAccessControl>

Access controls on the object. Corresponds to the JSON property acl



1007
1008
1009
# File 'generated/google/apis/storage_v1/classes.rb', line 1007

def acl
  @acl
end

#bucketString

The name of the bucket containing this object. Corresponds to the JSON property bucket

Returns:

  • (String)


1012
1013
1014
# File 'generated/google/apis/storage_v1/classes.rb', line 1012

def bucket
  @bucket
end

#cache_controlString

Cache-Control directive for the object data. If omitted, and the object is accessible to all anonymous users, the default will be public, max-age=3600. Corresponds to the JSON property cacheControl

Returns:

  • (String)


1018
1019
1020
# File 'generated/google/apis/storage_v1/classes.rb', line 1018

def cache_control
  @cache_control
end

#component_countFixnum

Number of underlying components that make up this object. Components are accumulated by compose operations. Corresponds to the JSON property componentCount

Returns:

  • (Fixnum)


1024
1025
1026
# File 'generated/google/apis/storage_v1/classes.rb', line 1024

def component_count
  @component_count
end

#content_dispositionString

Content-Disposition of the object data. Corresponds to the JSON property contentDisposition

Returns:

  • (String)


1029
1030
1031
# File 'generated/google/apis/storage_v1/classes.rb', line 1029

def content_disposition
  @content_disposition
end

#content_encodingString

Content-Encoding of the object data. Corresponds to the JSON property contentEncoding

Returns:

  • (String)


1034
1035
1036
# File 'generated/google/apis/storage_v1/classes.rb', line 1034

def content_encoding
  @content_encoding
end

#content_languageString

Content-Language of the object data. Corresponds to the JSON property contentLanguage

Returns:

  • (String)


1039
1040
1041
# File 'generated/google/apis/storage_v1/classes.rb', line 1039

def content_language
  @content_language
end

#content_typeString

Content-Type of the object data. If an object is stored without a Content-Type, it is served as application/octet-stream. Corresponds to the JSON property contentType

Returns:

  • (String)


1045
1046
1047
# File 'generated/google/apis/storage_v1/classes.rb', line 1045

def content_type
  @content_type
end

#crc32cString

CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64 in big-endian byte order. For more information about using the CRC32c checksum, see Hashes and ETags: Best Practices. Corresponds to the JSON property crc32c

Returns:

  • (String)


1052
1053
1054
# File 'generated/google/apis/storage_v1/classes.rb', line 1052

def crc32c
  @crc32c
end

#customer_encryptionGoogle::Apis::StorageV1::Object::CustomerEncryption

Metadata of customer-supplied encryption key, if the object is encrypted by such a key. Corresponds to the JSON property customerEncryption



1058
1059
1060
# File 'generated/google/apis/storage_v1/classes.rb', line 1058

def customer_encryption
  @customer_encryption
end

#etagString

HTTP 1.1 Entity tag for the object. Corresponds to the JSON property etag

Returns:

  • (String)


1063
1064
1065
# File 'generated/google/apis/storage_v1/classes.rb', line 1063

def etag
  @etag
end

#event_based_holdBoolean Also known as: event_based_hold?

Defines the Event-Based hold for an object. Event-Based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here bucket-level retention is 3 years and the event is loan being paid in full. In this example these objects will be held intact for any number of years until the event has occurred (hold is released) and then 3 more years after that. Corresponds to the JSON property eventBasedHold

Returns:

  • (Boolean)


1075
1076
1077
# File 'generated/google/apis/storage_v1/classes.rb', line 1075

def event_based_hold
  @event_based_hold
end

#generationFixnum

The content generation of this object. Used for object versioning. Corresponds to the JSON property generation

Returns:

  • (Fixnum)


1081
1082
1083
# File 'generated/google/apis/storage_v1/classes.rb', line 1081

def generation
  @generation
end

#idString

The ID of the object, including the bucket name, object name, and generation number. Corresponds to the JSON property id

Returns:

  • (String)


1087
1088
1089
# File 'generated/google/apis/storage_v1/classes.rb', line 1087

def id
  @id
end

#kindString

The kind of item this is. For objects, this is always storage#object. Corresponds to the JSON property kind

Returns:

  • (String)


1092
1093
1094
# File 'generated/google/apis/storage_v1/classes.rb', line 1092

def kind
  @kind
end

#kms_key_nameString

Cloud KMS Key used to encrypt this object, if the object is encrypted by such a key. Limited availability; usable only by enabled projects. Corresponds to the JSON property kmsKeyName

Returns:

  • (String)


1098
1099
1100
# File 'generated/google/apis/storage_v1/classes.rb', line 1098

def kms_key_name
  @kms_key_name
end

#md5_hashString

MD5 hash of the data; encoded using base64. For more information about using the MD5 hash, see Hashes and ETags: Best Practices. Corresponds to the JSON property md5Hash

Returns:

  • (String)


1104
1105
1106
# File 'generated/google/apis/storage_v1/classes.rb', line 1104

def md5_hash
  @md5_hash
end

Media download link. Corresponds to the JSON property mediaLink

Returns:

  • (String)


1109
1110
1111
# File 'generated/google/apis/storage_v1/classes.rb', line 1109

def media_link
  @media_link
end

#metadataHash<String,String>

User-provided metadata, in key/value pairs. Corresponds to the JSON property metadata

Returns:

  • (Hash<String,String>)


1114
1115
1116
# File 'generated/google/apis/storage_v1/classes.rb', line 1114

def 
  @metadata
end

#metagenerationFixnum

The version of the metadata for this object at this generation. Used for preconditions and for detecting changes in metadata. A metageneration number is only meaningful in the context of a particular generation of a particular object. Corresponds to the JSON property metageneration

Returns:

  • (Fixnum)


1122
1123
1124
# File 'generated/google/apis/storage_v1/classes.rb', line 1122

def metageneration
  @metageneration
end

#nameString

The name of the object. Required if not specified by URL parameter. Corresponds to the JSON property name

Returns:

  • (String)


1127
1128
1129
# File 'generated/google/apis/storage_v1/classes.rb', line 1127

def name
  @name
end

#ownerGoogle::Apis::StorageV1::Object::Owner

The owner of the object. This will always be the uploader of the object. Corresponds to the JSON property owner



1132
1133
1134
# File 'generated/google/apis/storage_v1/classes.rb', line 1132

def owner
  @owner
end

#retention_expiration_timeDateTime

Specifies the earliest time that the object's retention period expires. This value is server-determined and is in RFC 3339 format. Note 1: This field is not provided for objects with an active Event-Based hold, since retention expiration is unknown until the hold is removed. Note 2: This value can be provided even when TemporaryHold is set (so that the user can reason about policy without having to first unset the TemporaryHold). Corresponds to the JSON property retentionExpirationTime

Returns:

  • (DateTime)


1142
1143
1144
# File 'generated/google/apis/storage_v1/classes.rb', line 1142

def retention_expiration_time
  @retention_expiration_time
end

The link to this object. Corresponds to the JSON property selfLink

Returns:

  • (String)


1147
1148
1149
# File 'generated/google/apis/storage_v1/classes.rb', line 1147

def self_link
  @self_link
end

#sizeFixnum

Content-Length of the data in bytes. Corresponds to the JSON property size

Returns:

  • (Fixnum)


1152
1153
1154
# File 'generated/google/apis/storage_v1/classes.rb', line 1152

def size
  @size
end

#storage_classString

Storage class of the object. Corresponds to the JSON property storageClass

Returns:

  • (String)


1157
1158
1159
# File 'generated/google/apis/storage_v1/classes.rb', line 1157

def storage_class
  @storage_class
end

#temporary_holdBoolean Also known as: temporary_hold?

Defines the temporary hold for an object. This flag is used to enforce a temporary hold on an object. While it is set to true, the object is protected against deletion and overwrites. A common use case of this flag is regulatory investigations where objects need to be retained while the investigation is ongoing. Corresponds to the JSON property temporaryHold

Returns:

  • (Boolean)


1166
1167
1168
# File 'generated/google/apis/storage_v1/classes.rb', line 1166

def temporary_hold
  @temporary_hold
end

#time_createdDateTime

The creation time of the object in RFC 3339 format. Corresponds to the JSON property timeCreated

Returns:

  • (DateTime)


1172
1173
1174
# File 'generated/google/apis/storage_v1/classes.rb', line 1172

def time_created
  @time_created
end

#time_deletedDateTime

The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted. Corresponds to the JSON property timeDeleted

Returns:

  • (DateTime)


1178
1179
1180
# File 'generated/google/apis/storage_v1/classes.rb', line 1178

def time_deleted
  @time_deleted
end

#time_storage_class_updatedDateTime

The time at which the object's storage class was last changed. When the object is initially created, it will be set to timeCreated. Corresponds to the JSON property timeStorageClassUpdated

Returns:

  • (DateTime)


1184
1185
1186
# File 'generated/google/apis/storage_v1/classes.rb', line 1184

def time_storage_class_updated
  @time_storage_class_updated
end

#updatedDateTime

The modification time of the object metadata in RFC 3339 format. Corresponds to the JSON property updated

Returns:

  • (DateTime)


1189
1190
1191
# File 'generated/google/apis/storage_v1/classes.rb', line 1189

def updated
  @updated
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
# File 'generated/google/apis/storage_v1/classes.rb', line 1196

def update!(**args)
  @acl = args[:acl] if args.key?(:acl)
  @bucket = args[:bucket] if args.key?(:bucket)
  @cache_control = args[:cache_control] if args.key?(:cache_control)
  @component_count = args[:component_count] if args.key?(:component_count)
  @content_disposition = args[:content_disposition] if args.key?(:content_disposition)
  @content_encoding = args[:content_encoding] if args.key?(:content_encoding)
  @content_language = args[:content_language] if args.key?(:content_language)
  @content_type = args[:content_type] if args.key?(:content_type)
  @crc32c = args[:crc32c] if args.key?(:crc32c)
  @customer_encryption = args[:customer_encryption] if args.key?(:customer_encryption)
  @etag = args[:etag] if args.key?(:etag)
  @event_based_hold = args[:event_based_hold] if args.key?(:event_based_hold)
  @generation = args[:generation] if args.key?(:generation)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
  @md5_hash = args[:md5_hash] if args.key?(:md5_hash)
  @media_link = args[:media_link] if args.key?(:media_link)
  @metadata = args[:metadata] if args.key?(:metadata)
  @metageneration = args[:metageneration] if args.key?(:metageneration)
  @name = args[:name] if args.key?(:name)
  @owner = args[:owner] if args.key?(:owner)
  @retention_expiration_time = args[:retention_expiration_time] if args.key?(:retention_expiration_time)
  @self_link = args[:self_link] if args.key?(:self_link)
  @size = args[:size] if args.key?(:size)
  @storage_class = args[:storage_class] if args.key?(:storage_class)
  @temporary_hold = args[:temporary_hold] if args.key?(:temporary_hold)
  @time_created = args[:time_created] if args.key?(:time_created)
  @time_deleted = args[:time_deleted] if args.key?(:time_deleted)
  @time_storage_class_updated = args[:time_storage_class_updated] if args.key?(:time_storage_class_updated)
  @updated = args[:updated] if args.key?(:updated)
end