AWS SDK for C++  0.12.9
AWS SDK for C++
Subscription.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/sns/SNS_EXPORTS.h>
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Xml
25 {
26  class XmlNode;
27 } // namespace Xml
28 } // namespace Utils
29 namespace SNS
30 {
31 namespace Model
32 {
33 
38  {
39  public:
40  Subscription();
41  Subscription(const Aws::Utils::Xml::XmlNode& xmlNode);
42  Subscription& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
43 
44  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
45  void OutputToStream(Aws::OStream& oStream, const char* location) const;
46 
50  inline const Aws::String& GetSubscriptionArn() const{ return m_subscriptionArn; }
51 
55  inline void SetSubscriptionArn(const Aws::String& value) { m_subscriptionArnHasBeenSet = true; m_subscriptionArn = value; }
56 
60  inline void SetSubscriptionArn(Aws::String&& value) { m_subscriptionArnHasBeenSet = true; m_subscriptionArn = value; }
61 
65  inline void SetSubscriptionArn(const char* value) { m_subscriptionArnHasBeenSet = true; m_subscriptionArn.assign(value); }
66 
70  inline Subscription& WithSubscriptionArn(const Aws::String& value) { SetSubscriptionArn(value); return *this;}
71 
75  inline Subscription& WithSubscriptionArn(Aws::String&& value) { SetSubscriptionArn(value); return *this;}
76 
80  inline Subscription& WithSubscriptionArn(const char* value) { SetSubscriptionArn(value); return *this;}
81 
85  inline const Aws::String& GetOwner() const{ return m_owner; }
86 
90  inline void SetOwner(const Aws::String& value) { m_ownerHasBeenSet = true; m_owner = value; }
91 
95  inline void SetOwner(Aws::String&& value) { m_ownerHasBeenSet = true; m_owner = value; }
96 
100  inline void SetOwner(const char* value) { m_ownerHasBeenSet = true; m_owner.assign(value); }
101 
105  inline Subscription& WithOwner(const Aws::String& value) { SetOwner(value); return *this;}
106 
110  inline Subscription& WithOwner(Aws::String&& value) { SetOwner(value); return *this;}
111 
115  inline Subscription& WithOwner(const char* value) { SetOwner(value); return *this;}
116 
120  inline const Aws::String& GetProtocol() const{ return m_protocol; }
121 
125  inline void SetProtocol(const Aws::String& value) { m_protocolHasBeenSet = true; m_protocol = value; }
126 
130  inline void SetProtocol(Aws::String&& value) { m_protocolHasBeenSet = true; m_protocol = value; }
131 
135  inline void SetProtocol(const char* value) { m_protocolHasBeenSet = true; m_protocol.assign(value); }
136 
140  inline Subscription& WithProtocol(const Aws::String& value) { SetProtocol(value); return *this;}
141 
145  inline Subscription& WithProtocol(Aws::String&& value) { SetProtocol(value); return *this;}
146 
150  inline Subscription& WithProtocol(const char* value) { SetProtocol(value); return *this;}
151 
155  inline const Aws::String& GetEndpoint() const{ return m_endpoint; }
156 
160  inline void SetEndpoint(const Aws::String& value) { m_endpointHasBeenSet = true; m_endpoint = value; }
161 
165  inline void SetEndpoint(Aws::String&& value) { m_endpointHasBeenSet = true; m_endpoint = value; }
166 
170  inline void SetEndpoint(const char* value) { m_endpointHasBeenSet = true; m_endpoint.assign(value); }
171 
175  inline Subscription& WithEndpoint(const Aws::String& value) { SetEndpoint(value); return *this;}
176 
180  inline Subscription& WithEndpoint(Aws::String&& value) { SetEndpoint(value); return *this;}
181 
185  inline Subscription& WithEndpoint(const char* value) { SetEndpoint(value); return *this;}
186 
190  inline const Aws::String& GetTopicArn() const{ return m_topicArn; }
191 
195  inline void SetTopicArn(const Aws::String& value) { m_topicArnHasBeenSet = true; m_topicArn = value; }
196 
200  inline void SetTopicArn(Aws::String&& value) { m_topicArnHasBeenSet = true; m_topicArn = value; }
201 
205  inline void SetTopicArn(const char* value) { m_topicArnHasBeenSet = true; m_topicArn.assign(value); }
206 
210  inline Subscription& WithTopicArn(const Aws::String& value) { SetTopicArn(value); return *this;}
211 
215  inline Subscription& WithTopicArn(Aws::String&& value) { SetTopicArn(value); return *this;}
216 
220  inline Subscription& WithTopicArn(const char* value) { SetTopicArn(value); return *this;}
221 
222  private:
223  Aws::String m_subscriptionArn;
224  bool m_subscriptionArnHasBeenSet;
225  Aws::String m_owner;
226  bool m_ownerHasBeenSet;
227  Aws::String m_protocol;
228  bool m_protocolHasBeenSet;
229  Aws::String m_endpoint;
230  bool m_endpointHasBeenSet;
231  Aws::String m_topicArn;
232  bool m_topicArnHasBeenSet;
233  };
234 
235 } // namespace Model
236 } // namespace SNS
237 } // namespace Aws
void SetEndpoint(const Aws::String &value)
Definition: Subscription.h:160
Subscription & WithEndpoint(const char *value)
Definition: Subscription.h:185
Subscription & WithOwner(Aws::String &&value)
Definition: Subscription.h:110
const Aws::String & GetOwner() const
Definition: Subscription.h:85
Subscription & WithOwner(const Aws::String &value)
Definition: Subscription.h:105
void SetProtocol(const Aws::String &value)
Definition: Subscription.h:125
void SetOwner(const char *value)
Definition: Subscription.h:100
Subscription & WithProtocol(const char *value)
Definition: Subscription.h:150
Subscription & WithSubscriptionArn(Aws::String &&value)
Definition: Subscription.h:75
const Aws::String & GetProtocol() const
Definition: Subscription.h:120
void SetEndpoint(Aws::String &&value)
Definition: Subscription.h:165
void SetSubscriptionArn(Aws::String &&value)
Definition: Subscription.h:60
void SetOwner(Aws::String &&value)
Definition: Subscription.h:95
Subscription & WithTopicArn(const Aws::String &value)
Definition: Subscription.h:210
void SetSubscriptionArn(const Aws::String &value)
Definition: Subscription.h:55
Subscription & WithSubscriptionArn(const Aws::String &value)
Definition: Subscription.h:70
Subscription & WithProtocol(const Aws::String &value)
Definition: Subscription.h:140
void SetProtocol(Aws::String &&value)
Definition: Subscription.h:130
const Aws::String & GetEndpoint() const
Definition: Subscription.h:155
void SetOwner(const Aws::String &value)
Definition: Subscription.h:90
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
const Aws::String & GetTopicArn() const
Definition: Subscription.h:190
void SetTopicArn(const Aws::String &value)
Definition: Subscription.h:195
void SetTopicArn(Aws::String &&value)
Definition: Subscription.h:200
void SetTopicArn(const char *value)
Definition: Subscription.h:205
Subscription & WithSubscriptionArn(const char *value)
Definition: Subscription.h:80
Subscription & WithOwner(const char *value)
Definition: Subscription.h:115
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
void SetProtocol(const char *value)
Definition: Subscription.h:135
#define AWS_SNS_API
Definition: SNS_EXPORTS.h:34
void SetEndpoint(const char *value)
Definition: Subscription.h:170
Subscription & WithProtocol(Aws::String &&value)
Definition: Subscription.h:145
const Aws::String & GetSubscriptionArn() const
Definition: Subscription.h:50
Subscription & WithTopicArn(Aws::String &&value)
Definition: Subscription.h:215
Subscription & WithEndpoint(Aws::String &&value)
Definition: Subscription.h:180
Subscription & WithEndpoint(const Aws::String &value)
Definition: Subscription.h:175
Subscription & WithTopicArn(const char *value)
Definition: Subscription.h:220
void SetSubscriptionArn(const char *value)
Definition: Subscription.h:65
JSON (JavaScript Object Notation).