AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CreateTopicRequest.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 <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/sns/model/Tag.h>
13#include <utility>
14
15namespace Aws
16{
17namespace SNS
18{
19namespace Model
20{
21
28 {
29 public:
30 AWS_SNS_API CreateTopicRequest();
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateTopic"; }
37
38 AWS_SNS_API Aws::String SerializePayload() const override;
39
40 protected:
41 AWS_SNS_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
42
43 public:
44
46
53 inline const Aws::String& GetName() const{ return m_name; }
54 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
55 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
56 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
57 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
58 inline CreateTopicRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
59 inline CreateTopicRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
60 inline CreateTopicRequest& WithName(const char* value) { SetName(value); return *this;}
62
64
115 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const{ return m_attributes; }
116 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
117 inline void SetAttributes(const Aws::Map<Aws::String, Aws::String>& value) { m_attributesHasBeenSet = true; m_attributes = value; }
118 inline void SetAttributes(Aws::Map<Aws::String, Aws::String>&& value) { m_attributesHasBeenSet = true; m_attributes = std::move(value); }
120 inline CreateTopicRequest& WithAttributes(Aws::Map<Aws::String, Aws::String>&& value) { SetAttributes(std::move(value)); return *this;}
121 inline CreateTopicRequest& AddAttributes(const Aws::String& key, const Aws::String& value) { m_attributesHasBeenSet = true; m_attributes.emplace(key, value); return *this; }
122 inline CreateTopicRequest& AddAttributes(Aws::String&& key, const Aws::String& value) { m_attributesHasBeenSet = true; m_attributes.emplace(std::move(key), value); return *this; }
123 inline CreateTopicRequest& AddAttributes(const Aws::String& key, Aws::String&& value) { m_attributesHasBeenSet = true; m_attributes.emplace(key, std::move(value)); return *this; }
124 inline CreateTopicRequest& AddAttributes(Aws::String&& key, Aws::String&& value) { m_attributesHasBeenSet = true; m_attributes.emplace(std::move(key), std::move(value)); return *this; }
125 inline CreateTopicRequest& AddAttributes(const char* key, Aws::String&& value) { m_attributesHasBeenSet = true; m_attributes.emplace(key, std::move(value)); return *this; }
126 inline CreateTopicRequest& AddAttributes(Aws::String&& key, const char* value) { m_attributesHasBeenSet = true; m_attributes.emplace(std::move(key), value); return *this; }
127 inline CreateTopicRequest& AddAttributes(const char* key, const char* value) { m_attributesHasBeenSet = true; m_attributes.emplace(key, value); return *this; }
129
131
136 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
137 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
138 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
139 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
140 inline CreateTopicRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
141 inline CreateTopicRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
142 inline CreateTopicRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
143 inline CreateTopicRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
145
147
152 inline const Aws::String& GetDataProtectionPolicy() const{ return m_dataProtectionPolicy; }
153 inline bool DataProtectionPolicyHasBeenSet() const { return m_dataProtectionPolicyHasBeenSet; }
154 inline void SetDataProtectionPolicy(const Aws::String& value) { m_dataProtectionPolicyHasBeenSet = true; m_dataProtectionPolicy = value; }
155 inline void SetDataProtectionPolicy(Aws::String&& value) { m_dataProtectionPolicyHasBeenSet = true; m_dataProtectionPolicy = std::move(value); }
156 inline void SetDataProtectionPolicy(const char* value) { m_dataProtectionPolicyHasBeenSet = true; m_dataProtectionPolicy.assign(value); }
158 inline CreateTopicRequest& WithDataProtectionPolicy(Aws::String&& value) { SetDataProtectionPolicy(std::move(value)); return *this;}
159 inline CreateTopicRequest& WithDataProtectionPolicy(const char* value) { SetDataProtectionPolicy(value); return *this;}
161 private:
162
163 Aws::String m_name;
164 bool m_nameHasBeenSet = false;
165
167 bool m_attributesHasBeenSet = false;
168
169 Aws::Vector<Tag> m_tags;
170 bool m_tagsHasBeenSet = false;
171
172 Aws::String m_dataProtectionPolicy;
173 bool m_dataProtectionPolicyHasBeenSet = false;
174 };
175
176} // namespace Model
177} // namespace SNS
178} // namespace Aws
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
CreateTopicRequest & WithAttributes(const Aws::Map< Aws::String, Aws::String > &value)
const Aws::String & GetName() const
CreateTopicRequest & AddAttributes(Aws::String &&key, const char *value)
CreateTopicRequest & AddAttributes(Aws::String &&key, Aws::String &&value)
CreateTopicRequest & AddTags(const Tag &value)
AWS_SNS_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
void SetDataProtectionPolicy(Aws::String &&value)
CreateTopicRequest & AddAttributes(const char *key, const char *value)
void SetAttributes(Aws::Map< Aws::String, Aws::String > &&value)
CreateTopicRequest & WithTags(const Aws::Vector< Tag > &value)
const Aws::Vector< Tag > & GetTags() const
void SetName(const Aws::String &value)
void SetTags(Aws::Vector< Tag > &&value)
void SetDataProtectionPolicy(const char *value)
CreateTopicRequest & WithAttributes(Aws::Map< Aws::String, Aws::String > &&value)
void SetDataProtectionPolicy(const Aws::String &value)
CreateTopicRequest & WithDataProtectionPolicy(Aws::String &&value)
CreateTopicRequest & AddTags(Tag &&value)
CreateTopicRequest & AddAttributes(const char *key, Aws::String &&value)
const Aws::String & GetDataProtectionPolicy() const
CreateTopicRequest & WithName(Aws::String &&value)
CreateTopicRequest & WithTags(Aws::Vector< Tag > &&value)
CreateTopicRequest & WithDataProtectionPolicy(const char *value)
CreateTopicRequest & WithName(const char *value)
void SetAttributes(const Aws::Map< Aws::String, Aws::String > &value)
CreateTopicRequest & WithDataProtectionPolicy(const Aws::String &value)
CreateTopicRequest & AddAttributes(Aws::String &&key, const Aws::String &value)
virtual const char * GetServiceRequestName() const override
void SetTags(const Aws::Vector< Tag > &value)
CreateTopicRequest & WithName(const Aws::String &value)
CreateTopicRequest & AddAttributes(const Aws::String &key, Aws::String &&value)
AWS_SNS_API Aws::String SerializePayload() const override
CreateTopicRequest & AddAttributes(const Aws::String &key, const Aws::String &value)
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
std::vector< T, Aws::Allocator< T > > Vector