AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Alarm.h
1
6#pragma once
7#include <aws/lightsail/Lightsail_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/lightsail/model/ResourceLocation.h>
11#include <aws/lightsail/model/ResourceType.h>
12#include <aws/lightsail/model/MonitoredResourceInfo.h>
13#include <aws/lightsail/model/ComparisonOperator.h>
14#include <aws/lightsail/model/TreatMissingData.h>
15#include <aws/lightsail/model/MetricStatistic.h>
16#include <aws/lightsail/model/MetricName.h>
17#include <aws/lightsail/model/AlarmState.h>
18#include <aws/lightsail/model/MetricUnit.h>
19#include <aws/core/utils/memory/stl/AWSVector.h>
20#include <aws/lightsail/model/ContactProtocol.h>
21#include <utility>
22
23namespace Aws
24{
25namespace Utils
26{
27namespace Json
28{
29 class JsonValue;
30 class JsonView;
31} // namespace Json
32} // namespace Utils
33namespace Lightsail
34{
35namespace Model
36{
37
46 class Alarm
47 {
48 public:
49 AWS_LIGHTSAIL_API Alarm() = default;
50 AWS_LIGHTSAIL_API Alarm(Aws::Utils::Json::JsonView jsonValue);
51 AWS_LIGHTSAIL_API Alarm& operator=(Aws::Utils::Json::JsonView jsonValue);
52 AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
53
54
56
59 inline const Aws::String& GetName() const { return m_name; }
60 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
61 template<typename NameT = Aws::String>
62 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
63 template<typename NameT = Aws::String>
64 Alarm& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
66
68
71 inline const Aws::String& GetArn() const { return m_arn; }
72 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
73 template<typename ArnT = Aws::String>
74 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
75 template<typename ArnT = Aws::String>
76 Alarm& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
78
80
83 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
84 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
85 template<typename CreatedAtT = Aws::Utils::DateTime>
86 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::forward<CreatedAtT>(value); }
87 template<typename CreatedAtT = Aws::Utils::DateTime>
88 Alarm& WithCreatedAt(CreatedAtT&& value) { SetCreatedAt(std::forward<CreatedAtT>(value)); return *this;}
90
92
95 inline const ResourceLocation& GetLocation() const { return m_location; }
96 inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; }
97 template<typename LocationT = ResourceLocation>
98 void SetLocation(LocationT&& value) { m_locationHasBeenSet = true; m_location = std::forward<LocationT>(value); }
99 template<typename LocationT = ResourceLocation>
100 Alarm& WithLocation(LocationT&& value) { SetLocation(std::forward<LocationT>(value)); return *this;}
102
104
107 inline ResourceType GetResourceType() const { return m_resourceType; }
108 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
109 inline void SetResourceType(ResourceType value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; }
110 inline Alarm& WithResourceType(ResourceType value) { SetResourceType(value); return *this;}
112
114
119 inline const Aws::String& GetSupportCode() const { return m_supportCode; }
120 inline bool SupportCodeHasBeenSet() const { return m_supportCodeHasBeenSet; }
121 template<typename SupportCodeT = Aws::String>
122 void SetSupportCode(SupportCodeT&& value) { m_supportCodeHasBeenSet = true; m_supportCode = std::forward<SupportCodeT>(value); }
123 template<typename SupportCodeT = Aws::String>
124 Alarm& WithSupportCode(SupportCodeT&& value) { SetSupportCode(std::forward<SupportCodeT>(value)); return *this;}
126
128
132 inline const MonitoredResourceInfo& GetMonitoredResourceInfo() const { return m_monitoredResourceInfo; }
133 inline bool MonitoredResourceInfoHasBeenSet() const { return m_monitoredResourceInfoHasBeenSet; }
134 template<typename MonitoredResourceInfoT = MonitoredResourceInfo>
135 void SetMonitoredResourceInfo(MonitoredResourceInfoT&& value) { m_monitoredResourceInfoHasBeenSet = true; m_monitoredResourceInfo = std::forward<MonitoredResourceInfoT>(value); }
136 template<typename MonitoredResourceInfoT = MonitoredResourceInfo>
137 Alarm& WithMonitoredResourceInfo(MonitoredResourceInfoT&& value) { SetMonitoredResourceInfo(std::forward<MonitoredResourceInfoT>(value)); return *this;}
139
141
145 inline ComparisonOperator GetComparisonOperator() const { return m_comparisonOperator; }
146 inline bool ComparisonOperatorHasBeenSet() const { return m_comparisonOperatorHasBeenSet; }
147 inline void SetComparisonOperator(ComparisonOperator value) { m_comparisonOperatorHasBeenSet = true; m_comparisonOperator = value; }
150
152
156 inline int GetEvaluationPeriods() const { return m_evaluationPeriods; }
157 inline bool EvaluationPeriodsHasBeenSet() const { return m_evaluationPeriodsHasBeenSet; }
158 inline void SetEvaluationPeriods(int value) { m_evaluationPeriodsHasBeenSet = true; m_evaluationPeriods = value; }
159 inline Alarm& WithEvaluationPeriods(int value) { SetEvaluationPeriods(value); return *this;}
161
163
166 inline int GetPeriod() const { return m_period; }
167 inline bool PeriodHasBeenSet() const { return m_periodHasBeenSet; }
168 inline void SetPeriod(int value) { m_periodHasBeenSet = true; m_period = value; }
169 inline Alarm& WithPeriod(int value) { SetPeriod(value); return *this;}
171
173
176 inline double GetThreshold() const { return m_threshold; }
177 inline bool ThresholdHasBeenSet() const { return m_thresholdHasBeenSet; }
178 inline void SetThreshold(double value) { m_thresholdHasBeenSet = true; m_threshold = value; }
179 inline Alarm& WithThreshold(double value) { SetThreshold(value); return *this;}
181
183
187 inline int GetDatapointsToAlarm() const { return m_datapointsToAlarm; }
188 inline bool DatapointsToAlarmHasBeenSet() const { return m_datapointsToAlarmHasBeenSet; }
189 inline void SetDatapointsToAlarm(int value) { m_datapointsToAlarmHasBeenSet = true; m_datapointsToAlarm = value; }
190 inline Alarm& WithDatapointsToAlarm(int value) { SetDatapointsToAlarm(value); return *this;}
192
194
206 inline TreatMissingData GetTreatMissingData() const { return m_treatMissingData; }
207 inline bool TreatMissingDataHasBeenSet() const { return m_treatMissingDataHasBeenSet; }
208 inline void SetTreatMissingData(TreatMissingData value) { m_treatMissingDataHasBeenSet = true; m_treatMissingData = value; }
209 inline Alarm& WithTreatMissingData(TreatMissingData value) { SetTreatMissingData(value); return *this;}
211
213
230 inline MetricStatistic GetStatistic() const { return m_statistic; }
231 inline bool StatisticHasBeenSet() const { return m_statisticHasBeenSet; }
232 inline void SetStatistic(MetricStatistic value) { m_statisticHasBeenSet = true; m_statistic = value; }
233 inline Alarm& WithStatistic(MetricStatistic value) { SetStatistic(value); return *this;}
235
237
240 inline MetricName GetMetricName() const { return m_metricName; }
241 inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; }
242 inline void SetMetricName(MetricName value) { m_metricNameHasBeenSet = true; m_metricName = value; }
243 inline Alarm& WithMetricName(MetricName value) { SetMetricName(value); return *this;}
245
247
255 inline AlarmState GetState() const { return m_state; }
256 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
257 inline void SetState(AlarmState value) { m_stateHasBeenSet = true; m_state = value; }
258 inline Alarm& WithState(AlarmState value) { SetState(value); return *this;}
260
262
265 inline MetricUnit GetUnit() const { return m_unit; }
266 inline bool UnitHasBeenSet() const { return m_unitHasBeenSet; }
267 inline void SetUnit(MetricUnit value) { m_unitHasBeenSet = true; m_unit = value; }
268 inline Alarm& WithUnit(MetricUnit value) { SetUnit(value); return *this;}
270
272
276 inline const Aws::Vector<ContactProtocol>& GetContactProtocols() const { return m_contactProtocols; }
277 inline bool ContactProtocolsHasBeenSet() const { return m_contactProtocolsHasBeenSet; }
278 template<typename ContactProtocolsT = Aws::Vector<ContactProtocol>>
279 void SetContactProtocols(ContactProtocolsT&& value) { m_contactProtocolsHasBeenSet = true; m_contactProtocols = std::forward<ContactProtocolsT>(value); }
280 template<typename ContactProtocolsT = Aws::Vector<ContactProtocol>>
281 Alarm& WithContactProtocols(ContactProtocolsT&& value) { SetContactProtocols(std::forward<ContactProtocolsT>(value)); return *this;}
282 inline Alarm& AddContactProtocols(ContactProtocol value) { m_contactProtocolsHasBeenSet = true; m_contactProtocols.push_back(value); return *this; }
284
286
289 inline const Aws::Vector<AlarmState>& GetNotificationTriggers() const { return m_notificationTriggers; }
290 inline bool NotificationTriggersHasBeenSet() const { return m_notificationTriggersHasBeenSet; }
291 template<typename NotificationTriggersT = Aws::Vector<AlarmState>>
292 void SetNotificationTriggers(NotificationTriggersT&& value) { m_notificationTriggersHasBeenSet = true; m_notificationTriggers = std::forward<NotificationTriggersT>(value); }
293 template<typename NotificationTriggersT = Aws::Vector<AlarmState>>
294 Alarm& WithNotificationTriggers(NotificationTriggersT&& value) { SetNotificationTriggers(std::forward<NotificationTriggersT>(value)); return *this;}
295 inline Alarm& AddNotificationTriggers(AlarmState value) { m_notificationTriggersHasBeenSet = true; m_notificationTriggers.push_back(value); return *this; }
297
299
302 inline bool GetNotificationEnabled() const { return m_notificationEnabled; }
303 inline bool NotificationEnabledHasBeenSet() const { return m_notificationEnabledHasBeenSet; }
304 inline void SetNotificationEnabled(bool value) { m_notificationEnabledHasBeenSet = true; m_notificationEnabled = value; }
305 inline Alarm& WithNotificationEnabled(bool value) { SetNotificationEnabled(value); return *this;}
307 private:
308
309 Aws::String m_name;
310 bool m_nameHasBeenSet = false;
311
312 Aws::String m_arn;
313 bool m_arnHasBeenSet = false;
314
315 Aws::Utils::DateTime m_createdAt{};
316 bool m_createdAtHasBeenSet = false;
317
318 ResourceLocation m_location;
319 bool m_locationHasBeenSet = false;
320
321 ResourceType m_resourceType{ResourceType::NOT_SET};
322 bool m_resourceTypeHasBeenSet = false;
323
324 Aws::String m_supportCode;
325 bool m_supportCodeHasBeenSet = false;
326
327 MonitoredResourceInfo m_monitoredResourceInfo;
328 bool m_monitoredResourceInfoHasBeenSet = false;
329
331 bool m_comparisonOperatorHasBeenSet = false;
332
333 int m_evaluationPeriods{0};
334 bool m_evaluationPeriodsHasBeenSet = false;
335
336 int m_period{0};
337 bool m_periodHasBeenSet = false;
338
339 double m_threshold{0.0};
340 bool m_thresholdHasBeenSet = false;
341
342 int m_datapointsToAlarm{0};
343 bool m_datapointsToAlarmHasBeenSet = false;
344
346 bool m_treatMissingDataHasBeenSet = false;
347
349 bool m_statisticHasBeenSet = false;
350
351 MetricName m_metricName{MetricName::NOT_SET};
352 bool m_metricNameHasBeenSet = false;
353
355 bool m_stateHasBeenSet = false;
356
358 bool m_unitHasBeenSet = false;
359
360 Aws::Vector<ContactProtocol> m_contactProtocols;
361 bool m_contactProtocolsHasBeenSet = false;
362
363 Aws::Vector<AlarmState> m_notificationTriggers;
364 bool m_notificationTriggersHasBeenSet = false;
365
366 bool m_notificationEnabled{false};
367 bool m_notificationEnabledHasBeenSet = false;
368 };
369
370} // namespace Model
371} // namespace Lightsail
372} // namespace Aws
void SetSupportCode(SupportCodeT &&value)
Definition Alarm.h:122
bool CreatedAtHasBeenSet() const
Definition Alarm.h:84
void SetThreshold(double value)
Definition Alarm.h:178
AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const
ResourceType GetResourceType() const
Definition Alarm.h:107
Alarm & WithArn(ArnT &&value)
Definition Alarm.h:76
Alarm & WithContactProtocols(ContactProtocolsT &&value)
Definition Alarm.h:281
double GetThreshold() const
Definition Alarm.h:176
void SetContactProtocols(ContactProtocolsT &&value)
Definition Alarm.h:279
bool GetNotificationEnabled() const
Definition Alarm.h:302
bool ThresholdHasBeenSet() const
Definition Alarm.h:177
Alarm & AddContactProtocols(ContactProtocol value)
Definition Alarm.h:282
Alarm & WithUnit(MetricUnit value)
Definition Alarm.h:268
void SetResourceType(ResourceType value)
Definition Alarm.h:109
Alarm & WithMonitoredResourceInfo(MonitoredResourceInfoT &&value)
Definition Alarm.h:137
bool LocationHasBeenSet() const
Definition Alarm.h:96
ComparisonOperator GetComparisonOperator() const
Definition Alarm.h:145
void SetCreatedAt(CreatedAtT &&value)
Definition Alarm.h:86
Alarm & WithCreatedAt(CreatedAtT &&value)
Definition Alarm.h:88
void SetNotificationEnabled(bool value)
Definition Alarm.h:304
const Aws::String & GetName() const
Definition Alarm.h:59
void SetArn(ArnT &&value)
Definition Alarm.h:74
MetricStatistic GetStatistic() const
Definition Alarm.h:230
bool TreatMissingDataHasBeenSet() const
Definition Alarm.h:207
const Aws::Vector< AlarmState > & GetNotificationTriggers() const
Definition Alarm.h:289
void SetMetricName(MetricName value)
Definition Alarm.h:242
Alarm & WithPeriod(int value)
Definition Alarm.h:169
void SetLocation(LocationT &&value)
Definition Alarm.h:98
Alarm & AddNotificationTriggers(AlarmState value)
Definition Alarm.h:295
void SetPeriod(int value)
Definition Alarm.h:168
bool MetricNameHasBeenSet() const
Definition Alarm.h:241
int GetDatapointsToAlarm() const
Definition Alarm.h:187
bool NameHasBeenSet() const
Definition Alarm.h:60
void SetDatapointsToAlarm(int value)
Definition Alarm.h:189
Alarm & WithNotificationEnabled(bool value)
Definition Alarm.h:305
AWS_LIGHTSAIL_API Alarm(Aws::Utils::Json::JsonView jsonValue)
Alarm & WithName(NameT &&value)
Definition Alarm.h:64
bool DatapointsToAlarmHasBeenSet() const
Definition Alarm.h:188
const MonitoredResourceInfo & GetMonitoredResourceInfo() const
Definition Alarm.h:132
bool UnitHasBeenSet() const
Definition Alarm.h:266
bool EvaluationPeriodsHasBeenSet() const
Definition Alarm.h:157
Alarm & WithNotificationTriggers(NotificationTriggersT &&value)
Definition Alarm.h:294
bool ResourceTypeHasBeenSet() const
Definition Alarm.h:108
void SetNotificationTriggers(NotificationTriggersT &&value)
Definition Alarm.h:292
void SetComparisonOperator(ComparisonOperator value)
Definition Alarm.h:147
Alarm & WithComparisonOperator(ComparisonOperator value)
Definition Alarm.h:148
Alarm & WithMetricName(MetricName value)
Definition Alarm.h:243
void SetEvaluationPeriods(int value)
Definition Alarm.h:158
void SetName(NameT &&value)
Definition Alarm.h:62
const Aws::Utils::DateTime & GetCreatedAt() const
Definition Alarm.h:83
const Aws::String & GetSupportCode() const
Definition Alarm.h:119
int GetEvaluationPeriods() const
Definition Alarm.h:156
Alarm & WithSupportCode(SupportCodeT &&value)
Definition Alarm.h:124
MetricUnit GetUnit() const
Definition Alarm.h:265
AWS_LIGHTSAIL_API Alarm()=default
void SetState(AlarmState value)
Definition Alarm.h:257
Alarm & WithEvaluationPeriods(int value)
Definition Alarm.h:159
void SetStatistic(MetricStatistic value)
Definition Alarm.h:232
Alarm & WithThreshold(double value)
Definition Alarm.h:179
bool ArnHasBeenSet() const
Definition Alarm.h:72
const Aws::Vector< ContactProtocol > & GetContactProtocols() const
Definition Alarm.h:276
bool StatisticHasBeenSet() const
Definition Alarm.h:231
Alarm & WithStatistic(MetricStatistic value)
Definition Alarm.h:233
void SetTreatMissingData(TreatMissingData value)
Definition Alarm.h:208
bool ComparisonOperatorHasBeenSet() const
Definition Alarm.h:146
Alarm & WithLocation(LocationT &&value)
Definition Alarm.h:100
bool MonitoredResourceInfoHasBeenSet() const
Definition Alarm.h:133
Alarm & WithResourceType(ResourceType value)
Definition Alarm.h:110
bool NotificationEnabledHasBeenSet() const
Definition Alarm.h:303
const Aws::String & GetArn() const
Definition Alarm.h:71
AWS_LIGHTSAIL_API Alarm & operator=(Aws::Utils::Json::JsonView jsonValue)
Alarm & WithDatapointsToAlarm(int value)
Definition Alarm.h:190
bool NotificationTriggersHasBeenSet() const
Definition Alarm.h:290
bool SupportCodeHasBeenSet() const
Definition Alarm.h:120
void SetMonitoredResourceInfo(MonitoredResourceInfoT &&value)
Definition Alarm.h:135
void SetUnit(MetricUnit value)
Definition Alarm.h:267
bool PeriodHasBeenSet() const
Definition Alarm.h:167
TreatMissingData GetTreatMissingData() const
Definition Alarm.h:206
const ResourceLocation & GetLocation() const
Definition Alarm.h:95
AlarmState GetState() const
Definition Alarm.h:255
Alarm & WithTreatMissingData(TreatMissingData value)
Definition Alarm.h:209
bool StateHasBeenSet() const
Definition Alarm.h:256
MetricName GetMetricName() const
Definition Alarm.h:240
bool ContactProtocolsHasBeenSet() const
Definition Alarm.h:277
Alarm & WithState(AlarmState value)
Definition Alarm.h:258
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue