AWS SDK for C++  1.9.160
AWS SDK for C++
AddPermissionRequest.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/sns/SNS_EXPORTS.h>
8 #include <aws/sns/SNSRequest.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace SNS
16 {
17 namespace Model
18 {
19 
23  {
24  public:
26 
27  // Service request name is the Operation name which will send this request out,
28  // each operation should has unique request name, so that we can get operation's name from this request.
29  // Note: this is not true for response, multiple operations may have the same response name,
30  // so we can not get operation's name from response.
31  inline virtual const char* GetServiceRequestName() const override { return "AddPermission"; }
32 
33  Aws::String SerializePayload() const override;
34 
35  protected:
36  void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
37 
38  public:
39 
43  inline const Aws::String& GetTopicArn() const{ return m_topicArn; }
44 
48  inline bool TopicArnHasBeenSet() const { return m_topicArnHasBeenSet; }
49 
53  inline void SetTopicArn(const Aws::String& value) { m_topicArnHasBeenSet = true; m_topicArn = value; }
54 
58  inline void SetTopicArn(Aws::String&& value) { m_topicArnHasBeenSet = true; m_topicArn = std::move(value); }
59 
63  inline void SetTopicArn(const char* value) { m_topicArnHasBeenSet = true; m_topicArn.assign(value); }
64 
68  inline AddPermissionRequest& WithTopicArn(const Aws::String& value) { SetTopicArn(value); return *this;}
69 
73  inline AddPermissionRequest& WithTopicArn(Aws::String&& value) { SetTopicArn(std::move(value)); return *this;}
74 
78  inline AddPermissionRequest& WithTopicArn(const char* value) { SetTopicArn(value); return *this;}
79 
80 
84  inline const Aws::String& GetLabel() const{ return m_label; }
85 
89  inline bool LabelHasBeenSet() const { return m_labelHasBeenSet; }
90 
94  inline void SetLabel(const Aws::String& value) { m_labelHasBeenSet = true; m_label = value; }
95 
99  inline void SetLabel(Aws::String&& value) { m_labelHasBeenSet = true; m_label = std::move(value); }
100 
104  inline void SetLabel(const char* value) { m_labelHasBeenSet = true; m_label.assign(value); }
105 
109  inline AddPermissionRequest& WithLabel(const Aws::String& value) { SetLabel(value); return *this;}
110 
114  inline AddPermissionRequest& WithLabel(Aws::String&& value) { SetLabel(std::move(value)); return *this;}
115 
119  inline AddPermissionRequest& WithLabel(const char* value) { SetLabel(value); return *this;}
120 
121 
127  inline const Aws::Vector<Aws::String>& GetAWSAccountId() const{ return m_aWSAccountId; }
128 
134  inline bool AWSAccountIdHasBeenSet() const { return m_aWSAccountIdHasBeenSet; }
135 
141  inline void SetAWSAccountId(const Aws::Vector<Aws::String>& value) { m_aWSAccountIdHasBeenSet = true; m_aWSAccountId = value; }
142 
148  inline void SetAWSAccountId(Aws::Vector<Aws::String>&& value) { m_aWSAccountIdHasBeenSet = true; m_aWSAccountId = std::move(value); }
149 
155  inline AddPermissionRequest& WithAWSAccountId(const Aws::Vector<Aws::String>& value) { SetAWSAccountId(value); return *this;}
156 
162  inline AddPermissionRequest& WithAWSAccountId(Aws::Vector<Aws::String>&& value) { SetAWSAccountId(std::move(value)); return *this;}
163 
169  inline AddPermissionRequest& AddAWSAccountId(const Aws::String& value) { m_aWSAccountIdHasBeenSet = true; m_aWSAccountId.push_back(value); return *this; }
170 
176  inline AddPermissionRequest& AddAWSAccountId(Aws::String&& value) { m_aWSAccountIdHasBeenSet = true; m_aWSAccountId.push_back(std::move(value)); return *this; }
177 
183  inline AddPermissionRequest& AddAWSAccountId(const char* value) { m_aWSAccountIdHasBeenSet = true; m_aWSAccountId.push_back(value); return *this; }
184 
185 
190  inline const Aws::Vector<Aws::String>& GetActionName() const{ return m_actionName; }
191 
196  inline bool ActionNameHasBeenSet() const { return m_actionNameHasBeenSet; }
197 
202  inline void SetActionName(const Aws::Vector<Aws::String>& value) { m_actionNameHasBeenSet = true; m_actionName = value; }
203 
208  inline void SetActionName(Aws::Vector<Aws::String>&& value) { m_actionNameHasBeenSet = true; m_actionName = std::move(value); }
209 
214  inline AddPermissionRequest& WithActionName(const Aws::Vector<Aws::String>& value) { SetActionName(value); return *this;}
215 
220  inline AddPermissionRequest& WithActionName(Aws::Vector<Aws::String>&& value) { SetActionName(std::move(value)); return *this;}
221 
226  inline AddPermissionRequest& AddActionName(const Aws::String& value) { m_actionNameHasBeenSet = true; m_actionName.push_back(value); return *this; }
227 
232  inline AddPermissionRequest& AddActionName(Aws::String&& value) { m_actionNameHasBeenSet = true; m_actionName.push_back(std::move(value)); return *this; }
233 
238  inline AddPermissionRequest& AddActionName(const char* value) { m_actionNameHasBeenSet = true; m_actionName.push_back(value); return *this; }
239 
240  private:
241 
242  Aws::String m_topicArn;
243  bool m_topicArnHasBeenSet;
244 
245  Aws::String m_label;
246  bool m_labelHasBeenSet;
247 
248  Aws::Vector<Aws::String> m_aWSAccountId;
249  bool m_aWSAccountIdHasBeenSet;
250 
251  Aws::Vector<Aws::String> m_actionName;
252  bool m_actionNameHasBeenSet;
253  };
254 
255 } // namespace Model
256 } // namespace SNS
257 } // namespace Aws
Aws::SNS::Model::AddPermissionRequest::SetLabel
void SetLabel(const Aws::String &value)
Definition: AddPermissionRequest.h:94
Aws::Http::URI
Definition: URI.h:32
Aws::SNS::Model::AddPermissionRequest::WithTopicArn
AddPermissionRequest & WithTopicArn(Aws::String &&value)
Definition: AddPermissionRequest.h:73
Aws::SNS::Model::AddPermissionRequest::SetLabel
void SetLabel(Aws::String &&value)
Definition: AddPermissionRequest.h:99
Aws::SNS::Model::AddPermissionRequest
Definition: AddPermissionRequest.h:23
Aws::SNS::Model::AddPermissionRequest::SetAWSAccountId
void SetAWSAccountId(Aws::Vector< Aws::String > &&value)
Definition: AddPermissionRequest.h:148
Aws::SNS::Model::AddPermissionRequest::GetServiceRequestName
virtual const char * GetServiceRequestName() const override
Definition: AddPermissionRequest.h:31
Aws::SNS::Model::AddPermissionRequest::SetLabel
void SetLabel(const char *value)
Definition: AddPermissionRequest.h:104
Aws::SNS::Model::AddPermissionRequest::SetTopicArn
void SetTopicArn(Aws::String &&value)
Definition: AddPermissionRequest.h:58
Aws::SNS::Model::AddPermissionRequest::AddAWSAccountId
AddPermissionRequest & AddAWSAccountId(Aws::String &&value)
Definition: AddPermissionRequest.h:176
Aws::SNS::Model::AddPermissionRequest::WithAWSAccountId
AddPermissionRequest & WithAWSAccountId(Aws::Vector< Aws::String > &&value)
Definition: AddPermissionRequest.h:162
Aws::SNS::Model::AddPermissionRequest::WithTopicArn
AddPermissionRequest & WithTopicArn(const char *value)
Definition: AddPermissionRequest.h:78
Aws::SNS::Model::AddPermissionRequest::SetAWSAccountId
void SetAWSAccountId(const Aws::Vector< Aws::String > &value)
Definition: AddPermissionRequest.h:141
Aws::SNS::Model::AddPermissionRequest::AddAWSAccountId
AddPermissionRequest & AddAWSAccountId(const char *value)
Definition: AddPermissionRequest.h:183
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::SNS::Model::AddPermissionRequest::WithAWSAccountId
AddPermissionRequest & WithAWSAccountId(const Aws::Vector< Aws::String > &value)
Definition: AddPermissionRequest.h:155
AWSVector.h
Aws::SNS::Model::AddPermissionRequest::WithLabel
AddPermissionRequest & WithLabel(const char *value)
Definition: AddPermissionRequest.h:119
Aws::SNS::Model::AddPermissionRequest::GetAWSAccountId
const Aws::Vector< Aws::String > & GetAWSAccountId() const
Definition: AddPermissionRequest.h:127
Aws::SNS::Model::AddPermissionRequest::AddActionName
AddPermissionRequest & AddActionName(Aws::String &&value)
Definition: AddPermissionRequest.h:232
Aws::SNS::Model::AddPermissionRequest::AddAWSAccountId
AddPermissionRequest & AddAWSAccountId(const Aws::String &value)
Definition: AddPermissionRequest.h:169
Aws::SNS::Model::AddPermissionRequest::SetActionName
void SetActionName(Aws::Vector< Aws::String > &&value)
Definition: AddPermissionRequest.h:208
Aws::SNS::Model::AddPermissionRequest::AWSAccountIdHasBeenSet
bool AWSAccountIdHasBeenSet() const
Definition: AddPermissionRequest.h:134
Aws::SNS::Model::AddPermissionRequest::AddPermissionRequest
AddPermissionRequest()
SNSRequest.h
Aws::SNS::SNSRequest
Definition: SNSRequest.h:17
Aws::SNS::Model::AddPermissionRequest::GetActionName
const Aws::Vector< Aws::String > & GetActionName() const
Definition: AddPermissionRequest.h:190
Aws::SNS::Model::AddPermissionRequest::AddActionName
AddPermissionRequest & AddActionName(const Aws::String &value)
Definition: AddPermissionRequest.h:226
Aws::SNS::Model::AddPermissionRequest::ActionNameHasBeenSet
bool ActionNameHasBeenSet() const
Definition: AddPermissionRequest.h:196
Aws::SNS::Model::AddPermissionRequest::SerializePayload
Aws::String SerializePayload() const override
AWSString.h
Aws::SNS::Model::AddPermissionRequest::AddActionName
AddPermissionRequest & AddActionName(const char *value)
Definition: AddPermissionRequest.h:238
Aws::SNS::Model::AddPermissionRequest::SetTopicArn
void SetTopicArn(const char *value)
Definition: AddPermissionRequest.h:63
Aws::SNS::Model::AddPermissionRequest::GetLabel
const Aws::String & GetLabel() const
Definition: AddPermissionRequest.h:84
Aws::SNS::Model::AddPermissionRequest::SetActionName
void SetActionName(const Aws::Vector< Aws::String > &value)
Definition: AddPermissionRequest.h:202
Aws::SNS::Model::AddPermissionRequest::LabelHasBeenSet
bool LabelHasBeenSet() const
Definition: AddPermissionRequest.h:89
Aws::SNS::Model::AddPermissionRequest::TopicArnHasBeenSet
bool TopicArnHasBeenSet() const
Definition: AddPermissionRequest.h:48
Aws::SNS::Model::AddPermissionRequest::WithActionName
AddPermissionRequest & WithActionName(const Aws::Vector< Aws::String > &value)
Definition: AddPermissionRequest.h:214
AWS_SNS_API
#define AWS_SNS_API
Definition: SNS_EXPORTS.h:28
SNS_EXPORTS.h
Aws
Definition: AccessManagementClient.h:15
Aws::SNS::Model::AddPermissionRequest::WithTopicArn
AddPermissionRequest & WithTopicArn(const Aws::String &value)
Definition: AddPermissionRequest.h:68
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::SNS::Model::AddPermissionRequest::SetTopicArn
void SetTopicArn(const Aws::String &value)
Definition: AddPermissionRequest.h:53
Aws::SNS::Model::AddPermissionRequest::WithLabel
AddPermissionRequest & WithLabel(Aws::String &&value)
Definition: AddPermissionRequest.h:114
Aws::SNS::Model::AddPermissionRequest::GetTopicArn
const Aws::String & GetTopicArn() const
Definition: AddPermissionRequest.h:43
Aws::SNS::Model::AddPermissionRequest::DumpBodyToUrl
void DumpBodyToUrl(Aws::Http::URI &uri) const override
Aws::SNS::Model::AddPermissionRequest::WithActionName
AddPermissionRequest & WithActionName(Aws::Vector< Aws::String > &&value)
Definition: AddPermissionRequest.h:220
Aws::SNS::Model::AddPermissionRequest::WithLabel
AddPermissionRequest & WithLabel(const Aws::String &value)
Definition: AddPermissionRequest.h:109