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 ModifyDbSnapshotInput {
    /// <p>The identifier of the DB snapshot to modify.</p>
    pub db_snapshot_identifier: ::std::option::Option<::std::string::String>,
    /// <p>The engine version to upgrade the DB snapshot to.</p>
    /// <p>The following are the database engines and engine versions that are available when you upgrade a DB snapshot.</p>
    /// <p><b>MariaDB</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mariadb-upgrade-snapshot.html"> Upgrading a MariaDB DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    /// <p><b>MySQL</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mysql-upgrade-snapshot.html"> Upgrading a MySQL DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    /// <p><b>Oracle</b></p>
    /// <ul>
    /// <li>
    /// <p><code>21.0.0.0.ru-2025-04.rur-2025-04.r1</code> (supported for 21.0.0.0.ru-2022-01.rur-2022-01.r1, 21.0.0.0.ru-2022-04.rur-2022-04.r1, 21.0.0.0.ru-2022-07.rur-2022-07.r1, 21.0.0.0.ru-2022-10.rur-2022-10.r1, 21.0.0.0.ru-2023-01.rur-2023-01.r1 and 21.0.0.0.ru-2023-01.rur-2023-01.r2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2025-04.rur-2025-04.r1</code> (supported for 19.0.0.0.ru-2019-07.rur-2019-07.r1, 19.0.0.0.ru-2019-10.rur-2019-10.r1 and 0.0.0.ru-2020-01.rur-2020-01.r1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2022-01.rur-2022-01.r1</code> (supported for 12.2.0.1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2022-07.rur-2022-07.r1</code> (supported for 12.1.0.2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>12.1.0.2.v8</code> (supported for 12.1.0.1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>11.2.0.4.v12</code> (supported for 11.2.0.2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>11.2.0.4.v11</code> (supported for 11.2.0.3 DB snapshots)</p></li>
    /// </ul>
    /// <p><b>PostgreSQL</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBSnapshot.PostgreSQL.html"> Upgrading a PostgreSQL DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    pub engine_version: ::std::option::Option<::std::string::String>,
    /// <p>The option group to identify with the upgraded DB snapshot.</p>
    /// <p>You can specify this parameter when you upgrade an Oracle DB snapshot. The same option group considerations apply when upgrading a DB snapshot as when upgrading a DB instance. For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Oracle.html#USER_UpgradeDBInstance.Oracle.OGPG.OG">Option group considerations</a> in the <i>Amazon RDS User Guide.</i></p>
    pub option_group_name: ::std::option::Option<::std::string::String>,
}
impl ModifyDbSnapshotInput {
    /// <p>The identifier of the DB snapshot to modify.</p>
    pub fn db_snapshot_identifier(&self) -> ::std::option::Option<&str> {
        self.db_snapshot_identifier.as_deref()
    }
    /// <p>The engine version to upgrade the DB snapshot to.</p>
    /// <p>The following are the database engines and engine versions that are available when you upgrade a DB snapshot.</p>
    /// <p><b>MariaDB</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mariadb-upgrade-snapshot.html"> Upgrading a MariaDB DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    /// <p><b>MySQL</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mysql-upgrade-snapshot.html"> Upgrading a MySQL DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    /// <p><b>Oracle</b></p>
    /// <ul>
    /// <li>
    /// <p><code>21.0.0.0.ru-2025-04.rur-2025-04.r1</code> (supported for 21.0.0.0.ru-2022-01.rur-2022-01.r1, 21.0.0.0.ru-2022-04.rur-2022-04.r1, 21.0.0.0.ru-2022-07.rur-2022-07.r1, 21.0.0.0.ru-2022-10.rur-2022-10.r1, 21.0.0.0.ru-2023-01.rur-2023-01.r1 and 21.0.0.0.ru-2023-01.rur-2023-01.r2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2025-04.rur-2025-04.r1</code> (supported for 19.0.0.0.ru-2019-07.rur-2019-07.r1, 19.0.0.0.ru-2019-10.rur-2019-10.r1 and 0.0.0.ru-2020-01.rur-2020-01.r1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2022-01.rur-2022-01.r1</code> (supported for 12.2.0.1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2022-07.rur-2022-07.r1</code> (supported for 12.1.0.2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>12.1.0.2.v8</code> (supported for 12.1.0.1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>11.2.0.4.v12</code> (supported for 11.2.0.2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>11.2.0.4.v11</code> (supported for 11.2.0.3 DB snapshots)</p></li>
    /// </ul>
    /// <p><b>PostgreSQL</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBSnapshot.PostgreSQL.html"> Upgrading a PostgreSQL DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    pub fn engine_version(&self) -> ::std::option::Option<&str> {
        self.engine_version.as_deref()
    }
    /// <p>The option group to identify with the upgraded DB snapshot.</p>
    /// <p>You can specify this parameter when you upgrade an Oracle DB snapshot. The same option group considerations apply when upgrading a DB snapshot as when upgrading a DB instance. For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Oracle.html#USER_UpgradeDBInstance.Oracle.OGPG.OG">Option group considerations</a> in the <i>Amazon RDS User Guide.</i></p>
    pub fn option_group_name(&self) -> ::std::option::Option<&str> {
        self.option_group_name.as_deref()
    }
}
impl ModifyDbSnapshotInput {
    /// Creates a new builder-style object to manufacture [`ModifyDbSnapshotInput`](crate::operation::modify_db_snapshot::ModifyDbSnapshotInput).
    pub fn builder() -> crate::operation::modify_db_snapshot::builders::ModifyDbSnapshotInputBuilder {
        crate::operation::modify_db_snapshot::builders::ModifyDbSnapshotInputBuilder::default()
    }
}

