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

Describes the Amazon CloudWatch logging options for your delivery * stream.

See Also:

AWS * API Reference

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

Enables or disables CloudWatch logging.

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

Enables or disables CloudWatch logging.

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

Enables or disables CloudWatch logging.

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

Enables or disables CloudWatch logging.

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

The CloudWatch group name for logging. This value is required if CloudWatch * logging is enabled.

*/ inline const Aws::String& GetLogGroupName() const{ return m_logGroupName; } /** *

The CloudWatch group name for logging. This value is required if CloudWatch * logging is enabled.

*/ inline bool LogGroupNameHasBeenSet() const { return m_logGroupNameHasBeenSet; } /** *

The CloudWatch group name for logging. This value is required if CloudWatch * logging is enabled.

*/ inline void SetLogGroupName(const Aws::String& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; } /** *

The CloudWatch group name for logging. This value is required if CloudWatch * logging is enabled.

*/ inline void SetLogGroupName(Aws::String&& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = std::move(value); } /** *

The CloudWatch group name for logging. This value is required if CloudWatch * logging is enabled.

*/ inline void SetLogGroupName(const char* value) { m_logGroupNameHasBeenSet = true; m_logGroupName.assign(value); } /** *

The CloudWatch group name for logging. This value is required if CloudWatch * logging is enabled.

*/ inline CloudWatchLoggingOptions& WithLogGroupName(const Aws::String& value) { SetLogGroupName(value); return *this;} /** *

The CloudWatch group name for logging. This value is required if CloudWatch * logging is enabled.

*/ inline CloudWatchLoggingOptions& WithLogGroupName(Aws::String&& value) { SetLogGroupName(std::move(value)); return *this;} /** *

The CloudWatch group name for logging. This value is required if CloudWatch * logging is enabled.

*/ inline CloudWatchLoggingOptions& WithLogGroupName(const char* value) { SetLogGroupName(value); return *this;} /** *

The CloudWatch log stream name for logging. This value is required if * CloudWatch logging is enabled.

*/ inline const Aws::String& GetLogStreamName() const{ return m_logStreamName; } /** *

The CloudWatch log stream name for logging. This value is required if * CloudWatch logging is enabled.

*/ inline bool LogStreamNameHasBeenSet() const { return m_logStreamNameHasBeenSet; } /** *

The CloudWatch log stream name for logging. This value is required if * CloudWatch logging is enabled.

*/ inline void SetLogStreamName(const Aws::String& value) { m_logStreamNameHasBeenSet = true; m_logStreamName = value; } /** *

The CloudWatch log stream name for logging. This value is required if * CloudWatch logging is enabled.

*/ inline void SetLogStreamName(Aws::String&& value) { m_logStreamNameHasBeenSet = true; m_logStreamName = std::move(value); } /** *

The CloudWatch log stream name for logging. This value is required if * CloudWatch logging is enabled.

*/ inline void SetLogStreamName(const char* value) { m_logStreamNameHasBeenSet = true; m_logStreamName.assign(value); } /** *

The CloudWatch log stream name for logging. This value is required if * CloudWatch logging is enabled.

*/ inline CloudWatchLoggingOptions& WithLogStreamName(const Aws::String& value) { SetLogStreamName(value); return *this;} /** *

The CloudWatch log stream name for logging. This value is required if * CloudWatch logging is enabled.

*/ inline CloudWatchLoggingOptions& WithLogStreamName(Aws::String&& value) { SetLogStreamName(std::move(value)); return *this;} /** *

The CloudWatch log stream name for logging. This value is required if * CloudWatch logging is enabled.

*/ inline CloudWatchLoggingOptions& WithLogStreamName(const char* value) { SetLogStreamName(value); return *this;} private: bool m_enabled; bool m_enabledHasBeenSet; Aws::String m_logGroupName; bool m_logGroupNameHasBeenSet; Aws::String m_logStreamName; bool m_logStreamNameHasBeenSet; }; } // namespace Model } // namespace Firehose } // namespace Aws