/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace Neptune { 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_NEPTUNE_API UpgradeTarget(); AWS_NEPTUNE_API UpgradeTarget(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_NEPTUNE_API UpgradeTarget& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_NEPTUNE_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_NEPTUNE_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 a database engine is upgraded to a major * version.

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

A value that indicates whether a database engine is upgraded to a major * version.

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

A value that indicates whether a database engine is upgraded to a major * version.

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

A value that indicates whether a database engine is upgraded to a major * version.

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

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

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

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

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

A value that indicates whether you can use Neptune 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 Neptune global databases with the * target engine version.

*/ inline UpgradeTarget& WithSupportsGlobalDatabases(bool value) { SetSupportsGlobalDatabases(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; bool m_supportsGlobalDatabases; bool m_supportsGlobalDatabasesHasBeenSet = false; }; } // namespace Model } // namespace Neptune } // namespace Aws