RewriteObjectRequest

Struct RewriteObjectRequest 

Source
#[non_exhaustive]
pub struct RewriteObjectRequest {
Show 23 fields pub destination_name: String, pub destination_bucket: String, pub destination_kms_key: String, pub destination: Option<Object>, pub source_bucket: String, pub source_object: String, pub source_generation: i64, pub rewrite_token: String, pub destination_predefined_acl: String, pub if_generation_match: Option<i64>, pub if_generation_not_match: Option<i64>, pub if_metageneration_match: Option<i64>, pub if_metageneration_not_match: Option<i64>, pub if_source_generation_match: Option<i64>, pub if_source_generation_not_match: Option<i64>, pub if_source_metageneration_match: Option<i64>, pub if_source_metageneration_not_match: Option<i64>, pub max_bytes_rewritten_per_call: i64, pub copy_source_encryption_algorithm: String, pub copy_source_encryption_key_bytes: Bytes, pub copy_source_encryption_key_sha256_bytes: Bytes, pub common_object_request_params: Option<CommonObjectRequestParams>, pub object_checksums: Option<ObjectChecksums>, /* private fields */
}
Expand description

Request message for RewriteObject. If the source object is encrypted using a Customer-Supplied Encryption Key the key information must be provided in the copy_source_encryption_algorithm, copy_source_encryption_key_bytes, and copy_source_encryption_key_sha256_bytes fields. If the destination object should be encrypted the keying information should be provided in the encryption_algorithm, encryption_key_bytes, and encryption_key_sha256_bytes fields of the common_object_request_params.customer_encryption field.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§destination_name: String

Required. Immutable. The name of the destination object. See the Naming Guidelines. Example: test.txt The name field by itself does not uniquely identify a Cloud Storage object. A Cloud Storage object is uniquely identified by the tuple of (bucket, object, generation).

§destination_bucket: String

Required. Immutable. The name of the bucket containing the destination object.

§destination_kms_key: String

Optional. The name of the Cloud KMS key that is used to encrypt the destination object. The Cloud KMS key must be located in same location as the object. If the parameter is not specified, the request uses the destination bucket’s default encryption key, if any, or else the Google-managed encryption key.

§destination: Option<Object>

Optional. Properties of the destination, post-rewrite object. The name, bucket and kms_key fields must not be populated (these values are specified in the destination_name, destination_bucket, and destination_kms_key fields). If destination is present it is used to construct the destination object’s metadata; otherwise the destination object’s metadata is copied from the source object.

§source_bucket: String

Required. Name of the bucket in which to find the source object.

§source_object: String

Required. Name of the source object.

§source_generation: i64

Optional. If present, selects a specific revision of the source object (as opposed to the latest version, the default).

§rewrite_token: String

Optional. Include this field (from the previous rewrite response) on each rewrite request after the first one, until the rewrite response ‘done’ flag is true. Calls that provide a rewriteToken can omit all other request fields, but if included those fields must match the values provided in the first rewrite request.

§destination_predefined_acl: String

Optional. Apply a predefined set of access controls to the destination object. Valid values are authenticatedRead, bucketOwnerFullControl, bucketOwnerRead, private, projectPrivate, or publicRead.

§if_generation_match: Option<i64>

Makes the operation conditional on whether the object’s current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.

§if_generation_not_match: Option<i64>

Makes the operation conditional on whether the object’s live generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.

§if_metageneration_match: Option<i64>

Makes the operation conditional on whether the destination object’s current metageneration matches the given value.

§if_metageneration_not_match: Option<i64>

Makes the operation conditional on whether the destination object’s current metageneration does not match the given value.

§if_source_generation_match: Option<i64>

Makes the operation conditional on whether the source object’s live generation matches the given value.

§if_source_generation_not_match: Option<i64>

Makes the operation conditional on whether the source object’s live generation does not match the given value.

§if_source_metageneration_match: Option<i64>

Makes the operation conditional on whether the source object’s current metageneration matches the given value.

§if_source_metageneration_not_match: Option<i64>

Makes the operation conditional on whether the source object’s current metageneration does not match the given value.

§max_bytes_rewritten_per_call: i64

Optional. The maximum number of bytes that are rewritten per rewrite request. Most callers shouldn’t need to specify this parameter - it is primarily in place to support testing. If specified the value must be an integral multiple of 1 MiB (1048576). Also, this only applies to requests where the source and destination span locations and/or storage classes. Finally, this value must not change across rewrite calls else you’ll get an error that the rewriteToken is invalid.

§copy_source_encryption_algorithm: String

Optional. The algorithm used to encrypt the source object, if any. Used if the source object was encrypted with a Customer-Supplied Encryption Key.

§copy_source_encryption_key_bytes: Bytes

Optional. The raw bytes (not base64-encoded) AES-256 encryption key used to encrypt the source object, if it was encrypted with a Customer-Supplied Encryption Key.

§copy_source_encryption_key_sha256_bytes: Bytes

Optional. The raw bytes (not base64-encoded) SHA256 hash of the encryption key used to encrypt the source object, if it was encrypted with a Customer-Supplied Encryption Key.

§common_object_request_params: Option<CommonObjectRequestParams>

Optional. A set of parameters common to Storage API requests concerning an object.

§object_checksums: Option<ObjectChecksums>

Optional. The checksums of the complete object. This is used to validate the destination object after rewriting.

Implementations§

Source§

impl RewriteObjectRequest

Source

pub fn new() -> Self

Source

pub fn set_destination_name<T: Into<String>>(self, v: T) -> Self

Sets the value of destination_name.

§Example
let x = RewriteObjectRequest::new().set_destination_name("example");
Source

pub fn set_destination_bucket<T: Into<String>>(self, v: T) -> Self

Sets the value of destination_bucket.

§Example
let x = RewriteObjectRequest::new().set_destination_bucket("example");
Source

pub fn set_destination_kms_key<T: Into<String>>(self, v: T) -> Self

Sets the value of destination_kms_key.

§Example
let x = RewriteObjectRequest::new().set_destination_kms_key("example");
Source

pub fn set_destination<T>(self, v: T) -> Self
where T: Into<Object>,

Sets the value of destination.

§Example
use google_cloud_storage::model::Object;
let x = RewriteObjectRequest::new().set_destination(Object::default()/* use setters */);
Source

pub fn set_or_clear_destination<T>(self, v: Option<T>) -> Self
where T: Into<Object>,

Sets or clears the value of destination.

§Example
use google_cloud_storage::model::Object;
let x = RewriteObjectRequest::new().set_or_clear_destination(Some(Object::default()/* use setters */));
let x = RewriteObjectRequest::new().set_or_clear_destination(None::<Object>);
Source

pub fn set_source_bucket<T: Into<String>>(self, v: T) -> Self

Sets the value of source_bucket.

§Example
let x = RewriteObjectRequest::new().set_source_bucket("example");
Source

pub fn set_source_object<T: Into<String>>(self, v: T) -> Self

Sets the value of source_object.

§Example
let x = RewriteObjectRequest::new().set_source_object("example");
Source

pub fn set_source_generation<T: Into<i64>>(self, v: T) -> Self

Sets the value of source_generation.

§Example
let x = RewriteObjectRequest::new().set_source_generation(42);
Source

pub fn set_rewrite_token<T: Into<String>>(self, v: T) -> Self

Sets the value of rewrite_token.

§Example
let x = RewriteObjectRequest::new().set_rewrite_token("example");
Source

pub fn set_destination_predefined_acl<T: Into<String>>(self, v: T) -> Self

Sets the value of destination_predefined_acl.

§Example
let x = RewriteObjectRequest::new().set_destination_predefined_acl("example");
Source

pub fn set_if_generation_match<T>(self, v: T) -> Self
where T: Into<i64>,

Sets the value of if_generation_match.

§Example
let x = RewriteObjectRequest::new().set_if_generation_match(42);
Source

pub fn set_or_clear_if_generation_match<T>(self, v: Option<T>) -> Self
where T: Into<i64>,

Sets or clears the value of if_generation_match.

§Example
let x = RewriteObjectRequest::new().set_or_clear_if_generation_match(Some(42));
let x = RewriteObjectRequest::new().set_or_clear_if_generation_match(None::<i32>);
Source

pub fn set_if_generation_not_match<T>(self, v: T) -> Self
where T: Into<i64>,

Sets the value of if_generation_not_match.

§Example
let x = RewriteObjectRequest::new().set_if_generation_not_match(42);
Source

pub fn set_or_clear_if_generation_not_match<T>(self, v: Option<T>) -> Self
where T: Into<i64>,

Sets or clears the value of if_generation_not_match.

§Example
let x = RewriteObjectRequest::new().set_or_clear_if_generation_not_match(Some(42));
let x = RewriteObjectRequest::new().set_or_clear_if_generation_not_match(None::<i32>);
Source

pub fn set_if_metageneration_match<T>(self, v: T) -> Self
where T: Into<i64>,

Sets the value of if_metageneration_match.

§Example
let x = RewriteObjectRequest::new().set_if_metageneration_match(42);
Source

pub fn set_or_clear_if_metageneration_match<T>(self, v: Option<T>) -> Self
where T: Into<i64>,

Sets or clears the value of if_metageneration_match.

§Example
let x = RewriteObjectRequest::new().set_or_clear_if_metageneration_match(Some(42));
let x = RewriteObjectRequest::new().set_or_clear_if_metageneration_match(None::<i32>);
Source

pub fn set_if_metageneration_not_match<T>(self, v: T) -> Self
where T: Into<i64>,

Sets the value of if_metageneration_not_match.

§Example
let x = RewriteObjectRequest::new().set_if_metageneration_not_match(42);
Source

pub fn set_or_clear_if_metageneration_not_match<T>(self, v: Option<T>) -> Self
where T: Into<i64>,

Sets or clears the value of if_metageneration_not_match.

§Example
let x = RewriteObjectRequest::new().set_or_clear_if_metageneration_not_match(Some(42));
let x = RewriteObjectRequest::new().set_or_clear_if_metageneration_not_match(None::<i32>);
Source

pub fn set_if_source_generation_match<T>(self, v: T) -> Self
where T: Into<i64>,

Sets the value of if_source_generation_match.

§Example
let x = RewriteObjectRequest::new().set_if_source_generation_match(42);
Source

pub fn set_or_clear_if_source_generation_match<T>(self, v: Option<T>) -> Self
where T: Into<i64>,

Sets or clears the value of if_source_generation_match.

§Example
let x = RewriteObjectRequest::new().set_or_clear_if_source_generation_match(Some(42));
let x = RewriteObjectRequest::new().set_or_clear_if_source_generation_match(None::<i32>);
Source

pub fn set_if_source_generation_not_match<T>(self, v: T) -> Self
where T: Into<i64>,

Sets the value of if_source_generation_not_match.

§Example
let x = RewriteObjectRequest::new().set_if_source_generation_not_match(42);
Source

pub fn set_or_clear_if_source_generation_not_match<T>( self, v: Option<T>, ) -> Self
where T: Into<i64>,

Sets or clears the value of if_source_generation_not_match.

§Example
let x = RewriteObjectRequest::new().set_or_clear_if_source_generation_not_match(Some(42));
let x = RewriteObjectRequest::new().set_or_clear_if_source_generation_not_match(None::<i32>);
Source

pub fn set_if_source_metageneration_match<T>(self, v: T) -> Self
where T: Into<i64>,

Sets the value of if_source_metageneration_match.

§Example
let x = RewriteObjectRequest::new().set_if_source_metageneration_match(42);
Source

pub fn set_or_clear_if_source_metageneration_match<T>( self, v: Option<T>, ) -> Self
where T: Into<i64>,

Sets or clears the value of if_source_metageneration_match.

§Example
let x = RewriteObjectRequest::new().set_or_clear_if_source_metageneration_match(Some(42));
let x = RewriteObjectRequest::new().set_or_clear_if_source_metageneration_match(None::<i32>);
Source

