AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CreateVerifiedAccessEndpointRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2Request.h>
11#include <aws/ec2/EC2_EXPORTS.h>
12#include <aws/ec2/model/CreateVerifiedAccessEndpointCidrOptions.h>
13#include <aws/ec2/model/CreateVerifiedAccessEndpointEniOptions.h>
14#include <aws/ec2/model/CreateVerifiedAccessEndpointLoadBalancerOptions.h>
15#include <aws/ec2/model/CreateVerifiedAccessEndpointRdsOptions.h>
16#include <aws/ec2/model/TagSpecification.h>
17#include <aws/ec2/model/VerifiedAccessEndpointAttachmentType.h>
18#include <aws/ec2/model/VerifiedAccessEndpointType.h>
19#include <aws/ec2/model/VerifiedAccessSseSpecificationRequest.h>
20
21#include <utility>
22
23namespace Aws {
24namespace EC2 {
25namespace Model {
26
30 public:
31 AWS_EC2_API CreateVerifiedAccessEndpointRequest() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "CreateVerifiedAccessEndpoint"; }
38
39 AWS_EC2_API Aws::String SerializePayload() const override;
40
41 protected:
42 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
43
44 public:
46
49 inline const Aws::String& GetVerifiedAccessGroupId() const { return m_verifiedAccessGroupId; }
50 inline bool VerifiedAccessGroupIdHasBeenSet() const { return m_verifiedAccessGroupIdHasBeenSet; }
51 template <typename VerifiedAccessGroupIdT = Aws::String>
52 void SetVerifiedAccessGroupId(VerifiedAccessGroupIdT&& value) {
53 m_verifiedAccessGroupIdHasBeenSet = true;
54 m_verifiedAccessGroupId = std::forward<VerifiedAccessGroupIdT>(value);
55 }
56 template <typename VerifiedAccessGroupIdT = Aws::String>
58 SetVerifiedAccessGroupId(std::forward<VerifiedAccessGroupIdT>(value));
59 return *this;
60 }
62
64
67 inline VerifiedAccessEndpointType GetEndpointType() const { return m_endpointType; }
68 inline bool EndpointTypeHasBeenSet() const { return m_endpointTypeHasBeenSet; }
70 m_endpointTypeHasBeenSet = true;
71 m_endpointType = value;
72 }
74 SetEndpointType(value);
75 return *this;
76 }
78
80
83 inline VerifiedAccessEndpointAttachmentType GetAttachmentType() const { return m_attachmentType; }
84 inline bool AttachmentTypeHasBeenSet() const { return m_attachmentTypeHasBeenSet; }
86 m_attachmentTypeHasBeenSet = true;
87 m_attachmentType = value;
88 }
90 SetAttachmentType(value);
91 return *this;
92 }
94
96
101 inline const Aws::String& GetDomainCertificateArn() const { return m_domainCertificateArn; }
102 inline bool DomainCertificateArnHasBeenSet() const { return m_domainCertificateArnHasBeenSet; }
103 template <typename DomainCertificateArnT = Aws::String>
104 void SetDomainCertificateArn(DomainCertificateArnT&& value) {
105 m_domainCertificateArnHasBeenSet = true;
106 m_domainCertificateArn = std::forward<DomainCertificateArnT>(value);
107 }
108 template <typename DomainCertificateArnT = Aws::String>
110 SetDomainCertificateArn(std::forward<DomainCertificateArnT>(value));
111 return *this;
112 }
114
116
119 inline const Aws::String& GetApplicationDomain() const { return m_applicationDomain; }
120 inline bool ApplicationDomainHasBeenSet() const { return m_applicationDomainHasBeenSet; }
121 template <typename ApplicationDomainT = Aws::String>
122 void SetApplicationDomain(ApplicationDomainT&& value) {
123 m_applicationDomainHasBeenSet = true;
124 m_applicationDomain = std::forward<ApplicationDomainT>(value);
125 }
126 template <typename ApplicationDomainT = Aws::String>
128 SetApplicationDomain(std::forward<ApplicationDomainT>(value));
129 return *this;
130 }
132
134
138 inline const Aws::String& GetEndpointDomainPrefix() const { return m_endpointDomainPrefix; }
139 inline bool EndpointDomainPrefixHasBeenSet() const { return m_endpointDomainPrefixHasBeenSet; }
140 template <typename EndpointDomainPrefixT = Aws::String>
141 void SetEndpointDomainPrefix(EndpointDomainPrefixT&& value) {
142 m_endpointDomainPrefixHasBeenSet = true;
143 m_endpointDomainPrefix = std::forward<EndpointDomainPrefixT>(value);
144 }
145 template <typename EndpointDomainPrefixT = Aws::String>
147 SetEndpointDomainPrefix(std::forward<EndpointDomainPrefixT>(value));
148 return *this;
149 }
151
153
158 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
159 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
160 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
161 void SetSecurityGroupIds(SecurityGroupIdsT&& value) {
162 m_securityGroupIdsHasBeenSet = true;
163 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
164 }
165 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
167 SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value));
168 return *this;
169 }
170 template <typename SecurityGroupIdsT = Aws::String>
172 m_securityGroupIdsHasBeenSet = true;
173 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
174 return *this;
175 }
177
179
183 inline const CreateVerifiedAccessEndpointLoadBalancerOptions& GetLoadBalancerOptions() const { return m_loadBalancerOptions; }
184 inline bool LoadBalancerOptionsHasBeenSet() const { return m_loadBalancerOptionsHasBeenSet; }
185 template <typename LoadBalancerOptionsT = CreateVerifiedAccessEndpointLoadBalancerOptions>
186 void SetLoadBalancerOptions(LoadBalancerOptionsT&& value) {
187 m_loadBalancerOptionsHasBeenSet = true;
188 m_loadBalancerOptions = std::forward<LoadBalancerOptionsT>(value);
189 }
190 template <typename LoadBalancerOptionsT = CreateVerifiedAccessEndpointLoadBalancerOptions>
192 SetLoadBalancerOptions(std::forward<LoadBalancerOptionsT>(value));
193 return *this;
194 }
196
198
202 inline const CreateVerifiedAccessEndpointEniOptions& GetNetworkInterfaceOptions() const { return m_networkInterfaceOptions; }
203 inline bool NetworkInterfaceOptionsHasBeenSet() const { return m_networkInterfaceOptionsHasBeenSet; }
204 template <typename NetworkInterfaceOptionsT = CreateVerifiedAccessEndpointEniOptions>
205 void SetNetworkInterfaceOptions(NetworkInterfaceOptionsT&& value) {
206 m_networkInterfaceOptionsHasBeenSet = true;
207 m_networkInterfaceOptions = std::forward<NetworkInterfaceOptionsT>(value);
208 }
209 template <typename NetworkInterfaceOptionsT = CreateVerifiedAccessEndpointEniOptions>
211 SetNetworkInterfaceOptions(std::forward<NetworkInterfaceOptionsT>(value));
212 return *this;
213 }
215
217
220 inline const Aws::String& GetDescription() const { return m_description; }
221 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
222 template <typename DescriptionT = Aws::String>
223 void SetDescription(DescriptionT&& value) {
224 m_descriptionHasBeenSet = true;
225 m_description = std::forward<DescriptionT>(value);
226 }
227 template <typename DescriptionT = Aws::String>
229 SetDescription(std::forward<DescriptionT>(value));
230 return *this;
231 }
233
235
238 inline const Aws::String& GetPolicyDocument() const { return m_policyDocument; }
239 inline bool PolicyDocumentHasBeenSet() const { return m_policyDocumentHasBeenSet; }
240 template <typename PolicyDocumentT = Aws::String>
241 void SetPolicyDocument(PolicyDocumentT&& value) {
242 m_policyDocumentHasBeenSet = true;
243 m_policyDocument = std::forward<PolicyDocumentT>(value);
244 }
245 template <typename PolicyDocumentT = Aws::String>
247 SetPolicyDocument(std::forward<PolicyDocumentT>(value));
248 return *this;
249 }
251
253
256 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
257 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
258 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
259 void SetTagSpecifications(TagSpecificationsT&& value) {
260 m_tagSpecificationsHasBeenSet = true;
261 m_tagSpecifications = std::forward<TagSpecificationsT>(value);
262 }
263 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
265 SetTagSpecifications(std::forward<TagSpecificationsT>(value));
266 return *this;
267 }
268 template <typename TagSpecificationsT = TagSpecification>
270 m_tagSpecificationsHasBeenSet = true;
271 m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value));
272 return *this;
273 }
275
277
283 inline const Aws::String& GetClientToken() const { return m_clientToken; }
284 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
285 template <typename ClientTokenT = Aws::String>
286 void SetClientToken(ClientTokenT&& value) {
287 m_clientTokenHasBeenSet = true;
288 m_clientToken = std::forward<ClientTokenT>(value);
289 }
290 template <typename ClientTokenT = Aws::String>
292 SetClientToken(std::forward<ClientTokenT>(value));
293 return *this;
294 }
296
298
304 inline bool GetDryRun() const { return m_dryRun; }
305 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
306 inline void SetDryRun(bool value) {
307 m_dryRunHasBeenSet = true;
308 m_dryRun = value;
309 }
311 SetDryRun(value);
312 return *this;
313 }
315
317
320 inline const VerifiedAccessSseSpecificationRequest& GetSseSpecification() const { return m_sseSpecification; }
321 inline bool SseSpecificationHasBeenSet() const { return m_sseSpecificationHasBeenSet; }
322 template <typename SseSpecificationT = VerifiedAccessSseSpecificationRequest>
323 void SetSseSpecification(SseSpecificationT&& value) {
324 m_sseSpecificationHasBeenSet = true;
325 m_sseSpecification = std::forward<SseSpecificationT>(value);
326 }
327 template <typename SseSpecificationT = VerifiedAccessSseSpecificationRequest>
329 SetSseSpecification(std::forward<SseSpecificationT>(value));
330 return *this;
331 }
333
335
339 inline const CreateVerifiedAccessEndpointRdsOptions& GetRdsOptions() const { return m_rdsOptions; }
340 inline bool RdsOptionsHasBeenSet() const { return m_rdsOptionsHasBeenSet; }
341 template <typename RdsOptionsT = CreateVerifiedAccessEndpointRdsOptions>
342 void SetRdsOptions(RdsOptionsT&& value) {
343 m_rdsOptionsHasBeenSet = true;
344 m_rdsOptions = std::forward<RdsOptionsT>(value);
345 }
346 template <typename RdsOptionsT = CreateVerifiedAccessEndpointRdsOptions>
348 SetRdsOptions(std::forward<RdsOptionsT>(value));
349 return *this;
350 }
352
354
358 inline const CreateVerifiedAccessEndpointCidrOptions& GetCidrOptions() const { return m_cidrOptions; }
359 inline bool CidrOptionsHasBeenSet() const { return m_cidrOptionsHasBeenSet; }
360 template <typename CidrOptionsT = CreateVerifiedAccessEndpointCidrOptions>
361 void SetCidrOptions(CidrOptionsT&& value) {
362 m_cidrOptionsHasBeenSet = true;
363 m_cidrOptions = std::forward<CidrOptionsT>(value);
364 }
365 template <typename CidrOptionsT = CreateVerifiedAccessEndpointCidrOptions>
367 SetCidrOptions(std::forward<CidrOptionsT>(value));
368 return *this;
369 }
371 private:
372 Aws::String m_verifiedAccessGroupId;
373
375
377
378 Aws::String m_domainCertificateArn;
379
380 Aws::String m_applicationDomain;
381
382 Aws::String m_endpointDomainPrefix;
383
384 Aws::Vector<Aws::String> m_securityGroupIds;
385
386 CreateVerifiedAccessEndpointLoadBalancerOptions m_loadBalancerOptions;
387
388 CreateVerifiedAccessEndpointEniOptions m_networkInterfaceOptions;
389
390 Aws::String m_description;
391
392 Aws::String m_policyDocument;
393
394 Aws::Vector<TagSpecification> m_tagSpecifications;
395
397
398 bool m_dryRun{false};
399
400 VerifiedAccessSseSpecificationRequest m_sseSpecification;
401
402 CreateVerifiedAccessEndpointRdsOptions m_rdsOptions;
403
404 CreateVerifiedAccessEndpointCidrOptions m_cidrOptions;
405 bool m_verifiedAccessGroupIdHasBeenSet = false;
406 bool m_endpointTypeHasBeenSet = false;
407 bool m_attachmentTypeHasBeenSet = false;
408 bool m_domainCertificateArnHasBeenSet = false;
409 bool m_applicationDomainHasBeenSet = false;
410 bool m_endpointDomainPrefixHasBeenSet = false;
411 bool m_securityGroupIdsHasBeenSet = false;
412 bool m_loadBalancerOptionsHasBeenSet = false;
413 bool m_networkInterfaceOptionsHasBeenSet = false;
414 bool m_descriptionHasBeenSet = false;
415 bool m_policyDocumentHasBeenSet = false;
416 bool m_tagSpecificationsHasBeenSet = false;
417 bool m_clientTokenHasBeenSet = true;
418 bool m_dryRunHasBeenSet = false;
419 bool m_sseSpecificationHasBeenSet = false;
420 bool m_rdsOptionsHasBeenSet = false;
421 bool m_cidrOptionsHasBeenSet = false;
422};
423
424} // namespace Model
425} // namespace EC2
426} // 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