/// A builder for [`ModifyDbSnapshotInput`](crate::operation::modify_db_snapshot::ModifyDbSnapshotInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct ModifyDbSnapshotInputBuilder {
    pub(crate) db_snapshot_identifier: ::std::option::Option<::std::string::String>,
    pub(crate) engine_version: ::std::option::Option<::std::string::String>,
    pub(crate) option_group_name: ::std::option::Option<::std::string::String>,
}
impl ModifyDbSnapshotInputBuilder {
    /// <p>The identifier of the DB snapshot to modify.</p>
    /// This field is required.
    pub fn db_snapshot_identifier(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.db_snapshot_identifier = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The identifier of the DB snapshot to modify.</p>
    pub fn set_db_snapshot_identifier(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.db_snapshot_identifier = input;
        self
    }
    /// <p>The identifier of the DB snapshot to modify.</p>
    pub fn get_db_snapshot_identifier(&self) -> &::std::option::Option<::std::string::String> {
        &self.db_snapshot_identifier
    }
    /// <p>The engine version to upgrade the DB snapshot to.</p>
    /// <p>The following are the database engines and engine versions that are available when you upgrade a DB snapshot.</p>
    /// <p><b>MariaDB</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mariadb-upgrade-snapshot.html"> Upgrading a MariaDB DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    /// <p><b>MySQL</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mysql-upgrade-snapshot.html"> Upgrading a MySQL DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    /// <p><b>Oracle</b></p>
    /// <ul>
    /// <li>
    /// <p><code>21.0.0.0.ru-2025-04.rur-2025-04.r1</code> (supported for 21.0.0.0.ru-2022-01.rur-2022-01.r1, 21.0.0.0.ru-2022-04.rur-2022-04.r1, 21.0.0.0.ru-2022-07.rur-2022-07.r1, 21.0.0.0.ru-2022-10.rur-2022-10.r1, 21.0.0.0.ru-2023-01.rur-2023-01.r1 and 21.0.0.0.ru-2023-01.rur-2023-01.r2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2025-04.rur-2025-04.r1</code> (supported for 19.0.0.0.ru-2019-07.rur-2019-07.r1, 19.0.0.0.ru-2019-10.rur-2019-10.r1 and 0.0.0.ru-2020-01.rur-2020-01.r1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2022-01.rur-2022-01.r1</code> (supported for 12.2.0.1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2022-07.rur-2022-07.r1</code> (supported for 12.1.0.2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>12.1.0.2.v8</code> (supported for 12.1.0.1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>11.2.0.4.v12</code> (supported for 11.2.0.2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>11.2.0.4.v11</code> (supported for 11.2.0.3 DB snapshots)</p></li>
    /// </ul>
    /// <p><b>PostgreSQL</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBSnapshot.PostgreSQL.html"> Upgrading a PostgreSQL DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    pub fn engine_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.engine_version = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The engine version to upgrade the DB snapshot to.</p>
    /// <p>The following are the database engines and engine versions that are available when you upgrade a DB snapshot.</p>
    /// <p><b>MariaDB</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mariadb-upgrade-snapshot.html"> Upgrading a MariaDB DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    /// <p><b>MySQL</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mysql-upgrade-snapshot.html"> Upgrading a MySQL DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    /// <p><b>Oracle</b></p>
    /// <ul>
    /// <li>
    /// <p><code>21.0.0.0.ru-2025-04.rur-2025-04.r1</code> (supported for 21.0.0.0.ru-2022-01.rur-2022-01.r1, 21.0.0.0.ru-2022-04.rur-2022-04.r1, 21.0.0.0.ru-2022-07.rur-2022-07.r1, 21.0.0.0.ru-2022-10.rur-2022-10.r1, 21.0.0.0.ru-2023-01.rur-2023-01.r1 and 21.0.0.0.ru-2023-01.rur-2023-01.r2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2025-04.rur-2025-04.r1</code> (supported for 19.0.0.0.ru-2019-07.rur-2019-07.r1, 19.0.0.0.ru-2019-10.rur-2019-10.r1 and 0.0.0.ru-2020-01.rur-2020-01.r1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2022-01.rur-2022-01.r1</code> (supported for 12.2.0.1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2022-07.rur-2022-07.r1</code> (supported for 12.1.0.2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>12.1.0.2.v8</code> (supported for 12.1.0.1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>11.2.0.4.v12</code> (supported for 11.2.0.2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>11.2.0.4.v11</code> (supported for 11.2.0.3 DB snapshots)</p></li>
    /// </ul>
    /// <p><b>PostgreSQL</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBSnapshot.PostgreSQL.html"> Upgrading a PostgreSQL DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    pub fn set_engine_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.engine_version = input;
        self
    }
    /// <p>The engine version to upgrade the DB snapshot to.</p>
    /// <p>The following are the database engines and engine versions that are available when you upgrade a DB snapshot.</p>
    /// <p><b>MariaDB</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mariadb-upgrade-snapshot.html"> Upgrading a MariaDB DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    /// <p><b>MySQL</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mysql-upgrade-snapshot.html"> Upgrading a MySQL DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    /// <p><b>Oracle</b></p>
    /// <ul>
    /// <li>
    /// <p><code>21.0.0.0.ru-2025-04.rur-2025-04.r1</code> (supported for 21.0.0.0.ru-2022-01.rur-2022-01.r1, 21.0.0.0.ru-2022-04.rur-2022-04.r1, 21.0.0.0.ru-2022-07.rur-2022-07.r1, 21.0.0.0.ru-2022-10.rur-2022-10.r1, 21.0.0.0.ru-2023-01.rur-2023-01.r1 and 21.0.0.0.ru-2023-01.rur-2023-01.r2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2025-04.rur-2025-04.r1</code> (supported for 19.0.0.0.ru-2019-07.rur-2019-07.r1, 19.0.0.0.ru-2019-10.rur-2019-10.r1 and 0.0.0.ru-2020-01.rur-2020-01.r1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2022-01.rur-2022-01.r1</code> (supported for 12.2.0.1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>19.0.0.0.ru-2022-07.rur-2022-07.r1</code> (supported for 12.1.0.2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>12.1.0.2.v8</code> (supported for 12.1.0.1 DB snapshots)</p></li>
    /// <li>
    /// <p><code>11.2.0.4.v12</code> (supported for 11.2.0.2 DB snapshots)</p></li>
    /// <li>
    /// <p><code>11.2.0.4.v11</code> (supported for 11.2.0.3 DB snapshots)</p></li>
    /// </ul>
    /// <p><b>PostgreSQL</b></p>
    /// <p>For the list of engine versions that are available for upgrading a DB snapshot, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBSnapshot.PostgreSQL.html"> Upgrading a PostgreSQL DB snapshot engine version</a> in the <i>Amazon RDS User Guide.</i></p>
    pub fn get_engine_version(&self) -> &::std::option::Option<::std::string::String> {
        &self.engine_version
    }
    /// <p>The option group to identify with the upgraded DB snapshot.</p>
    /// <p>You can specify this parameter when you upgrade an Oracle DB snapshot. The same option group considerations apply when upgrading a DB snapshot as when upgrading a DB instance. For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Oracle.html#USER_UpgradeDBInstance.Oracle.OGPG.OG">Option group considerations</a> in the <i>Amazon RDS User Guide.</i></p>
    pub fn option_group_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.option_group_name = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The option group to identify with the upgraded DB snapshot.</p>
    /// <p>You can specify this parameter when you upgrade an Oracle DB snapshot. The same option group considerations apply when upgrading a DB snapshot as when upgrading a DB instance. For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Oracle.html#USER_UpgradeDBInstance.Oracle.OGPG.OG">Option group considerations</a> in the <i>Amazon RDS User Guide.</i></p>
    pub fn set_option_group_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.option_group_name = input;
        self
    }
    /// <p>The option group to identify with the upgraded DB snapshot.</p>
    /// <p>You can specify this parameter when you upgrade an Oracle DB snapshot. The same option group considerations apply when upgrading a DB snapshot as when upgrading a DB instance. For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Oracle.html#USER_UpgradeDBInstance.Oracle.OGPG.OG">Option group considerations</a> in the <i>Amazon RDS User Guide.</i></p>
    pub fn get_option_group_name(&self) -> &::std::option::Option<::std::string::String> {
        &self.option_group_name
    }
    /// Consumes the builder and constructs a [`ModifyDbSnapshotInput`](crate::operation::modify_db_snapshot::ModifyDbSnapshotInput).
    pub fn build(
        self,
    ) -> ::std::result::Result<crate::operation::modify_db_snapshot::ModifyDbSnapshotInput, ::aws_smithy_types::error::operation::BuildError> {
        ::std::result::Result::Ok(crate::operation::modify_db_snapshot::ModifyDbSnapshotInput {
            db_snapshot_identifier: self.db_snapshot_identifier,
            engine_version: self.engine_version,
            option_group_name: self.option_group_name,
        })
    }
}