AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
TopicConfiguration.h
1
6#pragma once
7#include <aws/s3/S3_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/s3/model/NotificationConfigurationFilter.h>
11#include <aws/s3/model/Event.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Xml
19{
20 class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace S3
24{
25namespace Model
26{
27
36 {
37 public:
38 AWS_S3_API TopicConfiguration();
39 AWS_S3_API TopicConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
41
42 AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
43
44
46
47 inline const Aws::String& GetId() const{ return m_id; }
48 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
49 inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
50 inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
51 inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
52 inline TopicConfiguration& WithId(const Aws::String& value) { SetId(value); return *this;}
53 inline TopicConfiguration& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
54 inline TopicConfiguration& WithId(const char* value) { SetId(value); return *this;}
56
58
62 inline const Aws::String& GetTopicArn() const{ return m_topicArn; }
63 inline bool TopicArnHasBeenSet() const { return m_topicArnHasBeenSet; }
64 inline void SetTopicArn(const Aws::String& value) { m_topicArnHasBeenSet = true; m_topicArn = value; }
65 inline void SetTopicArn(Aws::String&& value) { m_topicArnHasBeenSet = true; m_topicArn = std::move(value); }
66 inline void SetTopicArn(const char* value) { m_topicArnHasBeenSet = true; m_topicArn.assign(value); }
67 inline TopicConfiguration& WithTopicArn(const Aws::String& value) { SetTopicArn(value); return *this;}
68 inline TopicConfiguration& WithTopicArn(Aws::String&& value) { SetTopicArn(std::move(value)); return *this;}
69 inline TopicConfiguration& WithTopicArn(const char* value) { SetTopicArn(value); return *this;}
71
73
79 inline const Aws::Vector<Event>& GetEvents() const{ return m_events; }
80 inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; }
81 inline void SetEvents(const Aws::Vector<Event>& value) { m_eventsHasBeenSet = true; m_events = value; }
82 inline void SetEvents(Aws::Vector<Event>&& value) { m_eventsHasBeenSet = true; m_events = std::move(value); }
83 inline TopicConfiguration& WithEvents(const Aws::Vector<Event>& value) { SetEvents(value); return *this;}
84 inline TopicConfiguration& WithEvents(Aws::Vector<Event>&& value) { SetEvents(std::move(value)); return *this;}
85 inline TopicConfiguration& AddEvents(const Event& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; }
86 inline TopicConfiguration& AddEvents(Event&& value) { m_eventsHasBeenSet = true; m_events.push_back(std::move(value)); return *this; }
88
90
91 inline const NotificationConfigurationFilter& GetFilter() const{ return m_filter; }
92 inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
93 inline void SetFilter(const NotificationConfigurationFilter& value) { m_filterHasBeenSet = true; m_filter = value; }
94 inline void SetFilter(NotificationConfigurationFilter&& value) { m_filterHasBeenSet = true; m_filter = std::move(value); }
95 inline TopicConfiguration& WithFilter(const NotificationConfigurationFilter& value) { SetFilter(value); return *this;}
96 inline TopicConfiguration& WithFilter(NotificationConfigurationFilter&& value) { SetFilter(std::move(value)); return *this;}
98 private:
99
100 Aws::String m_id;
101 bool m_idHasBeenSet = false;
102
103 Aws::String m_topicArn;
104 bool m_topicArnHasBeenSet = false;
105
106 Aws::Vector<Event> m_events;
107 bool m_eventsHasBeenSet = false;
108
110 bool m_filterHasBeenSet = false;
111 };
112
113} // namespace Model
114} // namespace S3
115} // namespace Aws
void SetEvents(const Aws::Vector< Event > &value)
TopicConfiguration & WithTopicArn(const Aws::String &value)
TopicConfiguration & WithTopicArn(const char *value)
const Aws::String & GetId() const
TopicConfiguration & AddEvents(const Event &value)
TopicConfiguration & WithEvents(Aws::Vector< Event > &&value)
AWS_S3_API TopicConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
TopicConfiguration & WithId(const Aws::String &value)
void SetFilter(const NotificationConfigurationFilter &value)
TopicConfiguration & WithFilter(const NotificationConfigurationFilter &value)
TopicConfiguration & WithId(Aws::String &&value)
void SetTopicArn(const Aws::String &value)
void SetFilter(NotificationConfigurationFilter &&value)
void SetEvents(Aws::Vector< Event > &&value)
AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
AWS_S3_API TopicConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetTopicArn(Aws::String &&value)
TopicConfiguration & WithEvents(const Aws::Vector< Event > &value)
TopicConfiguration & AddEvents(Event &&value)
void SetId(const Aws::String &value)
TopicConfiguration & WithTopicArn(Aws::String &&value)
TopicConfiguration & WithFilter(NotificationConfigurationFilter &&value)
const Aws::Vector< Event > & GetEvents() const
const Aws::String & GetTopicArn() const
TopicConfiguration & WithId(const char *value)
const NotificationConfigurationFilter & GetFilter() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector