aws-sdk-workspacesinstances 1.46.0

AWS SDK for Amazon Workspaces Instances
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`ModifyVolume`](crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`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>
    ///   - [`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>
    ///   - [`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>
    ///   - [`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>
    ///   - [`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>
    ///   - [`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>
    /// - On success, responds with [`ModifyVolumeOutput`](crate::operation::modify_volume::ModifyVolumeOutput) with field(s):
    ///   - [`volume_id(Option<String>)`](crate::operation::modify_volume::ModifyVolumeOutput::volume_id): <p>Specifies the identifier of the modified volume.</p>
    ///   - [`target_size(Option<i32>)`](crate::operation::modify_volume::ModifyVolumeOutput::target_size): <p>Specifies the target size of the volume, in GiB.</p>
    ///   - [`target_volume_type(Option<VolumeTypeEnum>)`](crate::operation::modify_volume::ModifyVolumeOutput::target_volume_type): <p>Specifies the target Amazon EBS volume type.</p>
    ///   - [`target_iops(Option<i32>)`](crate::operation::modify_volume::ModifyVolumeOutput::target_iops): <p>Specifies the target IOPS rate of the volume.</p>
    ///   - [`target_throughput(Option<i32>)`](crate::operation::modify_volume::ModifyVolumeOutput::target_throughput): <p>Specifies the target throughput of the volume, in MiB/s.</p>
    /// - On failure, responds with [`SdkError<ModifyVolumeError>`](crate::operation::modify_volume::ModifyVolumeError)
    pub fn modify_volume(&self) -> crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder {
        crate::operation::modify_volume::builders::ModifyVolumeFluentBuilder::new(self.handle.clone())
    }
}