/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Option details.See Also:
AWS API
* Reference
The name of the option.
*/ inline const Aws::String& GetOptionName() const{ return m_optionName; } /** *The name of the option.
*/ inline bool OptionNameHasBeenSet() const { return m_optionNameHasBeenSet; } /** *The name of the option.
*/ inline void SetOptionName(const Aws::String& value) { m_optionNameHasBeenSet = true; m_optionName = value; } /** *The name of the option.
*/ inline void SetOptionName(Aws::String&& value) { m_optionNameHasBeenSet = true; m_optionName = std::move(value); } /** *The name of the option.
*/ inline void SetOptionName(const char* value) { m_optionNameHasBeenSet = true; m_optionName.assign(value); } /** *The name of the option.
*/ inline Option& WithOptionName(const Aws::String& value) { SetOptionName(value); return *this;} /** *The name of the option.
*/ inline Option& WithOptionName(Aws::String&& value) { SetOptionName(std::move(value)); return *this;} /** *The name of the option.
*/ inline Option& WithOptionName(const char* value) { SetOptionName(value); return *this;} /** *The description of the option.
*/ inline const Aws::String& GetOptionDescription() const{ return m_optionDescription; } /** *The description of the option.
*/ inline bool OptionDescriptionHasBeenSet() const { return m_optionDescriptionHasBeenSet; } /** *The description of the option.
*/ inline void SetOptionDescription(const Aws::String& value) { m_optionDescriptionHasBeenSet = true; m_optionDescription = value; } /** *The description of the option.
*/ inline void SetOptionDescription(Aws::String&& value) { m_optionDescriptionHasBeenSet = true; m_optionDescription = std::move(value); } /** *The description of the option.
*/ inline void SetOptionDescription(const char* value) { m_optionDescriptionHasBeenSet = true; m_optionDescription.assign(value); } /** *The description of the option.
*/ inline Option& WithOptionDescription(const Aws::String& value) { SetOptionDescription(value); return *this;} /** *The description of the option.
*/ inline Option& WithOptionDescription(Aws::String&& value) { SetOptionDescription(std::move(value)); return *this;} /** *The description of the option.
*/ inline Option& WithOptionDescription(const char* value) { SetOptionDescription(value); return *this;} /** *Indicate if this option is persistent.
*/ inline bool GetPersistent() const{ return m_persistent; } /** *Indicate if this option is persistent.
*/ inline bool PersistentHasBeenSet() const { return m_persistentHasBeenSet; } /** *Indicate if this option is persistent.
*/ inline void SetPersistent(bool value) { m_persistentHasBeenSet = true; m_persistent = value; } /** *Indicate if this option is persistent.
*/ inline Option& WithPersistent(bool value) { SetPersistent(value); return *this;} /** *Indicate if this option is permanent.
*/ inline bool GetPermanent() const{ return m_permanent; } /** *Indicate if this option is permanent.
*/ inline bool PermanentHasBeenSet() const { return m_permanentHasBeenSet; } /** *Indicate if this option is permanent.
*/ inline void SetPermanent(bool value) { m_permanentHasBeenSet = true; m_permanent = value; } /** *Indicate if this option is permanent.
*/ inline Option& WithPermanent(bool value) { SetPermanent(value); return *this;} /** *If required, the port configured for this option to use.
*/ inline int GetPort() const{ return m_port; } /** *If required, the port configured for this option to use.
*/ inline bool PortHasBeenSet() const { return m_portHasBeenSet; } /** *If required, the port configured for this option to use.
*/ inline void SetPort(int value) { m_portHasBeenSet = true; m_port = value; } /** *If required, the port configured for this option to use.
*/ inline Option& WithPort(int value) { SetPort(value); return *this;} /** *The version of the option.
*/ inline const Aws::String& GetOptionVersion() const{ return m_optionVersion; } /** *The version of the option.
*/ inline bool OptionVersionHasBeenSet() const { return m_optionVersionHasBeenSet; } /** *The version of the option.
*/ inline void SetOptionVersion(const Aws::String& value) { m_optionVersionHasBeenSet = true; m_optionVersion = value; } /** *The version of the option.
*/ inline void SetOptionVersion(Aws::String&& value) { m_optionVersionHasBeenSet = true; m_optionVersion = std::move(value); } /** *The version of the option.
*/ inline void SetOptionVersion(const char* value) { m_optionVersionHasBeenSet = true; m_optionVersion.assign(value); } /** *The version of the option.
*/ inline Option& WithOptionVersion(const Aws::String& value) { SetOptionVersion(value); return *this;} /** *The version of the option.
*/ inline Option& WithOptionVersion(Aws::String&& value) { SetOptionVersion(std::move(value)); return *this;} /** *The version of the option.
*/ inline Option& WithOptionVersion(const char* value) { SetOptionVersion(value); return *this;} /** *The option settings for this option.
*/ inline const Aws::VectorThe option settings for this option.
*/ inline bool OptionSettingsHasBeenSet() const { return m_optionSettingsHasBeenSet; } /** *The option settings for this option.
*/ inline void SetOptionSettings(const Aws::VectorThe option settings for this option.
*/ inline void SetOptionSettings(Aws::VectorThe option settings for this option.
*/ inline Option& WithOptionSettings(const Aws::VectorThe option settings for this option.
*/ inline Option& WithOptionSettings(Aws::VectorThe option settings for this option.
*/ inline Option& AddOptionSettings(const OptionSetting& value) { m_optionSettingsHasBeenSet = true; m_optionSettings.push_back(value); return *this; } /** *The option settings for this option.
*/ inline Option& AddOptionSettings(OptionSetting&& value) { m_optionSettingsHasBeenSet = true; m_optionSettings.push_back(std::move(value)); return *this; } /** *If the option requires access to a port, then this DB security group allows * access to the port.
*/ inline const Aws::VectorIf the option requires access to a port, then this DB security group allows * access to the port.
*/ inline bool DBSecurityGroupMembershipsHasBeenSet() const { return m_dBSecurityGroupMembershipsHasBeenSet; } /** *If the option requires access to a port, then this DB security group allows * access to the port.
*/ inline void SetDBSecurityGroupMemberships(const Aws::VectorIf the option requires access to a port, then this DB security group allows * access to the port.
*/ inline void SetDBSecurityGroupMemberships(Aws::VectorIf the option requires access to a port, then this DB security group allows * access to the port.
*/ inline Option& WithDBSecurityGroupMemberships(const Aws::VectorIf the option requires access to a port, then this DB security group allows * access to the port.
*/ inline Option& WithDBSecurityGroupMemberships(Aws::VectorIf the option requires access to a port, then this DB security group allows * access to the port.
*/ inline Option& AddDBSecurityGroupMemberships(const DBSecurityGroupMembership& value) { m_dBSecurityGroupMembershipsHasBeenSet = true; m_dBSecurityGroupMemberships.push_back(value); return *this; } /** *If the option requires access to a port, then this DB security group allows * access to the port.
*/ inline Option& AddDBSecurityGroupMemberships(DBSecurityGroupMembership&& value) { m_dBSecurityGroupMembershipsHasBeenSet = true; m_dBSecurityGroupMemberships.push_back(std::move(value)); return *this; } /** *If the option requires access to a port, then this VPC security group allows * access to the port.
*/ inline const Aws::VectorIf the option requires access to a port, then this VPC security group allows * access to the port.
*/ inline bool VpcSecurityGroupMembershipsHasBeenSet() const { return m_vpcSecurityGroupMembershipsHasBeenSet; } /** *If the option requires access to a port, then this VPC security group allows * access to the port.
*/ inline void SetVpcSecurityGroupMemberships(const Aws::VectorIf the option requires access to a port, then this VPC security group allows * access to the port.
*/ inline void SetVpcSecurityGroupMemberships(Aws::VectorIf the option requires access to a port, then this VPC security group allows * access to the port.
*/ inline Option& WithVpcSecurityGroupMemberships(const Aws::VectorIf the option requires access to a port, then this VPC security group allows * access to the port.
*/ inline Option& WithVpcSecurityGroupMemberships(Aws::VectorIf the option requires access to a port, then this VPC security group allows * access to the port.
*/ inline Option& AddVpcSecurityGroupMemberships(const VpcSecurityGroupMembership& value) { m_vpcSecurityGroupMembershipsHasBeenSet = true; m_vpcSecurityGroupMemberships.push_back(value); return *this; } /** *If the option requires access to a port, then this VPC security group allows * access to the port.
*/ inline Option& AddVpcSecurityGroupMemberships(VpcSecurityGroupMembership&& value) { m_vpcSecurityGroupMembershipsHasBeenSet = true; m_vpcSecurityGroupMemberships.push_back(std::move(value)); return *this; } private: Aws::String m_optionName; bool m_optionNameHasBeenSet = false; Aws::String m_optionDescription; bool m_optionDescriptionHasBeenSet = false; bool m_persistent; bool m_persistentHasBeenSet = false; bool m_permanent; bool m_permanentHasBeenSet = false; int m_port; bool m_portHasBeenSet = false; Aws::String m_optionVersion; bool m_optionVersionHasBeenSet = false; Aws::Vector