aws-sdk-workspaces 1.128.0

AWS SDK for Amazon WorkSpaces
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use crate::operation::update_workspaces_pool::_update_workspaces_pool_input::UpdateWorkspacesPoolInputBuilder;

pub use crate::operation::update_workspaces_pool::_update_workspaces_pool_output::UpdateWorkspacesPoolOutputBuilder;

impl crate::operation::update_workspaces_pool::builders::UpdateWorkspacesPoolInputBuilder {
    /// Sends a request with this input using the given client.
    pub async fn send_with(
        self,
        client: &crate::Client,
    ) -> ::std::result::Result<
        crate::operation::update_workspaces_pool::UpdateWorkspacesPoolOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::update_workspaces_pool::UpdateWorkspacesPoolError,
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
        >,
    > {
        let mut fluent_builder = client.update_workspaces_pool();
        fluent_builder.inner = self;
        fluent_builder.send().await
    }
}
/// Fluent builder constructing a request to `UpdateWorkspacesPool`.
///
/// <note>
/// <p>End of support notice: On December 31, 2027, Amazon Web Services will end support for Amazon WorkSpaces Pools. After December 31, 2027, you will no longer be able to access the Amazon WorkSpaces Pools console or Amazon WorkSpaces Pools resources. For more information, see <a href="https://docs.aws.amazon.com/workspaces/latest/adminguide/wsp-pools-end-of-support.html">Amazon WorkSpaces Pools end of support</a>.</p>
/// </note>
/// <p>Updates the specified pool.</p>
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct UpdateWorkspacesPoolFluentBuilder {
    handle: ::std::sync::Arc<crate::client::Handle>,
    inner: crate::operation::update_workspaces_pool::builders::UpdateWorkspacesPoolInputBuilder,
    config_override: ::std::option::Option<crate::config::Builder>,
}
impl
    crate::client::customize::internal::CustomizableSend<
        crate::operation::update_workspaces_pool::UpdateWorkspacesPoolOutput,
        crate::operation::update_workspaces_pool::UpdateWorkspacesPoolError,
    > for UpdateWorkspacesPoolFluentBuilder
{
    fn send(
        self,
        config_override: crate::config::Builder,
    ) -> crate::client::customize::internal::BoxFuture<
        crate::client::customize::internal::SendResult<
            crate::operation::update_workspaces_pool::UpdateWorkspacesPoolOutput,
            crate::operation::update_workspaces_pool::UpdateWorkspacesPoolError,
        >,
    > {
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
    }
}
impl UpdateWorkspacesPoolFluentBuilder {
    /// Creates a new `UpdateWorkspacesPoolFluentBuilder`.
    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
        Self {
            handle,
            inner: ::std::default::Default::default(),
            config_override: ::std::option::Option::None,
        }
    }
    /// Access the UpdateWorkspacesPool as a reference.
    pub fn as_input(&self) -> &crate::operation::update_workspaces_pool::builders::UpdateWorkspacesPoolInputBuilder {
        &self.inner
    }
    /// Sends the request and returns the response.
    ///
    /// If an error occurs, an `SdkError` will be returned with additional details that
    /// can be matched against.
    ///
    /// By default, any retryable failures will be retried twice. Retry behavior
    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
    /// set when configuring the client.
    pub async fn send(
        self,
    ) -> ::std::result::Result<
        crate::operation::update_workspaces_pool::UpdateWorkspacesPoolOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::update_workspaces_pool::UpdateWorkspacesPoolError,
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
        >,
    > {
        let input = self
            .inner
            .build()
            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
        let runtime_plugins = crate::operation::update_workspaces_pool::UpdateWorkspacesPool::operation_runtime_plugins(
            self.handle.runtime_plugins.clone(),
            &self.handle.conf,
            self.config_override,
        );
        crate::operation::update_workspaces_pool::UpdateWorkspacesPool::orchestrate(&runtime_plugins, input).await
    }

    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
    pub fn customize(
        self,
    ) -> crate::client::customize::CustomizableOperation<
        crate::operation::update_workspaces_pool::UpdateWorkspacesPoolOutput,
        crate::operation::update_workspaces_pool::UpdateWorkspacesPoolError,
        Self,
    > {
        crate::client::customize::CustomizableOperation::new(self)
    }
    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
        self.set_config_override(::std::option::Option::Some(config_override.into()));
        self
    }

    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
        self.config_override = config_override;
        self
    }
    /// <p>The identifier of the specified pool to update.</p>
    pub fn pool_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.pool_id(input.into());
        self
    }
    /// <p>The identifier of the specified pool to update.</p>
    pub fn set_pool_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.inner = self.inner.set_pool_id(input);
        self
    }
    /// <p>The identifier of the specified pool to update.</p>
    pub fn get_pool_id(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_pool_id()
    }
    /// <p>Describes the specified pool to update.</p>
    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.description(input.into());
        self
    }
    /// <p>Describes the specified pool to update.</p>
    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.inner = self.inner.set_description(input);
        self
    }
    /// <p>Describes the specified pool to update.</p>
    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_description()
    }
    /// <p>The identifier of the bundle.</p>
    pub fn bundle_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.bundle_id(input.into());
        self
    }
    /// <p>The identifier of the bundle.</p>
    pub fn set_bundle_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.inner = self.inner.set_bundle_id(input);
        self
    }
    /// <p>The identifier of the bundle.</p>
    pub fn get_bundle_id(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_bundle_id()
    }
    /// <p>The identifier of the directory.</p>
    pub fn directory_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.directory_id(input.into());
        self
    }
    /// <p>The identifier of the directory.</p>
    pub fn set_directory_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.inner = self.inner.set_directory_id(input);
        self
    }
    /// <p>The identifier of the directory.</p>
    pub fn get_directory_id(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_directory_id()
    }
    /// <p>The desired capacity for the pool.</p>
    pub fn capacity(mut self, input: crate::types::Capacity) -> Self {
        self.inner = self.inner.capacity(input);
        self
    }
    /// <p>The desired capacity for the pool.</p>
    pub fn set_capacity(mut self, input: ::std::option::Option<crate::types::Capacity>) -> Self {
        self.inner = self.inner.set_capacity(input);
        self
    }
    /// <p>The desired capacity for the pool.</p>
    pub fn get_capacity(&self) -> &::std::option::Option<crate::types::Capacity> {
        self.inner.get_capacity()
    }
    /// <p>The persistent application settings for users in the pool.</p>
    pub fn application_settings(mut self, input: crate::types::ApplicationSettingsRequest) -> Self {
        self.inner = self.inner.application_settings(input);
        self
    }
    /// <p>The persistent application settings for users in the pool.</p>
    pub fn set_application_settings(mut self, input: ::std::option::Option<crate::types::ApplicationSettingsRequest>) -> Self {
        self.inner = self.inner.set_application_settings(input);
        self
    }
    /// <p>The persistent application settings for users in the pool.</p>
    pub fn get_application_settings(&self) -> &::std::option::Option<crate::types::ApplicationSettingsRequest> {
        self.inner.get_application_settings()
    }
    /// <p>Indicates the timeout settings of the specified pool.</p>
    pub fn timeout_settings(mut self, input: crate::types::TimeoutSettings) -> Self {
        self.inner = self.inner.timeout_settings(input);
        self
    }
    /// <p>Indicates the timeout settings of the specified pool.</p>
    pub fn set_timeout_settings(mut self, input: ::std::option::Option<crate::types::TimeoutSettings>) -> Self {
        self.inner = self.inner.set_timeout_settings(input);
        self
    }
    /// <p>Indicates the timeout settings of the specified pool.</p>
    pub fn get_timeout_settings(&self) -> &::std::option::Option<crate::types::TimeoutSettings> {
        self.inner.get_timeout_settings()
    }
    /// <p>The desired running mode for the pool. The running mode can only be updated when the pool is in a stopped state.</p>
    pub fn running_mode(mut self, input: crate::types::PoolsRunningMode) -> Self {
        self.inner = self.inner.running_mode(input);
        self
    }
    /// <p>The desired running mode for the pool. The running mode can only be updated when the pool is in a stopped state.</p>
    pub fn set_running_mode(mut self, input: ::std::option::Option<crate::types::PoolsRunningMode>) -> Self {
        self.inner = self.inner.set_running_mode(input);
        self
    }
    /// <p>The desired running mode for the pool. The running mode can only be updated when the pool is in a stopped state.</p>
    pub fn get_running_mode(&self) -> &::std::option::Option<crate::types::PoolsRunningMode> {
        self.inner.get_running_mode()
    }
}