AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
InAppMessage.h
1
6#pragma once
7#include <aws/pinpoint/Pinpoint_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/pinpoint/model/Layout.h>
11#include <aws/pinpoint/model/InAppMessageContent.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace Pinpoint
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_PINPOINT_API InAppMessage() = default;
40 AWS_PINPOINT_API InAppMessage(Aws::Utils::Json::JsonView jsonValue);
42 AWS_PINPOINT_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Aws::Vector<InAppMessageContent>& GetContent() const { return m_content; }
50 inline bool ContentHasBeenSet() const { return m_contentHasBeenSet; }
51 template<typename ContentT = Aws::Vector<InAppMessageContent>>
52 void SetContent(ContentT&& value) { m_contentHasBeenSet = true; m_content = std::forward<ContentT>(value); }
53 template<typename ContentT = Aws::Vector<InAppMessageContent>>
54 InAppMessage& WithContent(ContentT&& value) { SetContent(std::forward<ContentT>(value)); return *this;}
55 template<typename ContentT = InAppMessageContent>
56 InAppMessage& AddContent(ContentT&& value) { m_contentHasBeenSet = true; m_content.emplace_back(std::forward<ContentT>(value)); return *this; }
58
60
63 inline const Aws::Map<Aws::String, Aws::String>& GetCustomConfig() const { return m_customConfig; }
64 inline bool CustomConfigHasBeenSet() const { return m_customConfigHasBeenSet; }
65 template<typename CustomConfigT = Aws::Map<Aws::String, Aws::String>>
66 void SetCustomConfig(CustomConfigT&& value) { m_customConfigHasBeenSet = true; m_customConfig = std::forward<CustomConfigT>(value); }
67 template<typename CustomConfigT = Aws::Map<Aws::String, Aws::String>>
68 InAppMessage& WithCustomConfig(CustomConfigT&& value) { SetCustomConfig(std::forward<CustomConfigT>(value)); return *this;}
69 template<typename CustomConfigKeyT = Aws::String, typename CustomConfigValueT = Aws::String>
70 InAppMessage& AddCustomConfig(CustomConfigKeyT&& key, CustomConfigValueT&& value) {
71 m_customConfigHasBeenSet = true; m_customConfig.emplace(std::forward<CustomConfigKeyT>(key), std::forward<CustomConfigValueT>(value)); return *this;
72 }
74
76
79 inline Layout GetLayout() const { return m_layout; }
80 inline bool LayoutHasBeenSet() const { return m_layoutHasBeenSet; }
81 inline void SetLayout(Layout value) { m_layoutHasBeenSet = true; m_layout = value; }
82 inline InAppMessage& WithLayout(Layout value) { SetLayout(value); return *this;}
84 private:
85
87 bool m_contentHasBeenSet = false;
88
90 bool m_customConfigHasBeenSet = false;
91
92 Layout m_layout{Layout::NOT_SET};
93 bool m_layoutHasBeenSet = false;
94 };
95
96} // namespace Model
97} // namespace Pinpoint
98} // namespace Aws
AWS_PINPOINT_API InAppMessage(Aws::Utils::Json::JsonView jsonValue)
const Aws::Map< Aws::String, Aws::String > & GetCustomConfig() const
AWS_PINPOINT_API InAppMessage & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_PINPOINT_API InAppMessage()=default
InAppMessage & WithLayout(Layout value)
void SetContent(ContentT &&value)
InAppMessage & AddCustomConfig(CustomConfigKeyT &&key, CustomConfigValueT &&value)
InAppMessage & AddContent(ContentT &&value)
AWS_PINPOINT_API Aws::Utils::Json::JsonValue Jsonize() const
InAppMessage & WithCustomConfig(CustomConfigT &&value)
const Aws::Vector< InAppMessageContent > & GetContent() const
InAppMessage & WithContent(ContentT &&value)
void SetCustomConfig(CustomConfigT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue