/** * 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 Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SecurityHub { namespace Model { /** *

Provides information about an Amazon RDS DB security group.

See * Also:

AWS * API Reference

*/ class AwsRdsDbSecurityGroupDetails { public: AWS_SECURITYHUB_API AwsRdsDbSecurityGroupDetails(); AWS_SECURITYHUB_API AwsRdsDbSecurityGroupDetails(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API AwsRdsDbSecurityGroupDetails& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The ARN for the DB security group.

*/ inline const Aws::String& GetDbSecurityGroupArn() const{ return m_dbSecurityGroupArn; } /** *

The ARN for the DB security group.

*/ inline bool DbSecurityGroupArnHasBeenSet() const { return m_dbSecurityGroupArnHasBeenSet; } /** *

The ARN for the DB security group.

*/ inline void SetDbSecurityGroupArn(const Aws::String& value) { m_dbSecurityGroupArnHasBeenSet = true; m_dbSecurityGroupArn = value; } /** *

The ARN for the DB security group.

*/ inline void SetDbSecurityGroupArn(Aws::String&& value) { m_dbSecurityGroupArnHasBeenSet = true; m_dbSecurityGroupArn = std::move(value); } /** *

The ARN for the DB security group.

*/ inline void SetDbSecurityGroupArn(const char* value) { m_dbSecurityGroupArnHasBeenSet = true; m_dbSecurityGroupArn.assign(value); } /** *

The ARN for the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithDbSecurityGroupArn(const Aws::String& value) { SetDbSecurityGroupArn(value); return *this;} /** *

The ARN for the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithDbSecurityGroupArn(Aws::String&& value) { SetDbSecurityGroupArn(std::move(value)); return *this;} /** *

The ARN for the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithDbSecurityGroupArn(const char* value) { SetDbSecurityGroupArn(value); return *this;} /** *

Provides the description of the DB security group.

*/ inline const Aws::String& GetDbSecurityGroupDescription() const{ return m_dbSecurityGroupDescription; } /** *

Provides the description of the DB security group.

*/ inline bool DbSecurityGroupDescriptionHasBeenSet() const { return m_dbSecurityGroupDescriptionHasBeenSet; } /** *

Provides the description of the DB security group.

*/ inline void SetDbSecurityGroupDescription(const Aws::String& value) { m_dbSecurityGroupDescriptionHasBeenSet = true; m_dbSecurityGroupDescription = value; } /** *

Provides the description of the DB security group.

*/ inline void SetDbSecurityGroupDescription(Aws::String&& value) { m_dbSecurityGroupDescriptionHasBeenSet = true; m_dbSecurityGroupDescription = std::move(value); } /** *

Provides the description of the DB security group.

*/ inline void SetDbSecurityGroupDescription(const char* value) { m_dbSecurityGroupDescriptionHasBeenSet = true; m_dbSecurityGroupDescription.assign(value); } /** *

Provides the description of the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithDbSecurityGroupDescription(const Aws::String& value) { SetDbSecurityGroupDescription(value); return *this;} /** *

Provides the description of the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithDbSecurityGroupDescription(Aws::String&& value) { SetDbSecurityGroupDescription(std::move(value)); return *this;} /** *

Provides the description of the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithDbSecurityGroupDescription(const char* value) { SetDbSecurityGroupDescription(value); return *this;} /** *

Specifies the name of the DB security group.

*/ inline const Aws::String& GetDbSecurityGroupName() const{ return m_dbSecurityGroupName; } /** *

Specifies the name of the DB security group.

*/ inline bool DbSecurityGroupNameHasBeenSet() const { return m_dbSecurityGroupNameHasBeenSet; } /** *

Specifies the name of the DB security group.

*/ inline void SetDbSecurityGroupName(const Aws::String& value) { m_dbSecurityGroupNameHasBeenSet = true; m_dbSecurityGroupName = value; } /** *

Specifies the name of the DB security group.

*/ inline void SetDbSecurityGroupName(Aws::String&& value) { m_dbSecurityGroupNameHasBeenSet = true; m_dbSecurityGroupName = std::move(value); } /** *

Specifies the name of the DB security group.

*/ inline void SetDbSecurityGroupName(const char* value) { m_dbSecurityGroupNameHasBeenSet = true; m_dbSecurityGroupName.assign(value); } /** *

Specifies the name of the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithDbSecurityGroupName(const Aws::String& value) { SetDbSecurityGroupName(value); return *this;} /** *

Specifies the name of the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithDbSecurityGroupName(Aws::String&& value) { SetDbSecurityGroupName(std::move(value)); return *this;} /** *

Specifies the name of the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithDbSecurityGroupName(const char* value) { SetDbSecurityGroupName(value); return *this;} /** *

Contains a list of EC2 security groups.

*/ inline const Aws::Vector& GetEc2SecurityGroups() const{ return m_ec2SecurityGroups; } /** *

Contains a list of EC2 security groups.

*/ inline bool Ec2SecurityGroupsHasBeenSet() const { return m_ec2SecurityGroupsHasBeenSet; } /** *

Contains a list of EC2 security groups.

*/ inline void SetEc2SecurityGroups(const Aws::Vector& value) { m_ec2SecurityGroupsHasBeenSet = true; m_ec2SecurityGroups = value; } /** *

Contains a list of EC2 security groups.

*/ inline void SetEc2SecurityGroups(Aws::Vector&& value) { m_ec2SecurityGroupsHasBeenSet = true; m_ec2SecurityGroups = std::move(value); } /** *

Contains a list of EC2 security groups.

*/ inline AwsRdsDbSecurityGroupDetails& WithEc2SecurityGroups(const Aws::Vector& value) { SetEc2SecurityGroups(value); return *this;} /** *

Contains a list of EC2 security groups.

*/ inline AwsRdsDbSecurityGroupDetails& WithEc2SecurityGroups(Aws::Vector&& value) { SetEc2SecurityGroups(std::move(value)); return *this;} /** *

Contains a list of EC2 security groups.

*/ inline AwsRdsDbSecurityGroupDetails& AddEc2SecurityGroups(const AwsRdsDbSecurityGroupEc2SecurityGroup& value) { m_ec2SecurityGroupsHasBeenSet = true; m_ec2SecurityGroups.push_back(value); return *this; } /** *

Contains a list of EC2 security groups.

*/ inline AwsRdsDbSecurityGroupDetails& AddEc2SecurityGroups(AwsRdsDbSecurityGroupEc2SecurityGroup&& value) { m_ec2SecurityGroupsHasBeenSet = true; m_ec2SecurityGroups.push_back(std::move(value)); return *this; } /** *

Contains a list of IP ranges.

*/ inline const Aws::Vector& GetIpRanges() const{ return m_ipRanges; } /** *

Contains a list of IP ranges.

*/ inline bool IpRangesHasBeenSet() const { return m_ipRangesHasBeenSet; } /** *

Contains a list of IP ranges.

*/ inline void SetIpRanges(const Aws::Vector& value) { m_ipRangesHasBeenSet = true; m_ipRanges = value; } /** *

Contains a list of IP ranges.

*/ inline void SetIpRanges(Aws::Vector&& value) { m_ipRangesHasBeenSet = true; m_ipRanges = std::move(value); } /** *

Contains a list of IP ranges.

*/ inline AwsRdsDbSecurityGroupDetails& WithIpRanges(const Aws::Vector& value) { SetIpRanges(value); return *this;} /** *

Contains a list of IP ranges.

*/ inline AwsRdsDbSecurityGroupDetails& WithIpRanges(Aws::Vector&& value) { SetIpRanges(std::move(value)); return *this;} /** *

Contains a list of IP ranges.

*/ inline AwsRdsDbSecurityGroupDetails& AddIpRanges(const AwsRdsDbSecurityGroupIpRange& value) { m_ipRangesHasBeenSet = true; m_ipRanges.push_back(value); return *this; } /** *

Contains a list of IP ranges.

*/ inline AwsRdsDbSecurityGroupDetails& AddIpRanges(AwsRdsDbSecurityGroupIpRange&& value) { m_ipRangesHasBeenSet = true; m_ipRanges.push_back(std::move(value)); return *this; } /** *

Provides the Amazon Web Services ID of the owner of a specific DB security * group.

*/ inline const Aws::String& GetOwnerId() const{ return m_ownerId; } /** *

Provides the Amazon Web Services ID of the owner of a specific DB security * group.

*/ inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; } /** *

Provides the Amazon Web Services ID of the owner of a specific DB security * group.

*/ inline void SetOwnerId(const Aws::String& value) { m_ownerIdHasBeenSet = true; m_ownerId = value; } /** *

Provides the Amazon Web Services ID of the owner of a specific DB security * group.

*/ inline void SetOwnerId(Aws::String&& value) { m_ownerIdHasBeenSet = true; m_ownerId = std::move(value); } /** *

Provides the Amazon Web Services ID of the owner of a specific DB security * group.

*/ inline void SetOwnerId(const char* value) { m_ownerIdHasBeenSet = true; m_ownerId.assign(value); } /** *

Provides the Amazon Web Services ID of the owner of a specific DB security * group.

*/ inline AwsRdsDbSecurityGroupDetails& WithOwnerId(const Aws::String& value) { SetOwnerId(value); return *this;} /** *

Provides the Amazon Web Services ID of the owner of a specific DB security * group.

*/ inline AwsRdsDbSecurityGroupDetails& WithOwnerId(Aws::String&& value) { SetOwnerId(std::move(value)); return *this;} /** *

Provides the Amazon Web Services ID of the owner of a specific DB security * group.

*/ inline AwsRdsDbSecurityGroupDetails& WithOwnerId(const char* value) { SetOwnerId(value); return *this;} /** *

Provides VPC ID associated with the DB security group.

*/ inline const Aws::String& GetVpcId() const{ return m_vpcId; } /** *

Provides VPC ID associated with the DB security group.

*/ inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; } /** *

Provides VPC ID associated with the DB security group.

*/ inline void SetVpcId(const Aws::String& value) { m_vpcIdHasBeenSet = true; m_vpcId = value; } /** *

Provides VPC ID associated with the DB security group.

*/ inline void SetVpcId(Aws::String&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::move(value); } /** *

Provides VPC ID associated with the DB security group.

*/ inline void SetVpcId(const char* value) { m_vpcIdHasBeenSet = true; m_vpcId.assign(value); } /** *

Provides VPC ID associated with the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;} /** *

Provides VPC ID associated with the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;} /** *

Provides VPC ID associated with the DB security group.

*/ inline AwsRdsDbSecurityGroupDetails& WithVpcId(const char* value) { SetVpcId(value); return *this;} private: Aws::String m_dbSecurityGroupArn; bool m_dbSecurityGroupArnHasBeenSet = false; Aws::String m_dbSecurityGroupDescription; bool m_dbSecurityGroupDescriptionHasBeenSet = false; Aws::String m_dbSecurityGroupName; bool m_dbSecurityGroupNameHasBeenSet = false; Aws::Vector m_ec2SecurityGroups; bool m_ec2SecurityGroupsHasBeenSet = false; Aws::Vector m_ipRanges; bool m_ipRangesHasBeenSet = false; Aws::String m_ownerId; bool m_ownerIdHasBeenSet = false; Aws::String m_vpcId; bool m_vpcIdHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws