AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateVerifiedAccessEndpointRequest.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/VerifiedAccessEndpointType.h>
11#include <aws/ec2/model/VerifiedAccessEndpointAttachmentType.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/ec2/model/CreateVerifiedAccessEndpointLoadBalancerOptions.h>
14#include <aws/ec2/model/CreateVerifiedAccessEndpointEniOptions.h>
15#include <aws/ec2/model/VerifiedAccessSseSpecificationRequest.h>
16#include <aws/ec2/model/CreateVerifiedAccessEndpointRdsOptions.h>
17#include <aws/ec2/model/CreateVerifiedAccessEndpointCidrOptions.h>
18#include <aws/ec2/model/TagSpecification.h>
19#include <utility>
20#include <aws/core/utils/UUID.h>
21
22namespace Aws
23{
24namespace EC2
25{
26namespace Model
27{
28
32 {
33 public:
34 AWS_EC2_API CreateVerifiedAccessEndpointRequest() = default;
35
36 // Service request name is the Operation name which will send this request out,
37 // each operation should has unique request name, so that we can get operation's name from this request.
38 // Note: this is not true for response, multiple operations may have the same response name,
39 // so we can not get operation's name from response.
40 inline virtual const char* GetServiceRequestName() const override { return "CreateVerifiedAccessEndpoint"; }
41
42 AWS_EC2_API Aws::String SerializePayload() const override;
43
44 protected:
45 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
46
47 public:
48
50
53 inline const Aws::String& GetVerifiedAccessGroupId() const { return m_verifiedAccessGroupId; }
54 inline bool VerifiedAccessGroupIdHasBeenSet() const { return m_verifiedAccessGroupIdHasBeenSet; }
55 template<typename VerifiedAccessGroupIdT = Aws::String>
56 void SetVerifiedAccessGroupId(VerifiedAccessGroupIdT&& value) { m_verifiedAccessGroupIdHasBeenSet = true; m_verifiedAccessGroupId = std::forward<VerifiedAccessGroupIdT>(value); }
57 template<typename VerifiedAccessGroupIdT = Aws::String>
58 CreateVerifiedAccessEndpointRequest& WithVerifiedAccessGroupId(VerifiedAccessGroupIdT&& value) { SetVerifiedAccessGroupId(std::forward<VerifiedAccessGroupIdT>(value)); return *this;}
60
62
65 inline VerifiedAccessEndpointType GetEndpointType() const { return m_endpointType; }
66 inline bool EndpointTypeHasBeenSet() const { return m_endpointTypeHasBeenSet; }
67 inline void SetEndpointType(VerifiedAccessEndpointType value) { m_endpointTypeHasBeenSet = true; m_endpointType = value; }
70
72
75 inline VerifiedAccessEndpointAttachmentType GetAttachmentType() const { return m_attachmentType; }
76 inline bool AttachmentTypeHasBeenSet() const { return m_attachmentTypeHasBeenSet; }
77 inline void SetAttachmentType(VerifiedAccessEndpointAttachmentType value) { m_attachmentTypeHasBeenSet = true; m_attachmentType = value; }
80
82
87 inline const Aws::String& GetDomainCertificateArn() const { return m_domainCertificateArn; }
88 inline bool DomainCertificateArnHasBeenSet() const { return m_domainCertificateArnHasBeenSet; }
89 template<typename DomainCertificateArnT = Aws::String>
90 void SetDomainCertificateArn(DomainCertificateArnT&& value) { m_domainCertificateArnHasBeenSet = true; m_domainCertificateArn = std::forward<DomainCertificateArnT>(value); }
91 template<typename DomainCertificateArnT = Aws::String>
92 CreateVerifiedAccessEndpointRequest& WithDomainCertificateArn(DomainCertificateArnT&& value) { SetDomainCertificateArn(std::forward<DomainCertificateArnT>(value)); return *this;}
94
96
99 inline const Aws::String& GetApplicationDomain() const { return m_applicationDomain; }
100 inline bool ApplicationDomainHasBeenSet() const { return m_applicationDomainHasBeenSet; }
101 template<typename ApplicationDomainT = Aws::String>
102 void SetApplicationDomain(ApplicationDomainT&& value) { m_applicationDomainHasBeenSet = true; m_applicationDomain = std::forward<ApplicationDomainT>(value); }
103 template<typename ApplicationDomainT = Aws::String>
104 CreateVerifiedAccessEndpointRequest& WithApplicationDomain(ApplicationDomainT&& value) { SetApplicationDomain(std::forward<ApplicationDomainT>(value)); return *this;}
106
108
112 inline const Aws::String& GetEndpointDomainPrefix() const { return m_endpointDomainPrefix; }
113 inline bool EndpointDomainPrefixHasBeenSet() const { return m_endpointDomainPrefixHasBeenSet; }
114 template<typename EndpointDomainPrefixT = Aws::String>
115 void SetEndpointDomainPrefix(EndpointDomainPrefixT&& value) { m_endpointDomainPrefixHasBeenSet = true; m_endpointDomainPrefix = std::forward<EndpointDomainPrefixT>(value); }
116 template<typename EndpointDomainPrefixT = Aws::String>
117 CreateVerifiedAccessEndpointRequest& WithEndpointDomainPrefix(EndpointDomainPrefixT&& value) { SetEndpointDomainPrefix(std::forward<EndpointDomainPrefixT>(value)); return *this;}
119
121
126 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
127 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
128 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
129 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
130 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
131 CreateVerifiedAccessEndpointRequest& WithSecurityGroupIds(SecurityGroupIdsT&& value) { SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value)); return *this;}
132 template<typename SecurityGroupIdsT = Aws::String>
133 CreateVerifiedAccessEndpointRequest& AddSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value)); return *this; }
135
137
141 inline const CreateVerifiedAccessEndpointLoadBalancerOptions& GetLoadBalancerOptions() const { return m_loadBalancerOptions; }
142 inline bool LoadBalancerOptionsHasBeenSet() const { return m_loadBalancerOptionsHasBeenSet; }
143 template<typename LoadBalancerOptionsT = CreateVerifiedAccessEndpointLoadBalancerOptions>
144 void SetLoadBalancerOptions(LoadBalancerOptionsT&& value) { m_loadBalancerOptionsHasBeenSet = true; m_loadBalancerOptions = std::forward<LoadBalancerOptionsT>(value); }
145 template<typename LoadBalancerOptionsT = CreateVerifiedAccessEndpointLoadBalancerOptions>
146 CreateVerifiedAccessEndpointRequest& WithLoadBalancerOptions(LoadBalancerOptionsT&& value) { SetLoadBalancerOptions(std::forward<LoadBalancerOptionsT>(value)); return *this;}
148
150
154 inline const CreateVerifiedAccessEndpointEniOptions& GetNetworkInterfaceOptions() const { return m_networkInterfaceOptions; }
155 inline bool NetworkInterfaceOptionsHasBeenSet() const { return m_networkInterfaceOptionsHasBeenSet; }
156 template<typename NetworkInterfaceOptionsT = CreateVerifiedAccessEndpointEniOptions>
157 void SetNetworkInterfaceOptions(NetworkInterfaceOptionsT&& value) { m_networkInterfaceOptionsHasBeenSet = true; m_networkInterfaceOptions = std::forward<NetworkInterfaceOptionsT>(value); }
158 template<typename NetworkInterfaceOptionsT = CreateVerifiedAccessEndpointEniOptions>
159 CreateVerifiedAccessEndpointRequest& WithNetworkInterfaceOptions(NetworkInterfaceOptionsT&& value) { SetNetworkInterfaceOptions(std::forward<NetworkInterfaceOptionsT>(value)); return *this;}
161
163
166 inline const Aws::String& GetDescription() const { return m_description; }
167 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
168 template<typename DescriptionT = Aws::String>
169 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
170 template<typename DescriptionT = Aws::String>
171 CreateVerifiedAccessEndpointRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
173
175
178 inline const Aws::String& GetPolicyDocument() const { return m_policyDocument; }
179 inline bool PolicyDocumentHasBeenSet() const { return m_policyDocumentHasBeenSet; }
180 template<typename PolicyDocumentT = Aws::String>
181 void SetPolicyDocument(PolicyDocumentT&& value) { m_policyDocumentHasBeenSet = true; m_policyDocument = std::forward<PolicyDocumentT>(value); }
182 template<typename PolicyDocumentT = Aws::String>
183 CreateVerifiedAccessEndpointRequest& WithPolicyDocument(PolicyDocumentT&& value) { SetPolicyDocument(std::forward<PolicyDocumentT>(value)); return *this;}
185
187
190 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
191 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
192 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
193 void SetTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::forward<TagSpecificationsT>(value); }
194 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
195 CreateVerifiedAccessEndpointRequest& WithTagSpecifications(TagSpecificationsT&& value) { SetTagSpecifications(std::forward<TagSpecificationsT>(value)); return *this;}
196 template<typename TagSpecificationsT = TagSpecification>
197 CreateVerifiedAccessEndpointRequest& AddTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value)); return *this; }
199
201
207 inline const Aws::String& GetClientToken() const { return m_clientToken; }
208 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
209 template<typename ClientTokenT = Aws::String>
210 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
211 template<typename ClientTokenT = Aws::String>
212 CreateVerifiedAccessEndpointRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
214
216
222 inline bool GetDryRun() const { return m_dryRun; }
223 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
224 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
225 inline CreateVerifiedAccessEndpointRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
227
229
232 inline const VerifiedAccessSseSpecificationRequest& GetSseSpecification() const { return m_sseSpecification; }
233 inline bool SseSpecificationHasBeenSet() const { return m_sseSpecificationHasBeenSet; }
234 template<typename SseSpecificationT = VerifiedAccessSseSpecificationRequest>
235 void SetSseSpecification(SseSpecificationT&& value) { m_sseSpecificationHasBeenSet = true; m_sseSpecification = std::forward<SseSpecificationT>(value); }
236 template<typename SseSpecificationT = VerifiedAccessSseSpecificationRequest>
237 CreateVerifiedAccessEndpointRequest& WithSseSpecification(SseSpecificationT&& value) { SetSseSpecification(std::forward<SseSpecificationT>(value)); return *this;}
239
241
245 inline const CreateVerifiedAccessEndpointRdsOptions& GetRdsOptions() const { return m_rdsOptions; }
246 inline bool RdsOptionsHasBeenSet() const { return m_rdsOptionsHasBeenSet; }
247 template<typename RdsOptionsT = CreateVerifiedAccessEndpointRdsOptions>
248 void SetRdsOptions(RdsOptionsT&& value) { m_rdsOptionsHasBeenSet = true; m_rdsOptions = std::forward<RdsOptionsT>(value); }
249 template<typename RdsOptionsT = CreateVerifiedAccessEndpointRdsOptions>
250 CreateVerifiedAccessEndpointRequest& WithRdsOptions(RdsOptionsT&& value) { SetRdsOptions(std::forward<RdsOptionsT>(value)); return *this;}
252
254
258 inline const CreateVerifiedAccessEndpointCidrOptions& GetCidrOptions() const { return m_cidrOptions; }
259 inline bool CidrOptionsHasBeenSet() const { return m_cidrOptionsHasBeenSet; }
260 template<typename CidrOptionsT = CreateVerifiedAccessEndpointCidrOptions>
261 void SetCidrOptions(CidrOptionsT&& value) { m_cidrOptionsHasBeenSet = true; m_cidrOptions = std::forward<CidrOptionsT>(value); }
262 template<typename CidrOptionsT = CreateVerifiedAccessEndpointCidrOptions>
263 CreateVerifiedAccessEndpointRequest& WithCidrOptions(CidrOptionsT&& value) { SetCidrOptions(std::forward<CidrOptionsT>(value)); return *this;}
265 private:
266
267 Aws::String m_verifiedAccessGroupId;
268 bool m_verifiedAccessGroupIdHasBeenSet = false;
269
271 bool m_endpointTypeHasBeenSet = false;
272
274 bool m_attachmentTypeHasBeenSet = false;
275
276 Aws::String m_domainCertificateArn;
277 bool m_domainCertificateArnHasBeenSet = false;
278
279 Aws::String m_applicationDomain;
280 bool m_applicationDomainHasBeenSet = false;
281
282 Aws::String m_endpointDomainPrefix;
283 bool m_endpointDomainPrefixHasBeenSet = false;
284
285 Aws::Vector<Aws::String> m_securityGroupIds;
286 bool m_securityGroupIdsHasBeenSet = false;
287
288 CreateVerifiedAccessEndpointLoadBalancerOptions m_loadBalancerOptions;
289 bool m_loadBalancerOptionsHasBeenSet = false;
290
291 CreateVerifiedAccessEndpointEniOptions m_networkInterfaceOptions;
292 bool m_networkInterfaceOptionsHasBeenSet = false;
293
294 Aws::String m_description;
295 bool m_descriptionHasBeenSet = false;
296
297 Aws::String m_policyDocument;
298 bool m_policyDocumentHasBeenSet = false;
299
300 Aws::Vector<TagSpecification> m_tagSpecifications;
301 bool m_tagSpecificationsHasBeenSet = false;
302
304 bool m_clientTokenHasBeenSet = true;
305
306 bool m_dryRun{false};
307 bool m_dryRunHasBeenSet = false;
308
309 VerifiedAccessSseSpecificationRequest m_sseSpecification;
310 bool m_sseSpecificationHasBeenSet = false;
311
312 CreateVerifiedAccessEndpointRdsOptions m_rdsOptions;
313 bool m_rdsOptionsHasBeenSet = false;
314
315 CreateVerifiedAccessEndpointCidrOptions m_cidrOptions;
316 bool m_cidrOptionsHasBeenSet = false;
317 };
318
319} // namespace Model
320} // namespace EC2
321} // namespace Aws
CreateVerifiedAccessEndpointRequest & WithEndpointType(VerifiedAccessEndpointType value)
CreateVerifiedAccessEndpointRequest & WithPolicyDocument(PolicyDocumentT &&value)
CreateVerifiedAccessEndpointRequest & WithAttachmentType(VerifiedAccessEndpointAttachmentType value)
CreateVerifiedAccessEndpointRequest & WithEndpointDomainPrefix(EndpointDomainPrefixT &&value)
const CreateVerifiedAccessEndpointEniOptions & GetNetworkInterfaceOptions() const
CreateVerifiedAccessEndpointRequest & WithDescription(DescriptionT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
CreateVerifiedAccessEndpointRequest & AddTagSpecifications(TagSpecificationsT &&value)
CreateVerifiedAccessEndpointRequest & WithClientToken(ClientTokenT &&value)
const CreateVerifiedAccessEndpointCidrOptions & GetCidrOptions() const
CreateVerifiedAccessEndpointRequest & WithVerifiedAccessGroupId(VerifiedAccessGroupIdT &&value)
const VerifiedAccessSseSpecificationRequest & GetSseSpecification() const
CreateVerifiedAccessEndpointRequest & WithRdsOptions(RdsOptionsT &&value)
void SetAttachmentType(VerifiedAccessEndpointAttachmentType value)
CreateVerifiedAccessEndpointRequest & WithTagSpecifications(TagSpecificationsT &&value)
CreateVerifiedAccessEndpointRequest & WithCidrOptions(CidrOptionsT &&value)
CreateVerifiedAccessEndpointRequest & WithSseSpecification(SseSpecificationT &&value)
CreateVerifiedAccessEndpointRequest & WithDomainCertificateArn(DomainCertificateArnT &&value)
CreateVerifiedAccessEndpointRequest & WithLoadBalancerOptions(LoadBalancerOptionsT &&value)
const CreateVerifiedAccessEndpointRdsOptions & GetRdsOptions() const
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CreateVerifiedAccessEndpointRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
CreateVerifiedAccessEndpointRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
CreateVerifiedAccessEndpointRequest & WithDryRun(bool value)
CreateVerifiedAccessEndpointRequest & WithApplicationDomain(ApplicationDomainT &&value)
const CreateVerifiedAccessEndpointLoadBalancerOptions & GetLoadBalancerOptions() const
CreateVerifiedAccessEndpointRequest & WithNetworkInterfaceOptions(NetworkInterfaceOptionsT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector