AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CreateClusterRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/eks/EKSRequest.h>
12#include <aws/eks/EKS_EXPORTS.h>
13#include <aws/eks/model/ComputeConfigRequest.h>
14#include <aws/eks/model/ControlPlaneScalingConfig.h>
15#include <aws/eks/model/CreateAccessConfigRequest.h>
16#include <aws/eks/model/EncryptionConfig.h>
17#include <aws/eks/model/KubernetesNetworkConfigRequest.h>
18#include <aws/eks/model/Logging.h>
19#include <aws/eks/model/OutpostConfigRequest.h>
20#include <aws/eks/model/RemoteNetworkConfigRequest.h>
21#include <aws/eks/model/StorageConfigRequest.h>
22#include <aws/eks/model/UpgradePolicyRequest.h>
23#include <aws/eks/model/VpcConfigRequest.h>
24#include <aws/eks/model/ZonalShiftConfigRequest.h>
25
26#include <utility>
27
28namespace Aws {
29namespace EKS {
30namespace Model {
31
35 public:
36 AWS_EKS_API CreateClusterRequest() = default;
37
38 // Service request name is the Operation name which will send this request out,
39 // each operation should has unique request name, so that we can get operation's name from this request.
40 // Note: this is not true for response, multiple operations may have the same response name,
41 // so we can not get operation's name from response.
42 inline virtual const char* GetServiceRequestName() const override { return "CreateCluster"; }
43
44 AWS_EKS_API Aws::String SerializePayload() const override;
45
47
54 inline const Aws::String& GetName() const { return m_name; }
55 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
56 template <typename NameT = Aws::String>
57 void SetName(NameT&& value) {
58 m_nameHasBeenSet = true;
59 m_name = std::forward<NameT>(value);
60 }
61 template <typename NameT = Aws::String>
63 SetName(std::forward<NameT>(value));
64 return *this;
65 }
67
69
74 inline const Aws::String& GetVersion() const { return m_version; }
75 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
76 template <typename VersionT = Aws::String>
77 void SetVersion(VersionT&& value) {
78 m_versionHasBeenSet = true;
79 m_version = std::forward<VersionT>(value);
80 }
81 template <typename VersionT = Aws::String>
82 CreateClusterRequest& WithVersion(VersionT&& value) {
83 SetVersion(std::forward<VersionT>(value));
84 return *this;
85 }
87
89
96 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
97 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
98 template <typename RoleArnT = Aws::String>
99 void SetRoleArn(RoleArnT&& value) {
100 m_roleArnHasBeenSet = true;
101 m_roleArn = std::forward<RoleArnT>(value);
102 }
103 template <typename RoleArnT = Aws::String>
105 SetRoleArn(std::forward<RoleArnT>(value));
106 return *this;
107 }
109
111
123 inline const VpcConfigRequest& GetResourcesVpcConfig() const { return m_resourcesVpcConfig; }
124 inline bool ResourcesVpcConfigHasBeenSet() const { return m_resourcesVpcConfigHasBeenSet; }
125 template <typename ResourcesVpcConfigT = VpcConfigRequest>
126 void SetResourcesVpcConfig(ResourcesVpcConfigT&& value) {
127 m_resourcesVpcConfigHasBeenSet = true;
128 m_resourcesVpcConfig = std::forward<ResourcesVpcConfigT>(value);
129 }
130 template <typename ResourcesVpcConfigT = VpcConfigRequest>
131 CreateClusterRequest& WithResourcesVpcConfig(ResourcesVpcConfigT&& value) {
132 SetResourcesVpcConfig(std::forward<ResourcesVpcConfigT>(value));
133 return *this;
134 }
136
138
141 inline const KubernetesNetworkConfigRequest& GetKubernetesNetworkConfig() const { return m_kubernetesNetworkConfig; }
142 inline bool KubernetesNetworkConfigHasBeenSet() const { return m_kubernetesNetworkConfigHasBeenSet; }
143 template <typename KubernetesNetworkConfigT = KubernetesNetworkConfigRequest>
144 void SetKubernetesNetworkConfig(KubernetesNetworkConfigT&& value) {
145 m_kubernetesNetworkConfigHasBeenSet = true;
146 m_kubernetesNetworkConfig = std::forward<KubernetesNetworkConfigT>(value);
147 }
148 template <typename KubernetesNetworkConfigT = KubernetesNetworkConfigRequest>
149 CreateClusterRequest& WithKubernetesNetworkConfig(KubernetesNetworkConfigT&& value) {
150 SetKubernetesNetworkConfig(std::forward<KubernetesNetworkConfigT>(value));
151 return *this;
152 }
154
156
167 inline const Logging& GetLogging() const { return m_logging; }
168 inline bool LoggingHasBeenSet() const { return m_loggingHasBeenSet; }
169 template <typename LoggingT = Logging>
170 void SetLogging(LoggingT&& value) {
171 m_loggingHasBeenSet = true;
172 m_logging = std::forward<LoggingT>(value);
173 }
174 template <typename LoggingT = Logging>
176 SetLogging(std::forward<LoggingT>(value));
177 return *this;
178 }
180
182
186 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
187 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
188 template <typename ClientRequestTokenT = Aws::String>
189 void SetClientRequestToken(ClientRequestTokenT&& value) {
190 m_clientRequestTokenHasBeenSet = true;
191 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
192 }
193 template <typename ClientRequestTokenT = Aws::String>
194 CreateClusterRequest& WithClientRequestToken(ClientRequestTokenT&& value) {
195 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
196 return *this;
197 }
199
201
206 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
207 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
208 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
209 void SetTags(TagsT&& value) {
210 m_tagsHasBeenSet = true;
211 m_tags = std::forward<TagsT>(value);
212 }
213 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
215 SetTags(std::forward<TagsT>(value));
216 return *this;
217 }
218 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
219 CreateClusterRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
220 m_tagsHasBeenSet = true;
221 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
222 return *this;
223 }
225
227
230 inline const Aws::Vector<EncryptionConfig>& GetEncryptionConfig() const { return m_encryptionConfig; }
231 inline bool EncryptionConfigHasBeenSet() const { return m_encryptionConfigHasBeenSet; }
232 template <typename EncryptionConfigT = Aws::Vector<EncryptionConfig>>
233 void SetEncryptionConfig(EncryptionConfigT&& value) {
234 m_encryptionConfigHasBeenSet = true;
235 m_encryptionConfig = std::forward<EncryptionConfigT>(value);
236 }
237 template <typename EncryptionConfigT = Aws::Vector<EncryptionConfig>>
238 CreateClusterRequest& WithEncryptionConfig(EncryptionConfigT&& value) {
239 SetEncryptionConfig(std::forward<EncryptionConfigT>(value));
240 return *this;
241 }
242 template <typename EncryptionConfigT = EncryptionConfig>
243 CreateClusterRequest& AddEncryptionConfig(EncryptionConfigT&& value) {
244 m_encryptionConfigHasBeenSet = true;
245 m_encryptionConfig.emplace_back(std::forward<EncryptionConfigT>(value));
246 return *this;
247 }
249
251
260 inline const OutpostConfigRequest& GetOutpostConfig() const { return m_outpostConfig; }
261 inline bool OutpostConfigHasBeenSet() const { return m_outpostConfigHasBeenSet; }
262 template <typename OutpostConfigT = OutpostConfigRequest>
263 void SetOutpostConfig(OutpostConfigT&& value) {
264 m_outpostConfigHasBeenSet = true;
265 m_outpostConfig = std::forward<OutpostConfigT>(value);
266 }
267 template <typename OutpostConfigT = OutpostConfigRequest>
268 CreateClusterRequest& WithOutpostConfig(OutpostConfigT&& value) {
269 SetOutpostConfig(std::forward<OutpostConfigT>(value));
270 return *this;
271 }
273
275
278 inline const CreateAccessConfigRequest& GetAccessConfig() const { return m_accessConfig; }
279 inline bool AccessConfigHasBeenSet() const { return m_accessConfigHasBeenSet; }
280 template <typename AccessConfigT = CreateAccessConfigRequest>
281 void SetAccessConfig(AccessConfigT&& value) {
282 m_accessConfigHasBeenSet = true;
283 m_accessConfig = std::forward<AccessConfigT>(value);
284 }
285 template <typename AccessConfigT = CreateAccessConfigRequest>
286 CreateClusterRequest& WithAccessConfig(AccessConfigT&& value) {
287 SetAccessConfig(std::forward<AccessConfigT>(value));
288 return *this;
289 }
291
293
301 inline bool GetBootstrapSelfManagedAddons() const { return m_bootstrapSelfManagedAddons; }
302 inline bool BootstrapSelfManagedAddonsHasBeenSet() const { return m_bootstrapSelfManagedAddonsHasBeenSet; }
303 inline void SetBootstrapSelfManagedAddons(bool value) {
304 m_bootstrapSelfManagedAddonsHasBeenSet = true;
305 m_bootstrapSelfManagedAddons = value;
306 }
309 return *this;
310 }
312
314
319 inline const UpgradePolicyRequest& GetUpgradePolicy() const { return m_upgradePolicy; }
320 inline bool UpgradePolicyHasBeenSet() const { return m_upgradePolicyHasBeenSet; }
321 template <typename UpgradePolicyT = UpgradePolicyRequest>
322 void SetUpgradePolicy(UpgradePolicyT&& value) {
323 m_upgradePolicyHasBeenSet = true;
324 m_upgradePolicy = std::forward<UpgradePolicyT>(value);
325 }
326 template <typename UpgradePolicyT = UpgradePolicyRequest>
327 CreateClusterRequest& WithUpgradePolicy(UpgradePolicyT&& value) {
328 SetUpgradePolicy(std::forward<UpgradePolicyT>(value));
329 return *this;
330 }
332
334
352 inline const ZonalShiftConfigRequest& GetZonalShiftConfig() const { return m_zonalShiftConfig; }
353 inline bool ZonalShiftConfigHasBeenSet() const { return m_zonalShiftConfigHasBeenSet; }
354 template <typename ZonalShiftConfigT = ZonalShiftConfigRequest>
355 void SetZonalShiftConfig(ZonalShiftConfigT&& value) {
356 m_zonalShiftConfigHasBeenSet = true;
357 m_zonalShiftConfig = std::forward<ZonalShiftConfigT>(value);
358 }
359 template <typename ZonalShiftConfigT = ZonalShiftConfigRequest>
360 CreateClusterRequest& WithZonalShiftConfig(ZonalShiftConfigT&& value) {
361 SetZonalShiftConfig(std::forward<ZonalShiftConfigT>(value));
362 return *this;
363 }
365
367
371 inline const RemoteNetworkConfigRequest& GetRemoteNetworkConfig() const { return m_remoteNetworkConfig; }
372 inline bool RemoteNetworkConfigHasBeenSet() const { return m_remoteNetworkConfigHasBeenSet; }
373 template <typename RemoteNetworkConfigT = RemoteNetworkConfigRequest>
374 void SetRemoteNetworkConfig(RemoteNetworkConfigT&& value) {
375 m_remoteNetworkConfigHasBeenSet = true;
376 m_remoteNetworkConfig = std::forward<RemoteNetworkConfigT>(value);
377 }
378 template <typename RemoteNetworkConfigT = RemoteNetworkConfigRequest>
379 CreateClusterRequest& WithRemoteNetworkConfig(RemoteNetworkConfigT&& value) {
380 SetRemoteNetworkConfig(std::forward<RemoteNetworkConfigT>(value));
381 return *this;
382 }
384
386
391 inline const ComputeConfigRequest& GetComputeConfig() const { return m_computeConfig; }
392 inline bool ComputeConfigHasBeenSet() const { return m_computeConfigHasBeenSet; }
393 template <typename ComputeConfigT = ComputeConfigRequest>
394 void SetComputeConfig(ComputeConfigT&& value) {
395 m_computeConfigHasBeenSet = true;
396 m_computeConfig = std::forward<ComputeConfigT>(value);
397 }
398 template <typename ComputeConfigT = ComputeConfigRequest>
399 CreateClusterRequest& WithComputeConfig(ComputeConfigT&& value) {
400 SetComputeConfig(std::forward<ComputeConfigT>(value));
401 return *this;
402 }
404
406
411 inline const StorageConfigRequest& GetStorageConfig() const { return m_storageConfig; }
412 inline bool StorageConfigHasBeenSet() const { return m_storageConfigHasBeenSet; }
413 template <typename StorageConfigT = StorageConfigRequest>
414 void SetStorageConfig(StorageConfigT&& value) {
415 m_storageConfigHasBeenSet = true;
416 m_storageConfig = std::forward<StorageConfigT>(value);
417 }
418 template <typename StorageConfigT = StorageConfigRequest>
419 CreateClusterRequest& WithStorageConfig(StorageConfigT&& value) {
420 SetStorageConfig(std::forward<StorageConfigT>(value));
421 return *this;
422 }
424
426
432 inline bool GetDeletionProtection() const { return m_deletionProtection; }
433 inline bool DeletionProtectionHasBeenSet() const { return m_deletionProtectionHasBeenSet; }
434 inline void SetDeletionProtection(bool value) {
435 m_deletionProtectionHasBeenSet = true;
436 m_deletionProtection = value;
437 }
440 return *this;
441 }
443
445
449 inline const ControlPlaneScalingConfig& GetControlPlaneScalingConfig() const { return m_controlPlaneScalingConfig; }
450 inline bool ControlPlaneScalingConfigHasBeenSet() const { return m_controlPlaneScalingConfigHasBeenSet; }
451 template <typename ControlPlaneScalingConfigT = ControlPlaneScalingConfig>
452 void SetControlPlaneScalingConfig(ControlPlaneScalingConfigT&& value) {
453 m_controlPlaneScalingConfigHasBeenSet = true;
454 m_controlPlaneScalingConfig = std::forward<ControlPlaneScalingConfigT>(value);
455 }
456 template <typename ControlPlaneScalingConfigT = ControlPlaneScalingConfig>
457 CreateClusterRequest& WithControlPlaneScalingConfig(ControlPlaneScalingConfigT&& value) {
458 SetControlPlaneScalingConfig(std::forward<ControlPlaneScalingConfigT>(value));
459 return *this;
460 }
462 private:
463 Aws::String m_name;
464
465 Aws::String m_version;
466
467 Aws::String m_roleArn;
468
469 VpcConfigRequest m_resourcesVpcConfig;
470
471 KubernetesNetworkConfigRequest m_kubernetesNetworkConfig;
472
473 Logging m_logging;
474
475 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
476
478
479 Aws::Vector<EncryptionConfig> m_encryptionConfig;
480
481 OutpostConfigRequest m_outpostConfig;
482
483 CreateAccessConfigRequest m_accessConfig;
484
485 bool m_bootstrapSelfManagedAddons{false};
486
487 UpgradePolicyRequest m_upgradePolicy;
488
489 ZonalShiftConfigRequest m_zonalShiftConfig;
490
491 RemoteNetworkConfigRequest m_remoteNetworkConfig;
492
493 ComputeConfigRequest m_computeConfig;
494
495 StorageConfigRequest m_storageConfig;
496
497 bool m_deletionProtection{false};
498
499 ControlPlaneScalingConfig m_controlPlaneScalingConfig;
500 bool m_nameHasBeenSet = false;
501 bool m_versionHasBeenSet = false;
502 bool m_roleArnHasBeenSet = false;
503 bool m_resourcesVpcConfigHasBeenSet = false;
504 bool m_kubernetesNetworkConfigHasBeenSet = false;
505 bool m_loggingHasBeenSet = false;
506 bool m_clientRequestTokenHasBeenSet = true;
507 bool m_tagsHasBeenSet = false;
508 bool m_encryptionConfigHasBeenSet = false;
509 bool m_outpostConfigHasBeenSet = false;
510 bool m_accessConfigHasBeenSet = false;
511 bool m_bootstrapSelfManagedAddonsHasBeenSet = false;
512 bool m_upgradePolicyHasBeenSet = false;
513 bool m_zonalShiftConfigHasBeenSet = false;
514 bool m_remoteNetworkConfigHasBeenSet = false;
515 bool m_computeConfigHasBeenSet = false;
516 bool m_storageConfigHasBeenSet = false;
517 bool m_deletionProtectionHasBeenSet = false;
518 bool m_controlPlaneScalingConfigHasBeenSet = false;
519};
520
521} // namespace Model
522} // namespace EKS
523} // namespace Aws
const Aws::String & GetClientRequestToken() const
CreateClusterRequest & WithStorageConfig(StorageConfigT &&value)
CreateClusterRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateClusterRequest & WithComputeConfig(ComputeConfigT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const ControlPlaneScalingConfig & GetControlPlaneScalingConfig() const
void SetUpgradePolicy(UpgradePolicyT &&value)
void SetKubernetesNetworkConfig(KubernetesNetworkConfigT &&value)
CreateClusterRequest & AddEncryptionConfig(EncryptionConfigT &&value)
AWS_EKS_API Aws::String SerializePayload() const override
CreateClusterRequest & WithDeletionProtection(bool value)
void SetControlPlaneScalingConfig(ControlPlaneScalingConfigT &&value)
void SetComputeConfig(ComputeConfigT &&value)
const CreateAccessConfigRequest & GetAccessConfig() const
void SetOutpostConfig(OutpostConfigT &&value)
CreateClusterRequest & WithOutpostConfig(OutpostConfigT &&value)
CreateClusterRequest & WithVersion(VersionT &&value)
const RemoteNetworkConfigRequest & GetRemoteNetworkConfig() const
CreateClusterRequest & WithTags(TagsT &&value)
CreateClusterRequest & WithKubernetesNetworkConfig(KubernetesNetworkConfigT &&value)
CreateClusterRequest & WithLogging(LoggingT &&value)
void SetStorageConfig(StorageConfigT &&value)
const VpcConfigRequest & GetResourcesVpcConfig() const
const KubernetesNetworkConfigRequest & GetKubernetesNetworkConfig() const
CreateClusterRequest & WithControlPlaneScalingConfig(ControlPlaneScalingConfigT &&value)
void SetEncryptionConfig(EncryptionConfigT &&value)
void SetResourcesVpcConfig(ResourcesVpcConfigT &&value)
CreateClusterRequest & WithUpgradePolicy(UpgradePolicyT &&value)
CreateClusterRequest & WithRemoteNetworkConfig(RemoteNetworkConfigT &&value)
virtual const char * GetServiceRequestName() const override
const OutpostConfigRequest & GetOutpostConfig() const
AWS_EKS_API CreateClusterRequest()=default
void SetAccessConfig(AccessConfigT &&value)
const UpgradePolicyRequest & GetUpgradePolicy() const
const StorageConfigRequest & GetStorageConfig() const
void SetRemoteNetworkConfig(RemoteNetworkConfigT &&value)
const ComputeConfigRequest & GetComputeConfig() const
const Aws::Vector< EncryptionConfig > & GetEncryptionConfig() const
CreateClusterRequest & WithZonalShiftConfig(ZonalShiftConfigT &&value)
CreateClusterRequest & WithRoleArn(RoleArnT &&value)
CreateClusterRequest & WithAccessConfig(AccessConfigT &&value)
CreateClusterRequest & WithName(NameT &&value)
CreateClusterRequest & WithResourcesVpcConfig(ResourcesVpcConfigT &&value)
void SetZonalShiftConfig(ZonalShiftConfigT &&value)
void SetClientRequestToken(ClientRequestTokenT &&value)
CreateClusterRequest & WithEncryptionConfig(EncryptionConfigT &&value)
CreateClusterRequest & WithBootstrapSelfManagedAddons(bool value)
CreateClusterRequest & WithClientRequestToken(ClientRequestTokenT &&value)
const ZonalShiftConfigRequest & GetZonalShiftConfig() const
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector