7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/ec2/EC2_EXPORTS.h>
12#include <aws/ec2/model/DnsEntry.h>
13#include <aws/ec2/model/DnsOptions.h>
14#include <aws/ec2/model/IpAddressType.h>
15#include <aws/ec2/model/LastError.h>
16#include <aws/ec2/model/PayerResponsibilityEntry.h>
17#include <aws/ec2/model/SecurityGroupIdentifier.h>
18#include <aws/ec2/model/State.h>
19#include <aws/ec2/model/SubnetIpPrefixes.h>
20#include <aws/ec2/model/Tag.h>
21#include <aws/ec2/model/VpcEndpointType.h>
54 template <
typename VpcEndpo
intIdT = Aws::String>
56 m_vpcEndpointIdHasBeenSet =
true;
57 m_vpcEndpointId = std::forward<VpcEndpointIdT>(value);
59 template <
typename VpcEndpo
intIdT = Aws::String>
76 m_vpcEndpointTypeHasBeenSet =
true;
77 m_vpcEndpointType = value;
91 template <
typename VpcIdT = Aws::String>
93 m_vpcIdHasBeenSet =
true;
94 m_vpcId = std::forward<VpcIdT>(value);
96 template <
typename VpcIdT = Aws::String>
98 SetVpcId(std::forward<VpcIdT>(value));
109 template <
typename ServiceNameT = Aws::String>
111 m_serviceNameHasBeenSet =
true;
112 m_serviceName = std::forward<ServiceNameT>(value);
114 template <
typename ServiceNameT = Aws::String>
128 m_stateHasBeenSet =
true;
143 template <
typename PolicyDocumentT = Aws::String>
145 m_policyDocumentHasBeenSet =
true;
146 m_policyDocument = std::forward<PolicyDocumentT>(value);
148 template <
typename PolicyDocumentT = Aws::String>
162 template <
typename RouteTableIdsT = Aws::Vector<Aws::String>>
164 m_routeTableIdsHasBeenSet =
true;
165 m_routeTableIds = std::forward<RouteTableIdsT>(value);
167 template <
typename RouteTableIdsT = Aws::Vector<Aws::String>>
172 template <
typename RouteTableIdsT = Aws::String>
174 m_routeTableIdsHasBeenSet =
true;
175 m_routeTableIds.emplace_back(std::forward<RouteTableIdsT>(value));
187 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
189 m_subnetIdsHasBeenSet =
true;
190 m_subnetIds = std::forward<SubnetIdsT>(value);
192 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
197 template <
typename SubnetIdsT = Aws::String>
199 m_subnetIdsHasBeenSet =
true;
200 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
212 template <
typename GroupsT = Aws::Vector<SecurityGroupIdentifier>>
214 m_groupsHasBeenSet =
true;
215 m_groups = std::forward<GroupsT>(value);
217 template <
typename GroupsT = Aws::Vector<SecurityGroupIdentifier>>
222 template <
typename GroupsT = SecurityGroupIdentifier>
224 m_groupsHasBeenSet =
true;
225 m_groups.emplace_back(std::forward<GroupsT>(value));
237 m_ipAddressTypeHasBeenSet =
true;
238 m_ipAddressType = value;
252 template <
typename DnsOptionsT = DnsOptions>
254 m_dnsOptionsHasBeenSet =
true;
255 m_dnsOptions = std::forward<DnsOptionsT>(value);
257 template <
typename DnsOptionsT = DnsOptions>
272 m_privateDnsEnabledHasBeenSet =
true;
273 m_privateDnsEnabled = value;
288 m_requesterManagedHasBeenSet =
true;
289 m_requesterManaged = value;
304 template <
typename NetworkInterfaceIdsT = Aws::Vector<Aws::String>>
306 m_networkInterfaceIdsHasBeenSet =
true;
307 m_networkInterfaceIds = std::forward<NetworkInterfaceIdsT>(value);
309 template <
typename NetworkInterfaceIdsT = Aws::Vector<Aws::String>>
314 template <
typename NetworkInterfaceIdsT = Aws::String>
316 m_networkInterfaceIdsHasBeenSet =
true;
317 m_networkInterfaceIds.emplace_back(std::forward<NetworkInterfaceIdsT>(value));
328 template <
typename DnsEntriesT = Aws::Vector<DnsEntry>>
330 m_dnsEntriesHasBeenSet =
true;
331 m_dnsEntries = std::forward<DnsEntriesT>(value);
333 template <
typename DnsEntriesT = Aws::Vector<DnsEntry>>
338 template <
typename DnsEntriesT = DnsEntry>
340 m_dnsEntriesHasBeenSet =
true;
341 m_dnsEntries.emplace_back(std::forward<DnsEntriesT>(value));
352 template <
typename CreationTimestampT = Aws::Utils::DateTime>
354 m_creationTimestampHasBeenSet =
true;
355 m_creationTimestamp = std::forward<CreationTimestampT>(value);
357 template <
typename CreationTimestampT = Aws::Utils::DateTime>
370 template <
typename TagsT = Aws::Vector<Tag>>
372 m_tagsHasBeenSet =
true;
373 m_tags = std::forward<TagsT>(value);
375 template <
typename TagsT = Aws::Vector<Tag>>
377 SetTags(std::forward<TagsT>(value));
380 template <
typename TagsT = Tag>
382 m_tagsHasBeenSet =
true;
383 m_tags.emplace_back(std::forward<TagsT>(value));
394 template <
typename OwnerIdT = Aws::String>
396 m_ownerIdHasBeenSet =
true;
397 m_ownerId = std::forward<OwnerIdT>(value);
399 template <
typename OwnerIdT = Aws::String>
412 template <
typename LastErrorT = LastError>
414 m_lastErrorHasBeenSet =
true;
415 m_lastError = std::forward<LastErrorT>(value);
417 template <
typename LastErrorT = LastError>
430 template <
typename Ipv4PrefixesT = Aws::Vector<SubnetIpPrefixes>>
432 m_ipv4PrefixesHasBeenSet =
true;
433 m_ipv4Prefixes = std::forward<Ipv4PrefixesT>(value);
435 template <
typename Ipv4PrefixesT = Aws::Vector<SubnetIpPrefixes>>
440 template <
typename Ipv4PrefixesT = SubnetIpPrefixes>
442 m_ipv4PrefixesHasBeenSet =
true;
443 m_ipv4Prefixes.emplace_back(std::forward<Ipv4PrefixesT>(value));
454 template <
typename Ipv6PrefixesT = Aws::Vector<SubnetIpPrefixes>>
456 m_ipv6PrefixesHasBeenSet =
true;
457 m_ipv6Prefixes = std::forward<Ipv6PrefixesT>(value);
459 template <
typename Ipv6PrefixesT = Aws::Vector<SubnetIpPrefixes>>
464 template <
typename Ipv6PrefixesT = SubnetIpPrefixes>
466 m_ipv6PrefixesHasBeenSet =
true;
467 m_ipv6Prefixes.emplace_back(std::forward<Ipv6PrefixesT>(value));
478 template <
typename FailureReasonT = Aws::String>
480 m_failureReasonHasBeenSet =
true;
481 m_failureReason = std::forward<FailureReasonT>(value);
483 template <
typename FailureReasonT = Aws::String>
496 template <
typename ServiceNetworkArnT = Aws::String>
498 m_serviceNetworkArnHasBeenSet =
true;
499 m_serviceNetworkArn = std::forward<ServiceNetworkArnT>(value);
501 template <
typename ServiceNetworkArnT = Aws::String>
514 template <
typename ResourceConfigurationArnT = Aws::String>
516 m_resourceConfigurationArnHasBeenSet =
true;
517 m_resourceConfigurationArn = std::forward<ResourceConfigurationArnT>(value);
519 template <
typename ResourceConfigurationArnT = Aws::String>
532 template <
typename ServiceRegionT = Aws::String>
534 m_serviceRegionHasBeenSet =
true;
535 m_serviceRegion = std::forward<ServiceRegionT>(value);
537 template <
typename ServiceRegionT = Aws::String>
550 template <
typename PayerResponsibilitiesT = Aws::Vector<PayerResponsibilityEntry>>
552 m_payerResponsibilitiesHasBeenSet =
true;
553 m_payerResponsibilities = std::forward<PayerResponsibilitiesT>(value);
555 template <
typename PayerResponsibilitiesT = Aws::Vector<PayerResponsibilityEntry>>
560 template <
typename PayerResponsibilitiesT = PayerResponsibilityEntry>
562 m_payerResponsibilitiesHasBeenSet =
true;
563 m_payerResponsibilities.emplace_back(std::forward<PayerResponsibilitiesT>(value));
588 DnsOptions m_dnsOptions;
590 bool m_privateDnsEnabled{
false};
592 bool m_requesterManaged{
false};
604 LastError m_lastError;
619 bool m_vpcEndpointIdHasBeenSet =
false;
620 bool m_vpcEndpointTypeHasBeenSet =
false;
621 bool m_vpcIdHasBeenSet =
false;
622 bool m_serviceNameHasBeenSet =
false;
623 bool m_stateHasBeenSet =
false;
624 bool m_policyDocumentHasBeenSet =
false;
625 bool m_routeTableIdsHasBeenSet =
false;
626 bool m_subnetIdsHasBeenSet =
false;
627 bool m_groupsHasBeenSet =
false;
628 bool m_ipAddressTypeHasBeenSet =
false;
629 bool m_dnsOptionsHasBeenSet =
false;
630 bool m_privateDnsEnabledHasBeenSet =
false;
631 bool m_requesterManagedHasBeenSet =
false;
632 bool m_networkInterfaceIdsHasBeenSet =
false;
633 bool m_dnsEntriesHasBeenSet =
false;
634 bool m_creationTimestampHasBeenSet =
false;
635 bool m_tagsHasBeenSet =
false;
636 bool m_ownerIdHasBeenSet =
false;
637 bool m_lastErrorHasBeenSet =
false;
638 bool m_ipv4PrefixesHasBeenSet =
false;
639 bool m_ipv6PrefixesHasBeenSet =
false;
640 bool m_failureReasonHasBeenSet =
false;
641 bool m_serviceNetworkArnHasBeenSet =
false;
642 bool m_resourceConfigurationArnHasBeenSet =
false;
643 bool m_serviceRegionHasBeenSet =
false;
644 bool m_payerResponsibilitiesHasBeenSet =
false;
void SetServiceName(ServiceNameT &&value)
VpcEndpoint & WithPrivateDnsEnabled(bool value)
const Aws::Vector< Aws::String > & GetRouteTableIds() const
const Aws::String & GetVpcEndpointId() const
bool OwnerIdHasBeenSet() const
VpcEndpoint & WithTags(TagsT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetPayerResponsibilities(PayerResponsibilitiesT &&value)
const Aws::String & GetResourceConfigurationArn() const
void SetIpv6Prefixes(Ipv6PrefixesT &&value)
VpcEndpoint & WithVpcEndpointId(VpcEndpointIdT &&value)
void SetServiceRegion(ServiceRegionT &&value)
bool ServiceNetworkArnHasBeenSet() const
void SetRouteTableIds(RouteTableIdsT &&value)
void SetLastError(LastErrorT &&value)
const Aws::Vector< Aws::String > & GetSubnetIds() const
bool Ipv6PrefixesHasBeenSet() const
const Aws::Vector< Aws::String > & GetNetworkInterfaceIds() const
VpcEndpoint & AddGroups(GroupsT &&value)
bool TagsHasBeenSet() const
VpcEndpoint & WithServiceRegion(ServiceRegionT &&value)
const Aws::Vector< SubnetIpPrefixes > & GetIpv6Prefixes() const
void SetPolicyDocument(PolicyDocumentT &&value)
bool SubnetIdsHasBeenSet() const
VpcEndpoint & AddTags(TagsT &&value)
VpcEndpoint & WithCreationTimestamp(CreationTimestampT &&value)
VpcEndpoint & WithPolicyDocument(PolicyDocumentT &&value)
VpcEndpoint & WithServiceName(ServiceNameT &&value)
VpcEndpoint & WithResourceConfigurationArn(ResourceConfigurationArnT &&value)
AWS_EC2_API VpcEndpoint & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetState(State value)
bool VpcIdHasBeenSet() const
VpcEndpoint & WithDnsOptions(DnsOptionsT &&value)
const Aws::String & GetOwnerId() const
bool ServiceNameHasBeenSet() const
bool GetPrivateDnsEnabled() const
VpcEndpoint & WithSubnetIds(SubnetIdsT &&value)
bool PrivateDnsEnabledHasBeenSet() const
const Aws::String & GetServiceRegion() const
AWS_EC2_API VpcEndpoint()=default
VpcEndpoint & AddPayerResponsibilities(PayerResponsibilitiesT &&value)
VpcEndpointType GetVpcEndpointType() const
void SetPrivateDnsEnabled(bool value)
const Aws::Vector< SecurityGroupIdentifier > & GetGroups() const
bool RouteTableIdsHasBeenSet() const
void SetNetworkInterfaceIds(NetworkInterfaceIdsT &&value)
VpcEndpoint & WithPayerResponsibilities(PayerResponsibilitiesT &&value)
IpAddressType GetIpAddressType() const
bool ServiceRegionHasBeenSet() const
bool GroupsHasBeenSet() const
VpcEndpoint & AddRouteTableIds(RouteTableIdsT &&value)
bool PayerResponsibilitiesHasBeenSet() const
const Aws::String & GetServiceName() const
VpcEndpoint & WithState(State value)
VpcEndpoint & WithIpv6Prefixes(Ipv6PrefixesT &&value)
VpcEndpoint & AddDnsEntries(DnsEntriesT &&value)
void SetVpcEndpointId(VpcEndpointIdT &&value)
VpcEndpoint & AddIpv6Prefixes(Ipv6PrefixesT &&value)
bool VpcEndpointTypeHasBeenSet() const
void SetVpcEndpointType(VpcEndpointType value)
const LastError & GetLastError() const
const Aws::Vector< DnsEntry > & GetDnsEntries() const
bool LastErrorHasBeenSet() const
VpcEndpoint & WithIpv4Prefixes(Ipv4PrefixesT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
VpcEndpoint & WithIpAddressType(IpAddressType value)
const Aws::Vector< SubnetIpPrefixes > & GetIpv4Prefixes() const
const Aws::Vector< Tag > & GetTags() const
VpcEndpoint & WithVpcId(VpcIdT &&value)
void SetTags(TagsT &&value)
void SetSubnetIds(SubnetIdsT &&value)
VpcEndpoint & WithNetworkInterfaceIds(NetworkInterfaceIdsT &&value)
bool ResourceConfigurationArnHasBeenSet() const
VpcEndpoint & WithRouteTableIds(RouteTableIdsT &&value)
void SetRequesterManaged(bool value)
void SetDnsOptions(DnsOptionsT &&value)
const Aws::Utils::DateTime & GetCreationTimestamp() const
void SetCreationTimestamp(CreationTimestampT &&value)
bool GetRequesterManaged() const
const DnsOptions & GetDnsOptions() const
void SetResourceConfigurationArn(ResourceConfigurationArnT &&value)
const Aws::String & GetServiceNetworkArn() const
bool Ipv4PrefixesHasBeenSet() const
bool DnsEntriesHasBeenSet() const
VpcEndpoint & WithVpcEndpointType(VpcEndpointType value)
VpcEndpoint & WithOwnerId(OwnerIdT &&value)
VpcEndpoint & WithFailureReason(FailureReasonT &&value)
bool NetworkInterfaceIdsHasBeenSet() const
void SetServiceNetworkArn(ServiceNetworkArnT &&value)
bool FailureReasonHasBeenSet() const
void SetIpv4Prefixes(Ipv4PrefixesT &&value)
void SetFailureReason(FailureReasonT &&value)
const Aws::Vector< PayerResponsibilityEntry > & GetPayerResponsibilities() const
void SetVpcId(VpcIdT &&value)
bool IpAddressTypeHasBeenSet() const
void SetDnsEntries(DnsEntriesT &&value)
void SetGroups(GroupsT &&value)
VpcEndpoint & WithGroups(GroupsT &&value)
bool RequesterManagedHasBeenSet() const
AWS_EC2_API VpcEndpoint(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetFailureReason() const
VpcEndpoint & AddIpv4Prefixes(Ipv4PrefixesT &&value)
VpcEndpoint & AddNetworkInterfaceIds(NetworkInterfaceIdsT &&value)
VpcEndpoint & WithServiceNetworkArn(ServiceNetworkArnT &&value)
const Aws::String & GetVpcId() const
const Aws::String & GetPolicyDocument() const
VpcEndpoint & AddSubnetIds(SubnetIdsT &&value)
bool CreationTimestampHasBeenSet() const
VpcEndpoint & WithRequesterManaged(bool value)
VpcEndpoint & WithLastError(LastErrorT &&value)
bool VpcEndpointIdHasBeenSet() const
void SetOwnerId(OwnerIdT &&value)
bool StateHasBeenSet() const
void SetIpAddressType(IpAddressType value)
bool PolicyDocumentHasBeenSet() const
VpcEndpoint & WithDnsEntries(DnsEntriesT &&value)
bool DnsOptionsHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream