aws_sdk_workspacesinstances/client/modify_volume.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3 /// Constructs a fluent builder for the [`ModifyVolume`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`volume_id(impl Into<String>)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::volume_id) / [`set_volume_id(Option<String>)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::set_volume_id):<br>required: **true**<br><p>Specifies the identifier of the volume to modify.</p><br>
7 /// - [`size_in_gb(i32)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::size_in_gb) / [`set_size_in_gb(Option<i32>)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::set_size_in_gb):<br>required: **false**<br><p>Specifies the target size of the volume, in GiB. The target size must be greater than or equal to the current size of the volume. If you don't specify a size, the current size is retained.</p><br>
8 /// - [`volume_type(VolumeTypeEnum)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::volume_type) / [`set_volume_type(Option<VolumeTypeEnum>)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::set_volume_type):<br>required: **false**<br><p>Specifies the target Amazon Elastic Block Store (Amazon EBS) volume type. If you don't specify a volume type, the current volume type is retained.</p><br>
9 /// - [`iops(i32)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::iops) / [`set_iops(Option<i32>)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::set_iops):<br>required: **false**<br><p>Specifies the target IOPS rate of the volume. This parameter is valid only for <code>gp3</code>, <code>io1</code>, and <code>io2</code> volumes. If you don't specify IOPS and keep the same volume type, the current IOPS rate is retained.</p><br>
10 /// - [`throughput(i32)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::throughput) / [`set_throughput(Option<i32>)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::set_throughput):<br>required: **false**<br><p>Specifies the target throughput of the volume, in MiB/s. This parameter is valid only for <code>gp3</code> volumes. If you don't specify throughput and the volume remains <code>gp3</code>, the current throughput is retained.</p><br>
11 /// - [`client_token(impl Into<String>)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::set_client_token):<br>required: **false**<br><p>Unique token to ensure idempotent volume modification, preventing duplicate volume modifications.</p><br>
12 /// - On success, responds with [`ModifyVolumeOutput`](crate::operation::modify_volume::ModifyVolumeOutput) with field(s):
13 /// - [`volume_id(Option<String>)`](crate::operation::modify_volume::ModifyVolumeOutput::volume_id): <p>Specifies the identifier of the modified volume.</p>
14 /// - [`target_size(Option<i32>)`](crate::operation::modify_volume::ModifyVolumeOutput::target_size): <p>Specifies the target size of the volume, in GiB.</p>
15 /// - [`target_volume_type(Option<VolumeTypeEnum>)`](crate::operation::modify_volume::ModifyVolumeOutput::target_volume_type): <p>Specifies the target Amazon EBS volume type.</p>
16 /// - [`target_iops(Option<i32>)`](crate::operation::modify_volume::ModifyVolumeOutput::target_iops): <p>Specifies the target IOPS rate of the volume.</p>
17 /// - [`target_throughput(Option<i32>)`](crate::operation::modify_volume::ModifyVolumeOutput::target_throughput): <p>Specifies the target throughput of the volume, in MiB/s.</p>
18 /// - On failure, responds with [`SdkError<ModifyVolumeError>`](crate::operation::modify_volume::ModifyVolumeError)
19 pub fn modify_volume(&self) -> crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder {
20 crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::new(self.handle.clone())
21 }
22}