/** * 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 { /** *

An object representing the enabled or disabled Kubernetes control plane logs * for your cluster.

See Also:

AWS API * Reference

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

The available cluster control plane log types.

*/ inline const Aws::Vector& GetTypes() const{ return m_types; } /** *

The available cluster control plane log types.

*/ inline bool TypesHasBeenSet() const { return m_typesHasBeenSet; } /** *

The available cluster control plane log types.

*/ inline void SetTypes(const Aws::Vector& value) { m_typesHasBeenSet = true; m_types = value; } /** *

The available cluster control plane log types.

*/ inline void SetTypes(Aws::Vector&& value) { m_typesHasBeenSet = true; m_types = std::move(value); } /** *

The available cluster control plane log types.

*/ inline LogSetup& WithTypes(const Aws::Vector& value) { SetTypes(value); return *this;} /** *

The available cluster control plane log types.

*/ inline LogSetup& WithTypes(Aws::Vector&& value) { SetTypes(std::move(value)); return *this;} /** *

The available cluster control plane log types.

*/ inline LogSetup& AddTypes(const LogType& value) { m_typesHasBeenSet = true; m_types.push_back(value); return *this; } /** *

The available cluster control plane log types.

*/ inline LogSetup& AddTypes(LogType&& value) { m_typesHasBeenSet = true; m_types.push_back(std::move(value)); return *this; } /** *

If a log type is enabled, that log type exports its control plane logs to * CloudWatch Logs. If a log type isn't enabled, that log type doesn't export its * control plane logs. Each individual log type can be enabled or disabled * independently.

*/ inline bool GetEnabled() const{ return m_enabled; } /** *

If a log type is enabled, that log type exports its control plane logs to * CloudWatch Logs. If a log type isn't enabled, that log type doesn't export its * control plane logs. Each individual log type can be enabled or disabled * independently.

*/ inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; } /** *

If a log type is enabled, that log type exports its control plane logs to * CloudWatch Logs. If a log type isn't enabled, that log type doesn't export its * control plane logs. Each individual log type can be enabled or disabled * independently.

*/ inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; } /** *

If a log type is enabled, that log type exports its control plane logs to * CloudWatch Logs. If a log type isn't enabled, that log type doesn't export its * control plane logs. Each individual log type can be enabled or disabled * independently.

*/ inline LogSetup& WithEnabled(bool value) { SetEnabled(value); return *this;} private: Aws::Vector m_types; bool m_typesHasBeenSet = false; bool m_enabled; bool m_enabledHasBeenSet = false; }; } // namespace Model } // namespace EKS } // namespace Aws