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

Compatibility information.

See Also:

AWS * API Reference

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

The supported Kubernetes version of the cluster.

*/ inline const Aws::String& GetClusterVersion() const{ return m_clusterVersion; } /** *

The supported Kubernetes version of the cluster.

*/ inline bool ClusterVersionHasBeenSet() const { return m_clusterVersionHasBeenSet; } /** *

The supported Kubernetes version of the cluster.

*/ inline void SetClusterVersion(const Aws::String& value) { m_clusterVersionHasBeenSet = true; m_clusterVersion = value; } /** *

The supported Kubernetes version of the cluster.

*/ inline void SetClusterVersion(Aws::String&& value) { m_clusterVersionHasBeenSet = true; m_clusterVersion = std::move(value); } /** *

The supported Kubernetes version of the cluster.

*/ inline void SetClusterVersion(const char* value) { m_clusterVersionHasBeenSet = true; m_clusterVersion.assign(value); } /** *

The supported Kubernetes version of the cluster.

*/ inline Compatibility& WithClusterVersion(const Aws::String& value) { SetClusterVersion(value); return *this;} /** *

The supported Kubernetes version of the cluster.

*/ inline Compatibility& WithClusterVersion(Aws::String&& value) { SetClusterVersion(std::move(value)); return *this;} /** *

The supported Kubernetes version of the cluster.

*/ inline Compatibility& WithClusterVersion(const char* value) { SetClusterVersion(value); return *this;} /** *

The supported compute platform.

*/ inline const Aws::Vector& GetPlatformVersions() const{ return m_platformVersions; } /** *

The supported compute platform.

*/ inline bool PlatformVersionsHasBeenSet() const { return m_platformVersionsHasBeenSet; } /** *

The supported compute platform.

*/ inline void SetPlatformVersions(const Aws::Vector& value) { m_platformVersionsHasBeenSet = true; m_platformVersions = value; } /** *

The supported compute platform.

*/ inline void SetPlatformVersions(Aws::Vector&& value) { m_platformVersionsHasBeenSet = true; m_platformVersions = std::move(value); } /** *

The supported compute platform.

*/ inline Compatibility& WithPlatformVersions(const Aws::Vector& value) { SetPlatformVersions(value); return *this;} /** *

The supported compute platform.

*/ inline Compatibility& WithPlatformVersions(Aws::Vector&& value) { SetPlatformVersions(std::move(value)); return *this;} /** *

The supported compute platform.

*/ inline Compatibility& AddPlatformVersions(const Aws::String& value) { m_platformVersionsHasBeenSet = true; m_platformVersions.push_back(value); return *this; } /** *

The supported compute platform.

*/ inline Compatibility& AddPlatformVersions(Aws::String&& value) { m_platformVersionsHasBeenSet = true; m_platformVersions.push_back(std::move(value)); return *this; } /** *

The supported compute platform.

*/ inline Compatibility& AddPlatformVersions(const char* value) { m_platformVersionsHasBeenSet = true; m_platformVersions.push_back(value); return *this; } /** *

The supported default version.

*/ inline bool GetDefaultVersion() const{ return m_defaultVersion; } /** *

The supported default version.

*/ inline bool DefaultVersionHasBeenSet() const { return m_defaultVersionHasBeenSet; } /** *

The supported default version.

*/ inline void SetDefaultVersion(bool value) { m_defaultVersionHasBeenSet = true; m_defaultVersion = value; } /** *

The supported default version.

*/ inline Compatibility& WithDefaultVersion(bool value) { SetDefaultVersion(value); return *this;} private: Aws::String m_clusterVersion; bool m_clusterVersionHasBeenSet = false; Aws::Vector m_platformVersions; bool m_platformVersionsHasBeenSet = false; bool m_defaultVersion; bool m_defaultVersionHasBeenSet = false; }; } // namespace Model } // namespace EKS } // namespace Aws