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

The summary metadata that describes a VPC connection.

See * Also:

AWS * API Reference

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

The ID of the VPC connection that you're creating. This ID is a unique * identifier for each Amazon Web Services Region in an Amazon Web Services * account.

*/ inline const Aws::String& GetVPCConnectionId() const{ return m_vPCConnectionId; } /** *

The ID of the VPC connection that you're creating. This ID is a unique * identifier for each Amazon Web Services Region in an Amazon Web Services * account.

*/ inline bool VPCConnectionIdHasBeenSet() const { return m_vPCConnectionIdHasBeenSet; } /** *

The ID of the VPC connection that you're creating. This ID is a unique * identifier for each Amazon Web Services Region in an Amazon Web Services * account.

*/ inline void SetVPCConnectionId(const Aws::String& value) { m_vPCConnectionIdHasBeenSet = true; m_vPCConnectionId = value; } /** *

The ID of the VPC connection that you're creating. This ID is a unique * identifier for each Amazon Web Services Region in an Amazon Web Services * account.

*/ inline void SetVPCConnectionId(Aws::String&& value) { m_vPCConnectionIdHasBeenSet = true; m_vPCConnectionId = std::move(value); } /** *

The ID of the VPC connection that you're creating. This ID is a unique * identifier for each Amazon Web Services Region in an Amazon Web Services * account.

*/ inline void SetVPCConnectionId(const char* value) { m_vPCConnectionIdHasBeenSet = true; m_vPCConnectionId.assign(value); } /** *

The ID of the VPC connection that you're creating. This ID is a unique * identifier for each Amazon Web Services Region in an Amazon Web Services * account.

*/ inline VPCConnectionSummary& WithVPCConnectionId(const Aws::String& value) { SetVPCConnectionId(value); return *this;} /** *

The ID of the VPC connection that you're creating. This ID is a unique * identifier for each Amazon Web Services Region in an Amazon Web Services * account.

*/ inline VPCConnectionSummary& WithVPCConnectionId(Aws::String&& value) { SetVPCConnectionId(std::move(value)); return *this;} /** *

The ID of the VPC connection that you're creating. This ID is a unique * identifier for each Amazon Web Services Region in an Amazon Web Services * account.

*/ inline VPCConnectionSummary& WithVPCConnectionId(const char* value) { SetVPCConnectionId(value); return *this;} /** *

The Amazon Resource Name (ARN) of the VPC connection.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon Resource Name (ARN) of the VPC connection.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the VPC connection.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The Amazon Resource Name (ARN) of the VPC connection.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the VPC connection.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The Amazon Resource Name (ARN) of the VPC connection.

*/ inline VPCConnectionSummary& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the VPC connection.

*/ inline VPCConnectionSummary& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the VPC connection.

*/ inline VPCConnectionSummary& WithArn(const char* value) { SetArn(value); return *this;} /** *

The display name for the VPC connection.

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

The display name for the VPC connection.

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

The display name for the VPC connection.

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

The display name for the VPC connection.

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

The display name for the VPC connection.

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

The display name for the VPC connection.

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

The display name for the VPC connection.

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

The display name for the VPC connection.

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

The Amazon EC2 VPC ID associated with the VPC connection.

*/ inline const Aws::String& GetVPCId() const{ return m_vPCId; } /** *

The Amazon EC2 VPC ID associated with the VPC connection.

*/ inline bool VPCIdHasBeenSet() const { return m_vPCIdHasBeenSet; } /** *

The Amazon EC2 VPC ID associated with the VPC connection.

*/ inline void SetVPCId(const Aws::String& value) { m_vPCIdHasBeenSet = true; m_vPCId = value; } /** *

The Amazon EC2 VPC ID associated with the VPC connection.

*/ inline void SetVPCId(Aws::String&& value) { m_vPCIdHasBeenSet = true; m_vPCId = std::move(value); } /** *

The Amazon EC2 VPC ID associated with the VPC connection.

*/ inline void SetVPCId(const char* value) { m_vPCIdHasBeenSet = true; m_vPCId.assign(value); } /** *

The Amazon EC2 VPC ID associated with the VPC connection.

*/ inline VPCConnectionSummary& WithVPCId(const Aws::String& value) { SetVPCId(value); return *this;} /** *

The Amazon EC2 VPC ID associated with the VPC connection.

*/ inline VPCConnectionSummary& WithVPCId(Aws::String&& value) { SetVPCId(std::move(value)); return *this;} /** *

The Amazon EC2 VPC ID associated with the VPC connection.

*/ inline VPCConnectionSummary& WithVPCId(const char* value) { SetVPCId(value); return *this;} /** *

The Amazon EC2 security group IDs associated with the VPC connection.

*/ inline const Aws::Vector& GetSecurityGroupIds() const{ return m_securityGroupIds; } /** *

The Amazon EC2 security group IDs associated with the VPC connection.

*/ inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; } /** *

The Amazon EC2 security group IDs associated with the VPC connection.

*/ inline void SetSecurityGroupIds(const Aws::Vector& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = value; } /** *

The Amazon EC2 security group IDs associated with the VPC connection.

*/ inline void SetSecurityGroupIds(Aws::Vector&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::move(value); } /** *

The Amazon EC2 security group IDs associated with the VPC connection.

*/ inline VPCConnectionSummary& WithSecurityGroupIds(const Aws::Vector& value) { SetSecurityGroupIds(value); return *this;} /** *

The Amazon EC2 security group IDs associated with the VPC connection.

*/ inline VPCConnectionSummary& WithSecurityGroupIds(Aws::Vector&& value) { SetSecurityGroupIds(std::move(value)); return *this;} /** *

The Amazon EC2 security group IDs associated with the VPC connection.

*/ inline VPCConnectionSummary& AddSecurityGroupIds(const Aws::String& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; } /** *

The Amazon EC2 security group IDs associated with the VPC connection.

*/ inline VPCConnectionSummary& AddSecurityGroupIds(Aws::String&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(std::move(value)); return *this; } /** *

The Amazon EC2 security group IDs associated with the VPC connection.

*/ inline VPCConnectionSummary& AddSecurityGroupIds(const char* value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; } /** *

A list of IP addresses of DNS resolver endpoints for the VPC connection.

*/ inline const Aws::Vector& GetDnsResolvers() const{ return m_dnsResolvers; } /** *

A list of IP addresses of DNS resolver endpoints for the VPC connection.

*/ inline bool DnsResolversHasBeenSet() const { return m_dnsResolversHasBeenSet; } /** *

A list of IP addresses of DNS resolver endpoints for the VPC connection.

*/ inline void SetDnsResolvers(const Aws::Vector& value) { m_dnsResolversHasBeenSet = true; m_dnsResolvers = value; } /** *

A list of IP addresses of DNS resolver endpoints for the VPC connection.

*/ inline void SetDnsResolvers(Aws::Vector&& value) { m_dnsResolversHasBeenSet = true; m_dnsResolvers = std::move(value); } /** *

A list of IP addresses of DNS resolver endpoints for the VPC connection.

*/ inline VPCConnectionSummary& WithDnsResolvers(const Aws::Vector& value) { SetDnsResolvers(value); return *this;} /** *

A list of IP addresses of DNS resolver endpoints for the VPC connection.

*/ inline VPCConnectionSummary& WithDnsResolvers(Aws::Vector&& value) { SetDnsResolvers(std::move(value)); return *this;} /** *

A list of IP addresses of DNS resolver endpoints for the VPC connection.

*/ inline VPCConnectionSummary& AddDnsResolvers(const Aws::String& value) { m_dnsResolversHasBeenSet = true; m_dnsResolvers.push_back(value); return *this; } /** *

A list of IP addresses of DNS resolver endpoints for the VPC connection.

*/ inline VPCConnectionSummary& AddDnsResolvers(Aws::String&& value) { m_dnsResolversHasBeenSet = true; m_dnsResolvers.push_back(std::move(value)); return *this; } /** *

A list of IP addresses of DNS resolver endpoints for the VPC connection.

*/ inline VPCConnectionSummary& AddDnsResolvers(const char* value) { m_dnsResolversHasBeenSet = true; m_dnsResolvers.push_back(value); return *this; } /** *

The status of the VPC connection.

*/ inline const VPCConnectionResourceStatus& GetStatus() const{ return m_status; } /** *

The status of the VPC connection.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of the VPC connection.

*/ inline void SetStatus(const VPCConnectionResourceStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of the VPC connection.

*/ inline void SetStatus(VPCConnectionResourceStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of the VPC connection.

*/ inline VPCConnectionSummary& WithStatus(const VPCConnectionResourceStatus& value) { SetStatus(value); return *this;} /** *

The status of the VPC connection.

*/ inline VPCConnectionSummary& WithStatus(VPCConnectionResourceStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The availability status of the VPC connection.

*/ inline const VPCConnectionAvailabilityStatus& GetAvailabilityStatus() const{ return m_availabilityStatus; } /** *

The availability status of the VPC connection.

*/ inline bool AvailabilityStatusHasBeenSet() const { return m_availabilityStatusHasBeenSet; } /** *

The availability status of the VPC connection.

*/ inline void SetAvailabilityStatus(const VPCConnectionAvailabilityStatus& value) { m_availabilityStatusHasBeenSet = true; m_availabilityStatus = value; } /** *

The availability status of the VPC connection.

*/ inline void SetAvailabilityStatus(VPCConnectionAvailabilityStatus&& value) { m_availabilityStatusHasBeenSet = true; m_availabilityStatus = std::move(value); } /** *

The availability status of the VPC connection.

*/ inline VPCConnectionSummary& WithAvailabilityStatus(const VPCConnectionAvailabilityStatus& value) { SetAvailabilityStatus(value); return *this;} /** *

The availability status of the VPC connection.

*/ inline VPCConnectionSummary& WithAvailabilityStatus(VPCConnectionAvailabilityStatus&& value) { SetAvailabilityStatus(std::move(value)); return *this;} /** *

A list of network interfaces.

*/ inline const Aws::Vector& GetNetworkInterfaces() const{ return m_networkInterfaces; } /** *

A list of network interfaces.

*/ inline bool NetworkInterfacesHasBeenSet() const { return m_networkInterfacesHasBeenSet; } /** *

A list of network interfaces.

*/ inline void SetNetworkInterfaces(const Aws::Vector& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces = value; } /** *

A list of network interfaces.

*/ inline void SetNetworkInterfaces(Aws::Vector&& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces = std::move(value); } /** *

A list of network interfaces.

*/ inline VPCConnectionSummary& WithNetworkInterfaces(const Aws::Vector& value) { SetNetworkInterfaces(value); return *this;} /** *

A list of network interfaces.

*/ inline VPCConnectionSummary& WithNetworkInterfaces(Aws::Vector&& value) { SetNetworkInterfaces(std::move(value)); return *this;} /** *

A list of network interfaces.

*/ inline VPCConnectionSummary& AddNetworkInterfaces(const NetworkInterface& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces.push_back(value); return *this; } /** *

A list of network interfaces.

*/ inline VPCConnectionSummary& AddNetworkInterfaces(NetworkInterface&& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces.push_back(std::move(value)); return *this; } /** *

The ARN of the IAM role associated with the VPC connection.

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

The ARN of the IAM role associated with the VPC connection.

*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *

The ARN of the IAM role associated with the VPC connection.

*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *

The ARN of the IAM role associated with the VPC connection.

*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *

The ARN of the IAM role associated with the VPC connection.

*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *

The ARN of the IAM role associated with the VPC connection.

*/ inline VPCConnectionSummary& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

The ARN of the IAM role associated with the VPC connection.

*/ inline VPCConnectionSummary& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

The ARN of the IAM role associated with the VPC connection.

*/ inline VPCConnectionSummary& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

The time that the VPC connection was created.

*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *

The time that the VPC connection was created.

*/ inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } /** *

The time that the VPC connection was created.

*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } /** *

The time that the VPC connection was created.

*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } /** *

The time that the VPC connection was created.

*/ inline VPCConnectionSummary& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *

The time that the VPC connection was created.

*/ inline VPCConnectionSummary& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *

The time that the VPC connection was last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedTime() const{ return m_lastUpdatedTime; } /** *

The time that the VPC connection was last updated.

*/ inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; } /** *

The time that the VPC connection was last updated.

*/ inline void SetLastUpdatedTime(const Aws::Utils::DateTime& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = value; } /** *

The time that the VPC connection was last updated.

*/ inline void SetLastUpdatedTime(Aws::Utils::DateTime&& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = std::move(value); } /** *

The time that the VPC connection was last updated.

*/ inline VPCConnectionSummary& WithLastUpdatedTime(const Aws::Utils::DateTime& value) { SetLastUpdatedTime(value); return *this;} /** *

The time that the VPC connection was last updated.

*/ inline VPCConnectionSummary& WithLastUpdatedTime(Aws::Utils::DateTime&& value) { SetLastUpdatedTime(std::move(value)); return *this;} private: Aws::String m_vPCConnectionId; bool m_vPCConnectionIdHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_vPCId; bool m_vPCIdHasBeenSet = false; Aws::Vector m_securityGroupIds; bool m_securityGroupIdsHasBeenSet = false; Aws::Vector m_dnsResolvers; bool m_dnsResolversHasBeenSet = false; VPCConnectionResourceStatus m_status; bool m_statusHasBeenSet = false; VPCConnectionAvailabilityStatus m_availabilityStatus; bool m_availabilityStatusHasBeenSet = false; Aws::Vector m_networkInterfaces; bool m_networkInterfacesHasBeenSet = false; Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; Aws::Utils::DateTime m_createdTime; bool m_createdTimeHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedTime; bool m_lastUpdatedTimeHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws