/** * 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 #include #include #include namespace Aws { namespace Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace EC2 { namespace Model { /** *

An Amazon Web Services Verified Access endpoint specifies the application * that Amazon Web Services Verified Access provides access to. It must be attached * to an Amazon Web Services Verified Access group. An Amazon Web Services Verified * Access endpoint must also have an attached access policy before you attached it * to a group.

See Also:

AWS * API Reference

*/ class VerifiedAccessEndpoint { public: AWS_EC2_API VerifiedAccessEndpoint(); AWS_EC2_API VerifiedAccessEndpoint(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_EC2_API VerifiedAccessEndpoint& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The ID of the Amazon Web Services Verified Access instance.

*/ inline const Aws::String& GetVerifiedAccessInstanceId() const{ return m_verifiedAccessInstanceId; } /** *

The ID of the Amazon Web Services Verified Access instance.

*/ inline bool VerifiedAccessInstanceIdHasBeenSet() const { return m_verifiedAccessInstanceIdHasBeenSet; } /** *

The ID of the Amazon Web Services Verified Access instance.

*/ inline void SetVerifiedAccessInstanceId(const Aws::String& value) { m_verifiedAccessInstanceIdHasBeenSet = true; m_verifiedAccessInstanceId = value; } /** *

The ID of the Amazon Web Services Verified Access instance.

*/ inline void SetVerifiedAccessInstanceId(Aws::String&& value) { m_verifiedAccessInstanceIdHasBeenSet = true; m_verifiedAccessInstanceId = std::move(value); } /** *

The ID of the Amazon Web Services Verified Access instance.

*/ inline void SetVerifiedAccessInstanceId(const char* value) { m_verifiedAccessInstanceIdHasBeenSet = true; m_verifiedAccessInstanceId.assign(value); } /** *

The ID of the Amazon Web Services Verified Access instance.

*/ inline VerifiedAccessEndpoint& WithVerifiedAccessInstanceId(const Aws::String& value) { SetVerifiedAccessInstanceId(value); return *this;} /** *

The ID of the Amazon Web Services Verified Access instance.

*/ inline VerifiedAccessEndpoint& WithVerifiedAccessInstanceId(Aws::String&& value) { SetVerifiedAccessInstanceId(std::move(value)); return *this;} /** *

The ID of the Amazon Web Services Verified Access instance.

*/ inline VerifiedAccessEndpoint& WithVerifiedAccessInstanceId(const char* value) { SetVerifiedAccessInstanceId(value); return *this;} /** *

The ID of the Amazon Web Services Verified Access group.

*/ inline const Aws::String& GetVerifiedAccessGroupId() const{ return m_verifiedAccessGroupId; } /** *

The ID of the Amazon Web Services Verified Access group.

*/ inline bool VerifiedAccessGroupIdHasBeenSet() const { return m_verifiedAccessGroupIdHasBeenSet; } /** *

The ID of the Amazon Web Services Verified Access group.

*/ inline void SetVerifiedAccessGroupId(const Aws::String& value) { m_verifiedAccessGroupIdHasBeenSet = true; m_verifiedAccessGroupId = value; } /** *

The ID of the Amazon Web Services Verified Access group.

*/ inline void SetVerifiedAccessGroupId(Aws::String&& value) { m_verifiedAccessGroupIdHasBeenSet = true; m_verifiedAccessGroupId = std::move(value); } /** *

The ID of the Amazon Web Services Verified Access group.

*/ inline void SetVerifiedAccessGroupId(const char* value) { m_verifiedAccessGroupIdHasBeenSet = true; m_verifiedAccessGroupId.assign(value); } /** *

The ID of the Amazon Web Services Verified Access group.

*/ inline VerifiedAccessEndpoint& WithVerifiedAccessGroupId(const Aws::String& value) { SetVerifiedAccessGroupId(value); return *this;} /** *

The ID of the Amazon Web Services Verified Access group.

*/ inline VerifiedAccessEndpoint& WithVerifiedAccessGroupId(Aws::String&& value) { SetVerifiedAccessGroupId(std::move(value)); return *this;} /** *

The ID of the Amazon Web Services Verified Access group.

*/ inline VerifiedAccessEndpoint& WithVerifiedAccessGroupId(const char* value) { SetVerifiedAccessGroupId(value); return *this;} /** *

The ID of the Amazon Web Services Verified Access endpoint.

*/ inline const Aws::String& GetVerifiedAccessEndpointId() const{ return m_verifiedAccessEndpointId; } /** *

The ID of the Amazon Web Services Verified Access endpoint.

*/ inline bool VerifiedAccessEndpointIdHasBeenSet() const { return m_verifiedAccessEndpointIdHasBeenSet; } /** *

The ID of the Amazon Web Services Verified Access endpoint.

*/ inline void SetVerifiedAccessEndpointId(const Aws::String& value) { m_verifiedAccessEndpointIdHasBeenSet = true; m_verifiedAccessEndpointId = value; } /** *

The ID of the Amazon Web Services Verified Access endpoint.

*/ inline void SetVerifiedAccessEndpointId(Aws::String&& value) { m_verifiedAccessEndpointIdHasBeenSet = true; m_verifiedAccessEndpointId = std::move(value); } /** *

The ID of the Amazon Web Services Verified Access endpoint.

*/ inline void SetVerifiedAccessEndpointId(const char* value) { m_verifiedAccessEndpointIdHasBeenSet = true; m_verifiedAccessEndpointId.assign(value); } /** *

The ID of the Amazon Web Services Verified Access endpoint.

*/ inline VerifiedAccessEndpoint& WithVerifiedAccessEndpointId(const Aws::String& value) { SetVerifiedAccessEndpointId(value); return *this;} /** *

The ID of the Amazon Web Services Verified Access endpoint.

*/ inline VerifiedAccessEndpoint& WithVerifiedAccessEndpointId(Aws::String&& value) { SetVerifiedAccessEndpointId(std::move(value)); return *this;} /** *

The ID of the Amazon Web Services Verified Access endpoint.

*/ inline VerifiedAccessEndpoint& WithVerifiedAccessEndpointId(const char* value) { SetVerifiedAccessEndpointId(value); return *this;} /** *

The DNS name for users to reach your application.

*/ inline const Aws::String& GetApplicationDomain() const{ return m_applicationDomain; } /** *

The DNS name for users to reach your application.

*/ inline bool ApplicationDomainHasBeenSet() const { return m_applicationDomainHasBeenSet; } /** *

The DNS name for users to reach your application.

*/ inline void SetApplicationDomain(const Aws::String& value) { m_applicationDomainHasBeenSet = true; m_applicationDomain = value; } /** *

The DNS name for users to reach your application.

*/ inline void SetApplicationDomain(Aws::String&& value) { m_applicationDomainHasBeenSet = true; m_applicationDomain = std::move(value); } /** *

The DNS name for users to reach your application.

*/ inline void SetApplicationDomain(const char* value) { m_applicationDomainHasBeenSet = true; m_applicationDomain.assign(value); } /** *

The DNS name for users to reach your application.

*/ inline VerifiedAccessEndpoint& WithApplicationDomain(const Aws::String& value) { SetApplicationDomain(value); return *this;} /** *

The DNS name for users to reach your application.

*/ inline VerifiedAccessEndpoint& WithApplicationDomain(Aws::String&& value) { SetApplicationDomain(std::move(value)); return *this;} /** *

The DNS name for users to reach your application.

*/ inline VerifiedAccessEndpoint& WithApplicationDomain(const char* value) { SetApplicationDomain(value); return *this;} /** *

The type of Amazon Web Services Verified Access endpoint. Incoming * application requests will be sent to an IP address, load balancer or a network * interface depending on the endpoint type specified.

*/ inline const VerifiedAccessEndpointType& GetEndpointType() const{ return m_endpointType; } /** *

The type of Amazon Web Services Verified Access endpoint. Incoming * application requests will be sent to an IP address, load balancer or a network * interface depending on the endpoint type specified.

*/ inline bool EndpointTypeHasBeenSet() const { return m_endpointTypeHasBeenSet; } /** *

The type of Amazon Web Services Verified Access endpoint. Incoming * application requests will be sent to an IP address, load balancer or a network * interface depending on the endpoint type specified.

*/ inline void SetEndpointType(const VerifiedAccessEndpointType& value) { m_endpointTypeHasBeenSet = true; m_endpointType = value; } /** *

The type of Amazon Web Services Verified Access endpoint. Incoming * application requests will be sent to an IP address, load balancer or a network * interface depending on the endpoint type specified.

*/ inline void SetEndpointType(VerifiedAccessEndpointType&& value) { m_endpointTypeHasBeenSet = true; m_endpointType = std::move(value); } /** *

The type of Amazon Web Services Verified Access endpoint. Incoming * application requests will be sent to an IP address, load balancer or a network * interface depending on the endpoint type specified.

*/ inline VerifiedAccessEndpoint& WithEndpointType(const VerifiedAccessEndpointType& value) { SetEndpointType(value); return *this;} /** *

The type of Amazon Web Services Verified Access endpoint. Incoming * application requests will be sent to an IP address, load balancer or a network * interface depending on the endpoint type specified.

*/ inline VerifiedAccessEndpoint& WithEndpointType(VerifiedAccessEndpointType&& value) { SetEndpointType(std::move(value)); return *this;} /** *

The type of attachment used to provide connectivity between the Amazon Web * Services Verified Access endpoint and the application.

*/ inline const VerifiedAccessEndpointAttachmentType& GetAttachmentType() const{ return m_attachmentType; } /** *

The type of attachment used to provide connectivity between the Amazon Web * Services Verified Access endpoint and the application.

*/ inline bool AttachmentTypeHasBeenSet() const { return m_attachmentTypeHasBeenSet; } /** *

The type of attachment used to provide connectivity between the Amazon Web * Services Verified Access endpoint and the application.

*/ inline void SetAttachmentType(const VerifiedAccessEndpointAttachmentType& value) { m_attachmentTypeHasBeenSet = true; m_attachmentType = value; } /** *

The type of attachment used to provide connectivity between the Amazon Web * Services Verified Access endpoint and the application.

*/ inline void SetAttachmentType(VerifiedAccessEndpointAttachmentType&& value) { m_attachmentTypeHasBeenSet = true; m_attachmentType = std::move(value); } /** *

The type of attachment used to provide connectivity between the Amazon Web * Services Verified Access endpoint and the application.

*/ inline VerifiedAccessEndpoint& WithAttachmentType(const VerifiedAccessEndpointAttachmentType& value) { SetAttachmentType(value); return *this;} /** *

The type of attachment used to provide connectivity between the Amazon Web * Services Verified Access endpoint and the application.

*/ inline VerifiedAccessEndpoint& WithAttachmentType(VerifiedAccessEndpointAttachmentType&& value) { SetAttachmentType(std::move(value)); return *this;} /** *

The ARN of a public TLS/SSL certificate imported into or created with * ACM.

*/ inline const Aws::String& GetDomainCertificateArn() const{ return m_domainCertificateArn; } /** *

The ARN of a public TLS/SSL certificate imported into or created with * ACM.

*/ inline bool DomainCertificateArnHasBeenSet() const { return m_domainCertificateArnHasBeenSet; } /** *

The ARN of a public TLS/SSL certificate imported into or created with * ACM.

*/ inline void SetDomainCertificateArn(const Aws::String& value) { m_domainCertificateArnHasBeenSet = true; m_domainCertificateArn = value; } /** *

The ARN of a public TLS/SSL certificate imported into or created with * ACM.

*/ inline void SetDomainCertificateArn(Aws::String&& value) { m_domainCertificateArnHasBeenSet = true; m_domainCertificateArn = std::move(value); } /** *

The ARN of a public TLS/SSL certificate imported into or created with * ACM.

*/ inline void SetDomainCertificateArn(const char* value) { m_domainCertificateArnHasBeenSet = true; m_domainCertificateArn.assign(value); } /** *

The ARN of a public TLS/SSL certificate imported into or created with * ACM.

*/ inline VerifiedAccessEndpoint& WithDomainCertificateArn(const Aws::String& value) { SetDomainCertificateArn(value); return *this;} /** *

The ARN of a public TLS/SSL certificate imported into or created with * ACM.

*/ inline VerifiedAccessEndpoint& WithDomainCertificateArn(Aws::String&& value) { SetDomainCertificateArn(std::move(value)); return *this;} /** *

The ARN of a public TLS/SSL certificate imported into or created with * ACM.

*/ inline VerifiedAccessEndpoint& WithDomainCertificateArn(const char* value) { SetDomainCertificateArn(value); return *this;} /** *

A DNS name that is generated for the endpoint.

*/ inline const Aws::String& GetEndpointDomain() const{ return m_endpointDomain; } /** *

A DNS name that is generated for the endpoint.

*/ inline bool EndpointDomainHasBeenSet() const { return m_endpointDomainHasBeenSet; } /** *

A DNS name that is generated for the endpoint.

*/ inline void SetEndpointDomain(const Aws::String& value) { m_endpointDomainHasBeenSet = true; m_endpointDomain = value; } /** *

A DNS name that is generated for the endpoint.

*/ inline void SetEndpointDomain(Aws::String&& value) { m_endpointDomainHasBeenSet = true; m_endpointDomain = std::move(value); } /** *

A DNS name that is generated for the endpoint.

*/ inline void SetEndpointDomain(const char* value) { m_endpointDomainHasBeenSet = true; m_endpointDomain.assign(value); } /** *

A DNS name that is generated for the endpoint.

*/ inline VerifiedAccessEndpoint& WithEndpointDomain(const Aws::String& value) { SetEndpointDomain(value); return *this;} /** *

A DNS name that is generated for the endpoint.

*/ inline VerifiedAccessEndpoint& WithEndpointDomain(Aws::String&& value) { SetEndpointDomain(std::move(value)); return *this;} /** *

A DNS name that is generated for the endpoint.

*/ inline VerifiedAccessEndpoint& WithEndpointDomain(const char* value) { SetEndpointDomain(value); return *this;} /** *

Returned if endpoint has a device trust provider attached.

*/ inline const Aws::String& GetDeviceValidationDomain() const{ return m_deviceValidationDomain; } /** *

Returned if endpoint has a device trust provider attached.

*/ inline bool DeviceValidationDomainHasBeenSet() const { return m_deviceValidationDomainHasBeenSet; } /** *

Returned if endpoint has a device trust provider attached.

*/ inline void SetDeviceValidationDomain(const Aws::String& value) { m_deviceValidationDomainHasBeenSet = true; m_deviceValidationDomain = value; } /** *

Returned if endpoint has a device trust provider attached.

*/ inline void SetDeviceValidationDomain(Aws::String&& value) { m_deviceValidationDomainHasBeenSet = true; m_deviceValidationDomain = std::move(value); } /** *

Returned if endpoint has a device trust provider attached.

*/ inline void SetDeviceValidationDomain(const char* value) { m_deviceValidationDomainHasBeenSet = true; m_deviceValidationDomain.assign(value); } /** *

Returned if endpoint has a device trust provider attached.

*/ inline VerifiedAccessEndpoint& WithDeviceValidationDomain(const Aws::String& value) { SetDeviceValidationDomain(value); return *this;} /** *

Returned if endpoint has a device trust provider attached.

*/ inline VerifiedAccessEndpoint& WithDeviceValidationDomain(Aws::String&& value) { SetDeviceValidationDomain(std::move(value)); return *this;} /** *

Returned if endpoint has a device trust provider attached.

*/ inline VerifiedAccessEndpoint& WithDeviceValidationDomain(const char* value) { SetDeviceValidationDomain(value); return *this;} /** *

The IDs of the security groups for the endpoint.

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

The IDs of the security groups for the endpoint.

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

The IDs of the security groups for the endpoint.

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

The IDs of the security groups for the endpoint.

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

The IDs of the security groups for the endpoint.

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

The IDs of the security groups for the endpoint.

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

The IDs of the security groups for the endpoint.

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

The IDs of the security groups for the endpoint.

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

The IDs of the security groups for the endpoint.

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

The load balancer details if creating the Amazon Web Services Verified Access * endpoint as load-balancertype.

*/ inline const VerifiedAccessEndpointLoadBalancerOptions& GetLoadBalancerOptions() const{ return m_loadBalancerOptions; } /** *

The load balancer details if creating the Amazon Web Services Verified Access * endpoint as load-balancertype.

*/ inline bool LoadBalancerOptionsHasBeenSet() const { return m_loadBalancerOptionsHasBeenSet; } /** *

The load balancer details if creating the Amazon Web Services Verified Access * endpoint as load-balancertype.

*/ inline void SetLoadBalancerOptions(const VerifiedAccessEndpointLoadBalancerOptions& value) { m_loadBalancerOptionsHasBeenSet = true; m_loadBalancerOptions = value; } /** *

The load balancer details if creating the Amazon Web Services Verified Access * endpoint as load-balancertype.

*/ inline void SetLoadBalancerOptions(VerifiedAccessEndpointLoadBalancerOptions&& value) { m_loadBalancerOptionsHasBeenSet = true; m_loadBalancerOptions = std::move(value); } /** *

The load balancer details if creating the Amazon Web Services Verified Access * endpoint as load-balancertype.

*/ inline VerifiedAccessEndpoint& WithLoadBalancerOptions(const VerifiedAccessEndpointLoadBalancerOptions& value) { SetLoadBalancerOptions(value); return *this;} /** *

The load balancer details if creating the Amazon Web Services Verified Access * endpoint as load-balancertype.

*/ inline VerifiedAccessEndpoint& WithLoadBalancerOptions(VerifiedAccessEndpointLoadBalancerOptions&& value) { SetLoadBalancerOptions(std::move(value)); return *this;} /** *

The options for network-interface type endpoint.

*/ inline const VerifiedAccessEndpointEniOptions& GetNetworkInterfaceOptions() const{ return m_networkInterfaceOptions; } /** *

The options for network-interface type endpoint.

*/ inline bool NetworkInterfaceOptionsHasBeenSet() const { return m_networkInterfaceOptionsHasBeenSet; } /** *

The options for network-interface type endpoint.

*/ inline void SetNetworkInterfaceOptions(const VerifiedAccessEndpointEniOptions& value) { m_networkInterfaceOptionsHasBeenSet = true; m_networkInterfaceOptions = value; } /** *

The options for network-interface type endpoint.

*/ inline void SetNetworkInterfaceOptions(VerifiedAccessEndpointEniOptions&& value) { m_networkInterfaceOptionsHasBeenSet = true; m_networkInterfaceOptions = std::move(value); } /** *

The options for network-interface type endpoint.

*/ inline VerifiedAccessEndpoint& WithNetworkInterfaceOptions(const VerifiedAccessEndpointEniOptions& value) { SetNetworkInterfaceOptions(value); return *this;} /** *

The options for network-interface type endpoint.

*/ inline VerifiedAccessEndpoint& WithNetworkInterfaceOptions(VerifiedAccessEndpointEniOptions&& value) { SetNetworkInterfaceOptions(std::move(value)); return *this;} /** *

The endpoint status.

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

The endpoint status.

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

The endpoint status.

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

The endpoint status.

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

The endpoint status.

*/ inline VerifiedAccessEndpoint& WithStatus(const VerifiedAccessEndpointStatus& value) { SetStatus(value); return *this;} /** *

The endpoint status.

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

A description for the Amazon Web Services Verified Access endpoint.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

A description for the Amazon Web Services Verified Access endpoint.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

A description for the Amazon Web Services Verified Access endpoint.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

A description for the Amazon Web Services Verified Access endpoint.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

A description for the Amazon Web Services Verified Access endpoint.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

A description for the Amazon Web Services Verified Access endpoint.

*/ inline VerifiedAccessEndpoint& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

A description for the Amazon Web Services Verified Access endpoint.

*/ inline VerifiedAccessEndpoint& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

A description for the Amazon Web Services Verified Access endpoint.

*/ inline VerifiedAccessEndpoint& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

The creation time.

*/ inline const Aws::String& GetCreationTime() const{ return m_creationTime; } /** *

The creation time.

*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *

The creation time.

*/ inline void SetCreationTime(const Aws::String& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *

The creation time.

*/ inline void SetCreationTime(Aws::String&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *

The creation time.

*/ inline void SetCreationTime(const char* value) { m_creationTimeHasBeenSet = true; m_creationTime.assign(value); } /** *

The creation time.

*/ inline VerifiedAccessEndpoint& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;} /** *

The creation time.

*/ inline VerifiedAccessEndpoint& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;} /** *

The creation time.

*/ inline VerifiedAccessEndpoint& WithCreationTime(const char* value) { SetCreationTime(value); return *this;} /** *

The last updated time.

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

The last updated time.

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

The last updated time.

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

The last updated time.

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

The last updated time.

*/ inline void SetLastUpdatedTime(const char* value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime.assign(value); } /** *

The last updated time.

*/ inline VerifiedAccessEndpoint& WithLastUpdatedTime(const Aws::String& value) { SetLastUpdatedTime(value); return *this;} /** *

The last updated time.

*/ inline VerifiedAccessEndpoint& WithLastUpdatedTime(Aws::String&& value) { SetLastUpdatedTime(std::move(value)); return *this;} /** *

The last updated time.

*/ inline VerifiedAccessEndpoint& WithLastUpdatedTime(const char* value) { SetLastUpdatedTime(value); return *this;} /** *

The deletion time.

*/ inline const Aws::String& GetDeletionTime() const{ return m_deletionTime; } /** *

The deletion time.

*/ inline bool DeletionTimeHasBeenSet() const { return m_deletionTimeHasBeenSet; } /** *

The deletion time.

*/ inline void SetDeletionTime(const Aws::String& value) { m_deletionTimeHasBeenSet = true; m_deletionTime = value; } /** *

The deletion time.

*/ inline void SetDeletionTime(Aws::String&& value) { m_deletionTimeHasBeenSet = true; m_deletionTime = std::move(value); } /** *

The deletion time.

*/ inline void SetDeletionTime(const char* value) { m_deletionTimeHasBeenSet = true; m_deletionTime.assign(value); } /** *

The deletion time.

*/ inline VerifiedAccessEndpoint& WithDeletionTime(const Aws::String& value) { SetDeletionTime(value); return *this;} /** *

The deletion time.

*/ inline VerifiedAccessEndpoint& WithDeletionTime(Aws::String&& value) { SetDeletionTime(std::move(value)); return *this;} /** *

The deletion time.

*/ inline VerifiedAccessEndpoint& WithDeletionTime(const char* value) { SetDeletionTime(value); return *this;} /** *

The tags.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

The tags.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

The tags.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

The tags.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

The tags.

*/ inline VerifiedAccessEndpoint& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

The tags.

*/ inline VerifiedAccessEndpoint& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

The tags.

*/ inline VerifiedAccessEndpoint& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

The tags.

*/ inline VerifiedAccessEndpoint& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_verifiedAccessInstanceId; bool m_verifiedAccessInstanceIdHasBeenSet = false; Aws::String m_verifiedAccessGroupId; bool m_verifiedAccessGroupIdHasBeenSet = false; Aws::String m_verifiedAccessEndpointId; bool m_verifiedAccessEndpointIdHasBeenSet = false; Aws::String m_applicationDomain; bool m_applicationDomainHasBeenSet = false; VerifiedAccessEndpointType m_endpointType; bool m_endpointTypeHasBeenSet = false; VerifiedAccessEndpointAttachmentType m_attachmentType; bool m_attachmentTypeHasBeenSet = false; Aws::String m_domainCertificateArn; bool m_domainCertificateArnHasBeenSet = false; Aws::String m_endpointDomain; bool m_endpointDomainHasBeenSet = false; Aws::String m_deviceValidationDomain; bool m_deviceValidationDomainHasBeenSet = false; Aws::Vector m_securityGroupIds; bool m_securityGroupIdsHasBeenSet = false; VerifiedAccessEndpointLoadBalancerOptions m_loadBalancerOptions; bool m_loadBalancerOptionsHasBeenSet = false; VerifiedAccessEndpointEniOptions m_networkInterfaceOptions; bool m_networkInterfaceOptionsHasBeenSet = false; VerifiedAccessEndpointStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::String m_lastUpdatedTime; bool m_lastUpdatedTimeHasBeenSet = false; Aws::String m_deletionTime; bool m_deletionTimeHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace EC2 } // namespace Aws