pub fn set_if_source_metageneration_not_match<T>(self, v: T) -> Self
where T: Into<i64>,

Sets the value of if_source_metageneration_not_match.

§Example
let x = RewriteObjectRequest::new().set_if_source_metageneration_not_match(42);
Source

pub fn set_or_clear_if_source_metageneration_not_match<T>( self, v: Option<T>, ) -> Self
where T: Into<i64>,

Sets or clears the value of if_source_metageneration_not_match.

§Example
let x = RewriteObjectRequest::new().set_or_clear_if_source_metageneration_not_match(Some(42));
let x = RewriteObjectRequest::new().set_or_clear_if_source_metageneration_not_match(None::<i32>);
Source

pub fn set_max_bytes_rewritten_per_call<T: Into<i64>>(self, v: T) -> Self

Sets the value of max_bytes_rewritten_per_call.

§Example
let x = RewriteObjectRequest::new().set_max_bytes_rewritten_per_call(42);
Source

pub fn set_copy_source_encryption_algorithm<T: Into<String>>(self, v: T) -> Self

Sets the value of copy_source_encryption_algorithm.

§Example
let x = RewriteObjectRequest::new().set_copy_source_encryption_algorithm("example");
Source

pub fn set_copy_source_encryption_key_bytes<T: Into<Bytes>>(self, v: T) -> Self

Sets the value of copy_source_encryption_key_bytes.

§Example
let x = RewriteObjectRequest::new().set_copy_source_encryption_key_bytes(bytes::Bytes::from_static(b"example"));
Source

pub fn set_copy_source_encryption_key_sha256_bytes<T: Into<Bytes>>( self, v: T, ) -> Self

Sets the value of copy_source_encryption_key_sha256_bytes.

§Example
let x = RewriteObjectRequest::new().set_copy_source_encryption_key_sha256_bytes(bytes::Bytes::from_static(b"example"));
Source

pub fn set_common_object_request_params<T>(self, v: T) -> Self

Sets the value of common_object_request_params.

§Example
use google_cloud_storage::model::CommonObjectRequestParams;
let x = RewriteObjectRequest::new().set_common_object_request_params(CommonObjectRequestParams::default()/* use setters */);
Source

pub fn set_or_clear_common_object_request_params<T>(self, v: Option<T>) -> Self

Sets or clears the value of common_object_request_params.

§Example
use google_cloud_storage::model::CommonObjectRequestParams;
let x = RewriteObjectRequest::new().set_or_clear_common_object_request_params(Some(CommonObjectRequestParams::default()/* use setters */));
let x = RewriteObjectRequest::new().set_or_clear_common_object_request_params(None::<CommonObjectRequestParams>);
Source

pub fn set_object_checksums<T>(self, v: T) -> Self

Sets the value of object_checksums.

§Example
use google_cloud_storage::model::ObjectChecksums;
let x = RewriteObjectRequest::new().set_object_checksums(ObjectChecksums::default()/* use setters */);
Source

pub fn set_or_clear_object_checksums<T>(self, v: Option<T>) -> Self

Sets or clears the value of object_checksums.

§Example
use google_cloud_storage::model::ObjectChecksums;
let x = RewriteObjectRequest::new().set_or_clear_object_checksums(Some(ObjectChecksums::default()/* use setters */));
let x = RewriteObjectRequest::new().set_or_clear_object_checksums(None::<ObjectChecksums>);

Trait Implementations§

Source§

impl Clone for RewriteObjectRequest

Source§

fn clone(&self) -> RewriteObjectRequest

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for RewriteObjectRequest

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for RewriteObjectRequest

Source§

fn default() -> RewriteObjectRequest

Returns the “default value” for a type. Read more
Source§

impl Message for RewriteObjectRequest

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for RewriteObjectRequest

Source§

fn eq(&self, other: &RewriteObjectRequest) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for RewriteObjectRequest

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<L> LayerExt<L> for L

Source§

fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>
where L: Layer<S>,

Applies the layer to a service and wraps it in Layered.
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

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