/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace RDS { namespace Model { /** *

The version of the database engine that a DB instance can be upgraded * to.

See Also:

AWS * API Reference

*/ class UpgradeTarget { public: AWS_RDS_API UpgradeTarget(); AWS_RDS_API UpgradeTarget(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_RDS_API UpgradeTarget& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_RDS_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_RDS_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The name of the upgrade target database engine.

*/ inline const Aws::String& GetEngine() const{ return m_engine; } /** *

The name of the upgrade target database engine.

*/ inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; } /** *

The name of the upgrade target database engine.

*/ inline void SetEngine(const Aws::String& value) { m_engineHasBeenSet = true; m_engine = value; } /** *

The name of the upgrade target database engine.

*/ inline void SetEngine(Aws::String&& value) { m_engineHasBeenSet = true; m_engine = std::move(value); } /** *

The name of the upgrade target database engine.

*/ inline void SetEngine(const char* value) { m_engineHasBeenSet = true; m_engine.assign(value); } /** *

The name of the upgrade target database engine.

*/ inline UpgradeTarget& WithEngine(const Aws::String& value) { SetEngine(value); return *this;} /** *

The name of the upgrade target database engine.

*/ inline UpgradeTarget& WithEngine(Aws::String&& value) { SetEngine(std::move(value)); return *this;} /** *

The name of the upgrade target database engine.

*/ inline UpgradeTarget& WithEngine(const char* value) { SetEngine(value); return *this;} /** *

The version number of the upgrade target database engine.

*/ inline const Aws::String& GetEngineVersion() const{ return m_engineVersion; } /** *

The version number of the upgrade target database engine.

*/ inline bool EngineVersionHasBeenSet() const { return m_engineVersionHasBeenSet; } /** *

The version number of the upgrade target database engine.

*/ inline void SetEngineVersion(const Aws::String& value) { m_engineVersionHasBeenSet = true; m_engineVersion = value; } /** *

The version number of the upgrade target database engine.

*/ inline void SetEngineVersion(Aws::String&& value) { m_engineVersionHasBeenSet = true; m_engineVersion = std::move(value); } /** *

The version number of the upgrade target database engine.

*/ inline void SetEngineVersion(const char* value) { m_engineVersionHasBeenSet = true; m_engineVersion.assign(value); } /** *

The version number of the upgrade target database engine.

*/ inline UpgradeTarget& WithEngineVersion(const Aws::String& value) { SetEngineVersion(value); return *this;} /** *

The version number of the upgrade target database engine.

*/ inline UpgradeTarget& WithEngineVersion(Aws::String&& value) { SetEngineVersion(std::move(value)); return *this;} /** *

The version number of the upgrade target database engine.

*/ inline UpgradeTarget& WithEngineVersion(const char* value) { SetEngineVersion(value); return *this;} /** *

The version of the database engine that a DB instance can be upgraded to.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

The version of the database engine that a DB instance can be upgraded to.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

The version of the database engine that a DB instance can be upgraded to.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

The version of the database engine that a DB instance can be upgraded to.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

The version of the database engine that a DB instance can be upgraded to.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

The version of the database engine that a DB instance can be upgraded to.

*/ inline UpgradeTarget& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

The version of the database engine that a DB instance can be upgraded to.

*/ inline UpgradeTarget& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

The version of the database engine that a DB instance can be upgraded to.

*/ inline UpgradeTarget& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

A value that indicates whether the target version is applied to any source DB * instances that have AutoMinorVersionUpgrade set to true.

*/ inline bool GetAutoUpgrade() const{ return m_autoUpgrade; } /** *

A value that indicates whether the target version is applied to any source DB * instances that have AutoMinorVersionUpgrade set to true.

*/ inline bool AutoUpgradeHasBeenSet() const { return m_autoUpgradeHasBeenSet; } /** *

A value that indicates whether the target version is applied to any source DB * instances that have AutoMinorVersionUpgrade set to true.

*/ inline void SetAutoUpgrade(bool value) { m_autoUpgradeHasBeenSet = true; m_autoUpgrade = value; } /** *

A value that indicates whether the target version is applied to any source DB * instances that have AutoMinorVersionUpgrade set to true.

*/ inline UpgradeTarget& WithAutoUpgrade(bool value) { SetAutoUpgrade(value); return *this;} /** *

A value that indicates whether upgrading to the target version requires * upgrading the major version of the database engine.

*/ inline bool GetIsMajorVersionUpgrade() const{ return m_isMajorVersionUpgrade; } /** *

A value that indicates whether upgrading to the target version requires * upgrading the major version of the database engine.

*/ inline bool IsMajorVersionUpgradeHasBeenSet() const { return m_isMajorVersionUpgradeHasBeenSet; } /** *

A value that indicates whether upgrading to the target version requires * upgrading the major version of the database engine.

*/ inline void SetIsMajorVersionUpgrade(bool value) { m_isMajorVersionUpgradeHasBeenSet = true; m_isMajorVersionUpgrade = value; } /** *

A value that indicates whether upgrading to the target version requires * upgrading the major version of the database engine.

*/ inline UpgradeTarget& WithIsMajorVersionUpgrade(bool value) { SetIsMajorVersionUpgrade(value); return *this;} /** *

A list of the supported DB engine modes for the target engine version.

*/ inline const Aws::Vector& GetSupportedEngineModes() const{ return m_supportedEngineModes; } /** *

A list of the supported DB engine modes for the target engine version.

*/ inline bool SupportedEngineModesHasBeenSet() const { return m_supportedEngineModesHasBeenSet; } /** *

A list of the supported DB engine modes for the target engine version.

*/ inline void SetSupportedEngineModes(const Aws::Vector& value) { m_supportedEngineModesHasBeenSet = true; m_supportedEngineModes = value; } /** *

A list of the supported DB engine modes for the target engine version.

*/ inline void SetSupportedEngineModes(Aws::Vector&& value) { m_supportedEngineModesHasBeenSet = true; m_supportedEngineModes = std::move(value); } /** *

A list of the supported DB engine modes for the target engine version.

*/ inline UpgradeTarget& WithSupportedEngineModes(const Aws::Vector& value) { SetSupportedEngineModes(value); return *this;} /** *

A list of the supported DB engine modes for the target engine version.

*/ inline UpgradeTarget& WithSupportedEngineModes(Aws::Vector&& value) { SetSupportedEngineModes(std::move(value)); return *this;} /** *

A list of the supported DB engine modes for the target engine version.

*/ inline UpgradeTarget& AddSupportedEngineModes(const Aws::String& value) { m_supportedEngineModesHasBeenSet = true; m_supportedEngineModes.push_back(value); return *this; } /** *

A list of the supported DB engine modes for the target engine version.

*/ inline UpgradeTarget& AddSupportedEngineModes(Aws::String&& value) { m_supportedEngineModesHasBeenSet = true; m_supportedEngineModes.push_back(std::move(value)); return *this; } /** *

A list of the supported DB engine modes for the target engine version.

*/ inline UpgradeTarget& AddSupportedEngineModes(const char* value) { m_supportedEngineModesHasBeenSet = true; m_supportedEngineModes.push_back(value); return *this; } /** *

A value that indicates whether you can use Aurora parallel query with the * target engine version.

*/ inline bool GetSupportsParallelQuery() const{ return m_supportsParallelQuery; } /** *

A value that indicates whether you can use Aurora parallel query with the * target engine version.

*/ inline bool SupportsParallelQueryHasBeenSet() const { return m_supportsParallelQueryHasBeenSet; } /** *

A value that indicates whether you can use Aurora parallel query with the * target engine version.

*/ inline void SetSupportsParallelQuery(bool value) { m_supportsParallelQueryHasBeenSet = true; m_supportsParallelQuery = value; } /** *

A value that indicates whether you can use Aurora parallel query with the * target engine version.

*/ inline UpgradeTarget& WithSupportsParallelQuery(bool value) { SetSupportsParallelQuery(value); return *this;} /** *

A value that indicates whether you can use Aurora global databases with the * target engine version.

*/ inline bool GetSupportsGlobalDatabases() const{ return m_supportsGlobalDatabases; } /** *

A value that indicates whether you can use Aurora global databases with the * target engine version.

*/ inline bool SupportsGlobalDatabasesHasBeenSet() const { return m_supportsGlobalDatabasesHasBeenSet; } /** *

A value that indicates whether you can use Aurora global databases with the * target engine version.

*/ inline void SetSupportsGlobalDatabases(bool value) { m_supportsGlobalDatabasesHasBeenSet = true; m_supportsGlobalDatabases = value; } /** *

A value that indicates whether you can use Aurora global databases with the * target engine version.

*/ inline UpgradeTarget& WithSupportsGlobalDatabases(bool value) { SetSupportsGlobalDatabases(value); return *this;} /** *

A value that indicates whether you can use Babelfish for Aurora PostgreSQL * with the target engine version.

*/ inline bool GetSupportsBabelfish() const{ return m_supportsBabelfish; } /** *

A value that indicates whether you can use Babelfish for Aurora PostgreSQL * with the target engine version.

*/ inline bool SupportsBabelfishHasBeenSet() const { return m_supportsBabelfishHasBeenSet; } /** *

A value that indicates whether you can use Babelfish for Aurora PostgreSQL * with the target engine version.

*/ inline void SetSupportsBabelfish(bool value) { m_supportsBabelfishHasBeenSet = true; m_supportsBabelfish = value; } /** *

A value that indicates whether you can use Babelfish for Aurora PostgreSQL * with the target engine version.

*/ inline UpgradeTarget& WithSupportsBabelfish(bool value) { SetSupportsBabelfish(value); return *this;} private: Aws::String m_engine; bool m_engineHasBeenSet = false; Aws::String m_engineVersion; bool m_engineVersionHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; bool m_autoUpgrade; bool m_autoUpgradeHasBeenSet = false; bool m_isMajorVersionUpgrade; bool m_isMajorVersionUpgradeHasBeenSet = false; Aws::Vector m_supportedEngineModes; bool m_supportedEngineModesHasBeenSet = false; bool m_supportsParallelQuery; bool m_supportsParallelQueryHasBeenSet = false; bool m_supportsGlobalDatabases; bool m_supportsGlobalDatabasesHasBeenSet = false; bool m_supportsBabelfish; bool m_supportsBabelfishHasBeenSet = false; }; } // namespace Model } // namespace RDS } // namespace Aws