AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
StateTransition.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/connect/model/ParticipantState.h>
9#include <aws/core/utils/DateTime.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 Connect
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_CONNECT_API StateTransition() = default;
37 AWS_CONNECT_API StateTransition(Aws::Utils::Json::JsonView jsonValue);
39 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline ParticipantState GetState() const { return m_state; }
47 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
48 inline void SetState(ParticipantState value) { m_stateHasBeenSet = true; m_state = value; }
49 inline StateTransition& WithState(ParticipantState value) { SetState(value); return *this;}
51
53
56 inline const Aws::Utils::DateTime& GetStateStartTimestamp() const { return m_stateStartTimestamp; }
57 inline bool StateStartTimestampHasBeenSet() const { return m_stateStartTimestampHasBeenSet; }
58 template<typename StateStartTimestampT = Aws::Utils::DateTime>
59 void SetStateStartTimestamp(StateStartTimestampT&& value) { m_stateStartTimestampHasBeenSet = true; m_stateStartTimestamp = std::forward<StateStartTimestampT>(value); }
60 template<typename StateStartTimestampT = Aws::Utils::DateTime>
61 StateTransition& WithStateStartTimestamp(StateStartTimestampT&& value) { SetStateStartTimestamp(std::forward<StateStartTimestampT>(value)); return *this;}
63
65
68 inline const Aws::Utils::DateTime& GetStateEndTimestamp() const { return m_stateEndTimestamp; }
69 inline bool StateEndTimestampHasBeenSet() const { return m_stateEndTimestampHasBeenSet; }
70 template<typename StateEndTimestampT = Aws::Utils::DateTime>
71 void SetStateEndTimestamp(StateEndTimestampT&& value) { m_stateEndTimestampHasBeenSet = true; m_stateEndTimestamp = std::forward<StateEndTimestampT>(value); }
72 template<typename StateEndTimestampT = Aws::Utils::DateTime>
73 StateTransition& WithStateEndTimestamp(StateEndTimestampT&& value) { SetStateEndTimestamp(std::forward<StateEndTimestampT>(value)); return *this;}
75 private:
76
78 bool m_stateHasBeenSet = false;
79
80 Aws::Utils::DateTime m_stateStartTimestamp{};
81 bool m_stateStartTimestampHasBeenSet = false;
82
83 Aws::Utils::DateTime m_stateEndTimestamp{};
84 bool m_stateEndTimestampHasBeenSet = false;
85 };
86
87} // namespace Model
88} // namespace Connect
89} // namespace Aws
void SetState(ParticipantState value)
ParticipantState GetState() const
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
StateTransition & WithStateEndTimestamp(StateEndTimestampT &&value)
AWS_CONNECT_API StateTransition & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_CONNECT_API StateTransition(Aws::Utils::Json::JsonView jsonValue)
void SetStateStartTimestamp(StateStartTimestampT &&value)
StateTransition & WithStateStartTimestamp(StateStartTimestampT &&value)
AWS_CONNECT_API StateTransition()=default
const Aws::Utils::DateTime & GetStateStartTimestamp() const
StateTransition & WithState(ParticipantState value)
const Aws::Utils::DateTime & GetStateEndTimestamp() const
void SetStateEndTimestamp(StateEndTimestampT &&value)
Aws::Utils::Json::JsonValue JsonValue