7#include <aws/core/utils/DateTime.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/EKS_EXPORTS.h>
12#include <aws/eks/model/AccessConfigResponse.h>
13#include <aws/eks/model/Certificate.h>
14#include <aws/eks/model/ClusterHealth.h>
15#include <aws/eks/model/ClusterStatus.h>
16#include <aws/eks/model/ComputeConfigResponse.h>
17#include <aws/eks/model/ConnectorConfigResponse.h>
18#include <aws/eks/model/ControlPlaneScalingConfig.h>
19#include <aws/eks/model/EncryptionConfig.h>
20#include <aws/eks/model/Identity.h>
21#include <aws/eks/model/KubeApiServerConfigResponse.h>
22#include <aws/eks/model/KubeControllerManagerConfigResponse.h>
23#include <aws/eks/model/KubeSchedulerConfigResponse.h>
24#include <aws/eks/model/KubernetesNetworkConfigResponse.h>
25#include <aws/eks/model/Logging.h>
26#include <aws/eks/model/OutpostConfigResponse.h>
27#include <aws/eks/model/RemoteNetworkConfigResponse.h>
28#include <aws/eks/model/StorageConfigResponse.h>
29#include <aws/eks/model/UpgradePolicyResponse.h>
30#include <aws/eks/model/VpcConfigResponse.h>
31#include <aws/eks/model/ZonalShiftConfigResponse.h>
63 template <
typename NameT = Aws::String>
65 m_nameHasBeenSet =
true;
66 m_name = std::forward<NameT>(value);
68 template <
typename NameT = Aws::String>
70 SetName(std::forward<NameT>(value));
81 template <
typename ArnT = Aws::String>
83 m_arnHasBeenSet =
true;
84 m_arn = std::forward<ArnT>(value);
86 template <
typename ArnT = Aws::String>
88 SetArn(std::forward<ArnT>(value));
99 template <
typename CreatedAtT = Aws::Utils::DateTime>
101 m_createdAtHasBeenSet =
true;
102 m_createdAt = std::forward<CreatedAtT>(value);
104 template <
typename CreatedAtT = Aws::Utils::DateTime>
117 template <
typename VersionT = Aws::String>
119 m_versionHasBeenSet =
true;
120 m_version = std::forward<VersionT>(value);
122 template <
typename VersionT = Aws::String>
135 template <
typename Endpo
intT = Aws::String>
137 m_endpointHasBeenSet =
true;
138 m_endpoint = std::forward<EndpointT>(value);
140 template <
typename Endpo
intT = Aws::String>
155 template <
typename RoleArnT = Aws::String>
157 m_roleArnHasBeenSet =
true;
158 m_roleArn = std::forward<RoleArnT>(value);
160 template <
typename RoleArnT = Aws::String>
179 template <
typename ResourcesVpcConfigT = VpcConfigResponse>
181 m_resourcesVpcConfigHasBeenSet =
true;
182 m_resourcesVpcConfig = std::forward<ResourcesVpcConfigT>(value);
184 template <
typename ResourcesVpcConfigT = VpcConfigResponse>
197 template <
typename KubernetesNetworkConfigT = KubernetesNetworkConfigResponse>
199 m_kubernetesNetworkConfigHasBeenSet =
true;
200 m_kubernetesNetworkConfig = std::forward<KubernetesNetworkConfigT>(value);
202 template <
typename KubernetesNetworkConfigT = KubernetesNetworkConfigResponse>
215 template <
typename LoggingT = Logging>
217 m_loggingHasBeenSet =
true;
218 m_logging = std::forward<LoggingT>(value);
220 template <
typename LoggingT = Logging>
233 template <
typename IdentityT = Identity>
235 m_identityHasBeenSet =
true;
236 m_identity = std::forward<IdentityT>(value);
238 template <
typename IdentityT = Identity>
252 m_statusHasBeenSet =
true;
267 template <
typename CertificateAuthorityT = Certificate>
269 m_certificateAuthorityHasBeenSet =
true;
270 m_certificateAuthority = std::forward<CertificateAuthorityT>(value);
272 template <
typename CertificateAuthorityT = Certificate>
286 template <
typename ClientRequestTokenT = Aws::String>
288 m_clientRequestTokenHasBeenSet =
true;
289 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
291 template <
typename ClientRequestTokenT = Aws::String>
311 template <
typename PlatformVersionT = Aws::String>
313 m_platformVersionHasBeenSet =
true;
314 m_platformVersion = std::forward<PlatformVersionT>(value);
316 template <
typename PlatformVersionT = Aws::String>
331 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
333 m_tagsHasBeenSet =
true;
334 m_tags = std::forward<TagsT>(value);
336 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
338 SetTags(std::forward<TagsT>(value));
341 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
343 m_tagsHasBeenSet =
true;
344 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
355 template <
typename EncryptionConfigT = Aws::Vector<EncryptionConfig>>
357 m_encryptionConfigHasBeenSet =
true;
358 m_encryptionConfig = std::forward<EncryptionConfigT>(value);
360 template <
typename EncryptionConfigT = Aws::Vector<EncryptionConfig>>
365 template <
typename EncryptionConfigT = EncryptionConfig>
367 m_encryptionConfigHasBeenSet =
true;
368 m_encryptionConfig.emplace_back(std::forward<EncryptionConfigT>(value));
379 template <
typename ConnectorConfigT = ConnectorConfigResponse>
381 m_connectorConfigHasBeenSet =
true;
382 m_connectorConfig = std::forward<ConnectorConfigT>(value);
384 template <
typename ConnectorConfigT = ConnectorConfigResponse>
399 template <
typename IdT = Aws::String>
401 m_idHasBeenSet =
true;
402 m_id = std::forward<IdT>(value);
404 template <
typename IdT = Aws::String>
406 SetId(std::forward<IdT>(value));
417 template <
typename HealthT = ClusterHealth>
419 m_healthHasBeenSet =
true;
420 m_health = std::forward<HealthT>(value);
422 template <
typename HealthT = ClusterHealth>
437 template <
typename OutpostConfigT = OutpostConfigResponse>
439 m_outpostConfigHasBeenSet =
true;
440 m_outpostConfig = std::forward<OutpostConfigT>(value);
442 template <
typename OutpostConfigT = OutpostConfigResponse>
455 template <
typename AccessConfigT = AccessConfigResponse>
457 m_accessConfigHasBeenSet =
true;
458 m_accessConfig = std::forward<AccessConfigT>(value);
460 template <
typename AccessConfigT = AccessConfigResponse>
476 template <
typename UpgradePolicyT = UpgradePolicyResponse>
478 m_upgradePolicyHasBeenSet =
true;
479 m_upgradePolicy = std::forward<UpgradePolicyT>(value);
481 template <
typename UpgradePolicyT = UpgradePolicyResponse>
494 template <
typename ZonalShiftConfigT = ZonalShiftConfigResponse>
496 m_zonalShiftConfigHasBeenSet =
true;
497 m_zonalShiftConfig = std::forward<ZonalShiftConfigT>(value);
499 template <
typename ZonalShiftConfigT = ZonalShiftConfigResponse>
513 template <
typename RemoteNetworkConfigT = RemoteNetworkConfigResponse>
515 m_remoteNetworkConfigHasBeenSet =
true;
516 m_remoteNetworkConfig = std::forward<RemoteNetworkConfigT>(value);
518 template <
typename RemoteNetworkConfigT = RemoteNetworkConfigResponse>
535 template <
typename ComputeConfigT = ComputeConfigResponse>
537 m_computeConfigHasBeenSet =
true;
538 m_computeConfig = std::forward<ComputeConfigT>(value);
540 template <
typename ComputeConfigT = ComputeConfigResponse>
557 template <
typename StorageConfigT = StorageConfigResponse>
559 m_storageConfigHasBeenSet =
true;
560 m_storageConfig = std::forward<StorageConfigT>(value);
562 template <
typename StorageConfigT = StorageConfigResponse>
580 m_deletionProtectionHasBeenSet =
true;
581 m_deletionProtection = value;
596 template <
typename ControlPlaneScalingConfigT = ControlPlaneScalingConfig>
598 m_controlPlaneScalingConfigHasBeenSet =
true;
599 m_controlPlaneScalingConfig = std::forward<ControlPlaneScalingConfigT>(value);
601 template <
typename ControlPlaneScalingConfigT = ControlPlaneScalingConfig>
614 template <
typename KubeApiServerConfigT = KubeApiServerConfigResponse>
616 m_kubeApiServerConfigHasBeenSet =
true;
617 m_kubeApiServerConfig = std::forward<KubeApiServerConfigT>(value);
619 template <
typename KubeApiServerConfigT = KubeApiServerConfigResponse>
632 template <
typename KubeSchedulerConfigT = KubeSchedulerConfigResponse>
634 m_kubeSchedulerConfigHasBeenSet =
true;
635 m_kubeSchedulerConfig = std::forward<KubeSchedulerConfigT>(value);
637 template <
typename KubeSchedulerConfigT = KubeSchedulerConfigResponse>
650 template <
typename KubeControllerManagerConfigT = KubeControllerManagerConfigResponse>
652 m_kubeControllerManagerConfigHasBeenSet =
true;
653 m_kubeControllerManagerConfig = std::forward<KubeControllerManagerConfigT>(value);
655 template <
typename KubeControllerManagerConfigT = KubeControllerManagerConfigResponse>
674 VpcConfigResponse m_resourcesVpcConfig;
676 KubernetesNetworkConfigResponse m_kubernetesNetworkConfig;
684 Certificate m_certificateAuthority;
694 ConnectorConfigResponse m_connectorConfig;
698 ClusterHealth m_health;
700 OutpostConfigResponse m_outpostConfig;
702 AccessConfigResponse m_accessConfig;
704 UpgradePolicyResponse m_upgradePolicy;
706 ZonalShiftConfigResponse m_zonalShiftConfig;
708 RemoteNetworkConfigResponse m_remoteNetworkConfig;
710 ComputeConfigResponse m_computeConfig;
712 StorageConfigResponse m_storageConfig;
714 bool m_deletionProtection{
false};
716 ControlPlaneScalingConfig m_controlPlaneScalingConfig;
718 KubeApiServerConfigResponse m_kubeApiServerConfig;
720 KubeSchedulerConfigResponse m_kubeSchedulerConfig;
722 KubeControllerManagerConfigResponse m_kubeControllerManagerConfig;
723 bool m_nameHasBeenSet =
false;
724 bool m_arnHasBeenSet =
false;
725 bool m_createdAtHasBeenSet =
false;
726 bool m_versionHasBeenSet =
false;
727 bool m_endpointHasBeenSet =
false;
728 bool m_roleArnHasBeenSet =
false;
729 bool m_resourcesVpcConfigHasBeenSet =
false;
730 bool m_kubernetesNetworkConfigHasBeenSet =
false;
731 bool m_loggingHasBeenSet =
false;
732 bool m_identityHasBeenSet =
false;
733 bool m_statusHasBeenSet =
false;
734 bool m_certificateAuthorityHasBeenSet =
false;
735 bool m_clientRequestTokenHasBeenSet =
false;
736 bool m_platformVersionHasBeenSet =
false;
737 bool m_tagsHasBeenSet =
false;
738 bool m_encryptionConfigHasBeenSet =
false;
739 bool m_connectorConfigHasBeenSet =
false;
740 bool m_idHasBeenSet =
false;
741 bool m_healthHasBeenSet =
false;
742 bool m_outpostConfigHasBeenSet =
false;
743 bool m_accessConfigHasBeenSet =
false;
744 bool m_upgradePolicyHasBeenSet =
false;
745 bool m_zonalShiftConfigHasBeenSet =
false;
746 bool m_remoteNetworkConfigHasBeenSet =
false;
747 bool m_computeConfigHasBeenSet =
false;
748 bool m_storageConfigHasBeenSet =
false;
749 bool m_deletionProtectionHasBeenSet =
false;
750 bool m_controlPlaneScalingConfigHasBeenSet =
false;
751 bool m_kubeApiServerConfigHasBeenSet =
false;
752 bool m_kubeSchedulerConfigHasBeenSet =
false;
753 bool m_kubeControllerManagerConfigHasBeenSet =
false;
const Aws::String & GetEndpoint() const
void SetName(NameT &&value)
void SetEncryptionConfig(EncryptionConfigT &&value)
bool KubernetesNetworkConfigHasBeenSet() const
bool ConnectorConfigHasBeenSet() const
AWS_EKS_API Aws::Utils::Json::JsonValue Jsonize() const
Cluster & WithLogging(LoggingT &&value)
Cluster & WithStorageConfig(StorageConfigT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetCertificateAuthority(CertificateAuthorityT &&value)
Cluster & WithIdentity(IdentityT &&value)
Cluster & WithRemoteNetworkConfig(RemoteNetworkConfigT &&value)
const KubeControllerManagerConfigResponse & GetKubeControllerManagerConfig() const
void SetComputeConfig(ComputeConfigT &&value)
void SetClientRequestToken(ClientRequestTokenT &&value)
bool GetDeletionProtection() const
Cluster & WithKubeControllerManagerConfig(KubeControllerManagerConfigT &&value)
const Logging & GetLogging() const
Cluster & WithEndpoint(EndpointT &&value)
Cluster & WithOutpostConfig(OutpostConfigT &&value)
void SetHealth(HealthT &&value)
Cluster & WithZonalShiftConfig(ZonalShiftConfigT &&value)
Cluster & WithCertificateAuthority(CertificateAuthorityT &&value)
bool AccessConfigHasBeenSet() const
const UpgradePolicyResponse & GetUpgradePolicy() const
bool RoleArnHasBeenSet() const
Cluster & AddEncryptionConfig(EncryptionConfigT &&value)
void SetLogging(LoggingT &&value)
bool StorageConfigHasBeenSet() const
const VpcConfigResponse & GetResourcesVpcConfig() const
const ConnectorConfigResponse & GetConnectorConfig() const
bool DeletionProtectionHasBeenSet() const
Cluster & WithId(IdT &&value)
void SetKubeApiServerConfig(KubeApiServerConfigT &&value)
const Aws::Utils::DateTime & GetCreatedAt() const
bool ControlPlaneScalingConfigHasBeenSet() const
const KubeApiServerConfigResponse & GetKubeApiServerConfig() const
bool IdHasBeenSet() const
const OutpostConfigResponse & GetOutpostConfig() const
bool UpgradePolicyHasBeenSet() const
const Aws::String & GetName() const
const Identity & GetIdentity() const
ClusterStatus GetStatus() const
bool ArnHasBeenSet() const
bool RemoteNetworkConfigHasBeenSet() const
const Aws::String & GetId() const
bool CreatedAtHasBeenSet() const
Cluster & WithDeletionProtection(bool value)
Cluster & WithPlatformVersion(PlatformVersionT &&value)
void SetStatus(ClusterStatus value)
Cluster & WithArn(ArnT &&value)
Cluster & WithVersion(VersionT &&value)
Cluster & WithClientRequestToken(ClientRequestTokenT &&value)
void SetArn(ArnT &&value)
void SetUpgradePolicy(UpgradePolicyT &&value)
Cluster & WithControlPlaneScalingConfig(ControlPlaneScalingConfigT &&value)
void SetIdentity(IdentityT &&value)
void SetConnectorConfig(ConnectorConfigT &&value)
Cluster & WithComputeConfig(ComputeConfigT &&value)
Cluster & WithTags(TagsT &&value)
void SetEndpoint(EndpointT &&value)
Cluster & WithCreatedAt(CreatedAtT &&value)
bool IdentityHasBeenSet() const
void SetResourcesVpcConfig(ResourcesVpcConfigT &&value)
void SetTags(TagsT &&value)
const ClusterHealth & GetHealth() const
void SetAccessConfig(AccessConfigT &&value)
bool HealthHasBeenSet() const
const Aws::String & GetRoleArn() const
bool ClientRequestTokenHasBeenSet() const
void SetKubeSchedulerConfig(KubeSchedulerConfigT &&value)
Cluster & WithConnectorConfig(ConnectorConfigT &&value)
bool LoggingHasBeenSet() const
bool StatusHasBeenSet() const
void SetVersion(VersionT &&value)
const KubeSchedulerConfigResponse & GetKubeSchedulerConfig() const
Cluster & WithKubeSchedulerConfig(KubeSchedulerConfigT &&value)
const Aws::String & GetClientRequestToken() const
const Aws::String & GetPlatformVersion() const
bool CertificateAuthorityHasBeenSet() const
Cluster & AddTags(TagsKeyT &&key, TagsValueT &&value)
Cluster & WithKubernetesNetworkConfig(KubernetesNetworkConfigT &&value)
bool TagsHasBeenSet() const
const ZonalShiftConfigResponse & GetZonalShiftConfig() const
Cluster & WithEncryptionConfig(EncryptionConfigT &&value)
bool ResourcesVpcConfigHasBeenSet() const
const Aws::Vector< EncryptionConfig > & GetEncryptionConfig() const
void SetKubeControllerManagerConfig(KubeControllerManagerConfigT &&value)
const Certificate & GetCertificateAuthority() const
const KubernetesNetworkConfigResponse & GetKubernetesNetworkConfig() const
Cluster & WithRoleArn(RoleArnT &&value)
Cluster & WithHealth(HealthT &&value)
const AccessConfigResponse & GetAccessConfig() const
const RemoteNetworkConfigResponse & GetRemoteNetworkConfig() const
bool OutpostConfigHasBeenSet() const
Cluster & WithAccessConfig(AccessConfigT &&value)
void SetControlPlaneScalingConfig(ControlPlaneScalingConfigT &&value)
void SetCreatedAt(CreatedAtT &&value)
void SetZonalShiftConfig(ZonalShiftConfigT &&value)
bool PlatformVersionHasBeenSet() const
void SetRoleArn(RoleArnT &&value)
const StorageConfigResponse & GetStorageConfig() const
Cluster & WithKubeApiServerConfig(KubeApiServerConfigT &&value)
void SetPlatformVersion(PlatformVersionT &&value)
Cluster & WithName(NameT &&value)
AWS_EKS_API Cluster()=default
void SetDeletionProtection(bool value)
bool EncryptionConfigHasBeenSet() const
const ComputeConfigResponse & GetComputeConfig() const
const Aws::String & GetArn() const
bool KubeControllerManagerConfigHasBeenSet() const
Cluster & WithResourcesVpcConfig(ResourcesVpcConfigT &&value)
void SetRemoteNetworkConfig(RemoteNetworkConfigT &&value)
AWS_EKS_API Cluster & operator=(Aws::Utils::Json::JsonView jsonValue)
bool ComputeConfigHasBeenSet() const
const Aws::String & GetVersion() const
void SetKubernetesNetworkConfig(KubernetesNetworkConfigT &&value)
Cluster & WithStatus(ClusterStatus value)
Cluster & WithUpgradePolicy(UpgradePolicyT &&value)
AWS_EKS_API Cluster(Aws::Utils::Json::JsonView jsonValue)
bool KubeSchedulerConfigHasBeenSet() const
void SetStorageConfig(StorageConfigT &&value)
const ControlPlaneScalingConfig & GetControlPlaneScalingConfig() const
bool ZonalShiftConfigHasBeenSet() const
bool VersionHasBeenSet() const
bool EndpointHasBeenSet() const
bool KubeApiServerConfigHasBeenSet() const
bool NameHasBeenSet() const
void SetOutpostConfig(OutpostConfigT &&value)
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
Aws::Utils::Json::JsonValue JsonValue