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

Information about valid modifications that you can make to your DB instance. * Contains the result of a successful call to the * DescribeValidDBInstanceModifications action. You can use this * information when you call ModifyDBInstance.

See * Also:

AWS * API Reference

*/ class ValidDBInstanceModificationsMessage { public: AWS_RDS_API ValidDBInstanceModificationsMessage(); AWS_RDS_API ValidDBInstanceModificationsMessage(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_RDS_API ValidDBInstanceModificationsMessage& 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; /** *

Valid storage options for your DB instance.

*/ inline const Aws::Vector& GetStorage() const{ return m_storage; } /** *

Valid storage options for your DB instance.

*/ inline bool StorageHasBeenSet() const { return m_storageHasBeenSet; } /** *

Valid storage options for your DB instance.

*/ inline void SetStorage(const Aws::Vector& value) { m_storageHasBeenSet = true; m_storage = value; } /** *

Valid storage options for your DB instance.

*/ inline void SetStorage(Aws::Vector&& value) { m_storageHasBeenSet = true; m_storage = std::move(value); } /** *

Valid storage options for your DB instance.

*/ inline ValidDBInstanceModificationsMessage& WithStorage(const Aws::Vector& value) { SetStorage(value); return *this;} /** *

Valid storage options for your DB instance.

*/ inline ValidDBInstanceModificationsMessage& WithStorage(Aws::Vector&& value) { SetStorage(std::move(value)); return *this;} /** *

Valid storage options for your DB instance.

*/ inline ValidDBInstanceModificationsMessage& AddStorage(const ValidStorageOptions& value) { m_storageHasBeenSet = true; m_storage.push_back(value); return *this; } /** *

Valid storage options for your DB instance.

*/ inline ValidDBInstanceModificationsMessage& AddStorage(ValidStorageOptions&& value) { m_storageHasBeenSet = true; m_storage.push_back(std::move(value)); return *this; } /** *

Valid processor features for your DB instance.

*/ inline const Aws::Vector& GetValidProcessorFeatures() const{ return m_validProcessorFeatures; } /** *

Valid processor features for your DB instance.

*/ inline bool ValidProcessorFeaturesHasBeenSet() const { return m_validProcessorFeaturesHasBeenSet; } /** *

Valid processor features for your DB instance.

*/ inline void SetValidProcessorFeatures(const Aws::Vector& value) { m_validProcessorFeaturesHasBeenSet = true; m_validProcessorFeatures = value; } /** *

Valid processor features for your DB instance.

*/ inline void SetValidProcessorFeatures(Aws::Vector&& value) { m_validProcessorFeaturesHasBeenSet = true; m_validProcessorFeatures = std::move(value); } /** *

Valid processor features for your DB instance.

*/ inline ValidDBInstanceModificationsMessage& WithValidProcessorFeatures(const Aws::Vector& value) { SetValidProcessorFeatures(value); return *this;} /** *

Valid processor features for your DB instance.

*/ inline ValidDBInstanceModificationsMessage& WithValidProcessorFeatures(Aws::Vector&& value) { SetValidProcessorFeatures(std::move(value)); return *this;} /** *

Valid processor features for your DB instance.

*/ inline ValidDBInstanceModificationsMessage& AddValidProcessorFeatures(const AvailableProcessorFeature& value) { m_validProcessorFeaturesHasBeenSet = true; m_validProcessorFeatures.push_back(value); return *this; } /** *

Valid processor features for your DB instance.

*/ inline ValidDBInstanceModificationsMessage& AddValidProcessorFeatures(AvailableProcessorFeature&& value) { m_validProcessorFeaturesHasBeenSet = true; m_validProcessorFeatures.push_back(std::move(value)); return *this; } private: Aws::Vector m_storage; bool m_storageHasBeenSet = false; Aws::Vector m_validProcessorFeatures; bool m_validProcessorFeaturesHasBeenSet = false; }; } // namespace Model } // namespace RDS } // namespace Aws