aws-sdk-macie2 1.95.0

AWS SDK for Amazon Macie 2
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use crate::operation::update_automated_discovery_configuration::_update_automated_discovery_configuration_output::UpdateAutomatedDiscoveryConfigurationOutputBuilder;

pub use crate::operation::update_automated_discovery_configuration::_update_automated_discovery_configuration_input::UpdateAutomatedDiscoveryConfigurationInputBuilder;

impl crate::operation::update_automated_discovery_configuration::builders::UpdateAutomatedDiscoveryConfigurationInputBuilder {
    /// 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_automated_discovery_configuration::UpdateAutomatedDiscoveryConfigurationOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::update_automated_discovery_configuration::UpdateAutomatedDiscoveryConfigurationError,
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
        >,
    > {
        let mut fluent_builder = client.update_automated_discovery_configuration();
        fluent_builder.inner = self;
        fluent_builder.send().await
    }
}
/// Fluent builder constructing a request to `UpdateAutomatedDiscoveryConfiguration`.
///
/// <p>Changes the configuration settings and status of automated sensitive data discovery for an organization or standalone account.</p>
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct UpdateAutomatedDiscoveryConfigurationFluentBuilder {
    handle: ::std::sync::Arc<crate::client::Handle>,
    inner: crate::operation::update_automated_discovery_configuration::builders::UpdateAutomatedDiscoveryConfigurationInputBuilder,
    config_override: ::std::option::Option<crate::config::Builder>,
}
impl
    crate::client::customize::internal::CustomizableSend<
        crate::operation::update_automated_discovery_configuration::UpdateAutomatedDiscoveryConfigurationOutput,
        crate::operation::update_automated_discovery_configuration::UpdateAutomatedDiscoveryConfigurationError,
    > for UpdateAutomatedDiscoveryConfigurationFluentBuilder
{
    fn send(
        self,
        config_override: crate::config::Builder,
    ) -> crate::client::customize::internal::BoxFuture<
        crate::client::customize::internal::SendResult<
            crate::operation::update_automated_discovery_configuration::UpdateAutomatedDiscoveryConfigurationOutput,
            crate::operation::update_automated_discovery_configuration::UpdateAutomatedDiscoveryConfigurationError,
        >,
    > {
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
    }
}
impl UpdateAutomatedDiscoveryConfigurationFluentBuilder {
    /// Creates a new `UpdateAutomatedDiscoveryConfigurationFluentBuilder`.
    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 UpdateAutomatedDiscoveryConfiguration as a reference.
    pub fn as_input(
        &self,
    ) -> &crate::operation::update_automated_discovery_configuration::builders::UpdateAutomatedDiscoveryConfigurationInputBuilder {
        &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_automated_discovery_configuration::UpdateAutomatedDiscoveryConfigurationOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::update_automated_discovery_configuration::UpdateAutomatedDiscoveryConfigurationError,
            ::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_automated_discovery_configuration::UpdateAutomatedDiscoveryConfiguration::operation_runtime_plugins(
                self.handle.runtime_plugins.clone(),
                &self.handle.conf,
                self.config_override,
            );
        crate::operation::update_automated_discovery_configuration::UpdateAutomatedDiscoveryConfiguration::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_automated_discovery_configuration::UpdateAutomatedDiscoveryConfigurationOutput,
        crate::operation::update_automated_discovery_configuration::UpdateAutomatedDiscoveryConfigurationError,
        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>Specifies whether to automatically enable automated sensitive data discovery for accounts in the organization. Valid values are: ALL (default), enable it for all existing accounts and new member accounts; NEW, enable it only for new member accounts; and, NONE, don't enable it for any accounts.</p>
    /// <p>If you specify NEW or NONE, automated sensitive data discovery continues to be enabled for any existing accounts that it's currently enabled for. To enable or disable it for individual member accounts, specify NEW or NONE, and then enable or disable it for each account by using the BatchUpdateAutomatedDiscoveryAccounts operation.</p>
    pub fn auto_enable_organization_members(mut self, input: crate::types::AutoEnableMode) -> Self {
        self.inner = self.inner.auto_enable_organization_members(input);
        self
    }
    /// <p>Specifies whether to automatically enable automated sensitive data discovery for accounts in the organization. Valid values are: ALL (default), enable it for all existing accounts and new member accounts; NEW, enable it only for new member accounts; and, NONE, don't enable it for any accounts.</p>
    /// <p>If you specify NEW or NONE, automated sensitive data discovery continues to be enabled for any existing accounts that it's currently enabled for. To enable or disable it for individual member accounts, specify NEW or NONE, and then enable or disable it for each account by using the BatchUpdateAutomatedDiscoveryAccounts operation.</p>
    pub fn set_auto_enable_organization_members(mut self, input: ::std::option::Option<crate::types::AutoEnableMode>) -> Self {
        self.inner = self.inner.set_auto_enable_organization_members(input);
        self
    }
    /// <p>Specifies whether to automatically enable automated sensitive data discovery for accounts in the organization. Valid values are: ALL (default), enable it for all existing accounts and new member accounts; NEW, enable it only for new member accounts; and, NONE, don't enable it for any accounts.</p>
    /// <p>If you specify NEW or NONE, automated sensitive data discovery continues to be enabled for any existing accounts that it's currently enabled for. To enable or disable it for individual member accounts, specify NEW or NONE, and then enable or disable it for each account by using the BatchUpdateAutomatedDiscoveryAccounts operation.</p>
    pub fn get_auto_enable_organization_members(&self) -> &::std::option::Option<crate::types::AutoEnableMode> {
        self.inner.get_auto_enable_organization_members()
    }
    /// <p>The new status of automated sensitive data discovery for the organization or account. Valid values are: ENABLED, start or resume all automated sensitive data discovery activities; and, DISABLED, stop performing all automated sensitive data discovery activities.</p>
    /// <p>If you specify DISABLED for an administrator account, you also disable automated sensitive data discovery for all member accounts in the organization.</p>
    pub fn status(mut self, input: crate::types::AutomatedDiscoveryStatus) -> Self {
        self.inner = self.inner.status(input);
        self
    }
    /// <p>The new status of automated sensitive data discovery for the organization or account. Valid values are: ENABLED, start or resume all automated sensitive data discovery activities; and, DISABLED, stop performing all automated sensitive data discovery activities.</p>
    /// <p>If you specify DISABLED for an administrator account, you also disable automated sensitive data discovery for all member accounts in the organization.</p>
    pub fn set_status(mut self, input: ::std::option::Option<crate::types::AutomatedDiscoveryStatus>) -> Self {
        self.inner = self.inner.set_status(input);
        self
    }
    /// <p>The new status of automated sensitive data discovery for the organization or account. Valid values are: ENABLED, start or resume all automated sensitive data discovery activities; and, DISABLED, stop performing all automated sensitive data discovery activities.</p>
    /// <p>If you specify DISABLED for an administrator account, you also disable automated sensitive data discovery for all member accounts in the organization.</p>
    pub fn get_status(&self) -> &::std::option::Option<crate::types::AutomatedDiscoveryStatus> {
        self.inner.get_status()
    }
}