AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
State.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/iotevents/IoTEvents_EXPORTS.h>
9#include <aws/iotevents/model/OnEnterLifecycle.h>
10#include <aws/iotevents/model/OnExitLifecycle.h>
11#include <aws/iotevents/model/OnInputLifecycle.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace IoTEvents {
23namespace Model {
24
30class State {
31 public:
32 AWS_IOTEVENTS_API State() = default;
33 AWS_IOTEVENTS_API State(Aws::Utils::Json::JsonView jsonValue);
34 AWS_IOTEVENTS_API State& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_IOTEVENTS_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::String& GetStateName() const { return m_stateName; }
42 inline bool StateNameHasBeenSet() const { return m_stateNameHasBeenSet; }
43 template <typename StateNameT = Aws::String>
44 void SetStateName(StateNameT&& value) {
45 m_stateNameHasBeenSet = true;
46 m_stateName = std::forward<StateNameT>(value);
47 }
48 template <typename StateNameT = Aws::String>
49 State& WithStateName(StateNameT&& value) {
50 SetStateName(std::forward<StateNameT>(value));
51 return *this;
52 }
54
56
60 inline const OnInputLifecycle& GetOnInput() const { return m_onInput; }
61 inline bool OnInputHasBeenSet() const { return m_onInputHasBeenSet; }
62 template <typename OnInputT = OnInputLifecycle>
63 void SetOnInput(OnInputT&& value) {
64 m_onInputHasBeenSet = true;
65 m_onInput = std::forward<OnInputT>(value);
66 }
67 template <typename OnInputT = OnInputLifecycle>
68 State& WithOnInput(OnInputT&& value) {
69 SetOnInput(std::forward<OnInputT>(value));
70 return *this;
71 }
73
75
79 inline const OnEnterLifecycle& GetOnEnter() const { return m_onEnter; }
80 inline bool OnEnterHasBeenSet() const { return m_onEnterHasBeenSet; }
81 template <typename OnEnterT = OnEnterLifecycle>
82 void SetOnEnter(OnEnterT&& value) {
83 m_onEnterHasBeenSet = true;
84 m_onEnter = std::forward<OnEnterT>(value);
85 }
86 template <typename OnEnterT = OnEnterLifecycle>
87 State& WithOnEnter(OnEnterT&& value) {
88 SetOnEnter(std::forward<OnEnterT>(value));
89 return *this;
90 }
92
94
98 inline const OnExitLifecycle& GetOnExit() const { return m_onExit; }
99 inline bool OnExitHasBeenSet() const { return m_onExitHasBeenSet; }
100 template <typename OnExitT = OnExitLifecycle>
101 void SetOnExit(OnExitT&& value) {
102 m_onExitHasBeenSet = true;
103 m_onExit = std::forward<OnExitT>(value);
104 }
105 template <typename OnExitT = OnExitLifecycle>
106 State& WithOnExit(OnExitT&& value) {
107 SetOnExit(std::forward<OnExitT>(value));
108 return *this;
109 }
111 private:
112 Aws::String m_stateName;
113
114 OnInputLifecycle m_onInput;
115
116 OnEnterLifecycle m_onEnter;
117
118 OnExitLifecycle m_onExit;
119 bool m_stateNameHasBeenSet = false;
120 bool m_onInputHasBeenSet = false;
121 bool m_onEnterHasBeenSet = false;
122 bool m_onExitHasBeenSet = false;
123};
124
125} // namespace Model
126} // namespace IoTEvents
127} // namespace Aws
AWS_IOTEVENTS_API State & operator=(Aws::Utils::Json::JsonView jsonValue)
bool OnEnterHasBeenSet() const
Definition State.h:80
const OnEnterLifecycle & GetOnEnter() const
Definition State.h:79
bool OnInputHasBeenSet() const
Definition State.h:61
State & WithOnInput(OnInputT &&value)
Definition State.h:68
void SetOnExit(OnExitT &&value)
Definition State.h:101
const OnInputLifecycle & GetOnInput() const
Definition State.h:60
bool OnExitHasBeenSet() const
Definition State.h:99
bool StateNameHasBeenSet() const
Definition State.h:42
State & WithOnExit(OnExitT &&value)
Definition State.h:106
void SetStateName(StateNameT &&value)
Definition State.h:44
AWS_IOTEVENTS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_IOTEVENTS_API State()=default
const Aws::String & GetStateName() const
Definition State.h:41
const OnExitLifecycle & GetOnExit() const
Definition State.h:98
AWS_IOTEVENTS_API State(Aws::Utils::Json::JsonView jsonValue)
void SetOnInput(OnInputT &&value)
Definition State.h:63
State & WithStateName(StateNameT &&value)
Definition State.h:49
void SetOnEnter(OnEnterT &&value)
Definition State.h:82
State & WithOnEnter(OnEnterT &&value)
Definition State.h:87
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue