Class: Google::Apis::StorageV1::Object
- Inherits:
-
Object
- Object
- Google::Apis::StorageV1::Object
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/storage_v1/classes.rb,
lib/google/apis/storage_v1/representations.rb,
lib/google/apis/storage_v1/representations.rb
Overview
An object.
Defined Under Namespace
Classes: Contexts, CustomerEncryption, Owner, Retention
Instance Attribute Summary collapse
-
#acl ⇒ Array<Google::Apis::StorageV1::ObjectAccessControl>
Access controls on the object.
-
#bucket ⇒ String
The name of the bucket containing this object.
-
#cache_control ⇒ String
Cache-Control directive for the object data.
-
#component_count ⇒ Fixnum
Number of underlying components that make up this object.
-
#content_disposition ⇒ String
Content-Disposition of the object data.
-
#content_encoding ⇒ String
Content-Encoding of the object data.
-
#content_language ⇒ String
Content-Language of the object data.
-
#content_type ⇒ String
Content-Type of the object data.
-
#contexts ⇒ Google::Apis::StorageV1::Object::Contexts
User-defined or system-defined object contexts.
-
#crc32c ⇒ String
CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64 in big-endian byte order.
-
#custom_time ⇒ DateTime
A timestamp in RFC 3339 format specified by the user for an object.
-
#customer_encryption ⇒ Google::Apis::StorageV1::Object::CustomerEncryption
Metadata of customer-supplied encryption key, if the object is encrypted by such a key.
-
#etag ⇒ String
HTTP 1.1 Entity tag for the object.
-
#event_based_hold ⇒ Boolean
(also: #event_based_hold?)
Whether an object is under event-based hold.
-
#generation ⇒ Fixnum
The content generation of this object.
-
#hard_delete_time ⇒ DateTime
This is the time (in the future) when the soft-deleted object will no longer be restorable.
-
#id ⇒ String
The ID of the object, including the bucket name, object name, and generation number.
-
#kind ⇒ String
The kind of item this is.
-
#kms_key_name ⇒ String
Not currently supported.
-
#md5_hash ⇒ String
MD5 hash of the data; encoded using base64.
-
#media_link ⇒ String
Media download link.
-
#metadata ⇒ Hash<String,String>
User-provided metadata, in key/value pairs.
-
#metageneration ⇒ Fixnum
The version of the metadata for this object at this generation.
-
#name ⇒ String
The name of the object.
-
#owner ⇒ Google::Apis::StorageV1::Object::Owner
The owner of the object.
-
#restore_token ⇒ String
Restore token used to differentiate deleted objects with the same name and generation.
-
#retention ⇒ Google::Apis::StorageV1::Object::Retention
A collection of object level retention parameters.
-
#retention_expiration_time ⇒ DateTime
A server-determined value that specifies the earliest time that the object's retention period expires.
-
#self_link ⇒ String
The link to this object.
-
#size ⇒ Fixnum
Content-Length of the data in bytes.
-
#soft_delete_time ⇒ DateTime
The time at which the object became soft-deleted in RFC 3339 format.
-
#storage_class ⇒ String
Storage class of the object.
-
#temporary_hold ⇒ Boolean
(also: #temporary_hold?)
Whether an object is under temporary hold.
-
#time_created ⇒ DateTime
The creation time of the object in RFC 3339 format.
-
#time_deleted ⇒ DateTime
The time at which the object became noncurrent in RFC 3339 format.
-
#time_finalized ⇒ DateTime
The time when the object was finalized.
-
#time_storage_class_updated ⇒ DateTime
The time at which the object's storage class was last changed.
-
#updated ⇒ DateTime
The modification time of the object metadata in RFC 3339 format.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Object
constructor
A new instance of Object.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Object
Returns a new instance of Object.
2690 2691 2692 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2690 def initialize(**args) update!(**args) end |
Instance Attribute Details
#acl ⇒ Array<Google::Apis::StorageV1::ObjectAccessControl>
Access controls on the object.
Corresponds to the JSON property acl
2456 2457 2458 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2456 def acl @acl end |
#bucket ⇒ String
The name of the bucket containing this object.
Corresponds to the JSON property bucket
2461 2462 2463 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2461 def bucket @bucket end |
#cache_control ⇒ String
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
2467 2468 2469 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2467 def cache_control @cache_control end |
#component_count ⇒ Fixnum
Number of underlying components that make up this object. Components are
accumulated by compose operations.
Corresponds to the JSON property componentCount
2473 2474 2475 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2473 def component_count @component_count end |
#content_disposition ⇒ String
Content-Disposition of the object data.
Corresponds to the JSON property contentDisposition
2478 2479 2480 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2478 def content_disposition @content_disposition end |
#content_encoding ⇒ String
Content-Encoding of the object data.
Corresponds to the JSON property contentEncoding
2483 2484 2485 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2483 def content_encoding @content_encoding end |
#content_language ⇒ String
Content-Language of the object data.
Corresponds to the JSON property contentLanguage
2488 2489 2490 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2488 def content_language @content_language end |
#content_type ⇒ String
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
2494 2495 2496 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2494 def content_type @content_type end |
#contexts ⇒ Google::Apis::StorageV1::Object::Contexts
User-defined or system-defined object contexts. Each object context is a key-
payload pair, where the key provides the identification and the payload holds
the associated value and additional metadata.
Corresponds to the JSON property contexts
2501 2502 2503 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2501 def contexts @contexts end |
#crc32c ⇒ String
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 Data Validation and Change Detection.
Corresponds to the JSON property crc32c
2509 2510 2511 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2509 def crc32c @crc32c end |
#custom_time ⇒ DateTime
A timestamp in RFC 3339 format specified by the user for an object.
Corresponds to the JSON property customTime
2514 2515 2516 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2514 def custom_time @custom_time end |
#customer_encryption ⇒ Google::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
2520 2521 2522 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2520 def customer_encryption @customer_encryption end |
#etag ⇒ String
HTTP 1.1 Entity tag for the object.
Corresponds to the JSON property etag
2525 2526 2527 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2525 def etag @etag end |
#event_based_hold ⇒ Boolean Also known as: event_based_hold?
Whether an object is under event-based hold. Event-based hold is a way to
retain objects until an event occurs, which is signified by the hold's release
(i.e. this value is set to false). After being released (set to false), 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 the loan being paid in full. In this example, these objects will be
held intact for any number of years until the event has occurred (event-based
hold on the object is released) and then 3 more years after that. That means
retention duration of the objects begins from the moment event-based hold
transitioned from true to false.
Corresponds to the JSON property eventBasedHold
2540 2541 2542 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2540 def event_based_hold @event_based_hold end |
#generation ⇒ Fixnum
The content generation of this object. Used for object versioning.
Corresponds to the JSON property generation
2546 2547 2548 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2546 def generation @generation end |
#hard_delete_time ⇒ DateTime
This is the time (in the future) when the soft-deleted object will no longer
be restorable. It is equal to the soft delete time plus the current soft
delete retention duration of the bucket.
Corresponds to the JSON property hardDeleteTime
2553 2554 2555 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2553 def hard_delete_time @hard_delete_time end |
#id ⇒ String
The ID of the object, including the bucket name, object name, and generation
number.
Corresponds to the JSON property id
2559 2560 2561 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2559 def id @id end |
#kind ⇒ String
The kind of item this is. For objects, this is always storage#object.
Corresponds to the JSON property kind
2564 2565 2566 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2564 def kind @kind end |
#kms_key_name ⇒ String
Not currently supported. Specifying the parameter causes the request to fail
with status code 400 - Bad Request.
Corresponds to the JSON property kmsKeyName
2570 2571 2572 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2570 def kms_key_name @kms_key_name end |
#md5_hash ⇒ String
MD5 hash of the data; encoded using base64. For more information about using
the MD5 hash, see Data Validation and Change Detection.
Corresponds to the JSON property md5Hash
2577 2578 2579 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2577 def md5_hash @md5_hash end |
#media_link ⇒ String
Media download link.
Corresponds to the JSON property mediaLink
2582 2583 2584 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2582 def media_link @media_link end |
#metadata ⇒ Hash<String,String>
User-provided metadata, in key/value pairs.
Corresponds to the JSON property metadata
2587 2588 2589 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2587 def @metadata end |
#metageneration ⇒ Fixnum
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
2595 2596 2597 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2595 def @metageneration end |
#name ⇒ String
The name of the object. Required if not specified by URL parameter.
Corresponds to the JSON property name
2600 2601 2602 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2600 def name @name end |
#owner ⇒ Google::Apis::StorageV1::Object::Owner
The owner of the object. This will always be the uploader of the object.
Corresponds to the JSON property owner
2605 2606 2607 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2605 def owner @owner end |
#restore_token ⇒ String
Restore token used to differentiate deleted objects with the same name and
generation. This field is only returned for deleted objects in hierarchical
namespace buckets.
Corresponds to the JSON property restoreToken
2612 2613 2614 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2612 def restore_token @restore_token end |
#retention ⇒ Google::Apis::StorageV1::Object::Retention
A collection of object level retention parameters.
Corresponds to the JSON property retention
2617 2618 2619 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2617 def retention @retention end |
#retention_expiration_time ⇒ DateTime
A server-determined value that specifies the earliest time that the object's
retention period expires. This value 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 temporary hold is set (so that the user can reason about
policy without having to first unset the temporary hold).
Corresponds to the JSON property retentionExpirationTime
2627 2628 2629 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2627 def retention_expiration_time @retention_expiration_time end |
#self_link ⇒ String
The link to this object.
Corresponds to the JSON property selfLink
2632 2633 2634 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2632 def self_link @self_link end |
#size ⇒ Fixnum
Content-Length of the data in bytes.
Corresponds to the JSON property size
2637 2638 2639 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2637 def size @size end |
#soft_delete_time ⇒ DateTime
The time at which the object became soft-deleted in RFC 3339 format.
Corresponds to the JSON property softDeleteTime
2642 2643 2644 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2642 def soft_delete_time @soft_delete_time end |
#storage_class ⇒ String
Storage class of the object.
Corresponds to the JSON property storageClass
2647 2648 2649 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2647 def storage_class @storage_class end |
#temporary_hold ⇒ Boolean Also known as: temporary_hold?
Whether an object is under temporary hold. While this flag 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. Note that unlike event-based hold, temporary hold
does not impact retention expiration time of an object.
Corresponds to the JSON property temporaryHold
2656 2657 2658 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2656 def temporary_hold @temporary_hold end |
#time_created ⇒ DateTime
The creation time of the object in RFC 3339 format.
Corresponds to the JSON property timeCreated
2662 2663 2664 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2662 def time_created @time_created end |
#time_deleted ⇒ DateTime
The time at which the object became noncurrent 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
2668 2669 2670 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2668 def time_deleted @time_deleted end |
#time_finalized ⇒ DateTime
The time when the object was finalized.
Corresponds to the JSON property timeFinalized
2673 2674 2675 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2673 def time_finalized @time_finalized end |
#time_storage_class_updated ⇒ DateTime
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
2679 2680 2681 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2679 def time_storage_class_updated @time_storage_class_updated end |
#updated ⇒ DateTime
The modification time of the object metadata in RFC 3339 format. Set initially
to object creation time and then updated whenever any metadata of the object
changes. This includes changes made by a requester, such as modifying custom
metadata, as well as changes made by Cloud Storage on behalf of a requester,
such as changing the storage class based on an Object Lifecycle Configuration.
Corresponds to the JSON property updated
2688 2689 2690 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2688 def updated @updated end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 |
# File 'lib/google/apis/storage_v1/classes.rb', line 2695 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) @contexts = args[:contexts] if args.key?(:contexts) @crc32c = args[:crc32c] if args.key?(:crc32c) @custom_time = args[:custom_time] if args.key?(:custom_time) @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) @hard_delete_time = args[:hard_delete_time] if args.key?(:hard_delete_time) @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) @restore_token = args[:restore_token] if args.key?(:restore_token) @retention = args[:retention] if args.key?(:retention) @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) @soft_delete_time = args[:soft_delete_time] if args.key?(:soft_delete_time) @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_finalized = args[:time_finalized] if args.key?(:time_finalized) @time_storage_class_updated = args[:time_storage_class_updated] if args.key?(:time_storage_class_updated) @updated = args[:updated] if args.key?(:updated) end |