AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
AddPermissionRequest.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/AWSVector.h>
11#include <utility>
12
13namespace Aws
14{
15namespace SNS
16{
17namespace Model
18{
19
23 {
24 public:
25 AWS_SNS_API AddPermissionRequest() = default;
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_SNS_API Aws::String SerializePayload() const override;
34
35 protected:
36 AWS_SNS_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
37
38 public:
39
41
44 inline const Aws::String& GetTopicArn() const { return m_topicArn; }
45 inline bool TopicArnHasBeenSet() const { return m_topicArnHasBeenSet; }
46 template<typename TopicArnT = Aws::String>
47 void SetTopicArn(TopicArnT&& value) { m_topicArnHasBeenSet = true; m_topicArn = std::forward<TopicArnT>(value); }
48 template<typename TopicArnT = Aws::String>
49 AddPermissionRequest& WithTopicArn(TopicArnT&& value) { SetTopicArn(std::forward<TopicArnT>(value)); return *this;}
51
53
56 inline const Aws::String& GetLabel() const { return m_label; }
57 inline bool LabelHasBeenSet() const { return m_labelHasBeenSet; }
58 template<typename LabelT = Aws::String>
59 void SetLabel(LabelT&& value) { m_labelHasBeenSet = true; m_label = std::forward<LabelT>(value); }
60 template<typename LabelT = Aws::String>
61 AddPermissionRequest& WithLabel(LabelT&& value) { SetLabel(std::forward<LabelT>(value)); return *this;}
63
65
70 inline const Aws::Vector<Aws::String>& GetAWSAccountId() const { return m_aWSAccountId; }
71 inline bool AWSAccountIdHasBeenSet() const { return m_aWSAccountIdHasBeenSet; }
72 template<typename AWSAccountIdT = Aws::Vector<Aws::String>>
73 void SetAWSAccountId(AWSAccountIdT&& value) { m_aWSAccountIdHasBeenSet = true; m_aWSAccountId = std::forward<AWSAccountIdT>(value); }
74 template<typename AWSAccountIdT = Aws::Vector<Aws::String>>
75 AddPermissionRequest& WithAWSAccountId(AWSAccountIdT&& value) { SetAWSAccountId(std::forward<AWSAccountIdT>(value)); return *this;}
76 template<typename AWSAccountIdT = Aws::String>
77 AddPermissionRequest& AddAWSAccountId(AWSAccountIdT&& value) { m_aWSAccountIdHasBeenSet = true; m_aWSAccountId.emplace_back(std::forward<AWSAccountIdT>(value)); return *this; }
79
81
85 inline const Aws::Vector<Aws::String>& GetActionName() const { return m_actionName; }
86 inline bool ActionNameHasBeenSet() const { return m_actionNameHasBeenSet; }
87 template<typename ActionNameT = Aws::Vector<Aws::String>>
88 void SetActionName(ActionNameT&& value) { m_actionNameHasBeenSet = true; m_actionName = std::forward<ActionNameT>(value); }
89 template<typename ActionNameT = Aws::Vector<Aws::String>>
90 AddPermissionRequest& WithActionName(ActionNameT&& value) { SetActionName(std::forward<ActionNameT>(value)); return *this;}
91 template<typename ActionNameT = Aws::String>
92 AddPermissionRequest& AddActionName(ActionNameT&& value) { m_actionNameHasBeenSet = true; m_actionName.emplace_back(std::forward<ActionNameT>(value)); return *this; }
94 private:
95
96 Aws::String m_topicArn;
97 bool m_topicArnHasBeenSet = false;
98
99 Aws::String m_label;
100 bool m_labelHasBeenSet = false;
101
102 Aws::Vector<Aws::String> m_aWSAccountId;
103 bool m_aWSAccountIdHasBeenSet = false;
104
105 Aws::Vector<Aws::String> m_actionName;
106 bool m_actionNameHasBeenSet = false;
107 };
108
109} // namespace Model
110} // namespace SNS
111} // namespace Aws
AddPermissionRequest & WithLabel(LabelT &&value)
AWS_SNS_API AddPermissionRequest()=default
const Aws::String & GetTopicArn() const
AWS_SNS_API Aws::String SerializePayload() const override
AddPermissionRequest & WithActionName(ActionNameT &&value)
AddPermissionRequest & WithTopicArn(TopicArnT &&value)
void SetAWSAccountId(AWSAccountIdT &&value)
const Aws::Vector< Aws::String > & GetActionName() const
AddPermissionRequest & WithAWSAccountId(AWSAccountIdT &&value)
const Aws::Vector< Aws::String > & GetAWSAccountId() const
AddPermissionRequest & AddAWSAccountId(AWSAccountIdT &&value)
AddPermissionRequest & AddActionName(ActionNameT &&value)
virtual const char * GetServiceRequestName() const override
AWS_SNS_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector