/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include namespace Aws { namespace EKS { namespace Model { /** */ class UpdateNodegroupConfigRequest : public EKSRequest { public: AWS_EKS_API UpdateNodegroupConfigRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "UpdateNodegroupConfig"; } AWS_EKS_API Aws::String SerializePayload() const override; /** *

The name of the Amazon EKS cluster that the managed node group resides * in.

*/ inline const Aws::String& GetClusterName() const{ return m_clusterName; } /** *

The name of the Amazon EKS cluster that the managed node group resides * in.

*/ inline bool ClusterNameHasBeenSet() const { return m_clusterNameHasBeenSet; } /** *

The name of the Amazon EKS cluster that the managed node group resides * in.

*/ inline void SetClusterName(const Aws::String& value) { m_clusterNameHasBeenSet = true; m_clusterName = value; } /** *

The name of the Amazon EKS cluster that the managed node group resides * in.

*/ inline void SetClusterName(Aws::String&& value) { m_clusterNameHasBeenSet = true; m_clusterName = std::move(value); } /** *

The name of the Amazon EKS cluster that the managed node group resides * in.

*/ inline void SetClusterName(const char* value) { m_clusterNameHasBeenSet = true; m_clusterName.assign(value); } /** *

The name of the Amazon EKS cluster that the managed node group resides * in.

*/ inline UpdateNodegroupConfigRequest& WithClusterName(const Aws::String& value) { SetClusterName(value); return *this;} /** *

The name of the Amazon EKS cluster that the managed node group resides * in.

*/ inline UpdateNodegroupConfigRequest& WithClusterName(Aws::String&& value) { SetClusterName(std::move(value)); return *this;} /** *

The name of the Amazon EKS cluster that the managed node group resides * in.

*/ inline UpdateNodegroupConfigRequest& WithClusterName(const char* value) { SetClusterName(value); return *this;} /** *

The name of the managed node group to update.

*/ inline const Aws::String& GetNodegroupName() const{ return m_nodegroupName; } /** *

The name of the managed node group to update.

*/ inline bool NodegroupNameHasBeenSet() const { return m_nodegroupNameHasBeenSet; } /** *

The name of the managed node group to update.

*/ inline void SetNodegroupName(const Aws::String& value) { m_nodegroupNameHasBeenSet = true; m_nodegroupName = value; } /** *

The name of the managed node group to update.

*/ inline void SetNodegroupName(Aws::String&& value) { m_nodegroupNameHasBeenSet = true; m_nodegroupName = std::move(value); } /** *

The name of the managed node group to update.

*/ inline void SetNodegroupName(const char* value) { m_nodegroupNameHasBeenSet = true; m_nodegroupName.assign(value); } /** *

The name of the managed node group to update.

*/ inline UpdateNodegroupConfigRequest& WithNodegroupName(const Aws::String& value) { SetNodegroupName(value); return *this;} /** *

The name of the managed node group to update.

*/ inline UpdateNodegroupConfigRequest& WithNodegroupName(Aws::String&& value) { SetNodegroupName(std::move(value)); return *this;} /** *

The name of the managed node group to update.

*/ inline UpdateNodegroupConfigRequest& WithNodegroupName(const char* value) { SetNodegroupName(value); return *this;} /** *

The Kubernetes labels to be applied to the nodes in the node group after the * update.

*/ inline const UpdateLabelsPayload& GetLabels() const{ return m_labels; } /** *

The Kubernetes labels to be applied to the nodes in the node group after the * update.

*/ inline bool LabelsHasBeenSet() const { return m_labelsHasBeenSet; } /** *

The Kubernetes labels to be applied to the nodes in the node group after the * update.

*/ inline void SetLabels(const UpdateLabelsPayload& value) { m_labelsHasBeenSet = true; m_labels = value; } /** *

The Kubernetes labels to be applied to the nodes in the node group after the * update.

*/ inline void SetLabels(UpdateLabelsPayload&& value) { m_labelsHasBeenSet = true; m_labels = std::move(value); } /** *

The Kubernetes labels to be applied to the nodes in the node group after the * update.

*/ inline UpdateNodegroupConfigRequest& WithLabels(const UpdateLabelsPayload& value) { SetLabels(value); return *this;} /** *

The Kubernetes labels to be applied to the nodes in the node group after the * update.

*/ inline UpdateNodegroupConfigRequest& WithLabels(UpdateLabelsPayload&& value) { SetLabels(std::move(value)); return *this;} /** *

The Kubernetes taints to be applied to the nodes in the node group after the * update. For more information, see Node * taints on managed node groups.

*/ inline const UpdateTaintsPayload& GetTaints() const{ return m_taints; } /** *

The Kubernetes taints to be applied to the nodes in the node group after the * update. For more information, see Node * taints on managed node groups.

*/ inline bool TaintsHasBeenSet() const { return m_taintsHasBeenSet; } /** *

The Kubernetes taints to be applied to the nodes in the node group after the * update. For more information, see Node * taints on managed node groups.

*/ inline void SetTaints(const UpdateTaintsPayload& value) { m_taintsHasBeenSet = true; m_taints = value; } /** *

The Kubernetes taints to be applied to the nodes in the node group after the * update. For more information, see Node * taints on managed node groups.

*/ inline void SetTaints(UpdateTaintsPayload&& value) { m_taintsHasBeenSet = true; m_taints = std::move(value); } /** *

The Kubernetes taints to be applied to the nodes in the node group after the * update. For more information, see Node * taints on managed node groups.

*/ inline UpdateNodegroupConfigRequest& WithTaints(const UpdateTaintsPayload& value) { SetTaints(value); return *this;} /** *

The Kubernetes taints to be applied to the nodes in the node group after the * update. For more information, see Node * taints on managed node groups.

*/ inline UpdateNodegroupConfigRequest& WithTaints(UpdateTaintsPayload&& value) { SetTaints(std::move(value)); return *this;} /** *

The scaling configuration details for the Auto Scaling group after the * update.

*/ inline const NodegroupScalingConfig& GetScalingConfig() const{ return m_scalingConfig; } /** *

The scaling configuration details for the Auto Scaling group after the * update.

*/ inline bool ScalingConfigHasBeenSet() const { return m_scalingConfigHasBeenSet; } /** *

The scaling configuration details for the Auto Scaling group after the * update.

*/ inline void SetScalingConfig(const NodegroupScalingConfig& value) { m_scalingConfigHasBeenSet = true; m_scalingConfig = value; } /** *

The scaling configuration details for the Auto Scaling group after the * update.

*/ inline void SetScalingConfig(NodegroupScalingConfig&& value) { m_scalingConfigHasBeenSet = true; m_scalingConfig = std::move(value); } /** *

The scaling configuration details for the Auto Scaling group after the * update.

*/ inline UpdateNodegroupConfigRequest& WithScalingConfig(const NodegroupScalingConfig& value) { SetScalingConfig(value); return *this;} /** *

The scaling configuration details for the Auto Scaling group after the * update.

*/ inline UpdateNodegroupConfigRequest& WithScalingConfig(NodegroupScalingConfig&& value) { SetScalingConfig(std::move(value)); return *this;} /** *

The node group update configuration.

*/ inline const NodegroupUpdateConfig& GetUpdateConfig() const{ return m_updateConfig; } /** *

The node group update configuration.

*/ inline bool UpdateConfigHasBeenSet() const { return m_updateConfigHasBeenSet; } /** *

The node group update configuration.

*/ inline void SetUpdateConfig(const NodegroupUpdateConfig& value) { m_updateConfigHasBeenSet = true; m_updateConfig = value; } /** *

The node group update configuration.

*/ inline void SetUpdateConfig(NodegroupUpdateConfig&& value) { m_updateConfigHasBeenSet = true; m_updateConfig = std::move(value); } /** *

The node group update configuration.

*/ inline UpdateNodegroupConfigRequest& WithUpdateConfig(const NodegroupUpdateConfig& value) { SetUpdateConfig(value); return *this;} /** *

The node group update configuration.

*/ inline UpdateNodegroupConfigRequest& WithUpdateConfig(NodegroupUpdateConfig&& value) { SetUpdateConfig(std::move(value)); return *this;} /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline const Aws::String& GetClientRequestToken() const{ return m_clientRequestToken; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline void SetClientRequestToken(const Aws::String& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = value; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline void SetClientRequestToken(Aws::String&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::move(value); } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline void SetClientRequestToken(const char* value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken.assign(value); } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline UpdateNodegroupConfigRequest& WithClientRequestToken(const Aws::String& value) { SetClientRequestToken(value); return *this;} /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline UpdateNodegroupConfigRequest& WithClientRequestToken(Aws::String&& value) { SetClientRequestToken(std::move(value)); return *this;} /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline UpdateNodegroupConfigRequest& WithClientRequestToken(const char* value) { SetClientRequestToken(value); return *this;} private: Aws::String m_clusterName; bool m_clusterNameHasBeenSet = false; Aws::String m_nodegroupName; bool m_nodegroupNameHasBeenSet = false; UpdateLabelsPayload m_labels; bool m_labelsHasBeenSet = false; UpdateTaintsPayload m_taints; bool m_taintsHasBeenSet = false; NodegroupScalingConfig m_scalingConfig; bool m_scalingConfigHasBeenSet = false; NodegroupUpdateConfig m_updateConfig; bool m_updateConfigHasBeenSet = false; Aws::String m_clientRequestToken; bool m_clientRequestTokenHasBeenSet = false; }; } // namespace Model } // namespace EKS } // namespace Aws