AWS SDK for C++  1.9.104
AWS SDK for C++
RemovePermissionRequest.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>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace SNS
15 {
16 namespace Model
17 {
18 
25  {
26  public:
28 
29  // Service request name is the Operation name which will send this request out,
30  // each operation should has unique request name, so that we can get operation's name from this request.
31  // Note: this is not true for response, multiple operations may have the same response name,
32  // so we can not get operation's name from response.
33  inline virtual const char* GetServiceRequestName() const override { return "RemovePermission"; }
34 
35  Aws::String SerializePayload() const override;
36 
37  protected:
38  void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
39 
40  public:
41 
45  inline const Aws::String& GetTopicArn() const{ return m_topicArn; }
46 
50  inline bool TopicArnHasBeenSet() const { return m_topicArnHasBeenSet; }
51 
55  inline void SetTopicArn(const Aws::String& value) { m_topicArnHasBeenSet = true; m_topicArn = value; }
56 
60  inline void SetTopicArn(Aws::String&& value) { m_topicArnHasBeenSet = true; m_topicArn = std::move(value); }
61 
65  inline void SetTopicArn(const char* value) { m_topicArnHasBeenSet = true; m_topicArn.assign(value); }
66 
70  inline RemovePermissionRequest& WithTopicArn(const Aws::String& value) { SetTopicArn(value); return *this;}
71 
75  inline RemovePermissionRequest& WithTopicArn(Aws::String&& value) { SetTopicArn(std::move(value)); return *this;}
76 
80  inline RemovePermissionRequest& WithTopicArn(const char* value) { SetTopicArn(value); return *this;}
81 
82 
86  inline const Aws::String& GetLabel() const{ return m_label; }
87 
91  inline bool LabelHasBeenSet() const { return m_labelHasBeenSet; }
92 
96  inline void SetLabel(const Aws::String& value) { m_labelHasBeenSet = true; m_label = value; }
97 
101  inline void SetLabel(Aws::String&& value) { m_labelHasBeenSet = true; m_label = std::move(value); }
102 
106  inline void SetLabel(const char* value) { m_labelHasBeenSet = true; m_label.assign(value); }
107 
111  inline RemovePermissionRequest& WithLabel(const Aws::String& value) { SetLabel(value); return *this;}
112 
116  inline RemovePermissionRequest& WithLabel(Aws::String&& value) { SetLabel(std::move(value)); return *this;}
117 
121  inline RemovePermissionRequest& WithLabel(const char* value) { SetLabel(value); return *this;}
122 
123  private:
124 
125  Aws::String m_topicArn;
126  bool m_topicArnHasBeenSet;
127 
128  Aws::String m_label;
129  bool m_labelHasBeenSet;
130  };
131 
132 } // namespace Model
133 } // namespace SNS
134 } // namespace Aws
Aws::Http::URI
Definition: URI.h:32
Aws::SNS::Model::RemovePermissionRequest::GetTopicArn
const Aws::String & GetTopicArn() const
Definition: RemovePermissionRequest.h:45
Aws::SNS::Model::RemovePermissionRequest::WithLabel
RemovePermissionRequest & WithLabel(Aws::String &&value)
Definition: RemovePermissionRequest.h:116
Aws::SNS::Model::RemovePermissionRequest::TopicArnHasBeenSet
bool TopicArnHasBeenSet() const
Definition: RemovePermissionRequest.h:50
Aws::SNS::Model::RemovePermissionRequest::SetTopicArn
void SetTopicArn(Aws::String &&value)
Definition: RemovePermissionRequest.h:60
Aws::SNS::Model::RemovePermissionRequest::SerializePayload
Aws::String SerializePayload() const override
Aws::SNS::Model::RemovePermissionRequest::WithLabel
RemovePermissionRequest & WithLabel(const Aws::String &value)
Definition: RemovePermissionRequest.h:111
Aws::SNS::Model::RemovePermissionRequest::WithTopicArn
RemovePermissionRequest & WithTopicArn(const char *value)
Definition: RemovePermissionRequest.h:80
Aws::SNS::Model::RemovePermissionRequest
Definition: RemovePermissionRequest.h:25
Aws::SNS::Model::RemovePermissionRequest::SetLabel
void SetLabel(const Aws::String &value)
Definition: RemovePermissionRequest.h:96
SNSRequest.h
Aws::SNS::Model::RemovePermissionRequest::SetTopicArn
void SetTopicArn(const char *value)
Definition: RemovePermissionRequest.h:65
Aws::SNS::SNSRequest
Definition: SNSRequest.h:17
Aws::SNS::Model::RemovePermissionRequest::RemovePermissionRequest
RemovePermissionRequest()
Aws::SNS::Model::RemovePermissionRequest::WithTopicArn
RemovePermissionRequest & WithTopicArn(Aws::String &&value)
Definition: RemovePermissionRequest.h:75
Aws::SNS::Model::RemovePermissionRequest::DumpBodyToUrl
void DumpBodyToUrl(Aws::Http::URI &uri) const override
Aws::SNS::Model::RemovePermissionRequest::SetLabel
void SetLabel(const char *value)
Definition: RemovePermissionRequest.h:106
AWSString.h
Aws::SNS::Model::RemovePermissionRequest::LabelHasBeenSet
bool LabelHasBeenSet() const
Definition: RemovePermissionRequest.h:91
Aws::CostExplorer::Model::SubscriberType::NOT_SET
@ NOT_SET
Aws::SNS::Model::RemovePermissionRequest::GetServiceRequestName
virtual const char * GetServiceRequestName() const override
Definition: RemovePermissionRequest.h:33
AWS_SNS_API
#define AWS_SNS_API
Definition: SNS_EXPORTS.h:28
Aws::SNS::Model::RemovePermissionRequest::WithLabel
RemovePermissionRequest & WithLabel(const char *value)
Definition: RemovePermissionRequest.h:121
Aws::SNS::Model::RemovePermissionRequest::GetLabel
const Aws::String & GetLabel() const
Definition: RemovePermissionRequest.h:86
SNS_EXPORTS.h
Aws
Definition: AccessManagementClient.h:15
Aws::SNS::Model::RemovePermissionRequest::WithTopicArn
RemovePermissionRequest & WithTopicArn(const Aws::String &value)
Definition: RemovePermissionRequest.h:70
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::SNS::Model::RemovePermissionRequest::SetLabel
void SetLabel(Aws::String &&value)
Definition: RemovePermissionRequest.h:101
Aws::SNS::Model::RemovePermissionRequest::SetTopicArn
void SetTopicArn(const Aws::String &value)
Definition: RemovePermissionRequest.h:55