/** * 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 RDS { namespace Model { /** *

Contains the available processor feature information for the DB instance * class of a DB instance.

For more information, see Configuring * the Processor of the DB Instance Class in the Amazon RDS User Guide. *

See Also:

AWS * API Reference

*/ class AvailableProcessorFeature { public: AWS_RDS_API AvailableProcessorFeature(); AWS_RDS_API AvailableProcessorFeature(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_RDS_API AvailableProcessorFeature& 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 processor feature. Valid names are coreCount and * threadsPerCore.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the processor feature. Valid names are coreCount and * threadsPerCore.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the processor feature. Valid names are coreCount and * threadsPerCore.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the processor feature. Valid names are coreCount and * threadsPerCore.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the processor feature. Valid names are coreCount and * threadsPerCore.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the processor feature. Valid names are coreCount and * threadsPerCore.

*/ inline AvailableProcessorFeature& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the processor feature. Valid names are coreCount and * threadsPerCore.

*/ inline AvailableProcessorFeature& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the processor feature. Valid names are coreCount and * threadsPerCore.

*/ inline AvailableProcessorFeature& WithName(const char* value) { SetName(value); return *this;} /** *

The default value for the processor feature of the DB instance class.

*/ inline const Aws::String& GetDefaultValue() const{ return m_defaultValue; } /** *

The default value for the processor feature of the DB instance class.

*/ inline bool DefaultValueHasBeenSet() const { return m_defaultValueHasBeenSet; } /** *

The default value for the processor feature of the DB instance class.

*/ inline void SetDefaultValue(const Aws::String& value) { m_defaultValueHasBeenSet = true; m_defaultValue = value; } /** *

The default value for the processor feature of the DB instance class.

*/ inline void SetDefaultValue(Aws::String&& value) { m_defaultValueHasBeenSet = true; m_defaultValue = std::move(value); } /** *

The default value for the processor feature of the DB instance class.

*/ inline void SetDefaultValue(const char* value) { m_defaultValueHasBeenSet = true; m_defaultValue.assign(value); } /** *

The default value for the processor feature of the DB instance class.

*/ inline AvailableProcessorFeature& WithDefaultValue(const Aws::String& value) { SetDefaultValue(value); return *this;} /** *

The default value for the processor feature of the DB instance class.

*/ inline AvailableProcessorFeature& WithDefaultValue(Aws::String&& value) { SetDefaultValue(std::move(value)); return *this;} /** *

The default value for the processor feature of the DB instance class.

*/ inline AvailableProcessorFeature& WithDefaultValue(const char* value) { SetDefaultValue(value); return *this;} /** *

The allowed values for the processor feature of the DB instance class.

*/ inline const Aws::String& GetAllowedValues() const{ return m_allowedValues; } /** *

The allowed values for the processor feature of the DB instance class.

*/ inline bool AllowedValuesHasBeenSet() const { return m_allowedValuesHasBeenSet; } /** *

The allowed values for the processor feature of the DB instance class.

*/ inline void SetAllowedValues(const Aws::String& value) { m_allowedValuesHasBeenSet = true; m_allowedValues = value; } /** *

The allowed values for the processor feature of the DB instance class.

*/ inline void SetAllowedValues(Aws::String&& value) { m_allowedValuesHasBeenSet = true; m_allowedValues = std::move(value); } /** *

The allowed values for the processor feature of the DB instance class.

*/ inline void SetAllowedValues(const char* value) { m_allowedValuesHasBeenSet = true; m_allowedValues.assign(value); } /** *

The allowed values for the processor feature of the DB instance class.

*/ inline AvailableProcessorFeature& WithAllowedValues(const Aws::String& value) { SetAllowedValues(value); return *this;} /** *

The allowed values for the processor feature of the DB instance class.

*/ inline AvailableProcessorFeature& WithAllowedValues(Aws::String&& value) { SetAllowedValues(std::move(value)); return *this;} /** *

The allowed values for the processor feature of the DB instance class.

*/ inline AvailableProcessorFeature& WithAllowedValues(const char* value) { SetAllowedValues(value); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_defaultValue; bool m_defaultValueHasBeenSet = false; Aws::String m_allowedValues; bool m_allowedValuesHasBeenSet = false; }; } // namespace Model } // namespace RDS } // namespace Aws