Skip to main content

Operation

Struct Operation 

Source
#[non_exhaustive]
pub struct Operation {
Show 26 fields pub client_operation_id: Option<String>, pub creation_timestamp: Option<String>, pub description: Option<String>, pub end_time: Option<String>, pub error: Option<Error>, pub http_error_message: Option<String>, pub http_error_status_code: Option<i32>, pub id: Option<u64>, pub insert_time: Option<String>, pub instances_bulk_insert_operation_metadata: Option<InstancesBulkInsertOperationMetadata>, pub kind: Option<String>, pub name: Option<String>, pub operation_group_id: Option<String>, pub operation_type: Option<String>, pub progress: Option<i32>, pub region: Option<String>, pub self_link: Option<String>, pub set_common_instance_metadata_operation_metadata: Option<SetCommonInstanceMetadataOperationMetadata>, pub start_time: Option<String>, pub status: Option<Status>, pub status_message: Option<String>, pub target_id: Option<u64>, pub target_link: Option<String>, pub user: Option<String>, pub warnings: Vec<Warnings>, pub zone: Option<String>, /* private fields */
}
Available on crate features addresses or autoscalers or backend-buckets or backend-services or cross-site-networks or disks or external-vpn-gateways or firewall-policies or firewalls or forwarding-rules or future-reservations or global-addresses or global-forwarding-rules or global-network-endpoint-groups or global-operations or global-organization-operations or global-public-delegated-prefixes or health-checks or http-health-checks or https-health-checks or images or instance-group-manager-resize-requests or instance-group-managers or instance-groups or instance-settings or instance-templates or instances or instant-snapshots or interconnect-attachment-groups or interconnect-attachments or interconnect-groups or interconnects or licenses or machine-images or network-attachments or network-edge-security-services or network-endpoint-groups or network-firewall-policies or networks or node-groups or node-templates or organization-security-policies or packet-mirrorings or preview-features or projects or public-advertised-prefixes or public-delegated-prefixes or region-autoscalers or region-backend-services or region-commitments or region-disks or region-health-check-services or region-health-checks or region-instance-group-managers or region-instance-groups or region-instance-templates or region-instances or region-instant-snapshots or region-network-endpoint-groups or region-network-firewall-policies or region-notification-endpoints or region-operations or region-security-policies or region-ssl-certificates or region-ssl-policies or region-target-http-proxies or region-target-https-proxies or region-target-tcp-proxies or region-url-maps or reservation-blocks or reservation-slots or reservation-sub-blocks or reservations or resource-policies or routers or routes or security-policies or service-attachments or snapshot-settings or snapshots or ssl-certificates or ssl-policies or storage-pools or subnetworks or target-grpc-proxies or target-http-proxies or target-https-proxies or target-instances or target-pools or target-ssl-proxies or target-tcp-proxies or target-vpn-gateways or url-maps or vpn-gateways or vpn-tunnels or wire-groups or zone-operations only.
Expand description

Represents an Operation resource.

Google Compute Engine has three Operation resources:

You can use an operation resource to manage asynchronous API requests. For more information, readHandling API responses.

Operations can be global, regional or zonal.

  • For global operations, use the globalOperations resource.
  • For regional operations, use the regionOperations resource.
  • For zonal operations, use the zoneOperations resource.

For more information, read Global, Regional, and Zonal Resources.

Note that completed Operation resources have a limited retention period.

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.
§client_operation_id: Option<String>

[Output Only] The value of requestId if you provided it in the request. Not present otherwise.

§creation_timestamp: Option<String>

[Deprecated] This field is deprecated.

§description: Option<String>

[Output Only] A textual description of the operation, which is set when the operation is created.

§end_time: Option<String>

[Output Only] The time that this operation was completed. This value is inRFC3339 text format.

§error: Option<Error>

[Output Only] If errors are generated during processing of the operation, this field will be populated.

§http_error_message: Option<String>

