7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/crt/cbor/Cbor.h>
11#include <aws/monitoring/CloudWatch_EXPORTS.h>
12#include <aws/monitoring/model/ComparisonOperator.h>
13#include <aws/monitoring/model/Dimension.h>
14#include <aws/monitoring/model/EvaluationCriteria.h>
15#include <aws/monitoring/model/EvaluationState.h>
16#include <aws/monitoring/model/MetricDataQuery.h>
17#include <aws/monitoring/model/StandardUnit.h>
18#include <aws/monitoring/model/StateValue.h>
19#include <aws/monitoring/model/Statistic.h>
40 AWS_CLOUDWATCH_API
MetricAlarm(
const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
42 AWS_CLOUDWATCH_API
void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder)
const;
50 template <
typename AlarmNameT = Aws::String>
52 m_alarmNameHasBeenSet =
true;
53 m_alarmName = std::forward<AlarmNameT>(value);
55 template <
typename AlarmNameT = Aws::String>
68 template <
typename AlarmArnT = Aws::String>
70 m_alarmArnHasBeenSet =
true;
71 m_alarmArn = std::forward<AlarmArnT>(value);
73 template <
typename AlarmArnT = Aws::String>
86 template <
typename AlarmDescriptionT = Aws::String>
88 m_alarmDescriptionHasBeenSet =
true;
89 m_alarmDescription = std::forward<AlarmDescriptionT>(value);
91 template <
typename AlarmDescriptionT = Aws::String>
104 template <
typename AlarmConfigurationUpdatedTimestampT = Aws::Utils::DateTime>
106 m_alarmConfigurationUpdatedTimestampHasBeenSet =
true;
107 m_alarmConfigurationUpdatedTimestamp = std::forward<AlarmConfigurationUpdatedTimestampT>(value);
109 template <
typename AlarmConfigurationUpdatedTimestampT = Aws::Utils::DateTime>
124 m_actionsEnabledHasBeenSet =
true;
125 m_actionsEnabled = value;
141 template <
typename OKActionsT = Aws::Vector<Aws::String>>
143 m_oKActionsHasBeenSet =
true;
144 m_oKActions = std::forward<OKActionsT>(value);
146 template <
typename OKActionsT = Aws::Vector<Aws::String>>
151 template <
typename OKActionsT = Aws::String>
153 m_oKActionsHasBeenSet =
true;
154 m_oKActions.emplace_back(std::forward<OKActionsT>(value));
167 template <
typename AlarmActionsT = Aws::Vector<Aws::String>>
169 m_alarmActionsHasBeenSet =
true;
170 m_alarmActions = std::forward<AlarmActionsT>(value);
172 template <
typename AlarmActionsT = Aws::Vector<Aws::String>>
177 template <
typename AlarmActionsT = Aws::String>
179 m_alarmActionsHasBeenSet =
true;
180 m_alarmActions.emplace_back(std::forward<AlarmActionsT>(value));
193 template <
typename InsufficientDataActionsT = Aws::Vector<Aws::String>>
195 m_insufficientDataActionsHasBeenSet =
true;
196 m_insufficientDataActions = std::forward<InsufficientDataActionsT>(value);
198 template <
typename InsufficientDataActionsT = Aws::Vector<Aws::String>>
203 template <
typename InsufficientDataActionsT = Aws::String>
205 m_insufficientDataActionsHasBeenSet =
true;
206 m_insufficientDataActions.emplace_back(std::forward<InsufficientDataActionsT>(value));
218 m_stateValueHasBeenSet =
true;
219 m_stateValue = value;
233 template <
typename StateReasonT = Aws::String>
235 m_stateReasonHasBeenSet =
true;
236 m_stateReason = std::forward<StateReasonT>(value);
238 template <
typename StateReasonT = Aws::String>
251 template <
typename StateReasonDataT = Aws::String>
253 m_stateReasonDataHasBeenSet =
true;
254 m_stateReasonData = std::forward<StateReasonDataT>(value);
256 template <
typename StateReasonDataT = Aws::String>
270 template <
typename StateUpdatedTimestampT = Aws::Utils::DateTime>
272 m_stateUpdatedTimestampHasBeenSet =
true;
273 m_stateUpdatedTimestamp = std::forward<StateUpdatedTimestampT>(value);
275 template <
typename StateUpdatedTimestampT = Aws::Utils::DateTime>
289 template <
typename MetricNameT = Aws::String>
291 m_metricNameHasBeenSet =
true;
292 m_metricName = std::forward<MetricNameT>(value);
294 template <
typename MetricNameT = Aws::String>
307 template <
typename NamespaceT = Aws::String>
309 m_namespaceHasBeenSet =
true;
310 m_namespace = std::forward<NamespaceT>(value);
312 template <
typename NamespaceT = Aws::String>
327 m_statisticHasBeenSet =
true;
343 template <
typename ExtendedStatisticT = Aws::String>
345 m_extendedStatisticHasBeenSet =
true;
346 m_extendedStatistic = std::forward<ExtendedStatisticT>(value);
348 template <
typename ExtendedStatisticT = Aws::String>
361 template <
typename DimensionsT = Aws::Vector<Dimension>>
363 m_dimensionsHasBeenSet =
true;
364 m_dimensions = std::forward<DimensionsT>(value);
366 template <
typename DimensionsT = Aws::Vector<Dimension>>
371 template <
typename DimensionsT = Dimension>
373 m_dimensionsHasBeenSet =
true;
374 m_dimensions.emplace_back(std::forward<DimensionsT>(value));
386 m_periodHasBeenSet =
true;
402 m_unitHasBeenSet =
true;
419 m_evaluationPeriodsHasBeenSet =
true;
420 m_evaluationPeriods = value;
435 m_datapointsToAlarmHasBeenSet =
true;
436 m_datapointsToAlarm = value;
451 m_thresholdHasBeenSet =
true;
468 m_comparisonOperatorHasBeenSet =
true;
469 m_comparisonOperator = value;
489 template <
typename TreatMissingDataT = Aws::String>
491 m_treatMissingDataHasBeenSet =
true;
492 m_treatMissingData = std::forward<TreatMissingDataT>(value);
494 template <
typename TreatMissingDataT = Aws::String>
511 template <
typename EvaluateLowSampleCountPercentileT = Aws::String>
513 m_evaluateLowSampleCountPercentileHasBeenSet =
true;
514 m_evaluateLowSampleCountPercentile = std::forward<EvaluateLowSampleCountPercentileT>(value);
516 template <
typename EvaluateLowSampleCountPercentileT = Aws::String>
533 template <
typename MetricsT = Aws::Vector<MetricDataQuery>>
535 m_metricsHasBeenSet =
true;
536 m_metrics = std::forward<MetricsT>(value);
538 template <
typename MetricsT = Aws::Vector<MetricDataQuery>>
543 template <
typename MetricsT = MetricDataQuery>
545 m_metricsHasBeenSet =
true;
546 m_metrics.emplace_back(std::forward<MetricsT>(value));
559 template <
typename ThresholdMetricIdT = Aws::String>
561 m_thresholdMetricIdHasBeenSet =
true;
562 m_thresholdMetricId = std::forward<ThresholdMetricIdT>(value);
564 template <
typename ThresholdMetricIdT = Aws::String>
587 m_evaluationStateHasBeenSet =
true;
588 m_evaluationState = value;
603 template <
typename StateTransitionedTimestampT = Aws::Utils::DateTime>
605 m_stateTransitionedTimestampHasBeenSet =
true;
606 m_stateTransitionedTimestamp = std::forward<StateTransitionedTimestampT>(value);
608 template <
typename StateTransitionedTimestampT = Aws::Utils::DateTime>
621 template <
typename EvaluationCriteriaT = EvaluationCriteria>
623 m_evaluationCriteriaHasBeenSet =
true;
624 m_evaluationCriteria = std::forward<EvaluationCriteriaT>(value);
626 template <
typename EvaluationCriteriaT = EvaluationCriteria>
640 m_evaluationIntervalHasBeenSet =
true;
641 m_evaluationInterval = value;
657 bool m_actionsEnabled{
false};
687 int64_t m_evaluationPeriods{0};
689 int64_t m_datapointsToAlarm{0};
691 double m_threshold{0.0};
707 EvaluationCriteria m_evaluationCriteria;
709 int64_t m_evaluationInterval{0};
710 bool m_alarmNameHasBeenSet =
false;
711 bool m_alarmArnHasBeenSet =
false;
712 bool m_alarmDescriptionHasBeenSet =
false;
713 bool m_alarmConfigurationUpdatedTimestampHasBeenSet =
false;
714 bool m_actionsEnabledHasBeenSet =
false;
715 bool m_oKActionsHasBeenSet =
false;
716 bool m_alarmActionsHasBeenSet =
false;
717 bool m_insufficientDataActionsHasBeenSet =
false;
718 bool m_stateValueHasBeenSet =
false;
719 bool m_stateReasonHasBeenSet =
false;
720 bool m_stateReasonDataHasBeenSet =
false;
721 bool m_stateUpdatedTimestampHasBeenSet =
false;
722 bool m_metricNameHasBeenSet =
false;
723 bool m_namespaceHasBeenSet =
false;
724 bool m_statisticHasBeenSet =
false;
725 bool m_extendedStatisticHasBeenSet =
false;
726 bool m_dimensionsHasBeenSet =
false;
727 bool m_periodHasBeenSet =
false;
728 bool m_unitHasBeenSet =
false;
729 bool m_evaluationPeriodsHasBeenSet =
false;
730 bool m_datapointsToAlarmHasBeenSet =
false;
731 bool m_thresholdHasBeenSet =
false;
732 bool m_comparisonOperatorHasBeenSet =
false;
733 bool m_treatMissingDataHasBeenSet =
false;
734 bool m_evaluateLowSampleCountPercentileHasBeenSet =
false;
735 bool m_metricsHasBeenSet =
false;
736 bool m_thresholdMetricIdHasBeenSet =
false;
737 bool m_evaluationStateHasBeenSet =
false;
738 bool m_stateTransitionedTimestampHasBeenSet =
false;
739 bool m_evaluationCriteriaHasBeenSet =
false;
740 bool m_evaluationIntervalHasBeenSet =
false;
bool MetricNameHasBeenSet() const
bool ThresholdMetricIdHasBeenSet() const
EvaluationState GetEvaluationState() const
bool StateReasonHasBeenSet() const
MetricAlarm & WithEvaluateLowSampleCountPercentile(EvaluateLowSampleCountPercentileT &&value)
void SetTreatMissingData(TreatMissingDataT &&value)
bool EvaluationPeriodsHasBeenSet() const
bool ActionsEnabledHasBeenSet() const
const Aws::String & GetStateReasonData() const
void SetAlarmName(AlarmNameT &&value)
void SetEvaluateLowSampleCountPercentile(EvaluateLowSampleCountPercentileT &&value)
void SetActionsEnabled(bool value)
void SetNamespace(NamespaceT &&value)
MetricAlarm & WithStateValue(StateValue value)
bool EvaluationIntervalHasBeenSet() const
void SetPeriod(int64_t value)
AWS_CLOUDWATCH_API MetricAlarm & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
MetricAlarm & WithEvaluationPeriods(int64_t value)
void SetAlarmArn(AlarmArnT &&value)
const Aws::Vector< Aws::String > & GetOKActions() const
MetricAlarm & WithDimensions(DimensionsT &&value)
MetricAlarm & WithThreshold(double value)
MetricAlarm & WithOKActions(OKActionsT &&value)
bool ComparisonOperatorHasBeenSet() const
bool StateValueHasBeenSet() const
const Aws::Vector< Aws::String > & GetInsufficientDataActions() const
MetricAlarm & WithComparisonOperator(ComparisonOperator value)
MetricAlarm & WithEvaluationInterval(int64_t value)
MetricAlarm & WithTreatMissingData(TreatMissingDataT &&value)
const Aws::String & GetNamespace() const
double GetThreshold() const
const Aws::String & GetMetricName() const
MetricAlarm & WithExtendedStatistic(ExtendedStatisticT &&value)
ComparisonOperator GetComparisonOperator() const
bool AlarmDescriptionHasBeenSet() const
bool NamespaceHasBeenSet() const
MetricAlarm & WithEvaluationState(EvaluationState value)
void SetDimensions(DimensionsT &&value)
void SetStateTransitionedTimestamp(StateTransitionedTimestampT &&value)
MetricAlarm & WithAlarmActions(AlarmActionsT &&value)
void SetExtendedStatistic(ExtendedStatisticT &&value)
MetricAlarm & AddOKActions(OKActionsT &&value)
AWS_CLOUDWATCH_API MetricAlarm(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
MetricAlarm & WithPeriod(int64_t value)
MetricAlarm & WithStateReason(StateReasonT &&value)
MetricAlarm & WithAlarmDescription(AlarmDescriptionT &&value)
void SetInsufficientDataActions(InsufficientDataActionsT &&value)
const Aws::String & GetThresholdMetricId() const
void SetEvaluationInterval(int64_t value)
bool StateReasonDataHasBeenSet() const
void SetMetrics(MetricsT &&value)
bool OKActionsHasBeenSet() const
const Aws::String & GetStateReason() const
AWS_CLOUDWATCH_API MetricAlarm()=default
int64_t GetPeriod() const
bool AlarmNameHasBeenSet() const
bool DatapointsToAlarmHasBeenSet() const
bool AlarmArnHasBeenSet() const
int64_t GetEvaluationInterval() const
void SetMetricName(MetricNameT &&value)
MetricAlarm & WithMetrics(MetricsT &&value)
const Aws::Utils::DateTime & GetStateTransitionedTimestamp() const
const Aws::Utils::DateTime & GetAlarmConfigurationUpdatedTimestamp() const
bool EvaluationStateHasBeenSet() const
void SetDatapointsToAlarm(int64_t value)
MetricAlarm & WithEvaluationCriteria(EvaluationCriteriaT &&value)
bool AlarmConfigurationUpdatedTimestampHasBeenSet() const
bool EvaluateLowSampleCountPercentileHasBeenSet() const
const Aws::String & GetTreatMissingData() const
int64_t GetEvaluationPeriods() const
MetricAlarm & AddMetrics(MetricsT &&value)
bool AlarmActionsHasBeenSet() const
void SetAlarmConfigurationUpdatedTimestamp(AlarmConfigurationUpdatedTimestampT &&value)
bool UnitHasBeenSet() const
bool GetActionsEnabled() const
MetricAlarm & WithAlarmConfigurationUpdatedTimestamp(AlarmConfigurationUpdatedTimestampT &&value)
MetricAlarm & WithInsufficientDataActions(InsufficientDataActionsT &&value)
void SetThreshold(double value)
void SetComparisonOperator(ComparisonOperator value)
StateValue GetStateValue() const
bool StatisticHasBeenSet() const
void SetAlarmDescription(AlarmDescriptionT &&value)
const Aws::Vector< Dimension > & GetDimensions() const
const Aws::String & GetAlarmArn() const
const Aws::Vector< MetricDataQuery > & GetMetrics() const
MetricAlarm & WithDatapointsToAlarm(int64_t value)
void SetStateReasonData(StateReasonDataT &&value)
void SetUnit(StandardUnit value)
MetricAlarm & AddDimensions(DimensionsT &&value)
bool TreatMissingDataHasBeenSet() const
MetricAlarm & WithAlarmName(AlarmNameT &&value)
const Aws::String & GetExtendedStatistic() const
void SetStateReason(StateReasonT &&value)
Statistic GetStatistic() const
void SetEvaluationPeriods(int64_t value)
void SetEvaluationState(EvaluationState value)
const Aws::Vector< Aws::String > & GetAlarmActions() const
bool PeriodHasBeenSet() const
void SetStateUpdatedTimestamp(StateUpdatedTimestampT &&value)
MetricAlarm & WithThresholdMetricId(ThresholdMetricIdT &&value)
const Aws::String & GetAlarmDescription() const
AWS_CLOUDWATCH_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
MetricAlarm & WithActionsEnabled(bool value)
bool ExtendedStatisticHasBeenSet() const
MetricAlarm & WithUnit(StandardUnit value)
bool DimensionsHasBeenSet() const
bool MetricsHasBeenSet() const
MetricAlarm & WithMetricName(MetricNameT &&value)
MetricAlarm & WithStateTransitionedTimestamp(StateTransitionedTimestampT &&value)
int64_t GetDatapointsToAlarm() const
bool EvaluationCriteriaHasBeenSet() const
MetricAlarm & AddAlarmActions(AlarmActionsT &&value)
bool ThresholdHasBeenSet() const
bool InsufficientDataActionsHasBeenSet() const
void SetOKActions(OKActionsT &&value)
const EvaluationCriteria & GetEvaluationCriteria() const
MetricAlarm & WithStatistic(Statistic value)
const Aws::Utils::DateTime & GetStateUpdatedTimestamp() const
const Aws::String & GetEvaluateLowSampleCountPercentile() const
const Aws::String & GetAlarmName() const
MetricAlarm & WithStateReasonData(StateReasonDataT &&value)
MetricAlarm & WithAlarmArn(AlarmArnT &&value)
void SetStatistic(Statistic value)
bool StateUpdatedTimestampHasBeenSet() const
void SetThresholdMetricId(ThresholdMetricIdT &&value)
void SetAlarmActions(AlarmActionsT &&value)
StandardUnit GetUnit() const
void SetEvaluationCriteria(EvaluationCriteriaT &&value)
bool StateTransitionedTimestampHasBeenSet() const
MetricAlarm & WithStateUpdatedTimestamp(StateUpdatedTimestampT &&value)
MetricAlarm & AddInsufficientDataActions(InsufficientDataActionsT &&value)
void SetStateValue(StateValue value)
MetricAlarm & WithNamespace(NamespaceT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector