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/securityhub/SecurityHub_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 SecurityHub 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Data about a queue.</p><p><h3>See Also:</h3> <a 28 * href="http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsSqsQueueDetails">AWS 29 * API Reference</a></p> 30 */ 31 class AWS_SECURITYHUB_API AwsSqsQueueDetails 32 { 33 public: 34 AwsSqsQueueDetails(); 35 AwsSqsQueueDetails(Aws::Utils::Json::JsonView jsonValue); 36 AwsSqsQueueDetails& operator=(Aws::Utils::Json::JsonView jsonValue); 37 Aws::Utils::Json::JsonValue Jsonize() const; 38 39 40 /** 41 * <p>The length of time, in seconds, for which Amazon SQS can reuse a data key to 42 * encrypt or decrypt messages before calling KMS again.</p> 43 */ GetKmsDataKeyReusePeriodSeconds()44 inline int GetKmsDataKeyReusePeriodSeconds() const{ return m_kmsDataKeyReusePeriodSeconds; } 45 46 /** 47 * <p>The length of time, in seconds, for which Amazon SQS can reuse a data key to 48 * encrypt or decrypt messages before calling KMS again.</p> 49 */ KmsDataKeyReusePeriodSecondsHasBeenSet()50 inline bool KmsDataKeyReusePeriodSecondsHasBeenSet() const { return m_kmsDataKeyReusePeriodSecondsHasBeenSet; } 51 52 /** 53 * <p>The length of time, in seconds, for which Amazon SQS can reuse a data key to 54 * encrypt or decrypt messages before calling KMS again.</p> 55 */ SetKmsDataKeyReusePeriodSeconds(int value)56 inline void SetKmsDataKeyReusePeriodSeconds(int value) { m_kmsDataKeyReusePeriodSecondsHasBeenSet = true; m_kmsDataKeyReusePeriodSeconds = value; } 57 58 /** 59 * <p>The length of time, in seconds, for which Amazon SQS can reuse a data key to 60 * encrypt or decrypt messages before calling KMS again.</p> 61 */ WithKmsDataKeyReusePeriodSeconds(int value)62 inline AwsSqsQueueDetails& WithKmsDataKeyReusePeriodSeconds(int value) { SetKmsDataKeyReusePeriodSeconds(value); return *this;} 63 64 65 /** 66 * <p>The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS 67 * key.</p> 68 */ GetKmsMasterKeyId()69 inline const Aws::String& GetKmsMasterKeyId() const{ return m_kmsMasterKeyId; } 70 71 /** 72 * <p>The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS 73 * key.</p> 74 */ KmsMasterKeyIdHasBeenSet()75 inline bool KmsMasterKeyIdHasBeenSet() const { return m_kmsMasterKeyIdHasBeenSet; } 76 77 /** 78 * <p>The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS 79 * key.</p> 80 */ SetKmsMasterKeyId(const Aws::String & value)81 inline void SetKmsMasterKeyId(const Aws::String& value) { m_kmsMasterKeyIdHasBeenSet = true; m_kmsMasterKeyId = value; } 82 83 /** 84 * <p>The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS 85 * key.</p> 86 */ SetKmsMasterKeyId(Aws::String && value)87 inline void SetKmsMasterKeyId(Aws::String&& value) { m_kmsMasterKeyIdHasBeenSet = true; m_kmsMasterKeyId = std::move(value); } 88 89 /** 90 * <p>The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS 91 * key.</p> 92 */ SetKmsMasterKeyId(const char * value)93 inline void SetKmsMasterKeyId(const char* value) { m_kmsMasterKeyIdHasBeenSet = true; m_kmsMasterKeyId.assign(value); } 94 95 /** 96 * <p>The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS 97 * key.</p> 98 */ WithKmsMasterKeyId(const Aws::String & value)99 inline AwsSqsQueueDetails& WithKmsMasterKeyId(const Aws::String& value) { SetKmsMasterKeyId(value); return *this;} 100 101 /** 102 * <p>The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS 103 * key.</p> 104 */ WithKmsMasterKeyId(Aws::String && value)105 inline AwsSqsQueueDetails& WithKmsMasterKeyId(Aws::String&& value) { SetKmsMasterKeyId(std::move(value)); return *this;} 106 107 /** 108 * <p>The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS 109 * key.</p> 110 */ WithKmsMasterKeyId(const char * value)111 inline AwsSqsQueueDetails& WithKmsMasterKeyId(const char* value) { SetKmsMasterKeyId(value); return *this;} 112 113 114 /** 115 * <p>The name of the new queue.</p> 116 */ GetQueueName()117 inline const Aws::String& GetQueueName() const{ return m_queueName; } 118 119 /** 120 * <p>The name of the new queue.</p> 121 */ QueueNameHasBeenSet()122 inline bool QueueNameHasBeenSet() const { return m_queueNameHasBeenSet; } 123 124 /** 125 * <p>The name of the new queue.</p> 126 */ SetQueueName(const Aws::String & value)127 inline void SetQueueName(const Aws::String& value) { m_queueNameHasBeenSet = true; m_queueName = value; } 128 129 /** 130 * <p>The name of the new queue.</p> 131 */ SetQueueName(Aws::String && value)132 inline void SetQueueName(Aws::String&& value) { m_queueNameHasBeenSet = true; m_queueName = std::move(value); } 133 134 /** 135 * <p>The name of the new queue.</p> 136 */ SetQueueName(const char * value)137 inline void SetQueueName(const char* value) { m_queueNameHasBeenSet = true; m_queueName.assign(value); } 138 139 /** 140 * <p>The name of the new queue.</p> 141 */ WithQueueName(const Aws::String & value)142 inline AwsSqsQueueDetails& WithQueueName(const Aws::String& value) { SetQueueName(value); return *this;} 143 144 /** 145 * <p>The name of the new queue.</p> 146 */ WithQueueName(Aws::String && value)147 inline AwsSqsQueueDetails& WithQueueName(Aws::String&& value) { SetQueueName(std::move(value)); return *this;} 148 149 /** 150 * <p>The name of the new queue.</p> 151 */ WithQueueName(const char * value)152 inline AwsSqsQueueDetails& WithQueueName(const char* value) { SetQueueName(value); return *this;} 153 154 155 /** 156 * <p>The ARN of the dead-letter queue to which Amazon SQS moves messages after the 157 * value of <code>maxReceiveCount</code> is exceeded. </p> 158 */ GetDeadLetterTargetArn()159 inline const Aws::String& GetDeadLetterTargetArn() const{ return m_deadLetterTargetArn; } 160 161 /** 162 * <p>The ARN of the dead-letter queue to which Amazon SQS moves messages after the 163 * value of <code>maxReceiveCount</code> is exceeded. </p> 164 */ DeadLetterTargetArnHasBeenSet()165 inline bool DeadLetterTargetArnHasBeenSet() const { return m_deadLetterTargetArnHasBeenSet; } 166 167 /** 168 * <p>The ARN of the dead-letter queue to which Amazon SQS moves messages after the 169 * value of <code>maxReceiveCount</code> is exceeded. </p> 170 */ SetDeadLetterTargetArn(const Aws::String & value)171 inline void SetDeadLetterTargetArn(const Aws::String& value) { m_deadLetterTargetArnHasBeenSet = true; m_deadLetterTargetArn = value; } 172 173 /** 174 * <p>The ARN of the dead-letter queue to which Amazon SQS moves messages after the 175 * value of <code>maxReceiveCount</code> is exceeded. </p> 176 */ SetDeadLetterTargetArn(Aws::String && value)177 inline void SetDeadLetterTargetArn(Aws::String&& value) { m_deadLetterTargetArnHasBeenSet = true; m_deadLetterTargetArn = std::move(value); } 178 179 /** 180 * <p>The ARN of the dead-letter queue to which Amazon SQS moves messages after the 181 * value of <code>maxReceiveCount</code> is exceeded. </p> 182 */ SetDeadLetterTargetArn(const char * value)183 inline void SetDeadLetterTargetArn(const char* value) { m_deadLetterTargetArnHasBeenSet = true; m_deadLetterTargetArn.assign(value); } 184 185 /** 186 * <p>The ARN of the dead-letter queue to which Amazon SQS moves messages after the 187 * value of <code>maxReceiveCount</code> is exceeded. </p> 188 */ WithDeadLetterTargetArn(const Aws::String & value)189 inline AwsSqsQueueDetails& WithDeadLetterTargetArn(const Aws::String& value) { SetDeadLetterTargetArn(value); return *this;} 190 191 /** 192 * <p>The ARN of the dead-letter queue to which Amazon SQS moves messages after the 193 * value of <code>maxReceiveCount</code> is exceeded. </p> 194 */ WithDeadLetterTargetArn(Aws::String && value)195 inline AwsSqsQueueDetails& WithDeadLetterTargetArn(Aws::String&& value) { SetDeadLetterTargetArn(std::move(value)); return *this;} 196 197 /** 198 * <p>The ARN of the dead-letter queue to which Amazon SQS moves messages after the 199 * value of <code>maxReceiveCount</code> is exceeded. </p> 200 */ WithDeadLetterTargetArn(const char * value)201 inline AwsSqsQueueDetails& WithDeadLetterTargetArn(const char* value) { SetDeadLetterTargetArn(value); return *this;} 202 203 private: 204 205 int m_kmsDataKeyReusePeriodSeconds; 206 bool m_kmsDataKeyReusePeriodSecondsHasBeenSet; 207 208 Aws::String m_kmsMasterKeyId; 209 bool m_kmsMasterKeyIdHasBeenSet; 210 211 Aws::String m_queueName; 212 bool m_queueNameHasBeenSet; 213 214 Aws::String m_deadLetterTargetArn; 215 bool m_deadLetterTargetArnHasBeenSet; 216 }; 217 218 } // namespace Model 219 } // namespace SecurityHub 220 } // namespace Aws 221