/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Option group option settings are used to display settings available for each
* option with their default values and other information. These values are used
* with the DescribeOptionGroupOptions action.See Also:
AWS
* API Reference
The name of the option group option.
*/ inline const Aws::String& GetSettingName() const{ return m_settingName; } /** *The name of the option group option.
*/ inline bool SettingNameHasBeenSet() const { return m_settingNameHasBeenSet; } /** *The name of the option group option.
*/ inline void SetSettingName(const Aws::String& value) { m_settingNameHasBeenSet = true; m_settingName = value; } /** *The name of the option group option.
*/ inline void SetSettingName(Aws::String&& value) { m_settingNameHasBeenSet = true; m_settingName = std::move(value); } /** *The name of the option group option.
*/ inline void SetSettingName(const char* value) { m_settingNameHasBeenSet = true; m_settingName.assign(value); } /** *The name of the option group option.
*/ inline OptionGroupOptionSetting& WithSettingName(const Aws::String& value) { SetSettingName(value); return *this;} /** *The name of the option group option.
*/ inline OptionGroupOptionSetting& WithSettingName(Aws::String&& value) { SetSettingName(std::move(value)); return *this;} /** *The name of the option group option.
*/ inline OptionGroupOptionSetting& WithSettingName(const char* value) { SetSettingName(value); return *this;} /** *The description of the option group option.
*/ inline const Aws::String& GetSettingDescription() const{ return m_settingDescription; } /** *The description of the option group option.
*/ inline bool SettingDescriptionHasBeenSet() const { return m_settingDescriptionHasBeenSet; } /** *The description of the option group option.
*/ inline void SetSettingDescription(const Aws::String& value) { m_settingDescriptionHasBeenSet = true; m_settingDescription = value; } /** *The description of the option group option.
*/ inline void SetSettingDescription(Aws::String&& value) { m_settingDescriptionHasBeenSet = true; m_settingDescription = std::move(value); } /** *The description of the option group option.
*/ inline void SetSettingDescription(const char* value) { m_settingDescriptionHasBeenSet = true; m_settingDescription.assign(value); } /** *The description of the option group option.
*/ inline OptionGroupOptionSetting& WithSettingDescription(const Aws::String& value) { SetSettingDescription(value); return *this;} /** *The description of the option group option.
*/ inline OptionGroupOptionSetting& WithSettingDescription(Aws::String&& value) { SetSettingDescription(std::move(value)); return *this;} /** *The description of the option group option.
*/ inline OptionGroupOptionSetting& WithSettingDescription(const char* value) { SetSettingDescription(value); return *this;} /** *The default value for the option group option.
*/ inline const Aws::String& GetDefaultValue() const{ return m_defaultValue; } /** *The default value for the option group option.
*/ inline bool DefaultValueHasBeenSet() const { return m_defaultValueHasBeenSet; } /** *The default value for the option group option.
*/ inline void SetDefaultValue(const Aws::String& value) { m_defaultValueHasBeenSet = true; m_defaultValue = value; } /** *The default value for the option group option.
*/ inline void SetDefaultValue(Aws::String&& value) { m_defaultValueHasBeenSet = true; m_defaultValue = std::move(value); } /** *The default value for the option group option.
*/ inline void SetDefaultValue(const char* value) { m_defaultValueHasBeenSet = true; m_defaultValue.assign(value); } /** *The default value for the option group option.
*/ inline OptionGroupOptionSetting& WithDefaultValue(const Aws::String& value) { SetDefaultValue(value); return *this;} /** *The default value for the option group option.
*/ inline OptionGroupOptionSetting& WithDefaultValue(Aws::String&& value) { SetDefaultValue(std::move(value)); return *this;} /** *The default value for the option group option.
*/ inline OptionGroupOptionSetting& WithDefaultValue(const char* value) { SetDefaultValue(value); return *this;} /** *The DB engine specific parameter type for the option group option.
*/ inline const Aws::String& GetApplyType() const{ return m_applyType; } /** *The DB engine specific parameter type for the option group option.
*/ inline bool ApplyTypeHasBeenSet() const { return m_applyTypeHasBeenSet; } /** *The DB engine specific parameter type for the option group option.
*/ inline void SetApplyType(const Aws::String& value) { m_applyTypeHasBeenSet = true; m_applyType = value; } /** *The DB engine specific parameter type for the option group option.
*/ inline void SetApplyType(Aws::String&& value) { m_applyTypeHasBeenSet = true; m_applyType = std::move(value); } /** *The DB engine specific parameter type for the option group option.
*/ inline void SetApplyType(const char* value) { m_applyTypeHasBeenSet = true; m_applyType.assign(value); } /** *The DB engine specific parameter type for the option group option.
*/ inline OptionGroupOptionSetting& WithApplyType(const Aws::String& value) { SetApplyType(value); return *this;} /** *The DB engine specific parameter type for the option group option.
*/ inline OptionGroupOptionSetting& WithApplyType(Aws::String&& value) { SetApplyType(std::move(value)); return *this;} /** *The DB engine specific parameter type for the option group option.
*/ inline OptionGroupOptionSetting& WithApplyType(const char* value) { SetApplyType(value); return *this;} /** *Indicates the acceptable values for the option group option.
*/ inline const Aws::String& GetAllowedValues() const{ return m_allowedValues; } /** *Indicates the acceptable values for the option group option.
*/ inline bool AllowedValuesHasBeenSet() const { return m_allowedValuesHasBeenSet; } /** *Indicates the acceptable values for the option group option.
*/ inline void SetAllowedValues(const Aws::String& value) { m_allowedValuesHasBeenSet = true; m_allowedValues = value; } /** *Indicates the acceptable values for the option group option.
*/ inline void SetAllowedValues(Aws::String&& value) { m_allowedValuesHasBeenSet = true; m_allowedValues = std::move(value); } /** *Indicates the acceptable values for the option group option.
*/ inline void SetAllowedValues(const char* value) { m_allowedValuesHasBeenSet = true; m_allowedValues.assign(value); } /** *Indicates the acceptable values for the option group option.
*/ inline OptionGroupOptionSetting& WithAllowedValues(const Aws::String& value) { SetAllowedValues(value); return *this;} /** *Indicates the acceptable values for the option group option.
*/ inline OptionGroupOptionSetting& WithAllowedValues(Aws::String&& value) { SetAllowedValues(std::move(value)); return *this;} /** *Indicates the acceptable values for the option group option.
*/ inline OptionGroupOptionSetting& WithAllowedValues(const char* value) { SetAllowedValues(value); return *this;} /** *Boolean value where true indicates that this option group option can be * changed from the default value.
*/ inline bool GetIsModifiable() const{ return m_isModifiable; } /** *Boolean value where true indicates that this option group option can be * changed from the default value.
*/ inline bool IsModifiableHasBeenSet() const { return m_isModifiableHasBeenSet; } /** *Boolean value where true indicates that this option group option can be * changed from the default value.
*/ inline void SetIsModifiable(bool value) { m_isModifiableHasBeenSet = true; m_isModifiable = value; } /** *Boolean value where true indicates that this option group option can be * changed from the default value.
*/ inline OptionGroupOptionSetting& WithIsModifiable(bool value) { SetIsModifiable(value); return *this;} /** *Boolean value where true indicates that a value must be specified for this * option setting of the option group option.
*/ inline bool GetIsRequired() const{ return m_isRequired; } /** *Boolean value where true indicates that a value must be specified for this * option setting of the option group option.
*/ inline bool IsRequiredHasBeenSet() const { return m_isRequiredHasBeenSet; } /** *Boolean value where true indicates that a value must be specified for this * option setting of the option group option.
*/ inline void SetIsRequired(bool value) { m_isRequiredHasBeenSet = true; m_isRequired = value; } /** *Boolean value where true indicates that a value must be specified for this * option setting of the option group option.
*/ inline OptionGroupOptionSetting& WithIsRequired(bool value) { SetIsRequired(value); return *this;} /** *The minimum DB engine version required for the corresponding allowed value * for this option setting.
*/ inline const Aws::VectorThe minimum DB engine version required for the corresponding allowed value * for this option setting.
*/ inline bool MinimumEngineVersionPerAllowedValueHasBeenSet() const { return m_minimumEngineVersionPerAllowedValueHasBeenSet; } /** *The minimum DB engine version required for the corresponding allowed value * for this option setting.
*/ inline void SetMinimumEngineVersionPerAllowedValue(const Aws::VectorThe minimum DB engine version required for the corresponding allowed value * for this option setting.
*/ inline void SetMinimumEngineVersionPerAllowedValue(Aws::VectorThe minimum DB engine version required for the corresponding allowed value * for this option setting.
*/ inline OptionGroupOptionSetting& WithMinimumEngineVersionPerAllowedValue(const Aws::VectorThe minimum DB engine version required for the corresponding allowed value * for this option setting.
*/ inline OptionGroupOptionSetting& WithMinimumEngineVersionPerAllowedValue(Aws::VectorThe minimum DB engine version required for the corresponding allowed value * for this option setting.
*/ inline OptionGroupOptionSetting& AddMinimumEngineVersionPerAllowedValue(const MinimumEngineVersionPerAllowedValue& value) { m_minimumEngineVersionPerAllowedValueHasBeenSet = true; m_minimumEngineVersionPerAllowedValue.push_back(value); return *this; } /** *The minimum DB engine version required for the corresponding allowed value * for this option setting.
*/ inline OptionGroupOptionSetting& AddMinimumEngineVersionPerAllowedValue(MinimumEngineVersionPerAllowedValue&& value) { m_minimumEngineVersionPerAllowedValueHasBeenSet = true; m_minimumEngineVersionPerAllowedValue.push_back(std::move(value)); return *this; } private: Aws::String m_settingName; bool m_settingNameHasBeenSet = false; Aws::String m_settingDescription; bool m_settingDescriptionHasBeenSet = false; Aws::String m_defaultValue; bool m_defaultValueHasBeenSet = false; Aws::String m_applyType; bool m_applyTypeHasBeenSet = false; Aws::String m_allowedValues; bool m_allowedValuesHasBeenSet = false; bool m_isModifiable; bool m_isModifiableHasBeenSet = false; bool m_isRequired; bool m_isRequiredHasBeenSet = false; Aws::Vector