AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
InAppMessageButton.h
1
6#pragma once
7#include <aws/pinpoint/Pinpoint_EXPORTS.h>
8#include <aws/pinpoint/model/OverrideButtonConfiguration.h>
9#include <aws/pinpoint/model/DefaultButtonConfiguration.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Pinpoint
23{
24namespace Model
25{
26
33 {
34 public:
35 AWS_PINPOINT_API InAppMessageButton() = default;
38 AWS_PINPOINT_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
45 inline const OverrideButtonConfiguration& GetAndroid() const { return m_android; }
46 inline bool AndroidHasBeenSet() const { return m_androidHasBeenSet; }
47 template<typename AndroidT = OverrideButtonConfiguration>
48 void SetAndroid(AndroidT&& value) { m_androidHasBeenSet = true; m_android = std::forward<AndroidT>(value); }
49 template<typename AndroidT = OverrideButtonConfiguration>
50 InAppMessageButton& WithAndroid(AndroidT&& value) { SetAndroid(std::forward<AndroidT>(value)); return *this;}
52
54
57 inline const DefaultButtonConfiguration& GetDefaultConfig() const { return m_defaultConfig; }
58 inline bool DefaultConfigHasBeenSet() const { return m_defaultConfigHasBeenSet; }
59 template<typename DefaultConfigT = DefaultButtonConfiguration>
60 void SetDefaultConfig(DefaultConfigT&& value) { m_defaultConfigHasBeenSet = true; m_defaultConfig = std::forward<DefaultConfigT>(value); }
61 template<typename DefaultConfigT = DefaultButtonConfiguration>
62 InAppMessageButton& WithDefaultConfig(DefaultConfigT&& value) { SetDefaultConfig(std::forward<DefaultConfigT>(value)); return *this;}
64
66
69 inline const OverrideButtonConfiguration& GetIOS() const { return m_iOS; }
70 inline bool IOSHasBeenSet() const { return m_iOSHasBeenSet; }
71 template<typename IOST = OverrideButtonConfiguration>
72 void SetIOS(IOST&& value) { m_iOSHasBeenSet = true; m_iOS = std::forward<IOST>(value); }
73 template<typename IOST = OverrideButtonConfiguration>
74 InAppMessageButton& WithIOS(IOST&& value) { SetIOS(std::forward<IOST>(value)); return *this;}
76
78
81 inline const OverrideButtonConfiguration& GetWeb() const { return m_web; }
82 inline bool WebHasBeenSet() const { return m_webHasBeenSet; }
83 template<typename WebT = OverrideButtonConfiguration>
84 void SetWeb(WebT&& value) { m_webHasBeenSet = true; m_web = std::forward<WebT>(value); }
85 template<typename WebT = OverrideButtonConfiguration>
86 InAppMessageButton& WithWeb(WebT&& value) { SetWeb(std::forward<WebT>(value)); return *this;}
88 private:
89
91 bool m_androidHasBeenSet = false;
92
93 DefaultButtonConfiguration m_defaultConfig;
94 bool m_defaultConfigHasBeenSet = false;
95
97 bool m_iOSHasBeenSet = false;
98
100 bool m_webHasBeenSet = false;
101 };
102
103} // namespace Model
104} // namespace Pinpoint
105} // namespace Aws
const OverrideButtonConfiguration & GetIOS() const
AWS_PINPOINT_API InAppMessageButton & operator=(Aws::Utils::Json::JsonView jsonValue)
InAppMessageButton & WithIOS(IOST &&value)
const OverrideButtonConfiguration & GetWeb() const
AWS_PINPOINT_API Aws::Utils::Json::JsonValue Jsonize() const
InAppMessageButton & WithAndroid(AndroidT &&value)
const DefaultButtonConfiguration & GetDefaultConfig() const
const OverrideButtonConfiguration & GetAndroid() const
InAppMessageButton & WithDefaultConfig(DefaultConfigT &&value)
InAppMessageButton & WithWeb(WebT &&value)
AWS_PINPOINT_API InAppMessageButton(Aws::Utils::Json::JsonView jsonValue)
void SetDefaultConfig(DefaultConfigT &&value)
AWS_PINPOINT_API InAppMessageButton()=default
Aws::Utils::Json::JsonValue JsonValue