AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Subscription.h
1
6#pragma once
7#include <aws/sns/SNS_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Xml
17{
18 class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace SNS
22{
23namespace Model
24{
25
33 {
34 public:
35 AWS_SNS_API Subscription() = default;
36 AWS_SNS_API Subscription(const Aws::Utils::Xml::XmlNode& xmlNode);
37 AWS_SNS_API Subscription& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_SNS_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
40 AWS_SNS_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
41
42
44
47 inline const Aws::String& GetSubscriptionArn() const { return m_subscriptionArn; }
48 inline bool SubscriptionArnHasBeenSet() const { return m_subscriptionArnHasBeenSet; }
49 template<typename SubscriptionArnT = Aws::String>
50 void SetSubscriptionArn(SubscriptionArnT&& value) { m_subscriptionArnHasBeenSet = true; m_subscriptionArn = std::forward<SubscriptionArnT>(value); }
51 template<typename SubscriptionArnT = Aws::String>
52 Subscription& WithSubscriptionArn(SubscriptionArnT&& value) { SetSubscriptionArn(std::forward<SubscriptionArnT>(value)); return *this;}
54
56
59 inline const Aws::String& GetOwner() const { return m_owner; }
60 inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; }
61 template<typename OwnerT = Aws::String>
62 void SetOwner(OwnerT&& value) { m_ownerHasBeenSet = true; m_owner = std::forward<OwnerT>(value); }
63 template<typename OwnerT = Aws::String>
64 Subscription& WithOwner(OwnerT&& value) { SetOwner(std::forward<OwnerT>(value)); return *this;}
66
68
71 inline const Aws::String& GetProtocol() const { return m_protocol; }
72 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
73 template<typename ProtocolT = Aws::String>
74 void SetProtocol(ProtocolT&& value) { m_protocolHasBeenSet = true; m_protocol = std::forward<ProtocolT>(value); }
75 template<typename ProtocolT = Aws::String>
76 Subscription& WithProtocol(ProtocolT&& value) { SetProtocol(std::forward<ProtocolT>(value)); return *this;}
78
80
83 inline const Aws::String& GetEndpoint() const { return m_endpoint; }
84 inline bool EndpointHasBeenSet() const { return m_endpointHasBeenSet; }
85 template<typename EndpointT = Aws::String>
86 void SetEndpoint(EndpointT&& value) { m_endpointHasBeenSet = true; m_endpoint = std::forward<EndpointT>(value); }
87 template<typename EndpointT = Aws::String>
88 Subscription& WithEndpoint(EndpointT&& value) { SetEndpoint(std::forward<EndpointT>(value)); return *this;}
90
92
95 inline const Aws::String& GetTopicArn() const { return m_topicArn; }
96 inline bool TopicArnHasBeenSet() const { return m_topicArnHasBeenSet; }
97 template<typename TopicArnT = Aws::String>
98 void SetTopicArn(TopicArnT&& value) { m_topicArnHasBeenSet = true; m_topicArn = std::forward<TopicArnT>(value); }
99 template<typename TopicArnT = Aws::String>
100 Subscription& WithTopicArn(TopicArnT&& value) { SetTopicArn(std::forward<TopicArnT>(value)); return *this;}
102 private:
103
104 Aws::String m_subscriptionArn;
105 bool m_subscriptionArnHasBeenSet = false;
106
107 Aws::String m_owner;
108 bool m_ownerHasBeenSet = false;
109
110 Aws::String m_protocol;
111 bool m_protocolHasBeenSet = false;
112
113 Aws::String m_endpoint;
114 bool m_endpointHasBeenSet = false;
115
116 Aws::String m_topicArn;
117 bool m_topicArnHasBeenSet = false;
118 };
119
120} // namespace Model
121} // namespace SNS
122} // namespace Aws
Subscription & WithSubscriptionArn(SubscriptionArnT &&value)
const Aws::String & GetOwner() const
AWS_SNS_API Subscription(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetSubscriptionArn(SubscriptionArnT &&value)
void SetEndpoint(EndpointT &&value)
Subscription & WithOwner(OwnerT &&value)
Subscription & WithProtocol(ProtocolT &&value)
AWS_SNS_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetOwner(OwnerT &&value)
const Aws::String & GetTopicArn() const
const Aws::String & GetSubscriptionArn() const
Subscription & WithEndpoint(EndpointT &&value)
AWS_SNS_API Subscription()=default
const Aws::String & GetEndpoint() const
const Aws::String & GetProtocol() const
bool SubscriptionArnHasBeenSet() const
void SetProtocol(ProtocolT &&value)
AWS_SNS_API Subscription & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetTopicArn(TopicArnT &&value)
AWS_SNS_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
Subscription & WithTopicArn(TopicArnT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream