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

See Also:

AWS API * Reference

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

Specifies the name of the option group.

*/ inline const Aws::String& GetOptionGroupName() const{ return m_optionGroupName; } /** *

Specifies the name of the option group.

*/ inline bool OptionGroupNameHasBeenSet() const { return m_optionGroupNameHasBeenSet; } /** *

Specifies the name of the option group.

*/ inline void SetOptionGroupName(const Aws::String& value) { m_optionGroupNameHasBeenSet = true; m_optionGroupName = value; } /** *

Specifies the name of the option group.

*/ inline void SetOptionGroupName(Aws::String&& value) { m_optionGroupNameHasBeenSet = true; m_optionGroupName = std::move(value); } /** *

Specifies the name of the option group.

*/ inline void SetOptionGroupName(const char* value) { m_optionGroupNameHasBeenSet = true; m_optionGroupName.assign(value); } /** *

Specifies the name of the option group.

*/ inline OptionGroup& WithOptionGroupName(const Aws::String& value) { SetOptionGroupName(value); return *this;} /** *

Specifies the name of the option group.

*/ inline OptionGroup& WithOptionGroupName(Aws::String&& value) { SetOptionGroupName(std::move(value)); return *this;} /** *

Specifies the name of the option group.

*/ inline OptionGroup& WithOptionGroupName(const char* value) { SetOptionGroupName(value); return *this;} /** *

Provides a description of the option group.

*/ inline const Aws::String& GetOptionGroupDescription() const{ return m_optionGroupDescription; } /** *

Provides a description of the option group.

*/ inline bool OptionGroupDescriptionHasBeenSet() const { return m_optionGroupDescriptionHasBeenSet; } /** *

Provides a description of the option group.

*/ inline void SetOptionGroupDescription(const Aws::String& value) { m_optionGroupDescriptionHasBeenSet = true; m_optionGroupDescription = value; } /** *

Provides a description of the option group.

*/ inline void SetOptionGroupDescription(Aws::String&& value) { m_optionGroupDescriptionHasBeenSet = true; m_optionGroupDescription = std::move(value); } /** *

Provides a description of the option group.

*/ inline void SetOptionGroupDescription(const char* value) { m_optionGroupDescriptionHasBeenSet = true; m_optionGroupDescription.assign(value); } /** *

Provides a description of the option group.

*/ inline OptionGroup& WithOptionGroupDescription(const Aws::String& value) { SetOptionGroupDescription(value); return *this;} /** *

Provides a description of the option group.

*/ inline OptionGroup& WithOptionGroupDescription(Aws::String&& value) { SetOptionGroupDescription(std::move(value)); return *this;} /** *

Provides a description of the option group.

*/ inline OptionGroup& WithOptionGroupDescription(const char* value) { SetOptionGroupDescription(value); return *this;} /** *

Indicates the name of the engine that this option group can be applied * to.

*/ inline const Aws::String& GetEngineName() const{ return m_engineName; } /** *

Indicates the name of the engine that this option group can be applied * to.

*/ inline bool EngineNameHasBeenSet() const { return m_engineNameHasBeenSet; } /** *

Indicates the name of the engine that this option group can be applied * to.

*/ inline void SetEngineName(const Aws::String& value) { m_engineNameHasBeenSet = true; m_engineName = value; } /** *

Indicates the name of the engine that this option group can be applied * to.

*/ inline void SetEngineName(Aws::String&& value) { m_engineNameHasBeenSet = true; m_engineName = std::move(value); } /** *

Indicates the name of the engine that this option group can be applied * to.

*/ inline void SetEngineName(const char* value) { m_engineNameHasBeenSet = true; m_engineName.assign(value); } /** *

Indicates the name of the engine that this option group can be applied * to.

*/ inline OptionGroup& WithEngineName(const Aws::String& value) { SetEngineName(value); return *this;} /** *

Indicates the name of the engine that this option group can be applied * to.

*/ inline OptionGroup& WithEngineName(Aws::String&& value) { SetEngineName(std::move(value)); return *this;} /** *

Indicates the name of the engine that this option group can be applied * to.

*/ inline OptionGroup& WithEngineName(const char* value) { SetEngineName(value); return *this;} /** *

Indicates the major engine version associated with this option group.

*/ inline const Aws::String& GetMajorEngineVersion() const{ return m_majorEngineVersion; } /** *

Indicates the major engine version associated with this option group.

*/ inline bool MajorEngineVersionHasBeenSet() const { return m_majorEngineVersionHasBeenSet; } /** *

Indicates the major engine version associated with this option group.

*/ inline void SetMajorEngineVersion(const Aws::String& value) { m_majorEngineVersionHasBeenSet = true; m_majorEngineVersion = value; } /** *

Indicates the major engine version associated with this option group.

*/ inline void SetMajorEngineVersion(Aws::String&& value) { m_majorEngineVersionHasBeenSet = true; m_majorEngineVersion = std::move(value); } /** *

Indicates the major engine version associated with this option group.

*/ inline void SetMajorEngineVersion(const char* value) { m_majorEngineVersionHasBeenSet = true; m_majorEngineVersion.assign(value); } /** *

Indicates the major engine version associated with this option group.

*/ inline OptionGroup& WithMajorEngineVersion(const Aws::String& value) { SetMajorEngineVersion(value); return *this;} /** *

Indicates the major engine version associated with this option group.

*/ inline OptionGroup& WithMajorEngineVersion(Aws::String&& value) { SetMajorEngineVersion(std::move(value)); return *this;} /** *

Indicates the major engine version associated with this option group.

*/ inline OptionGroup& WithMajorEngineVersion(const char* value) { SetMajorEngineVersion(value); return *this;} /** *

Indicates what options are available in the option group.

*/ inline const Aws::Vector