1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/iotanalytics/IoTAnalytics_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/iotanalytics/model/LoggingLevel.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Json 17 { 18 class JsonValue; 19 class JsonView; 20 } // namespace Json 21 } // namespace Utils 22 namespace IoTAnalytics 23 { 24 namespace Model 25 { 26 27 /** 28 * <p>Information about logging options.</p><p><h3>See Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/iotanalytics-2017-11-27/LoggingOptions">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_IOTANALYTICS_API LoggingOptions 33 { 34 public: 35 LoggingOptions(); 36 LoggingOptions(Aws::Utils::Json::JsonView jsonValue); 37 LoggingOptions& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p>The ARN of the role that grants permission to IoT Analytics to perform 43 * logging.</p> 44 */ GetRoleArn()45 inline const Aws::String& GetRoleArn() const{ return m_roleArn; } 46 47 /** 48 * <p>The ARN of the role that grants permission to IoT Analytics to perform 49 * logging.</p> 50 */ RoleArnHasBeenSet()51 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } 52 53 /** 54 * <p>The ARN of the role that grants permission to IoT Analytics to perform 55 * logging.</p> 56 */ SetRoleArn(const Aws::String & value)57 inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } 58 59 /** 60 * <p>The ARN of the role that grants permission to IoT Analytics to perform 61 * logging.</p> 62 */ SetRoleArn(Aws::String && value)63 inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } 64 65 /** 66 * <p>The ARN of the role that grants permission to IoT Analytics to perform 67 * logging.</p> 68 */ SetRoleArn(const char * value)69 inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } 70 71 /** 72 * <p>The ARN of the role that grants permission to IoT Analytics to perform 73 * logging.</p> 74 */ WithRoleArn(const Aws::String & value)75 inline LoggingOptions& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} 76 77 /** 78 * <p>The ARN of the role that grants permission to IoT Analytics to perform 79 * logging.</p> 80 */ WithRoleArn(Aws::String && value)81 inline LoggingOptions& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} 82 83 /** 84 * <p>The ARN of the role that grants permission to IoT Analytics to perform 85 * logging.</p> 86 */ WithRoleArn(const char * value)87 inline LoggingOptions& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} 88 89 90 /** 91 * <p>The logging level. Currently, only ERROR is supported.</p> 92 */ GetLevel()93 inline const LoggingLevel& GetLevel() const{ return m_level; } 94 95 /** 96 * <p>The logging level. Currently, only ERROR is supported.</p> 97 */ LevelHasBeenSet()98 inline bool LevelHasBeenSet() const { return m_levelHasBeenSet; } 99 100 /** 101 * <p>The logging level. Currently, only ERROR is supported.</p> 102 */ SetLevel(const LoggingLevel & value)103 inline void SetLevel(const LoggingLevel& value) { m_levelHasBeenSet = true; m_level = value; } 104 105 /** 106 * <p>The logging level. Currently, only ERROR is supported.</p> 107 */ SetLevel(LoggingLevel && value)108 inline void SetLevel(LoggingLevel&& value) { m_levelHasBeenSet = true; m_level = std::move(value); } 109 110 /** 111 * <p>The logging level. Currently, only ERROR is supported.</p> 112 */ WithLevel(const LoggingLevel & value)113 inline LoggingOptions& WithLevel(const LoggingLevel& value) { SetLevel(value); return *this;} 114 115 /** 116 * <p>The logging level. Currently, only ERROR is supported.</p> 117 */ WithLevel(LoggingLevel && value)118 inline LoggingOptions& WithLevel(LoggingLevel&& value) { SetLevel(std::move(value)); return *this;} 119 120 121 /** 122 * <p>If true, logging is enabled for IoT Analytics.</p> 123 */ GetEnabled()124 inline bool GetEnabled() const{ return m_enabled; } 125 126 /** 127 * <p>If true, logging is enabled for IoT Analytics.</p> 128 */ EnabledHasBeenSet()129 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; } 130 131 /** 132 * <p>If true, logging is enabled for IoT Analytics.</p> 133 */ SetEnabled(bool value)134 inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; } 135 136 /** 137 * <p>If true, logging is enabled for IoT Analytics.</p> 138 */ WithEnabled(bool value)139 inline LoggingOptions& WithEnabled(bool value) { SetEnabled(value); return *this;} 140 141 private: 142 143 Aws::String m_roleArn; 144 bool m_roleArnHasBeenSet; 145 146 LoggingLevel m_level; 147 bool m_levelHasBeenSet; 148 149 bool m_enabled; 150 bool m_enabledHasBeenSet; 151 }; 152 153 } // namespace Model 154 } // namespace IoTAnalytics 155 } // namespace Aws 156