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/lexv2-models/LexModelsV2_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <utility> 10 11 namespace Aws 12 { 13 namespace Utils 14 { 15 namespace Json 16 { 17 class JsonValue; 18 class JsonView; 19 } // namespace Json 20 } // namespace Utils 21 namespace LexModelsV2 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>The Amazon CloudWatch Logs log group where the text and metadata logs are 28 * delivered. The log group must exist before you enable logging.</p><p><h3>See 29 * Also:</h3> <a 30 * href="http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/CloudWatchLogGroupLogDestination">AWS 31 * API Reference</a></p> 32 */ 33 class AWS_LEXMODELSV2_API CloudWatchLogGroupLogDestination 34 { 35 public: 36 CloudWatchLogGroupLogDestination(); 37 CloudWatchLogGroupLogDestination(Aws::Utils::Json::JsonView jsonValue); 38 CloudWatchLogGroupLogDestination& operator=(Aws::Utils::Json::JsonView jsonValue); 39 Aws::Utils::Json::JsonValue Jsonize() const; 40 41 42 /** 43 * <p>The Amazon Resource Name (ARN) of the log group where text and metadata logs 44 * are delivered.</p> 45 */ GetCloudWatchLogGroupArn()46 inline const Aws::String& GetCloudWatchLogGroupArn() const{ return m_cloudWatchLogGroupArn; } 47 48 /** 49 * <p>The Amazon Resource Name (ARN) of the log group where text and metadata logs 50 * are delivered.</p> 51 */ CloudWatchLogGroupArnHasBeenSet()52 inline bool CloudWatchLogGroupArnHasBeenSet() const { return m_cloudWatchLogGroupArnHasBeenSet; } 53 54 /** 55 * <p>The Amazon Resource Name (ARN) of the log group where text and metadata logs 56 * are delivered.</p> 57 */ SetCloudWatchLogGroupArn(const Aws::String & value)58 inline void SetCloudWatchLogGroupArn(const Aws::String& value) { m_cloudWatchLogGroupArnHasBeenSet = true; m_cloudWatchLogGroupArn = value; } 59 60 /** 61 * <p>The Amazon Resource Name (ARN) of the log group where text and metadata logs 62 * are delivered.</p> 63 */ SetCloudWatchLogGroupArn(Aws::String && value)64 inline void SetCloudWatchLogGroupArn(Aws::String&& value) { m_cloudWatchLogGroupArnHasBeenSet = true; m_cloudWatchLogGroupArn = std::move(value); } 65 66 /** 67 * <p>The Amazon Resource Name (ARN) of the log group where text and metadata logs 68 * are delivered.</p> 69 */ SetCloudWatchLogGroupArn(const char * value)70 inline void SetCloudWatchLogGroupArn(const char* value) { m_cloudWatchLogGroupArnHasBeenSet = true; m_cloudWatchLogGroupArn.assign(value); } 71 72 /** 73 * <p>The Amazon Resource Name (ARN) of the log group where text and metadata logs 74 * are delivered.</p> 75 */ WithCloudWatchLogGroupArn(const Aws::String & value)76 inline CloudWatchLogGroupLogDestination& WithCloudWatchLogGroupArn(const Aws::String& value) { SetCloudWatchLogGroupArn(value); return *this;} 77 78 /** 79 * <p>The Amazon Resource Name (ARN) of the log group where text and metadata logs 80 * are delivered.</p> 81 */ WithCloudWatchLogGroupArn(Aws::String && value)82 inline CloudWatchLogGroupLogDestination& WithCloudWatchLogGroupArn(Aws::String&& value) { SetCloudWatchLogGroupArn(std::move(value)); return *this;} 83 84 /** 85 * <p>The Amazon Resource Name (ARN) of the log group where text and metadata logs 86 * are delivered.</p> 87 */ WithCloudWatchLogGroupArn(const char * value)88 inline CloudWatchLogGroupLogDestination& WithCloudWatchLogGroupArn(const char* value) { SetCloudWatchLogGroupArn(value); return *this;} 89 90 91 /** 92 * <p>The prefix of the log stream name within the log group that you specified 93 * </p> 94 */ GetLogPrefix()95 inline const Aws::String& GetLogPrefix() const{ return m_logPrefix; } 96 97 /** 98 * <p>The prefix of the log stream name within the log group that you specified 99 * </p> 100 */ LogPrefixHasBeenSet()101 inline bool LogPrefixHasBeenSet() const { return m_logPrefixHasBeenSet; } 102 103 /** 104 * <p>The prefix of the log stream name within the log group that you specified 105 * </p> 106 */ SetLogPrefix(const Aws::String & value)107 inline void SetLogPrefix(const Aws::String& value) { m_logPrefixHasBeenSet = true; m_logPrefix = value; } 108 109 /** 110 * <p>The prefix of the log stream name within the log group that you specified 111 * </p> 112 */ SetLogPrefix(Aws::String && value)113 inline void SetLogPrefix(Aws::String&& value) { m_logPrefixHasBeenSet = true; m_logPrefix = std::move(value); } 114 115 /** 116 * <p>The prefix of the log stream name within the log group that you specified 117 * </p> 118 */ SetLogPrefix(const char * value)119 inline void SetLogPrefix(const char* value) { m_logPrefixHasBeenSet = true; m_logPrefix.assign(value); } 120 121 /** 122 * <p>The prefix of the log stream name within the log group that you specified 123 * </p> 124 */ WithLogPrefix(const Aws::String & value)125 inline CloudWatchLogGroupLogDestination& WithLogPrefix(const Aws::String& value) { SetLogPrefix(value); return *this;} 126 127 /** 128 * <p>The prefix of the log stream name within the log group that you specified 129 * </p> 130 */ WithLogPrefix(Aws::String && value)131 inline CloudWatchLogGroupLogDestination& WithLogPrefix(Aws::String&& value) { SetLogPrefix(std::move(value)); return *this;} 132 133 /** 134 * <p>The prefix of the log stream name within the log group that you specified 135 * </p> 136 */ WithLogPrefix(const char * value)137 inline CloudWatchLogGroupLogDestination& WithLogPrefix(const char* value) { SetLogPrefix(value); return *this;} 138 139 private: 140 141 Aws::String m_cloudWatchLogGroupArn; 142 bool m_cloudWatchLogGroupArnHasBeenSet; 143 144 Aws::String m_logPrefix; 145 bool m_logPrefixHasBeenSet; 146 }; 147 148 } // namespace Model 149 } // namespace LexModelsV2 150 } // namespace Aws 151