7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/ec2/model/VpcEndpointType.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ec2/model/IpAddressType.h>
13#include <aws/ec2/model/DnsOptionsSpecification.h>
14#include <aws/ec2/model/TagSpecification.h>
15#include <aws/ec2/model/SubnetConfiguration.h>
54 inline void SetDryRun(
bool value) { m_dryRunHasBeenSet =
true; m_dryRun = value; }
74 template<
typename VpcIdT = Aws::String>
75 void SetVpcId(VpcIdT&& value) { m_vpcIdHasBeenSet =
true; m_vpcId = std::forward<VpcIdT>(value); }
76 template<
typename VpcIdT = Aws::String>
86 template<
typename ServiceNameT = Aws::String>
87 void SetServiceName(ServiceNameT&& value) { m_serviceNameHasBeenSet =
true; m_serviceName = std::forward<ServiceNameT>(value); }
88 template<
typename ServiceNameT = Aws::String>
101 template<
typename PolicyDocumentT = Aws::String>
102 void SetPolicyDocument(PolicyDocumentT&& value) { m_policyDocumentHasBeenSet =
true; m_policyDocument = std::forward<PolicyDocumentT>(value); }
103 template<
typename PolicyDocumentT = Aws::String>
113 template<
typename RouteTableIdsT = Aws::Vector<Aws::String>>
114 void SetRouteTableIds(RouteTableIdsT&& value) { m_routeTableIdsHasBeenSet =
true; m_routeTableIds = std::forward<RouteTableIdsT>(value); }
115 template<
typename RouteTableIdsT = Aws::Vector<Aws::String>>
117 template<
typename RouteTableIdsT = Aws::String>
129 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
130 void SetSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet =
true; m_subnetIds = std::forward<SubnetIdsT>(value); }
131 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
133 template<
typename SubnetIdsT = Aws::String>
145 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
146 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet =
true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
147 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
149 template<
typename SecurityGroupIdsT = Aws::String>
169 template<
typename DnsOptionsT = DnsOptionsSpecification>
170 void SetDnsOptions(DnsOptionsT&& value) { m_dnsOptionsHasBeenSet =
true; m_dnsOptions = std::forward<DnsOptionsT>(value); }
171 template<
typename DnsOptionsT = DnsOptionsSpecification>
184 template<
typename ClientTokenT = Aws::String>
185 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet =
true; m_clientToken = std::forward<ClientTokenT>(value); }
186 template<
typename ClientTokenT = Aws::String>
206 inline void SetPrivateDnsEnabled(
bool value) { m_privateDnsEnabledHasBeenSet =
true; m_privateDnsEnabled = value; }
216 template<
typename TagSpecificationsT = Aws::Vector<TagSpecification>>
217 void SetTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet =
true; m_tagSpecifications = std::forward<TagSpecificationsT>(value); }
218 template<
typename TagSpecificationsT = Aws::Vector<TagSpecification>>
220 template<
typename TagSpecificationsT = TagSpecification>
230 template<
typename SubnetConfigurationsT = Aws::Vector<SubnetConfiguration>>
231 void SetSubnetConfigurations(SubnetConfigurationsT&& value) { m_subnetConfigurationsHasBeenSet =
true; m_subnetConfigurations = std::forward<SubnetConfigurationsT>(value); }
232 template<
typename SubnetConfigurationsT = Aws::Vector<SubnetConfiguration>>
234 template<
typename SubnetConfigurationsT = SubnetConfiguration>
245 template<
typename ServiceNetworkArnT = Aws::String>
246 void SetServiceNetworkArn(ServiceNetworkArnT&& value) { m_serviceNetworkArnHasBeenSet =
true; m_serviceNetworkArn = std::forward<ServiceNetworkArnT>(value); }
247 template<
typename ServiceNetworkArnT = Aws::String>
258 template<
typename ResourceConfigurationArnT = Aws::String>
259 void SetResourceConfigurationArn(ResourceConfigurationArnT&& value) { m_resourceConfigurationArnHasBeenSet =
true; m_resourceConfigurationArn = std::forward<ResourceConfigurationArnT>(value); }
260 template<
typename ResourceConfigurationArnT = Aws::String>
271 template<
typename ServiceRegionT = Aws::String>
272 void SetServiceRegion(ServiceRegionT&& value) { m_serviceRegionHasBeenSet =
true; m_serviceRegion = std::forward<ServiceRegionT>(value); }
273 template<
typename ServiceRegionT = Aws::String>
278 bool m_dryRun{
false};
279 bool m_dryRunHasBeenSet =
false;
282 bool m_vpcEndpointTypeHasBeenSet =
false;
285 bool m_vpcIdHasBeenSet =
false;
288 bool m_serviceNameHasBeenSet =
false;
291 bool m_policyDocumentHasBeenSet =
false;
294 bool m_routeTableIdsHasBeenSet =
false;
297 bool m_subnetIdsHasBeenSet =
false;
300 bool m_securityGroupIdsHasBeenSet =
false;
303 bool m_ipAddressTypeHasBeenSet =
false;
305 DnsOptionsSpecification m_dnsOptions;
306 bool m_dnsOptionsHasBeenSet =
false;
309 bool m_clientTokenHasBeenSet =
false;
311 bool m_privateDnsEnabled{
false};
312 bool m_privateDnsEnabledHasBeenSet =
false;
315 bool m_tagSpecificationsHasBeenSet =
false;
318 bool m_subnetConfigurationsHasBeenSet =
false;
321 bool m_serviceNetworkArnHasBeenSet =
false;
324 bool m_resourceConfigurationArnHasBeenSet =
false;
327 bool m_serviceRegionHasBeenSet =
false;
void SetDryRun(bool value)
void SetTagSpecifications(TagSpecificationsT &&value)
bool PolicyDocumentHasBeenSet() const
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
const Aws::String & GetServiceNetworkArn() const
bool PrivateDnsEnabledHasBeenSet() const
bool DryRunHasBeenSet() const
CreateVpcEndpointRequest & WithTagSpecifications(TagSpecificationsT &&value)
virtual const char * GetServiceRequestName() const override
CreateVpcEndpointRequest & WithDryRun(bool value)
void SetDnsOptions(DnsOptionsT &&value)
void SetServiceRegion(ServiceRegionT &&value)
IpAddressType GetIpAddressType() const
bool VpcEndpointTypeHasBeenSet() const
const DnsOptionsSpecification & GetDnsOptions() const
CreateVpcEndpointRequest & WithVpcId(VpcIdT &&value)
AWS_EC2_API CreateVpcEndpointRequest()=default
const Aws::String & GetServiceName() const
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
CreateVpcEndpointRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
bool ClientTokenHasBeenSet() const
bool SubnetConfigurationsHasBeenSet() const
const Aws::String & GetResourceConfigurationArn() const
void SetRouteTableIds(RouteTableIdsT &&value)
void SetServiceNetworkArn(ServiceNetworkArnT &&value)
CreateVpcEndpointRequest & WithPrivateDnsEnabled(bool value)
CreateVpcEndpointRequest & AddSubnetConfigurations(SubnetConfigurationsT &&value)
void SetSubnetIds(SubnetIdsT &&value)
const Aws::Vector< Aws::String > & GetSubnetIds() const
CreateVpcEndpointRequest & WithRouteTableIds(RouteTableIdsT &&value)
bool GetPrivateDnsEnabled() const
CreateVpcEndpointRequest & WithSubnetIds(SubnetIdsT &&value)
const Aws::Vector< SubnetConfiguration > & GetSubnetConfigurations() const
const Aws::String & GetPolicyDocument() const
bool RouteTableIdsHasBeenSet() const
bool SubnetIdsHasBeenSet() const
CreateVpcEndpointRequest & WithIpAddressType(IpAddressType value)
CreateVpcEndpointRequest & WithDnsOptions(DnsOptionsT &&value)
void SetSubnetConfigurations(SubnetConfigurationsT &&value)
CreateVpcEndpointRequest & WithVpcEndpointType(VpcEndpointType value)
CreateVpcEndpointRequest & WithServiceNetworkArn(ServiceNetworkArnT &&value)
bool IpAddressTypeHasBeenSet() const
bool ResourceConfigurationArnHasBeenSet() const
CreateVpcEndpointRequest & WithServiceName(ServiceNameT &&value)
CreateVpcEndpointRequest & WithServiceRegion(ServiceRegionT &&value)
bool VpcIdHasBeenSet() const
void SetClientToken(ClientTokenT &&value)
bool ServiceNameHasBeenSet() const
CreateVpcEndpointRequest & WithPolicyDocument(PolicyDocumentT &&value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
AWS_EC2_API Aws::String SerializePayload() const override
void SetServiceName(ServiceNameT &&value)
CreateVpcEndpointRequest & AddTagSpecifications(TagSpecificationsT &&value)
const Aws::Vector< Aws::String > & GetRouteTableIds() const
void SetVpcId(VpcIdT &&value)
void SetVpcEndpointType(VpcEndpointType value)
CreateVpcEndpointRequest & WithSubnetConfigurations(SubnetConfigurationsT &&value)
void SetPolicyDocument(PolicyDocumentT &&value)
const Aws::String & GetVpcId() const
CreateVpcEndpointRequest & WithResourceConfigurationArn(ResourceConfigurationArnT &&value)
bool SecurityGroupIdsHasBeenSet() const
bool ServiceRegionHasBeenSet() const
const Aws::String & GetClientToken() const
bool TagSpecificationsHasBeenSet() const
bool ServiceNetworkArnHasBeenSet() const
CreateVpcEndpointRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
CreateVpcEndpointRequest & AddSubnetIds(SubnetIdsT &&value)
bool DnsOptionsHasBeenSet() const
void SetPrivateDnsEnabled(bool value)
CreateVpcEndpointRequest & WithClientToken(ClientTokenT &&value)
void SetResourceConfigurationArn(ResourceConfigurationArnT &&value)
CreateVpcEndpointRequest & AddRouteTableIds(RouteTableIdsT &&value)
VpcEndpointType GetVpcEndpointType() const
void SetIpAddressType(IpAddressType value)
const Aws::String & GetServiceRegion() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector