AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
SubscribeRequest.h
1
6#pragma once
7#include <aws/sns/SNS_EXPORTS.h>
8#include <aws/sns/SNSRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <utility>
12
13namespace Aws
14{
15namespace SNS
16{
17namespace Model
18{
19
26 {
27 public:
28 AWS_SNS_API SubscribeRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "Subscribe"; }
35
36 AWS_SNS_API Aws::String SerializePayload() const override;
37
38 protected:
39 AWS_SNS_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
40
41 public:
42
44
47 inline const Aws::String& GetTopicArn() const { return m_topicArn; }
48 inline bool TopicArnHasBeenSet() const { return m_topicArnHasBeenSet; }
49 template<typename TopicArnT = Aws::String>
50 void SetTopicArn(TopicArnT&& value) { m_topicArnHasBeenSet = true; m_topicArn = std::forward<TopicArnT>(value); }
51 template<typename TopicArnT = Aws::String>
52 SubscribeRequest& WithTopicArn(TopicArnT&& value) { SetTopicArn(std::forward<TopicArnT>(value)); return *this;}
54
56
70 inline const Aws::String& GetProtocol() const { return m_protocol; }
71 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
72 template<typename ProtocolT = Aws::String>
73 void SetProtocol(ProtocolT&& value) { m_protocolHasBeenSet = true; m_protocol = std::forward<ProtocolT>(value); }
74 template<typename ProtocolT = Aws::String>
75 SubscribeRequest& WithProtocol(ProtocolT&& value) { SetProtocol(std::forward<ProtocolT>(value)); return *this;}
77
79
96 inline const Aws::String& GetEndpoint() const { return m_endpoint; }
97 inline bool EndpointHasBeenSet() const { return m_endpointHasBeenSet; }
98 template<typename EndpointT = Aws::String>
99 void SetEndpoint(EndpointT&& value) { m_endpointHasBeenSet = true; m_endpoint = std::forward<EndpointT>(value); }
100 template<typename EndpointT = Aws::String>
101 SubscribeRequest& WithEndpoint(EndpointT&& value) { SetEndpoint(std::forward<EndpointT>(value)); return *this;}
103
105
151 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const { return m_attributes; }
152 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
153 template<typename AttributesT = Aws::Map<Aws::String, Aws::String>>
154 void SetAttributes(AttributesT&& value) { m_attributesHasBeenSet = true; m_attributes = std::forward<AttributesT>(value); }
155 template<typename AttributesT = Aws::Map<Aws::String, Aws::String>>
156 SubscribeRequest& WithAttributes(AttributesT&& value) { SetAttributes(std::forward<AttributesT>(value)); return *this;}
157 template<typename AttributesKeyT = Aws::String, typename AttributesValueT = Aws::String>
158 SubscribeRequest& AddAttributes(AttributesKeyT&& key, AttributesValueT&& value) {
159 m_attributesHasBeenSet = true; m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value)); return *this;
160 }
162
164
175 inline bool GetReturnSubscriptionArn() const { return m_returnSubscriptionArn; }
176 inline bool ReturnSubscriptionArnHasBeenSet() const { return m_returnSubscriptionArnHasBeenSet; }
177 inline void SetReturnSubscriptionArn(bool value) { m_returnSubscriptionArnHasBeenSet = true; m_returnSubscriptionArn = value; }
178 inline SubscribeRequest& WithReturnSubscriptionArn(bool value) { SetReturnSubscriptionArn(value); return *this;}
180 private:
181
182 Aws::String m_topicArn;
183 bool m_topicArnHasBeenSet = false;
184
185 Aws::String m_protocol;
186 bool m_protocolHasBeenSet = false;
187
188 Aws::String m_endpoint;
189 bool m_endpointHasBeenSet = false;
190
192 bool m_attributesHasBeenSet = false;
193
194 bool m_returnSubscriptionArn{false};
195 bool m_returnSubscriptionArnHasBeenSet = false;
196 };
197
198} // namespace Model
199} // namespace SNS
200} // namespace Aws
const Aws::String & GetProtocol() const
void SetEndpoint(EndpointT &&value)
SubscribeRequest & WithAttributes(AttributesT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
SubscribeRequest & WithReturnSubscriptionArn(bool value)
void SetProtocol(ProtocolT &&value)
virtual const char * GetServiceRequestName() const override
void SetAttributes(AttributesT &&value)
SubscribeRequest & WithEndpoint(EndpointT &&value)
AWS_SNS_API SubscribeRequest()=default
SubscribeRequest & WithTopicArn(TopicArnT &&value)
SubscribeRequest & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
SubscribeRequest & WithProtocol(ProtocolT &&value)
void SetTopicArn(TopicArnT &&value)
AWS_SNS_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
const Aws::String & GetEndpoint() const
const Aws::String & GetTopicArn() const
AWS_SNS_API Aws::String SerializePayload() const override
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String