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/s3-crt/S3Crt_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/core/utils/memory/stl/AWSVector.h> 10 #include <aws/s3-crt/model/Event.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace Utils 16 { 17 namespace Xml 18 { 19 class XmlNode; 20 } // namespace Xml 21 } // namespace Utils 22 namespace S3Crt 23 { 24 namespace Model 25 { 26 27 /** 28 * <p>This data type is deprecated. Use <a 29 * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_QueueConfiguration.html">QueueConfiguration</a> 30 * for the same purposes. This data type specifies the configuration for publishing 31 * messages to an Amazon Simple Queue Service (Amazon SQS) queue when Amazon S3 32 * detects specified events. </p><p><h3>See Also:</h3> <a 33 * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/QueueConfigurationDeprecated">AWS 34 * API Reference</a></p> 35 */ 36 class AWS_S3CRT_API QueueConfigurationDeprecated 37 { 38 public: 39 QueueConfigurationDeprecated(); 40 QueueConfigurationDeprecated(const Aws::Utils::Xml::XmlNode& xmlNode); 41 QueueConfigurationDeprecated& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); 42 43 void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const; 44 45 46 GetId()47 inline const Aws::String& GetId() const{ return m_id; } 48 49 IdHasBeenSet()50 inline bool IdHasBeenSet() const { return m_idHasBeenSet; } 51 52 SetId(const Aws::String & value)53 inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } 54 55 SetId(Aws::String && value)56 inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } 57 58 SetId(const char * value)59 inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } 60 61 WithId(const Aws::String & value)62 inline QueueConfigurationDeprecated& WithId(const Aws::String& value) { SetId(value); return *this;} 63 64 WithId(Aws::String && value)65 inline QueueConfigurationDeprecated& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} 66 67 WithId(const char * value)68 inline QueueConfigurationDeprecated& WithId(const char* value) { SetId(value); return *this;} 69 70 71 /** 72 * <p>A collection of bucket events for which to send notifications.</p> 73 */ GetEvents()74 inline const Aws::Vector<Event>& GetEvents() const{ return m_events; } 75 76 /** 77 * <p>A collection of bucket events for which to send notifications.</p> 78 */ EventsHasBeenSet()79 inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; } 80 81 /** 82 * <p>A collection of bucket events for which to send notifications.</p> 83 */ SetEvents(const Aws::Vector<Event> & value)84 inline void SetEvents(const Aws::Vector<Event>& value) { m_eventsHasBeenSet = true; m_events = value; } 85 86 /** 87 * <p>A collection of bucket events for which to send notifications.</p> 88 */ SetEvents(Aws::Vector<Event> && value)89 inline void SetEvents(Aws::Vector<Event>&& value) { m_eventsHasBeenSet = true; m_events = std::move(value); } 90 91 /** 92 * <p>A collection of bucket events for which to send notifications.</p> 93 */ WithEvents(const Aws::Vector<Event> & value)94 inline QueueConfigurationDeprecated& WithEvents(const Aws::Vector<Event>& value) { SetEvents(value); return *this;} 95 96 /** 97 * <p>A collection of bucket events for which to send notifications.</p> 98 */ WithEvents(Aws::Vector<Event> && value)99 inline QueueConfigurationDeprecated& WithEvents(Aws::Vector<Event>&& value) { SetEvents(std::move(value)); return *this;} 100 101 /** 102 * <p>A collection of bucket events for which to send notifications.</p> 103 */ AddEvents(const Event & value)104 inline QueueConfigurationDeprecated& AddEvents(const Event& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; } 105 106 /** 107 * <p>A collection of bucket events for which to send notifications.</p> 108 */ AddEvents(Event && value)109 inline QueueConfigurationDeprecated& AddEvents(Event&& value) { m_eventsHasBeenSet = true; m_events.push_back(std::move(value)); return *this; } 110 111 112 /** 113 * <p>The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 114 * publishes a message when it detects events of the specified type. </p> 115 */ GetQueue()116 inline const Aws::String& GetQueue() const{ return m_queue; } 117 118 /** 119 * <p>The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 120 * publishes a message when it detects events of the specified type. </p> 121 */ QueueHasBeenSet()122 inline bool QueueHasBeenSet() const { return m_queueHasBeenSet; } 123 124 /** 125 * <p>The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 126 * publishes a message when it detects events of the specified type. </p> 127 */ SetQueue(const Aws::String & value)128 inline void SetQueue(const Aws::String& value) { m_queueHasBeenSet = true; m_queue = value; } 129 130 /** 131 * <p>The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 132 * publishes a message when it detects events of the specified type. </p> 133 */ SetQueue(Aws::String && value)134 inline void SetQueue(Aws::String&& value) { m_queueHasBeenSet = true; m_queue = std::move(value); } 135 136 /** 137 * <p>The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 138 * publishes a message when it detects events of the specified type. </p> 139 */ SetQueue(const char * value)140 inline void SetQueue(const char* value) { m_queueHasBeenSet = true; m_queue.assign(value); } 141 142 /** 143 * <p>The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 144 * publishes a message when it detects events of the specified type. </p> 145 */ WithQueue(const Aws::String & value)146 inline QueueConfigurationDeprecated& WithQueue(const Aws::String& value) { SetQueue(value); return *this;} 147 148 /** 149 * <p>The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 150 * publishes a message when it detects events of the specified type. </p> 151 */ WithQueue(Aws::String && value)152 inline QueueConfigurationDeprecated& WithQueue(Aws::String&& value) { SetQueue(std::move(value)); return *this;} 153 154 /** 155 * <p>The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 156 * publishes a message when it detects events of the specified type. </p> 157 */ WithQueue(const char * value)158 inline QueueConfigurationDeprecated& WithQueue(const char* value) { SetQueue(value); return *this;} 159 160 private: 161 162 Aws::String m_id; 163 bool m_idHasBeenSet; 164 165 Aws::Vector<Event> m_events; 166 bool m_eventsHasBeenSet; 167 168 Aws::String m_queue; 169 bool m_queueHasBeenSet; 170 }; 171 172 } // namespace Model 173 } // namespace S3Crt 174 } // namespace Aws 175