[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.

§http_error_status_code: Option<i32>

[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.

§id: Option<u64>

[Output Only] The unique identifier for the operation. This identifier is defined by the server.

§insert_time: Option<String>

[Output Only] The time that this operation was requested. This value is inRFC3339 text format.

§instances_bulk_insert_operation_metadata: Option<InstancesBulkInsertOperationMetadata>§kind: Option<String>

Output only. [Output Only] Type of the resource. Always compute#operation for Operation resources.

§name: Option<String>

[Output Only] Name of the operation.

§operation_group_id: Option<String>

Output only. [Output Only] An ID that represents a group of operations, such as when a group of operations results from a bulkInsert API request.

§operation_type: Option<String>

[Output Only] The type of operation, such as insert, update, or delete, and so on.

§progress: Option<i32>

[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.

§region: Option<String>

[Output Only] The URL of the region where the operation resides. Only applicable when performing regional operations.

§self_link: Option<String>

[Output Only] Server-defined URL for the resource.

§set_common_instance_metadata_operation_metadata: Option<SetCommonInstanceMetadataOperationMetadata>

Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata, this field will contain information on all underlying zonal actions and their state.

§start_time: Option<String>

[Output Only] The time that this operation was started by the server. This value is inRFC3339 text format.

§status: Option<Status>

[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.

§status_message: Option<String>

[Output Only] An optional textual description of the current status of the operation.

§target_id: Option<u64>

[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.

§target_link: Option<String>

[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the disk that the snapshot was created from.

§user: Option<String>

[Output Only] User who requested the operation, for example: user@example.com or alice_smith_identifier (global/workforcePools/example-com-us-employees).

§warnings: Vec<Warnings>

[Output Only] If warning messages are generated during processing of the operation, this field will be populated.

§zone: Option<String>

[Output Only] The URL of the zone where the operation resides. Only applicable when performing per-zone operations.

Implementations§

Source§

impl Operation

Source

pub fn new() -> Self

Source

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

Sets the value of client_operation_id.

§Example
let x = Operation::new().set_client_operation_id("example");
Source

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

Sets or clears the value of client_operation_id.

§Example
let x = Operation::new().set_or_clear_client_operation_id(Some("example"));
let x = Operation::new().set_or_clear_client_operation_id(None::<String>);
Source

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

Sets the value of creation_timestamp.

§Example
let x = Operation::new().set_creation_timestamp("example");
Source

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

Sets or clears the value of creation_timestamp.

§Example
let x = Operation::new().set_or_clear_creation_timestamp(Some("example"));
let x = Operation::new().set_or_clear_creation_timestamp(None::<String>);
Source

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

Sets the value of description.

§Example
let x = Operation::new().set_description("example");
Source

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

Sets or clears the value of description.

§Example
let x = Operation::new().set_or_clear_description(Some("example"));
let x = Operation::new().set_or_clear_description(None::<String>);
Source

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

Sets the value of end_time.

§Example
let x = Operation::new().set_end_time("example");
Source

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

Sets or clears the value of end_time.

§Example
let x = Operation::new().set_or_clear_end_time(Some("example"));
let x = Operation::new().set_or_clear_end_time(None::<String>);
Source

pub fn set_error<T>(self, v: T) -> Self
where T: Into<Error>,

Sets the value of error.

§Example
use google_cloud_compute_v1::model::operation::Error;
let x = Operation::new().set_error(Error::default()/* use setters */);
Source

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

Sets or clears the value of error.

§Example
use google_cloud_compute_v1::model::operation::Error;
let x = Operation::new().set_or_clear_error(Some(Error::default()/* use setters */));
let x = Operation::new().set_or_clear_error(None::<Error>);
Source

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

Sets the value of http_error_message.

§Example
let x = Operation::new().set_http_error_message("example");
Source

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

Sets or clears the value of http_error_message.

§Example
let x = Operation::new().set_or_clear_http_error_message(Some("example"));
let x = Operation::new().set_or_clear_http_error_message(None::<String>);
Source

pub fn set_http_error_status_code<T>(self, v: T) -> Self
where T: Into<i32>,

Sets the value of http_error_status_code.

§Example
let x = Operation::new().set_http_error_status_code(42);
Source

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

Sets or clears the value of http_error_status_code.

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

pub fn set_id<T>(self, v: T) -> Self
where T: Into<u64>,

Sets the value of id.

§Example
let x = Operation::new().set_id(42_u32);
Source

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

Sets or clears the value of id.

§Example
let x = Operation::new().set_or_clear_id(Some(42_u32));
let x = Operation::new().set_or_clear_id(None::<u32>);
Source

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

Sets the value of insert_time.

§Example
let x = Operation::new().set_insert_time("example");
Source

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

Sets or clears the value of insert_time.

§Example
let x = Operation::new().set_or_clear_insert_time(Some("example"));
let x = Operation::new().set_or_clear_insert_time(None::<String>);
Source

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

Sets the value of instances_bulk_insert_operation_metadata.

§Example
use google_cloud_compute_v1::model::InstancesBulkInsertOperationMetadata;
let x = Operation::new().set_instances_bulk_insert_operation_metadata(InstancesBulkInsertOperationMetadata::default()/* use setters */);
Source

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

Sets or clears the value of instances_bulk_insert_operation_metadata.

§Example
use google_cloud_compute_v1::model::InstancesBulkInsertOperationMetadata;
let x = Operation::new().set_or_clear_instances_bulk_insert_operation_metadata(Some(InstancesBulkInsertOperationMetadata::default()/* use setters */));
let x = Operation::new().set_or_clear_instances_bulk_insert_operation_metadata(None::<InstancesBulkInsertOperationMetadata>);
Source

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

Sets the value of kind.

§Example
let x = Operation::new().set_kind("example");
Source

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

Sets or clears the value of kind.

§Example
let x = Operation::new().set_or_clear_kind(Some("example"));
let x = Operation::new().set_or_clear_kind(None::<String>);
Source

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

Sets the value of name.

§Example
let x = Operation::new().set_name("example");
Source

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

Sets or clears the value of name.

§Example
let x = Operation::new().set_or_clear_name(Some("example"));
let x = Operation::new().set_or_clear_name(None::<String>);
Source

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

Sets the value of operation_group_id.

§Example
let x = Operation::new().set_operation_group_id("example");
Source

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

Sets or clears the value of operation_group_id.

§Example
let x = Operation::new().set_or_clear_operation_group_id(Some("example"));
let x = Operation::new().set_or_clear_operation_group_id(None::<String>);
Source

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

Sets the value of operation_type.

§Example
let x = Operation::new().set_operation_type("example");
Source

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

Sets or clears the value of operation_type.

§Example
let x = Operation::new().set_or_clear_operation_type(Some("example"));
let x = Operation::new().set_or_clear_operation_type(None::<String>);
Source

pub fn set_progress<T>(self, v: T) -> Self
where T: Into<i32>,

Sets the value of progress.

§Example
let x = Operation::new().set_progress(42);
Source

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

Sets or clears the value of progress.

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

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

Sets the value of region.

§Example
let x = Operation::new().set_region("example");
Source

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

Sets or clears the value of region.

§Example
let x = Operation::new().set_or_clear_region(Some("example"));
let x = Operation::new().set_or_clear_region(None::<String>);

Sets the value of self_link.

§Example
let x = Operation::new().set_self_link("example");

Sets or clears the value of self_link.

§Example
let x = Operation::new().set_or_clear_self_link(Some("example"));
let x = Operation::new().set_or_clear_self_link(None::<String>);
Source

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

Sets the value of set_common_instance_metadata_operation_metadata.

§Example
use google_cloud_compute_v1::model::SetCommonInstanceMetadataOperationMetadata;
let x = Operation::new().set_set_common_instance_metadata_operation_metadata(SetCommonInstanceMetadataOperationMetadata::default()/* use setters */);
Source

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

Sets or clears the value of set_common_instance_metadata_operation_metadata.

§Example
use google_cloud_compute_v1::model::SetCommonInstanceMetadataOperationMetadata;
let x = Operation::new().set_or_clear_set_common_instance_metadata_operation_metadata(Some(SetCommonInstanceMetadataOperationMetadata::default()/* use setters */));
let x = Operation::new().set_or_clear_set_common_instance_metadata_operation_metadata(None::<SetCommonInstanceMetadataOperationMetadata>);
Source

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

Sets the value of start_time.

§Example
let x = Operation::new().set_start_time("example");
Source

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

Sets or clears the value of start_time.

§Example
let x = Operation::new().set_or_clear_start_time(Some("example"));
let x = Operation::new().set_or_clear_start_time(None::<String>);
Source

pub fn set_status<T>(self, v: T) -> Self
where T: Into<Status>,

Sets the value of status.

§Example
use google_cloud_compute_v1::model::operation::Status;
let x0 = Operation::new().set_status(Status::Pending);
let x1 = Operation::new().set_status(Status::Running);
Source

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

Sets or clears the value of status.

§Example
use google_cloud_compute_v1::model::operation::Status;
let x0 = Operation::new().set_or_clear_status(Some(Status::Pending));
let x1 = Operation::new().set_or_clear_status(Some(Status::Running));
let x_none = Operation::new().set_or_clear_status(None::<Status>);
Source

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

Sets the value of status_message.

§Example
let x = Operation::new().set_status_message("example");
Source

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

Sets or clears the value of status_message.

§Example
let x = Operation::new().set_or_clear_status_message(Some("example"));
let x = Operation::new().set_or_clear_status_message(None::<String>);
Source

pub fn set_target_id<T>(self, v: T) -> Self
where T: Into<u64>,

Sets the value of target_id.

§Example
let x = Operation::new().set_target_id(42_u32);
Source

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

Sets or clears the value of target_id.

§Example
let x = Operation::new().set_or_clear_target_id(Some(42_u32));
let x = Operation::new().set_or_clear_target_id(None::<u32>);

Sets the value of target_link.

§Example
let x = Operation::new().set_target_link("example");

Sets or clears the value of target_link.

§Example
let x = Operation::new().set_or_clear_target_link(Some("example"));
let x = Operation::new().set_or_clear_target_link(None::<String>);
Source

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

Sets the value of user.

§Example
let x = Operation::new().set_user("example");
Source

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

Sets or clears the value of user.

§Example
let x = Operation::new().set_or_clear_user(Some("example"));
let x = Operation::new().set_or_clear_user(None::<String>);
Source

pub fn set_warnings<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<Warnings>,

Sets the value of warnings.

§Example
use google_cloud_compute_v1::model::operation::Warnings;
let x = Operation::new()
    .set_warnings([
        Warnings::default()/* use setters */,
        Warnings::default()/* use (different) setters */,
    ]);
Source

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

Sets the value of zone.

§Example
let x = Operation::new().set_zone("example");
Source

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

Sets or clears the value of zone.

§Example
let x = Operation::new().set_or_clear_zone(Some("example"));
let x = Operation::new().set_or_clear_zone(None::<String>);
Source§

impl Operation

Source

pub fn to_result(self) -> Result<Self, OperationError>

Trait Implementations§

Source§

impl Clone for Operation

Source§

fn clone(&self) -> Operation

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 Operation

Source§

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

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

impl Default for Operation

Source§

fn default() -> Operation

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

impl DiscoveryOperation for Operation

Source§

fn name(&self) -> Option<&String>

Returns the name of the operation. Read more
Source§

fn done(&self) -> bool

Returns true if the operation has completed, with or without an error.
Source§

impl Message for Operation

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for Operation

Source§

fn eq(&self, other: &Operation) -> 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 Operation

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