/** * 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 OpsWorks { namespace Model { /** *

Describes the Amazon CloudWatch logs configuration for a layer.

See * Also:

AWS * API Reference

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

Whether CloudWatch Logs is enabled for a layer.

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

Whether CloudWatch Logs is enabled for a layer.

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

Whether CloudWatch Logs is enabled for a layer.

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

Whether CloudWatch Logs is enabled for a layer.

*/ inline CloudWatchLogsConfiguration& WithEnabled(bool value) { SetEnabled(value); return *this;} /** *

A list of configuration options for CloudWatch Logs.

*/ inline const Aws::Vector& GetLogStreams() const{ return m_logStreams; } /** *

A list of configuration options for CloudWatch Logs.

*/ inline bool LogStreamsHasBeenSet() const { return m_logStreamsHasBeenSet; } /** *

A list of configuration options for CloudWatch Logs.

*/ inline void SetLogStreams(const Aws::Vector& value) { m_logStreamsHasBeenSet = true; m_logStreams = value; } /** *

A list of configuration options for CloudWatch Logs.

*/ inline void SetLogStreams(Aws::Vector&& value) { m_logStreamsHasBeenSet = true; m_logStreams = std::move(value); } /** *

A list of configuration options for CloudWatch Logs.

*/ inline CloudWatchLogsConfiguration& WithLogStreams(const Aws::Vector& value) { SetLogStreams(value); return *this;} /** *

A list of configuration options for CloudWatch Logs.

*/ inline CloudWatchLogsConfiguration& WithLogStreams(Aws::Vector&& value) { SetLogStreams(std::move(value)); return *this;} /** *

A list of configuration options for CloudWatch Logs.

*/ inline CloudWatchLogsConfiguration& AddLogStreams(const CloudWatchLogsLogStream& value) { m_logStreamsHasBeenSet = true; m_logStreams.push_back(value); return *this; } /** *

A list of configuration options for CloudWatch Logs.

*/ inline CloudWatchLogsConfiguration& AddLogStreams(CloudWatchLogsLogStream&& value) { m_logStreamsHasBeenSet = true; m_logStreams.push_back(std::move(value)); return *this; } private: bool m_enabled; bool m_enabledHasBeenSet = false; Aws::Vector m_logStreams; bool m_logStreamsHasBeenSet = false; }; } // namespace Model } // namespace OpsWorks } // namespace Aws