AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateClusterRequest.h
1
6#pragma once
7#include <aws/eks/EKS_EXPORTS.h>
8#include <aws/eks/EKSRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/eks/model/VpcConfigRequest.h>
11#include <aws/eks/model/KubernetesNetworkConfigRequest.h>
12#include <aws/eks/model/Logging.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15#include <aws/eks/model/OutpostConfigRequest.h>
16#include <aws/eks/model/CreateAccessConfigRequest.h>
17#include <aws/eks/model/UpgradePolicyRequest.h>
18#include <aws/eks/model/ZonalShiftConfigRequest.h>
19#include <aws/eks/model/RemoteNetworkConfigRequest.h>
20#include <aws/eks/model/ComputeConfigRequest.h>
21#include <aws/eks/model/StorageConfigRequest.h>
22#include <aws/eks/model/EncryptionConfig.h>
23#include <utility>
24#include <aws/core/utils/UUID.h>
25
26namespace Aws
27{
28namespace EKS
29{
30namespace Model
31{
32
36 {
37 public:
38 AWS_EKS_API CreateClusterRequest() = default;
39
40 // Service request name is the Operation name which will send this request out,
41 // each operation should has unique request name, so that we can get operation's name from this request.
42 // Note: this is not true for response, multiple operations may have the same response name,
43 // so we can not get operation's name from response.
44 inline virtual const char* GetServiceRequestName() const override { return "CreateCluster"; }
45
46 AWS_EKS_API Aws::String SerializePayload() const override;
47
48
50
57 inline const Aws::String& GetName() const { return m_name; }
58 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
59 template<typename NameT = Aws::String>
60 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
61 template<typename NameT = Aws::String>
62 CreateClusterRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
64
66
71 inline const Aws::String& GetVersion() const { return m_version; }
72 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
73 template<typename VersionT = Aws::String>
74 void SetVersion(VersionT&& value) { m_versionHasBeenSet = true; m_version = std::forward<VersionT>(value); }
75 template<typename VersionT = Aws::String>
76 CreateClusterRequest& WithVersion(VersionT&& value) { SetVersion(std::forward<VersionT>(value)); return *this;}
78
80
87 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
88 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
89 template<typename RoleArnT = Aws::String>
90 void SetRoleArn(RoleArnT&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::forward<RoleArnT>(value); }
91 template<typename RoleArnT = Aws::String>
92 CreateClusterRequest& WithRoleArn(RoleArnT&& value) { SetRoleArn(std::forward<RoleArnT>(value)); return *this;}
94
96
108 inline const VpcConfigRequest& GetResourcesVpcConfig() const { return m_resourcesVpcConfig; }
109 inline bool ResourcesVpcConfigHasBeenSet() const { return m_resourcesVpcConfigHasBeenSet; }
110 template<typename ResourcesVpcConfigT = VpcConfigRequest>
111 void SetResourcesVpcConfig(ResourcesVpcConfigT&& value) { m_resourcesVpcConfigHasBeenSet = true; m_resourcesVpcConfig = std::forward<ResourcesVpcConfigT>(value); }
112 template<typename ResourcesVpcConfigT = VpcConfigRequest>
113 CreateClusterRequest& WithResourcesVpcConfig(ResourcesVpcConfigT&& value) { SetResourcesVpcConfig(std::forward<ResourcesVpcConfigT>(value)); return *this;}
115
117
120 inline const KubernetesNetworkConfigRequest& GetKubernetesNetworkConfig() const { return m_kubernetesNetworkConfig; }
121 inline bool KubernetesNetworkConfigHasBeenSet() const { return m_kubernetesNetworkConfigHasBeenSet; }
122 template<typename KubernetesNetworkConfigT = KubernetesNetworkConfigRequest>
123 void SetKubernetesNetworkConfig(KubernetesNetworkConfigT&& value) { m_kubernetesNetworkConfigHasBeenSet = true; m_kubernetesNetworkConfig = std::forward<KubernetesNetworkConfigT>(value); }
124 template<typename KubernetesNetworkConfigT = KubernetesNetworkConfigRequest>
125 CreateClusterRequest& WithKubernetesNetworkConfig(KubernetesNetworkConfigT&& value) { SetKubernetesNetworkConfig(std::forward<KubernetesNetworkConfigT>(value)); return *this;}
127
129
140 inline const Logging& GetLogging() const { return m_logging; }
141 inline bool LoggingHasBeenSet() const { return m_loggingHasBeenSet; }
142 template<typename LoggingT = Logging>
143 void SetLogging(LoggingT&& value) { m_loggingHasBeenSet = true; m_logging = std::forward<LoggingT>(value); }
144 template<typename LoggingT = Logging>
145 CreateClusterRequest& WithLogging(LoggingT&& value) { SetLogging(std::forward<LoggingT>(value)); return *this;}
147
149
153 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
154 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
155 template<typename ClientRequestTokenT = Aws::String>
156 void SetClientRequestToken(ClientRequestTokenT&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::forward<ClientRequestTokenT>(value); }
157 template<typename ClientRequestTokenT = Aws::String>
158 CreateClusterRequest& WithClientRequestToken(ClientRequestTokenT&& value) { SetClientRequestToken(std::forward<ClientRequestTokenT>(value)); return *this;}
160
162
167 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
168 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
169 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
170 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
171 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
172 CreateClusterRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
173 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
174 CreateClusterRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
175 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
176 }
178
180
183 inline const Aws::Vector<EncryptionConfig>& GetEncryptionConfig() const { return m_encryptionConfig; }
184 inline bool EncryptionConfigHasBeenSet() const { return m_encryptionConfigHasBeenSet; }
185 template<typename EncryptionConfigT = Aws::Vector<EncryptionConfig>>
186 void SetEncryptionConfig(EncryptionConfigT&& value) { m_encryptionConfigHasBeenSet = true; m_encryptionConfig = std::forward<EncryptionConfigT>(value); }
187 template<typename EncryptionConfigT = Aws::Vector<EncryptionConfig>>
188 CreateClusterRequest& WithEncryptionConfig(EncryptionConfigT&& value) { SetEncryptionConfig(std::forward<EncryptionConfigT>(value)); return *this;}
189 template<typename EncryptionConfigT = EncryptionConfig>
190 CreateClusterRequest& AddEncryptionConfig(EncryptionConfigT&& value) { m_encryptionConfigHasBeenSet = true; m_encryptionConfig.emplace_back(std::forward<EncryptionConfigT>(value)); return *this; }
192
194
203 inline const OutpostConfigRequest& GetOutpostConfig() const { return m_outpostConfig; }
204 inline bool OutpostConfigHasBeenSet() const { return m_outpostConfigHasBeenSet; }
205 template<typename OutpostConfigT = OutpostConfigRequest>
206 void SetOutpostConfig(OutpostConfigT&& value) { m_outpostConfigHasBeenSet = true; m_outpostConfig = std::forward<OutpostConfigT>(value); }
207 template<typename OutpostConfigT = OutpostConfigRequest>
208 CreateClusterRequest& WithOutpostConfig(OutpostConfigT&& value) { SetOutpostConfig(std::forward<OutpostConfigT>(value)); return *this;}
210
212
215 inline const CreateAccessConfigRequest& GetAccessConfig() const { return m_accessConfig; }
216 inline bool AccessConfigHasBeenSet() const { return m_accessConfigHasBeenSet; }
217 template<typename AccessConfigT = CreateAccessConfigRequest>
218 void SetAccessConfig(AccessConfigT&& value) { m_accessConfigHasBeenSet = true; m_accessConfig = std::forward<AccessConfigT>(value); }
219 template<typename AccessConfigT = CreateAccessConfigRequest>
220 CreateClusterRequest& WithAccessConfig(AccessConfigT&& value) { SetAccessConfig(std::forward<AccessConfigT>(value)); return *this;}
222
224
232 inline bool GetBootstrapSelfManagedAddons() const { return m_bootstrapSelfManagedAddons; }
233 inline bool BootstrapSelfManagedAddonsHasBeenSet() const { return m_bootstrapSelfManagedAddonsHasBeenSet; }
234 inline void SetBootstrapSelfManagedAddons(bool value) { m_bootstrapSelfManagedAddonsHasBeenSet = true; m_bootstrapSelfManagedAddons = value; }
237
239
244 inline const UpgradePolicyRequest& GetUpgradePolicy() const { return m_upgradePolicy; }
245 inline bool UpgradePolicyHasBeenSet() const { return m_upgradePolicyHasBeenSet; }
246 template<typename UpgradePolicyT = UpgradePolicyRequest>
247 void SetUpgradePolicy(UpgradePolicyT&& value) { m_upgradePolicyHasBeenSet = true; m_upgradePolicy = std::forward<UpgradePolicyT>(value); }
248 template<typename UpgradePolicyT = UpgradePolicyRequest>
249 CreateClusterRequest& WithUpgradePolicy(UpgradePolicyT&& value) { SetUpgradePolicy(std::forward<UpgradePolicyT>(value)); return *this;}
251
253
271 inline const ZonalShiftConfigRequest& GetZonalShiftConfig() const { return m_zonalShiftConfig; }
272 inline bool ZonalShiftConfigHasBeenSet() const { return m_zonalShiftConfigHasBeenSet; }
273 template<typename ZonalShiftConfigT = ZonalShiftConfigRequest>
274 void SetZonalShiftConfig(ZonalShiftConfigT&& value) { m_zonalShiftConfigHasBeenSet = true; m_zonalShiftConfig = std::forward<ZonalShiftConfigT>(value); }
275 template<typename ZonalShiftConfigT = ZonalShiftConfigRequest>
276 CreateClusterRequest& WithZonalShiftConfig(ZonalShiftConfigT&& value) { SetZonalShiftConfig(std::forward<ZonalShiftConfigT>(value)); return *this;}
278
280
284 inline const RemoteNetworkConfigRequest& GetRemoteNetworkConfig() const { return m_remoteNetworkConfig; }
285 inline bool RemoteNetworkConfigHasBeenSet() const { return m_remoteNetworkConfigHasBeenSet; }
286 template<typename RemoteNetworkConfigT = RemoteNetworkConfigRequest>
287 void SetRemoteNetworkConfig(RemoteNetworkConfigT&& value) { m_remoteNetworkConfigHasBeenSet = true; m_remoteNetworkConfig = std::forward<RemoteNetworkConfigT>(value); }
288 template<typename RemoteNetworkConfigT = RemoteNetworkConfigRequest>
289 CreateClusterRequest& WithRemoteNetworkConfig(RemoteNetworkConfigT&& value) { SetRemoteNetworkConfig(std::forward<RemoteNetworkConfigT>(value)); return *this;}
291
293
298 inline const ComputeConfigRequest& GetComputeConfig() const { return m_computeConfig; }
299 inline bool ComputeConfigHasBeenSet() const { return m_computeConfigHasBeenSet; }
300 template<typename ComputeConfigT = ComputeConfigRequest>
301 void SetComputeConfig(ComputeConfigT&& value) { m_computeConfigHasBeenSet = true; m_computeConfig = std::forward<ComputeConfigT>(value); }
302 template<typename ComputeConfigT = ComputeConfigRequest>
303 CreateClusterRequest& WithComputeConfig(ComputeConfigT&& value) { SetComputeConfig(std::forward<ComputeConfigT>(value)); return *this;}
305
307
312 inline const StorageConfigRequest& GetStorageConfig() const { return m_storageConfig; }
313 inline bool StorageConfigHasBeenSet() const { return m_storageConfigHasBeenSet; }
314 template<typename StorageConfigT = StorageConfigRequest>
315 void SetStorageConfig(StorageConfigT&& value) { m_storageConfigHasBeenSet = true; m_storageConfig = std::forward<StorageConfigT>(value); }
316 template<typename StorageConfigT = StorageConfigRequest>
317 CreateClusterRequest& WithStorageConfig(StorageConfigT&& value) { SetStorageConfig(std::forward<StorageConfigT>(value)); return *this;}
319 private:
320
321 Aws::String m_name;
322 bool m_nameHasBeenSet = false;
323
324 Aws::String m_version;
325 bool m_versionHasBeenSet = false;
326
327 Aws::String m_roleArn;
328 bool m_roleArnHasBeenSet = false;
329
330 VpcConfigRequest m_resourcesVpcConfig;
331 bool m_resourcesVpcConfigHasBeenSet = false;
332
333 KubernetesNetworkConfigRequest m_kubernetesNetworkConfig;
334 bool m_kubernetesNetworkConfigHasBeenSet = false;
335
336 Logging m_logging;
337 bool m_loggingHasBeenSet = false;
338
339 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
340 bool m_clientRequestTokenHasBeenSet = true;
341
343 bool m_tagsHasBeenSet = false;
344
345 Aws::Vector<EncryptionConfig> m_encryptionConfig;
346 bool m_encryptionConfigHasBeenSet = false;
347
348 OutpostConfigRequest m_outpostConfig;
349 bool m_outpostConfigHasBeenSet = false;
350
351 CreateAccessConfigRequest m_accessConfig;
352 bool m_accessConfigHasBeenSet = false;
353
354 bool m_bootstrapSelfManagedAddons{false};
355 bool m_bootstrapSelfManagedAddonsHasBeenSet = false;
356
357 UpgradePolicyRequest m_upgradePolicy;
358 bool m_upgradePolicyHasBeenSet = false;
359
360 ZonalShiftConfigRequest m_zonalShiftConfig;
361 bool m_zonalShiftConfigHasBeenSet = false;
362
363 RemoteNetworkConfigRequest m_remoteNetworkConfig;
364 bool m_remoteNetworkConfigHasBeenSet = false;
365
366 ComputeConfigRequest m_computeConfig;
367 bool m_computeConfigHasBeenSet = false;
368
369 StorageConfigRequest m_storageConfig;
370 bool m_storageConfigHasBeenSet = false;
371 };
372
373} // namespace Model
374} // namespace EKS
375} // 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
void SetUpgradePolicy(UpgradePolicyT &&value)
void SetKubernetesNetworkConfig(KubernetesNetworkConfigT &&value)
CreateClusterRequest & AddEncryptionConfig(EncryptionConfigT &&value)
AWS_EKS_API Aws::String SerializePayload() const override
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
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