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

The target configuration.

See Also:

AWS * API Reference

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

A log target

*/ inline const LogTarget& GetLogTarget() const{ return m_logTarget; } /** *

A log target

*/ inline bool LogTargetHasBeenSet() const { return m_logTargetHasBeenSet; } /** *

A log target

*/ inline void SetLogTarget(const LogTarget& value) { m_logTargetHasBeenSet = true; m_logTarget = value; } /** *

A log target

*/ inline void SetLogTarget(LogTarget&& value) { m_logTargetHasBeenSet = true; m_logTarget = std::move(value); } /** *

A log target

*/ inline LogTargetConfiguration& WithLogTarget(const LogTarget& value) { SetLogTarget(value); return *this;} /** *

A log target

*/ inline LogTargetConfiguration& WithLogTarget(LogTarget&& value) { SetLogTarget(std::move(value)); return *this;} /** *

The logging level.

*/ inline const LogLevel& GetLogLevel() const{ return m_logLevel; } /** *

The logging level.

*/ inline bool LogLevelHasBeenSet() const { return m_logLevelHasBeenSet; } /** *

The logging level.

*/ inline void SetLogLevel(const LogLevel& value) { m_logLevelHasBeenSet = true; m_logLevel = value; } /** *

The logging level.

*/ inline void SetLogLevel(LogLevel&& value) { m_logLevelHasBeenSet = true; m_logLevel = std::move(value); } /** *

The logging level.

*/ inline LogTargetConfiguration& WithLogLevel(const LogLevel& value) { SetLogLevel(value); return *this;} /** *

The logging level.

*/ inline LogTargetConfiguration& WithLogLevel(LogLevel&& value) { SetLogLevel(std::move(value)); return *this;} private: LogTarget m_logTarget; bool m_logTargetHasBeenSet = false; LogLevel m_logLevel; bool m_logLevelHasBeenSet = false; }; } // namespace Model } // namespace IoT } // namespace Aws