AWS SDK for C++

AWS SDK for C++ Version 1.11.748

Loading...
Searching...
No Matches
InAppTemplateRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/pinpoint/Pinpoint_EXPORTS.h>
11#include <aws/pinpoint/model/InAppMessageContent.h>
12#include <aws/pinpoint/model/Layout.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Pinpoint {
24namespace Model {
25
32 public:
33 AWS_PINPOINT_API InAppTemplateRequest() = default;
36 AWS_PINPOINT_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
44 inline const Aws::Vector<InAppMessageContent>& GetContent() const { return m_content; }
45 inline bool ContentHasBeenSet() const { return m_contentHasBeenSet; }
46 template <typename ContentT = Aws::Vector<InAppMessageContent>>
47 void SetContent(ContentT&& value) {
48 m_contentHasBeenSet = true;
49 m_content = std::forward<ContentT>(value);
50 }
51 template <typename ContentT = Aws::Vector<InAppMessageContent>>
52 InAppTemplateRequest& WithContent(ContentT&& value) {
53 SetContent(std::forward<ContentT>(value));
54 return *this;
55 }
56 template <typename ContentT = InAppMessageContent>
57 InAppTemplateRequest& AddContent(ContentT&& value) {
58 m_contentHasBeenSet = true;
59 m_content.emplace_back(std::forward<ContentT>(value));
60 return *this;
61 }
63
65
68 inline const Aws::Map<Aws::String, Aws::String>& GetCustomConfig() const { return m_customConfig; }
69 inline bool CustomConfigHasBeenSet() const { return m_customConfigHasBeenSet; }
70 template <typename CustomConfigT = Aws::Map<Aws::String, Aws::String>>
71 void SetCustomConfig(CustomConfigT&& value) {
72 m_customConfigHasBeenSet = true;
73 m_customConfig = std::forward<CustomConfigT>(value);
74 }
75 template <typename CustomConfigT = Aws::Map<Aws::String, Aws::String>>
76 InAppTemplateRequest& WithCustomConfig(CustomConfigT&& value) {
77 SetCustomConfig(std::forward<CustomConfigT>(value));
78 return *this;
79 }
80 template <typename CustomConfigKeyT = Aws::String, typename CustomConfigValueT = Aws::String>
81 InAppTemplateRequest& AddCustomConfig(CustomConfigKeyT&& key, CustomConfigValueT&& value) {
82 m_customConfigHasBeenSet = true;
83 m_customConfig.emplace(std::forward<CustomConfigKeyT>(key), std::forward<CustomConfigValueT>(value));
84 return *this;
85 }
87
89
92 inline Layout GetLayout() const { return m_layout; }
93 inline bool LayoutHasBeenSet() const { return m_layoutHasBeenSet; }
94 inline void SetLayout(Layout value) {
95 m_layoutHasBeenSet = true;
96 m_layout = value;
97 }
99 SetLayout(value);
100 return *this;
101 }
103
105
118 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
119 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
120 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
121 void SetTags(TagsT&& value) {
122 m_tagsHasBeenSet = true;
123 m_tags = std::forward<TagsT>(value);
124 }
125 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
127 SetTags(std::forward<TagsT>(value));
128 return *this;
129 }
130 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
131 InAppTemplateRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
132 m_tagsHasBeenSet = true;
133 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
134 return *this;
135 }
137
139
142 inline const Aws::String& GetTemplateDescription() const { return m_templateDescription; }
143 inline bool TemplateDescriptionHasBeenSet() const { return m_templateDescriptionHasBeenSet; }
144 template <typename TemplateDescriptionT = Aws::String>
145 void SetTemplateDescription(TemplateDescriptionT&& value) {
146 m_templateDescriptionHasBeenSet = true;
147 m_templateDescription = std::forward<TemplateDescriptionT>(value);
148 }
149 template <typename TemplateDescriptionT = Aws::String>
150 InAppTemplateRequest& WithTemplateDescription(TemplateDescriptionT&& value) {
151 SetTemplateDescription(std::forward<TemplateDescriptionT>(value));
152 return *this;
153 }
155 private:
157
159
160 Layout m_layout{Layout::NOT_SET};
161
163
164 Aws::String m_templateDescription;
165 bool m_contentHasBeenSet = false;
166 bool m_customConfigHasBeenSet = false;
167 bool m_layoutHasBeenSet = false;
168 bool m_tagsHasBeenSet = false;
169 bool m_templateDescriptionHasBeenSet = false;
170};
171
172} // namespace Model
173} // namespace Pinpoint
174} // namespace Aws
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::Vector< InAppMessageContent > & GetContent() const
const Aws::Map< Aws::String, Aws::String > & GetCustomConfig() const
InAppTemplateRequest & WithContent(ContentT &&value)
AWS_PINPOINT_API InAppTemplateRequest()=default
InAppTemplateRequest & WithTemplateDescription(TemplateDescriptionT &&value)
InAppTemplateRequest & WithCustomConfig(CustomConfigT &&value)
InAppTemplateRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
InAppTemplateRequest & WithLayout(Layout value)
AWS_PINPOINT_API InAppTemplateRequest(Aws::Utils::Json::JsonView jsonValue)
InAppTemplateRequest & AddContent(ContentT &&value)
AWS_PINPOINT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetTemplateDescription(TemplateDescriptionT &&value)
InAppTemplateRequest & AddCustomConfig(CustomConfigKeyT &&key, CustomConfigValueT &&value)
InAppTemplateRequest & WithTags(TagsT &&value)
AWS_PINPOINT_API InAppTemplateRequest & operator=(Aws::Utils::Json::JsonView jsonValue)
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
Aws::Utils::Json::JsonValue JsonValue