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>
73 m_vpcEndpointTypeHasBeenSet =
true;
74 m_vpcEndpointType = value;
88 template <
typename VpcIdT = Aws::String>
90 m_vpcIdHasBeenSet =
true;
91 m_vpcId = std::forward<VpcIdT>(value);
93 template <
typename VpcIdT = Aws::String>
95 SetVpcId(std::forward<VpcIdT>(value));
106 template <
typename ServiceNameT = Aws::String>
108 m_serviceNameHasBeenSet =
true;
109 m_serviceName = std::forward<ServiceNameT>(value);
111 template <
typename ServiceNameT = Aws::String>
125 m_stateHasBeenSet =
true;
140 template <
typename PolicyDocumentT = Aws::String>
142 m_policyDocumentHasBeenSet =
true;
143 m_policyDocument = std::forward<PolicyDocumentT>(value);
145 template <
typename PolicyDocumentT = Aws::String>
159 template <
typename RouteTableIdsT = Aws::Vector<Aws::String>>
161 m_routeTableIdsHasBeenSet =
true;
162 m_routeTableIds = std::forward<RouteTableIdsT>(value);
164 template <
typename RouteTableIdsT = Aws::Vector<Aws::String>>
169 template <
typename RouteTableIdsT = Aws::String>
171 m_routeTableIdsHasBeenSet =
true;
172 m_routeTableIds.emplace_back(std::forward<RouteTableIdsT>(value));
183 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
185 m_subnetIdsHasBeenSet =
true;
186 m_subnetIds = std::forward<SubnetIdsT>(value);
188 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
193 template <
typename SubnetIdsT = Aws::String>
195 m_subnetIdsHasBeenSet =
true;
196 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
208 template <
typename GroupsT = Aws::Vector<SecurityGroupIdentifier>>
210 m_groupsHasBeenSet =
true;
211 m_groups = std::forward<GroupsT>(value);
213 template <
typename GroupsT = Aws::Vector<SecurityGroupIdentifier>>
218 template <
typename GroupsT = SecurityGroupIdentifier>
220 m_groupsHasBeenSet =
true;
221 m_groups.emplace_back(std::forward<GroupsT>(value));
233 m_ipAddressTypeHasBeenSet =
true;
234 m_ipAddressType = value;
248 template <
typename DnsOptionsT = DnsOptions>
250 m_dnsOptionsHasBeenSet =
true;
251 m_dnsOptions = std::forward<DnsOptionsT>(value);
253 template <
typename DnsOptionsT = DnsOptions>
268 m_privateDnsEnabledHasBeenSet =
true;
269 m_privateDnsEnabled = value;
284 m_requesterManagedHasBeenSet =
true;
285 m_requesterManaged = value;
299 template <
typename NetworkInterfaceIdsT = Aws::Vector<Aws::String>>
301 m_networkInterfaceIdsHasBeenSet =
true;
302 m_networkInterfaceIds = std::forward<NetworkInterfaceIdsT>(value);
304 template <
typename NetworkInterfaceIdsT = Aws::Vector<Aws::String>>
309 template <
typename NetworkInterfaceIdsT = Aws::String>
311 m_networkInterfaceIdsHasBeenSet =
true;
312 m_networkInterfaceIds.emplace_back(std::forward<NetworkInterfaceIdsT>(value));
323 template <
typename DnsEntriesT = Aws::Vector<DnsEntry>>
325 m_dnsEntriesHasBeenSet =
true;
326 m_dnsEntries = std::forward<DnsEntriesT>(value);
328 template <
typename DnsEntriesT = Aws::Vector<DnsEntry>>
333 template <
typename DnsEntriesT = DnsEntry>
335 m_dnsEntriesHasBeenSet =
true;
336 m_dnsEntries.emplace_back(std::forward<DnsEntriesT>(value));
347 template <
typename CreationTimestampT = Aws::Utils::DateTime>
349 m_creationTimestampHasBeenSet =
true;
350 m_creationTimestamp = std::forward<CreationTimestampT>(value);
352 template <
typename CreationTimestampT = Aws::Utils::DateTime>
365 template <
typename TagsT = Aws::Vector<Tag>>
367 m_tagsHasBeenSet =
true;
368 m_tags = std::forward<TagsT>(value);
370 template <
typename TagsT = Aws::Vector<Tag>>
372 SetTags(std::forward<TagsT>(value));
375 template <
typename TagsT = Tag>
377 m_tagsHasBeenSet =
true;
378 m_tags.emplace_back(std::forward<TagsT>(value));
389 template <
typename OwnerIdT = Aws::String>
391 m_ownerIdHasBeenSet =
true;
392 m_ownerId = std::forward<OwnerIdT>(value);
394 template <
typename OwnerIdT = Aws::String>
407 template <
typename LastErrorT = LastError>
409 m_lastErrorHasBeenSet =
true;
410 m_lastError = std::forward<LastErrorT>(value);
412 template <
typename LastErrorT = LastError>
425 template <
typename Ipv4PrefixesT = Aws::Vector<SubnetIpPrefixes>>
427 m_ipv4PrefixesHasBeenSet =
true;
428 m_ipv4Prefixes = std::forward<Ipv4PrefixesT>(value);
430 template <
typename Ipv4PrefixesT = Aws::Vector<SubnetIpPrefixes>>
435 template <
typename Ipv4PrefixesT = SubnetIpPrefixes>
437 m_ipv4PrefixesHasBeenSet =
true;
438 m_ipv4Prefixes.emplace_back(std::forward<Ipv4PrefixesT>(value));
449 template <
typename Ipv6PrefixesT = Aws::Vector<SubnetIpPrefixes>>
451 m_ipv6PrefixesHasBeenSet =
true;
452 m_ipv6Prefixes = std::forward<Ipv6PrefixesT>(value);
454 template <
typename Ipv6PrefixesT = Aws::Vector<SubnetIpPrefixes>>
459 template <
typename Ipv6PrefixesT = SubnetIpPrefixes>
461 m_ipv6PrefixesHasBeenSet =
true;
462 m_ipv6Prefixes.emplace_back(std::forward<Ipv6PrefixesT>(value));
473 template <
typename FailureReasonT = Aws::String>
475 m_failureReasonHasBeenSet =
true;
476 m_failureReason = std::forward<FailureReasonT>(value);
478 template <
typename FailureReasonT = Aws::String>
491 template <
typename ServiceNetworkArnT = Aws::String>
493 m_serviceNetworkArnHasBeenSet =
true;
494 m_serviceNetworkArn = std::forward<ServiceNetworkArnT>(value);
496 template <
typename ServiceNetworkArnT = Aws::String>
509 template <
typename ResourceConfigurationArnT = Aws::String>
511 m_resourceConfigurationArnHasBeenSet =
true;
512 m_resourceConfigurationArn = std::forward<ResourceConfigurationArnT>(value);
514 template <
typename ResourceConfigurationArnT = Aws::String>
527 template <
typename ServiceRegionT = Aws::String>
529 m_serviceRegionHasBeenSet =
true;
530 m_serviceRegion = std::forward<ServiceRegionT>(value);
532 template <
typename ServiceRegionT = Aws::String>
545 template <
typename PayerResponsibilitiesT = Aws::Vector<PayerResponsibilityEntry>>
547 m_payerResponsibilitiesHasBeenSet =
true;
548 m_payerResponsibilities = std::forward<PayerResponsibilitiesT>(value);
550 template <
typename PayerResponsibilitiesT = Aws::Vector<PayerResponsibilityEntry>>
555 template <
typename PayerResponsibilitiesT = PayerResponsibilityEntry>
557 m_payerResponsibilitiesHasBeenSet =
true;
558 m_payerResponsibilities.emplace_back(std::forward<PayerResponsibilitiesT>(value));
583 DnsOptions m_dnsOptions;
585 bool m_privateDnsEnabled{
false};
587 bool m_requesterManaged{
false};
599 LastError m_lastError;
614 bool m_vpcEndpointIdHasBeenSet =
false;
615 bool m_vpcEndpointTypeHasBeenSet =
false;
616 bool m_vpcIdHasBeenSet =
false;
617 bool m_serviceNameHasBeenSet =
false;
618 bool m_stateHasBeenSet =
false;
619 bool m_policyDocumentHasBeenSet =
false;
620 bool m_routeTableIdsHasBeenSet =
false;
621 bool m_subnetIdsHasBeenSet =
false;
622 bool m_groupsHasBeenSet =
false;
623 bool m_ipAddressTypeHasBeenSet =
false;
624 bool m_dnsOptionsHasBeenSet =
false;
625 bool m_privateDnsEnabledHasBeenSet =
false;
626 bool m_requesterManagedHasBeenSet =
false;
627 bool m_networkInterfaceIdsHasBeenSet =
false;
628 bool m_dnsEntriesHasBeenSet =
false;
629 bool m_creationTimestampHasBeenSet =
false;
630 bool m_tagsHasBeenSet =
false;
631 bool m_ownerIdHasBeenSet =
false;
632 bool m_lastErrorHasBeenSet =
false;
633 bool m_ipv4PrefixesHasBeenSet =
false;
634 bool m_ipv6PrefixesHasBeenSet =
false;
635 bool m_failureReasonHasBeenSet =
false;
636 bool m_serviceNetworkArnHasBeenSet =
false;
637 bool m_resourceConfigurationArnHasBeenSet =
false;
638 bool m_serviceRegionHasBeenSet =
false;
639 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