aws-sdk-rds 1.131.0

AWS SDK for Amazon Relational Database Service
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct SwitchoverGlobalClusterInput {
    /// <p>The identifier of the global database cluster to switch over. This parameter isn't case-sensitive.</p>
    /// <p>Constraints:</p>
    /// <ul>
    /// <li>
    /// <p>Must match the identifier of an existing global database cluster (Aurora global database).</p></li>
    /// </ul>
    pub global_cluster_identifier: ::std::option::Option<::std::string::String>,
    /// <p>The identifier of the secondary Aurora DB cluster to promote to the new primary for the global database cluster. Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.</p>
    pub target_db_cluster_identifier: ::std::option::Option<::std::string::String>,
}
impl SwitchoverGlobalClusterInput {
    /// <p>The identifier of the global database cluster to switch over. This parameter isn't case-sensitive.</p>
    /// <p>Constraints:</p>
    /// <ul>
    /// <li>
    /// <p>Must match the identifier of an existing global database cluster (Aurora global database).</p></li>
    /// </ul>
    pub fn global_cluster_identifier(&self) -> ::std::option::Option<&str> {
        self.global_cluster_identifier.as_deref()
    }
    /// <p>The identifier of the secondary Aurora DB cluster to promote to the new primary for the global database cluster. Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.</p>
    pub fn target_db_cluster_identifier(&self) -> ::std::option::Option<&str> {
        self.target_db_cluster_identifier.as_deref()
    }
}
impl SwitchoverGlobalClusterInput {
    /// Creates a new builder-style object to manufacture [`SwitchoverGlobalClusterInput`](crate::operation::switchover_global_cluster::SwitchoverGlobalClusterInput).
    pub fn builder() -> crate::operation::switchover_global_cluster::builders::SwitchoverGlobalClusterInputBuilder {
        crate::operation::switchover_global_cluster::builders::SwitchoverGlobalClusterInputBuilder::default()
    }
}

/// A builder for [`SwitchoverGlobalClusterInput`](crate::operation::switchover_global_cluster::SwitchoverGlobalClusterInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct SwitchoverGlobalClusterInputBuilder {
    pub(crate) global_cluster_identifier: ::std::option::Option<::std::string::String>,
    pub(crate) target_db_cluster_identifier: ::std::option::Option<::std::string::String>,
}
impl SwitchoverGlobalClusterInputBuilder {
    /// <p>The identifier of the global database cluster to switch over. This parameter isn't case-sensitive.</p>
    /// <p>Constraints:</p>
    /// <ul>
    /// <li>
    /// <p>Must match the identifier of an existing global database cluster (Aurora global database).</p></li>
    /// </ul>
    /// This field is required.
    pub fn global_cluster_identifier(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.global_cluster_identifier = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The identifier of the global database cluster to switch over. This parameter isn't case-sensitive.</p>
    /// <p>Constraints:</p>
    /// <ul>
    /// <li>
    /// <p>Must match the identifier of an existing global database cluster (Aurora global database).</p></li>
    /// </ul>
    pub fn set_global_cluster_identifier(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.global_cluster_identifier = input;
        self
    }
    /// <p>The identifier of the global database cluster to switch over. This parameter isn't case-sensitive.</p>
    /// <p>Constraints:</p>
    /// <ul>
    /// <li>
    /// <p>Must match the identifier of an existing global database cluster (Aurora global database).</p></li>
    /// </ul>
    pub fn get_global_cluster_identifier(&self) -> &::std::option::Option<::std::string::String> {
        &self.global_cluster_identifier
    }
    /// <p>The identifier of the secondary Aurora DB cluster to promote to the new primary for the global database cluster. Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.</p>
    /// This field is required.
    pub fn target_db_cluster_identifier(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.target_db_cluster_identifier = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The identifier of the secondary Aurora DB cluster to promote to the new primary for the global database cluster. Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.</p>
    pub fn set_target_db_cluster_identifier(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.target_db_cluster_identifier = input;
        self
    }
    /// <p>The identifier of the secondary Aurora DB cluster to promote to the new primary for the global database cluster. Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.</p>
    pub fn get_target_db_cluster_identifier(&self) -> &::std::option::Option<::std::string::String> {
        &self.target_db_cluster_identifier
    }
    /// Consumes the builder and constructs a [`SwitchoverGlobalClusterInput`](crate::operation::switchover_global_cluster::SwitchoverGlobalClusterInput).
    pub fn build(
        self,
    ) -> ::std::result::Result<
        crate::operation::switchover_global_cluster::SwitchoverGlobalClusterInput,
        ::aws_smithy_types::error::operation::BuildError,
    > {
        ::std::result::Result::Ok(crate::operation::switchover_global_cluster::SwitchoverGlobalClusterInput {
            global_cluster_identifier: self.global_cluster_identifier,
            target_db_cluster_identifier: self.target_db_cluster_identifier,
        })
    }
}