AWS SDK for C++

AWS SDK for C++ Version 1.11.929

Loading...
Searching...
No Matches
MaintenanceWindow.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/workspaces-thin-client/WorkSpacesThinClient_EXPORTS.h>
9#include <aws/workspaces-thin-client/model/ApplyTimeOf.h>
10#include <aws/workspaces-thin-client/model/DayOfWeek.h>
11#include <aws/workspaces-thin-client/model/MaintenanceWindowType.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace WorkSpacesThinClient {
23namespace Model {
24
32 public:
33 AWS_WORKSPACESTHINCLIENT_API MaintenanceWindow() = default;
34 AWS_WORKSPACESTHINCLIENT_API MaintenanceWindow(Aws::Utils::Json::JsonView jsonValue);
35 AWS_WORKSPACESTHINCLIENT_API MaintenanceWindow& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_WORKSPACESTHINCLIENT_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline MaintenanceWindowType GetType() const { return m_type; }
43 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
44 inline void SetType(MaintenanceWindowType value) {
45 m_typeHasBeenSet = true;
46 m_type = value;
47 }
49 SetType(value);
50 return *this;
51 }
53
55
59 inline int GetStartTimeHour() const { return m_startTimeHour; }
60 inline bool StartTimeHourHasBeenSet() const { return m_startTimeHourHasBeenSet; }
61 inline void SetStartTimeHour(int value) {
62 m_startTimeHourHasBeenSet = true;
63 m_startTimeHour = value;
64 }
66 SetStartTimeHour(value);
67 return *this;
68 }
70
72
76 inline int GetStartTimeMinute() const { return m_startTimeMinute; }
77 inline bool StartTimeMinuteHasBeenSet() const { return m_startTimeMinuteHasBeenSet; }
78 inline void SetStartTimeMinute(int value) {
79 m_startTimeMinuteHasBeenSet = true;
80 m_startTimeMinute = value;
81 }
83 SetStartTimeMinute(value);
84 return *this;
85 }
87
89
93 inline int GetEndTimeHour() const { return m_endTimeHour; }
94 inline bool EndTimeHourHasBeenSet() const { return m_endTimeHourHasBeenSet; }
95 inline void SetEndTimeHour(int value) {
96 m_endTimeHourHasBeenSet = true;
97 m_endTimeHour = value;
98 }
100 SetEndTimeHour(value);
101 return *this;
102 }
104
106
110 inline int GetEndTimeMinute() const { return m_endTimeMinute; }
111 inline bool EndTimeMinuteHasBeenSet() const { return m_endTimeMinuteHasBeenSet; }
112 inline void SetEndTimeMinute(int value) {
113 m_endTimeMinuteHasBeenSet = true;
114 m_endTimeMinute = value;
115 }
117 SetEndTimeMinute(value);
118 return *this;
119 }
121
123
126 inline const Aws::Vector<DayOfWeek>& GetDaysOfTheWeek() const { return m_daysOfTheWeek; }
127 inline bool DaysOfTheWeekHasBeenSet() const { return m_daysOfTheWeekHasBeenSet; }
128 template <typename DaysOfTheWeekT = Aws::Vector<DayOfWeek>>
129 void SetDaysOfTheWeek(DaysOfTheWeekT&& value) {
130 m_daysOfTheWeekHasBeenSet = true;
131 m_daysOfTheWeek = std::forward<DaysOfTheWeekT>(value);
132 }
133 template <typename DaysOfTheWeekT = Aws::Vector<DayOfWeek>>
134 MaintenanceWindow& WithDaysOfTheWeek(DaysOfTheWeekT&& value) {
135 SetDaysOfTheWeek(std::forward<DaysOfTheWeekT>(value));
136 return *this;
137 }
139 m_daysOfTheWeekHasBeenSet = true;
140 m_daysOfTheWeek.push_back(value);
141 return *this;
142 }
144
146
150 inline ApplyTimeOf GetApplyTimeOf() const { return m_applyTimeOf; }
151 inline bool ApplyTimeOfHasBeenSet() const { return m_applyTimeOfHasBeenSet; }
152 inline void SetApplyTimeOf(ApplyTimeOf value) {
153 m_applyTimeOfHasBeenSet = true;
154 m_applyTimeOf = value;
155 }
157 SetApplyTimeOf(value);
158 return *this;
159 }
161 private:
163
164 int m_startTimeHour{0};
165
166 int m_startTimeMinute{0};
167
168 int m_endTimeHour{0};
169
170 int m_endTimeMinute{0};
171
172 Aws::Vector<DayOfWeek> m_daysOfTheWeek;
173
174 ApplyTimeOf m_applyTimeOf{ApplyTimeOf::NOT_SET};
175 bool m_typeHasBeenSet = false;
176 bool m_startTimeHourHasBeenSet = false;
177 bool m_startTimeMinuteHasBeenSet = false;
178 bool m_endTimeHourHasBeenSet = false;
179 bool m_endTimeMinuteHasBeenSet = false;
180 bool m_daysOfTheWeekHasBeenSet = false;
181 bool m_applyTimeOfHasBeenSet = false;
182};
183
184} // namespace Model
185} // namespace WorkSpacesThinClient
186} // namespace Aws
MaintenanceWindow & AddDaysOfTheWeek(DayOfWeek value)
MaintenanceWindow & WithDaysOfTheWeek(DaysOfTheWeekT &&value)
AWS_WORKSPACESTHINCLIENT_API MaintenanceWindow(Aws::Utils::Json::JsonView jsonValue)
MaintenanceWindow & WithType(MaintenanceWindowType value)
AWS_WORKSPACESTHINCLIENT_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_WORKSPACESTHINCLIENT_API MaintenanceWindow & operator=(Aws::Utils::Json::JsonView jsonValue)
MaintenanceWindow & WithApplyTimeOf(ApplyTimeOf value)
const Aws::Vector< DayOfWeek > & GetDaysOfTheWeek() const
AWS_WORKSPACESTHINCLIENT_API MaintenanceWindow()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue