AWS SDK for C++

AWS SDK for C++ Version 1.11.745

Loading...
Searching...
No Matches
SessionStatus.h
1
6#pragma once
7#include <aws/athena/Athena_EXPORTS.h>
8#include <aws/athena/model/SessionState.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Athena {
22namespace Model {
23
31 public:
32 AWS_ATHENA_API SessionStatus() = default;
33 AWS_ATHENA_API SessionStatus(Aws::Utils::Json::JsonView jsonValue);
35 AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::Utils::DateTime& GetStartDateTime() const { return m_startDateTime; }
42 inline bool StartDateTimeHasBeenSet() const { return m_startDateTimeHasBeenSet; }
43 template <typename StartDateTimeT = Aws::Utils::DateTime>
44 void SetStartDateTime(StartDateTimeT&& value) {
45 m_startDateTimeHasBeenSet = true;
46 m_startDateTime = std::forward<StartDateTimeT>(value);
47 }
48 template <typename StartDateTimeT = Aws::Utils::DateTime>
49 SessionStatus& WithStartDateTime(StartDateTimeT&& value) {
50 SetStartDateTime(std::forward<StartDateTimeT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::Utils::DateTime& GetLastModifiedDateTime() const { return m_lastModifiedDateTime; }
60 inline bool LastModifiedDateTimeHasBeenSet() const { return m_lastModifiedDateTimeHasBeenSet; }
61 template <typename LastModifiedDateTimeT = Aws::Utils::DateTime>
62 void SetLastModifiedDateTime(LastModifiedDateTimeT&& value) {
63 m_lastModifiedDateTimeHasBeenSet = true;
64 m_lastModifiedDateTime = std::forward<LastModifiedDateTimeT>(value);
65 }
66 template <typename LastModifiedDateTimeT = Aws::Utils::DateTime>
67 SessionStatus& WithLastModifiedDateTime(LastModifiedDateTimeT&& value) {
68 SetLastModifiedDateTime(std::forward<LastModifiedDateTimeT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::Utils::DateTime& GetEndDateTime() const { return m_endDateTime; }
78 inline bool EndDateTimeHasBeenSet() const { return m_endDateTimeHasBeenSet; }
79 template <typename EndDateTimeT = Aws::Utils::DateTime>
80 void SetEndDateTime(EndDateTimeT&& value) {
81 m_endDateTimeHasBeenSet = true;
82 m_endDateTime = std::forward<EndDateTimeT>(value);
83 }
84 template <typename EndDateTimeT = Aws::Utils::DateTime>
85 SessionStatus& WithEndDateTime(EndDateTimeT&& value) {
86 SetEndDateTime(std::forward<EndDateTimeT>(value));
87 return *this;
88 }
90
92
96 inline const Aws::Utils::DateTime& GetIdleSinceDateTime() const { return m_idleSinceDateTime; }
97 inline bool IdleSinceDateTimeHasBeenSet() const { return m_idleSinceDateTimeHasBeenSet; }
98 template <typename IdleSinceDateTimeT = Aws::Utils::DateTime>
99 void SetIdleSinceDateTime(IdleSinceDateTimeT&& value) {
100 m_idleSinceDateTimeHasBeenSet = true;
101 m_idleSinceDateTime = std::forward<IdleSinceDateTimeT>(value);
102 }
103 template <typename IdleSinceDateTimeT = Aws::Utils::DateTime>
104 SessionStatus& WithIdleSinceDateTime(IdleSinceDateTimeT&& value) {
105 SetIdleSinceDateTime(std::forward<IdleSinceDateTimeT>(value));
106 return *this;
107 }
109
111
123 inline SessionState GetState() const { return m_state; }
124 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
125 inline void SetState(SessionState value) {
126 m_stateHasBeenSet = true;
127 m_state = value;
128 }
130 SetState(value);
131 return *this;
132 }
134
136
140 inline const Aws::String& GetStateChangeReason() const { return m_stateChangeReason; }
141 inline bool StateChangeReasonHasBeenSet() const { return m_stateChangeReasonHasBeenSet; }
142 template <typename StateChangeReasonT = Aws::String>
143 void SetStateChangeReason(StateChangeReasonT&& value) {
144 m_stateChangeReasonHasBeenSet = true;
145 m_stateChangeReason = std::forward<StateChangeReasonT>(value);
146 }
147 template <typename StateChangeReasonT = Aws::String>
148 SessionStatus& WithStateChangeReason(StateChangeReasonT&& value) {
149 SetStateChangeReason(std::forward<StateChangeReasonT>(value));
150 return *this;
151 }
153 private:
154 Aws::Utils::DateTime m_startDateTime{};
155
156 Aws::Utils::DateTime m_lastModifiedDateTime{};
157
158 Aws::Utils::DateTime m_endDateTime{};
159
160 Aws::Utils::DateTime m_idleSinceDateTime{};
161
163
164 Aws::String m_stateChangeReason;
165 bool m_startDateTimeHasBeenSet = false;
166 bool m_lastModifiedDateTimeHasBeenSet = false;
167 bool m_endDateTimeHasBeenSet = false;
168 bool m_idleSinceDateTimeHasBeenSet = false;
169 bool m_stateHasBeenSet = false;
170 bool m_stateChangeReasonHasBeenSet = false;
171};
172
173} // namespace Model
174} // namespace Athena
175} // namespace Aws
AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const
SessionStatus & WithEndDateTime(EndDateTimeT &&value)
SessionStatus & WithState(SessionState value)
SessionStatus & WithLastModifiedDateTime(LastModifiedDateTimeT &&value)
AWS_ATHENA_API SessionStatus()=default
void SetStateChangeReason(StateChangeReasonT &&value)
SessionStatus & WithStateChangeReason(StateChangeReasonT &&value)
AWS_ATHENA_API SessionStatus(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetStartDateTime() const
void SetLastModifiedDateTime(LastModifiedDateTimeT &&value)
void SetState(SessionState value)
void SetStartDateTime(StartDateTimeT &&value)
void SetIdleSinceDateTime(IdleSinceDateTimeT &&value)
const Aws::Utils::DateTime & GetIdleSinceDateTime() const
const Aws::Utils::DateTime & GetLastModifiedDateTime() const
void SetEndDateTime(EndDateTimeT &&value)
SessionStatus & WithStartDateTime(StartDateTimeT &&value)
const Aws::String & GetStateChangeReason() const
SessionStatus & WithIdleSinceDateTime(IdleSinceDateTimeT &&value)
AWS_ATHENA_API SessionStatus & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetEndDateTime() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue