/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace EKS { namespace Model { /** *

An object representing the configuration of your local Amazon EKS cluster on * an Amazon Web Services Outpost. This API isn't available for Amazon EKS clusters * on the Amazon Web Services cloud.

See Also:

AWS * API Reference

*/ class OutpostConfigResponse { public: AWS_EKS_API OutpostConfigResponse(); AWS_EKS_API OutpostConfigResponse(Aws::Utils::Json::JsonView jsonValue); AWS_EKS_API OutpostConfigResponse& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_EKS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The ARN of the Outpost that you specified for use with your local Amazon EKS * cluster on Outposts.

*/ inline const Aws::Vector& GetOutpostArns() const{ return m_outpostArns; } /** *

The ARN of the Outpost that you specified for use with your local Amazon EKS * cluster on Outposts.

*/ inline bool OutpostArnsHasBeenSet() const { return m_outpostArnsHasBeenSet; } /** *

The ARN of the Outpost that you specified for use with your local Amazon EKS * cluster on Outposts.

*/ inline void SetOutpostArns(const Aws::Vector& value) { m_outpostArnsHasBeenSet = true; m_outpostArns = value; } /** *

The ARN of the Outpost that you specified for use with your local Amazon EKS * cluster on Outposts.

*/ inline void SetOutpostArns(Aws::Vector&& value) { m_outpostArnsHasBeenSet = true; m_outpostArns = std::move(value); } /** *

The ARN of the Outpost that you specified for use with your local Amazon EKS * cluster on Outposts.

*/ inline OutpostConfigResponse& WithOutpostArns(const Aws::Vector& value) { SetOutpostArns(value); return *this;} /** *

The ARN of the Outpost that you specified for use with your local Amazon EKS * cluster on Outposts.

*/ inline OutpostConfigResponse& WithOutpostArns(Aws::Vector&& value) { SetOutpostArns(std::move(value)); return *this;} /** *

The ARN of the Outpost that you specified for use with your local Amazon EKS * cluster on Outposts.

*/ inline OutpostConfigResponse& AddOutpostArns(const Aws::String& value) { m_outpostArnsHasBeenSet = true; m_outpostArns.push_back(value); return *this; } /** *

The ARN of the Outpost that you specified for use with your local Amazon EKS * cluster on Outposts.

*/ inline OutpostConfigResponse& AddOutpostArns(Aws::String&& value) { m_outpostArnsHasBeenSet = true; m_outpostArns.push_back(std::move(value)); return *this; } /** *

The ARN of the Outpost that you specified for use with your local Amazon EKS * cluster on Outposts.

*/ inline OutpostConfigResponse& AddOutpostArns(const char* value) { m_outpostArnsHasBeenSet = true; m_outpostArns.push_back(value); return *this; } /** *

The Amazon EC2 instance type used for the control plane. The instance type is * the same for all control plane instances.

*/ inline const Aws::String& GetControlPlaneInstanceType() const{ return m_controlPlaneInstanceType; } /** *

The Amazon EC2 instance type used for the control plane. The instance type is * the same for all control plane instances.

*/ inline bool ControlPlaneInstanceTypeHasBeenSet() const { return m_controlPlaneInstanceTypeHasBeenSet; } /** *

The Amazon EC2 instance type used for the control plane. The instance type is * the same for all control plane instances.

*/ inline void SetControlPlaneInstanceType(const Aws::String& value) { m_controlPlaneInstanceTypeHasBeenSet = true; m_controlPlaneInstanceType = value; } /** *

The Amazon EC2 instance type used for the control plane. The instance type is * the same for all control plane instances.

*/ inline void SetControlPlaneInstanceType(Aws::String&& value) { m_controlPlaneInstanceTypeHasBeenSet = true; m_controlPlaneInstanceType = std::move(value); } /** *

The Amazon EC2 instance type used for the control plane. The instance type is * the same for all control plane instances.

*/ inline void SetControlPlaneInstanceType(const char* value) { m_controlPlaneInstanceTypeHasBeenSet = true; m_controlPlaneInstanceType.assign(value); } /** *

The Amazon EC2 instance type used for the control plane. The instance type is * the same for all control plane instances.

*/ inline OutpostConfigResponse& WithControlPlaneInstanceType(const Aws::String& value) { SetControlPlaneInstanceType(value); return *this;} /** *

The Amazon EC2 instance type used for the control plane. The instance type is * the same for all control plane instances.

*/ inline OutpostConfigResponse& WithControlPlaneInstanceType(Aws::String&& value) { SetControlPlaneInstanceType(std::move(value)); return *this;} /** *

The Amazon EC2 instance type used for the control plane. The instance type is * the same for all control plane instances.

*/ inline OutpostConfigResponse& WithControlPlaneInstanceType(const char* value) { SetControlPlaneInstanceType(value); return *this;} /** *

An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.

*/ inline const ControlPlanePlacementResponse& GetControlPlanePlacement() const{ return m_controlPlanePlacement; } /** *

An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.

*/ inline bool ControlPlanePlacementHasBeenSet() const { return m_controlPlanePlacementHasBeenSet; } /** *

An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.

*/ inline void SetControlPlanePlacement(const ControlPlanePlacementResponse& value) { m_controlPlanePlacementHasBeenSet = true; m_controlPlanePlacement = value; } /** *

An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.

*/ inline void SetControlPlanePlacement(ControlPlanePlacementResponse&& value) { m_controlPlanePlacementHasBeenSet = true; m_controlPlanePlacement = std::move(value); } /** *

An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.

*/ inline OutpostConfigResponse& WithControlPlanePlacement(const ControlPlanePlacementResponse& value) { SetControlPlanePlacement(value); return *this;} /** *

An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.

*/ inline OutpostConfigResponse& WithControlPlanePlacement(ControlPlanePlacementResponse&& value) { SetControlPlanePlacement(std::move(value)); return *this;} private: Aws::Vector m_outpostArns; bool m_outpostArnsHasBeenSet = false; Aws::String m_controlPlaneInstanceType; bool m_controlPlaneInstanceTypeHasBeenSet = false; ControlPlanePlacementResponse m_controlPlanePlacement; bool m_controlPlanePlacementHasBeenSet = false; }; } // namespace Model } // namespace EKS } // namespace Aws