[][src]Struct google_storage1::Object

pub struct Object {
    pub generation: Option<String>,
    pub bucket: Option<String>,
    pub component_count: Option<i32>,
    pub media_link: Option<String>,
    pub kms_key_name: Option<String>,
    pub owner: Option<ObjectOwner>,
    pub cache_control: Option<String>,
    pub content_encoding: Option<String>,
    pub id: Option<String>,
    pub size: Option<String>,
    pub time_deleted: Option<String>,
    pub time_created: Option<String>,
    pub md5_hash: Option<String>,
    pub crc32c: Option<String>,
    pub etag: Option<String>,
    pub temporary_hold: Option<bool>,
    pub metadata: Option<HashMap<String, String>>,
    pub updated: Option<String>,
    pub content_type: Option<String>,
    pub content_language: Option<String>,
    pub customer_encryption: Option<ObjectCustomerEncryption>,
    pub metageneration: Option<String>,
    pub time_storage_class_updated: Option<String>,
    pub retention_expiration_time: Option<String>,
    pub event_based_hold: Option<bool>,
    pub kind: Option<String>,
    pub name: Option<String>,
    pub custom_time: Option<String>,
    pub acl: Option<Vec<ObjectAccessControl>>,
    pub content_disposition: Option<String>,
    pub self_link: Option<String>,
    pub storage_class: Option<String>,
}

An object.

Activities

This type is used in activities, which are methods you may call on this type or where this type is involved in. The list links the activity name, along with information about where it is used (one of request and response).

Fields

generation: Option<String>

The content generation of this object. Used for object versioning.

bucket: Option<String>

The name of the bucket containing this object.

component_count: Option<i32>

Number of underlying components that make up this object. Components are accumulated by compose operations.

media_link: Option<String>

Media download link.

kms_key_name: Option<String>

Cloud KMS Key used to encrypt this object, if the object is encrypted by such a key.

owner: Option<ObjectOwner>

The owner of the object. This will always be the uploader of the object.

cache_control: Option<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.

content_encoding: Option<String>

Content-Encoding of the object data.

id: Option<String>

The ID of the object, including the bucket name, object name, and generation number.

size: Option<String>

Content-Length of the data in bytes.

time_deleted: Option<String>

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.

time_created: Option<String>

The creation time of the object in RFC 3339 format.

md5_hash: Option<String>

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

crc32c: Option<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 Hashes and ETags: Best Practices.

etag: Option<String>

HTTP 1.1 Entity tag for the object.

temporary_hold: Option<bool>

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.

metadata: Option<HashMap<String, String>>

User-provided metadata, in key/value pairs.

updated: Option<String>

The modification time of the object metadata in RFC 3339 format.

content_type: Option<String>

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

content_language: Option<String>

Content-Language of the object data.

customer_encryption: Option<ObjectCustomerEncryption>

Metadata of customer-supplied encryption key, if the object is encrypted by such a key.

metageneration: Option<String>

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.

time_storage_class_updated: Option<String>

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

retention_expiration_time: Option<String>

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

event_based_hold: Option<bool>

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.

kind: Option<String>

The kind of item this is. For objects, this is always storage#object.

name: Option<String>

The name of the object. Required if not specified by URL parameter.

custom_time: Option<String>

A timestamp in RFC 3339 format specified by the user for an object.

acl: Option<Vec<ObjectAccessControl>>

Access controls on the object.

content_disposition: Option<String>

Content-Disposition of the object data.

self_link: Option<String>

The link to this object.

storage_class: Option<String>

Storage class of the object.

Trait Implementations

impl Clone for Object[src]

impl Debug for Object[src]

impl Default for Object[src]

impl<'de> Deserialize<'de> for Object[src]

impl RequestValue for Object[src]

impl Resource for Object[src]

impl ResponseResult for Object[src]

impl Serialize for Object[src]

Auto Trait Implementations

impl RefUnwindSafe for Object

impl Send for Object

impl Sync for Object

impl Unpin for Object

impl UnwindSafe for Object

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Typeable for T where
    T: Any