/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A configuration for Amazon SNS-integrated notifications.See
* Also:
AWS
* API Reference
Action that will be triggered when there is an alert.
*/ inline const Action& GetAction() const{ return m_action; } /** *Action that will be triggered when there is an alert.
*/ inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; } /** *Action that will be triggered when there is an alert.
*/ inline void SetAction(const Action& value) { m_actionHasBeenSet = true; m_action = value; } /** *Action that will be triggered when there is an alert.
*/ inline void SetAction(Action&& value) { m_actionHasBeenSet = true; m_action = std::move(value); } /** *Action that will be triggered when there is an alert.
*/ inline Alert& WithAction(const Action& value) { SetAction(value); return *this;} /** *Action that will be triggered when there is an alert.
*/ inline Alert& WithAction(Action&& value) { SetAction(std::move(value)); return *this;} /** *A description of the alert.
*/ inline const Aws::String& GetAlertDescription() const{ return m_alertDescription; } /** *A description of the alert.
*/ inline bool AlertDescriptionHasBeenSet() const { return m_alertDescriptionHasBeenSet; } /** *A description of the alert.
*/ inline void SetAlertDescription(const Aws::String& value) { m_alertDescriptionHasBeenSet = true; m_alertDescription = value; } /** *A description of the alert.
*/ inline void SetAlertDescription(Aws::String&& value) { m_alertDescriptionHasBeenSet = true; m_alertDescription = std::move(value); } /** *A description of the alert.
*/ inline void SetAlertDescription(const char* value) { m_alertDescriptionHasBeenSet = true; m_alertDescription.assign(value); } /** *A description of the alert.
*/ inline Alert& WithAlertDescription(const Aws::String& value) { SetAlertDescription(value); return *this;} /** *A description of the alert.
*/ inline Alert& WithAlertDescription(Aws::String&& value) { SetAlertDescription(std::move(value)); return *this;} /** *A description of the alert.
*/ inline Alert& WithAlertDescription(const char* value) { SetAlertDescription(value); return *this;} /** *The ARN of the alert.
*/ inline const Aws::String& GetAlertArn() const{ return m_alertArn; } /** *The ARN of the alert.
*/ inline bool AlertArnHasBeenSet() const { return m_alertArnHasBeenSet; } /** *The ARN of the alert.
*/ inline void SetAlertArn(const Aws::String& value) { m_alertArnHasBeenSet = true; m_alertArn = value; } /** *The ARN of the alert.
*/ inline void SetAlertArn(Aws::String&& value) { m_alertArnHasBeenSet = true; m_alertArn = std::move(value); } /** *The ARN of the alert.
*/ inline void SetAlertArn(const char* value) { m_alertArnHasBeenSet = true; m_alertArn.assign(value); } /** *The ARN of the alert.
*/ inline Alert& WithAlertArn(const Aws::String& value) { SetAlertArn(value); return *this;} /** *The ARN of the alert.
*/ inline Alert& WithAlertArn(Aws::String&& value) { SetAlertArn(std::move(value)); return *this;} /** *The ARN of the alert.
*/ inline Alert& WithAlertArn(const char* value) { SetAlertArn(value); return *this;} /** *The ARN of the detector to which the alert is attached.
*/ inline const Aws::String& GetAnomalyDetectorArn() const{ return m_anomalyDetectorArn; } /** *The ARN of the detector to which the alert is attached.
*/ inline bool AnomalyDetectorArnHasBeenSet() const { return m_anomalyDetectorArnHasBeenSet; } /** *The ARN of the detector to which the alert is attached.
*/ inline void SetAnomalyDetectorArn(const Aws::String& value) { m_anomalyDetectorArnHasBeenSet = true; m_anomalyDetectorArn = value; } /** *The ARN of the detector to which the alert is attached.
*/ inline void SetAnomalyDetectorArn(Aws::String&& value) { m_anomalyDetectorArnHasBeenSet = true; m_anomalyDetectorArn = std::move(value); } /** *The ARN of the detector to which the alert is attached.
*/ inline void SetAnomalyDetectorArn(const char* value) { m_anomalyDetectorArnHasBeenSet = true; m_anomalyDetectorArn.assign(value); } /** *The ARN of the detector to which the alert is attached.
*/ inline Alert& WithAnomalyDetectorArn(const Aws::String& value) { SetAnomalyDetectorArn(value); return *this;} /** *The ARN of the detector to which the alert is attached.
*/ inline Alert& WithAnomalyDetectorArn(Aws::String&& value) { SetAnomalyDetectorArn(std::move(value)); return *this;} /** *The ARN of the detector to which the alert is attached.
*/ inline Alert& WithAnomalyDetectorArn(const char* value) { SetAnomalyDetectorArn(value); return *this;} /** *The name of the alert.
*/ inline const Aws::String& GetAlertName() const{ return m_alertName; } /** *The name of the alert.
*/ inline bool AlertNameHasBeenSet() const { return m_alertNameHasBeenSet; } /** *The name of the alert.
*/ inline void SetAlertName(const Aws::String& value) { m_alertNameHasBeenSet = true; m_alertName = value; } /** *The name of the alert.
*/ inline void SetAlertName(Aws::String&& value) { m_alertNameHasBeenSet = true; m_alertName = std::move(value); } /** *The name of the alert.
*/ inline void SetAlertName(const char* value) { m_alertNameHasBeenSet = true; m_alertName.assign(value); } /** *The name of the alert.
*/ inline Alert& WithAlertName(const Aws::String& value) { SetAlertName(value); return *this;} /** *The name of the alert.
*/ inline Alert& WithAlertName(Aws::String&& value) { SetAlertName(std::move(value)); return *this;} /** *The name of the alert.
*/ inline Alert& WithAlertName(const char* value) { SetAlertName(value); return *this;} /** *The minimum severity for an anomaly to trigger the alert.
*/ inline int GetAlertSensitivityThreshold() const{ return m_alertSensitivityThreshold; } /** *The minimum severity for an anomaly to trigger the alert.
*/ inline bool AlertSensitivityThresholdHasBeenSet() const { return m_alertSensitivityThresholdHasBeenSet; } /** *The minimum severity for an anomaly to trigger the alert.
*/ inline void SetAlertSensitivityThreshold(int value) { m_alertSensitivityThresholdHasBeenSet = true; m_alertSensitivityThreshold = value; } /** *The minimum severity for an anomaly to trigger the alert.
*/ inline Alert& WithAlertSensitivityThreshold(int value) { SetAlertSensitivityThreshold(value); return *this;} /** *The type of the alert.
*/ inline const AlertType& GetAlertType() const{ return m_alertType; } /** *The type of the alert.
*/ inline bool AlertTypeHasBeenSet() const { return m_alertTypeHasBeenSet; } /** *The type of the alert.
*/ inline void SetAlertType(const AlertType& value) { m_alertTypeHasBeenSet = true; m_alertType = value; } /** *The type of the alert.
*/ inline void SetAlertType(AlertType&& value) { m_alertTypeHasBeenSet = true; m_alertType = std::move(value); } /** *The type of the alert.
*/ inline Alert& WithAlertType(const AlertType& value) { SetAlertType(value); return *this;} /** *The type of the alert.
*/ inline Alert& WithAlertType(AlertType&& value) { SetAlertType(std::move(value)); return *this;} /** *The status of the alert.
*/ inline const AlertStatus& GetAlertStatus() const{ return m_alertStatus; } /** *The status of the alert.
*/ inline bool AlertStatusHasBeenSet() const { return m_alertStatusHasBeenSet; } /** *The status of the alert.
*/ inline void SetAlertStatus(const AlertStatus& value) { m_alertStatusHasBeenSet = true; m_alertStatus = value; } /** *The status of the alert.
*/ inline void SetAlertStatus(AlertStatus&& value) { m_alertStatusHasBeenSet = true; m_alertStatus = std::move(value); } /** *The status of the alert.
*/ inline Alert& WithAlertStatus(const AlertStatus& value) { SetAlertStatus(value); return *this;} /** *The status of the alert.
*/ inline Alert& WithAlertStatus(AlertStatus&& value) { SetAlertStatus(std::move(value)); return *this;} /** *The time at which the alert was last modified.
*/ inline const Aws::Utils::DateTime& GetLastModificationTime() const{ return m_lastModificationTime; } /** *The time at which the alert was last modified.
*/ inline bool LastModificationTimeHasBeenSet() const { return m_lastModificationTimeHasBeenSet; } /** *The time at which the alert was last modified.
*/ inline void SetLastModificationTime(const Aws::Utils::DateTime& value) { m_lastModificationTimeHasBeenSet = true; m_lastModificationTime = value; } /** *The time at which the alert was last modified.
*/ inline void SetLastModificationTime(Aws::Utils::DateTime&& value) { m_lastModificationTimeHasBeenSet = true; m_lastModificationTime = std::move(value); } /** *The time at which the alert was last modified.
*/ inline Alert& WithLastModificationTime(const Aws::Utils::DateTime& value) { SetLastModificationTime(value); return *this;} /** *The time at which the alert was last modified.
*/ inline Alert& WithLastModificationTime(Aws::Utils::DateTime&& value) { SetLastModificationTime(std::move(value)); return *this;} /** *The time at which the alert was created.
*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *The time at which the alert was created.
*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *The time at which the alert was created.
*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *The time at which the alert was created.
*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *The time at which the alert was created.
*/ inline Alert& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *The time at which the alert was created.
*/ inline Alert& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *The configuration of the alert filters, containing MetricList and * DimensionFilter.
*/ inline const AlertFilters& GetAlertFilters() const{ return m_alertFilters; } /** *The configuration of the alert filters, containing MetricList and * DimensionFilter.
*/ inline bool AlertFiltersHasBeenSet() const { return m_alertFiltersHasBeenSet; } /** *The configuration of the alert filters, containing MetricList and * DimensionFilter.
*/ inline void SetAlertFilters(const AlertFilters& value) { m_alertFiltersHasBeenSet = true; m_alertFilters = value; } /** *The configuration of the alert filters, containing MetricList and * DimensionFilter.
*/ inline void SetAlertFilters(AlertFilters&& value) { m_alertFiltersHasBeenSet = true; m_alertFilters = std::move(value); } /** *The configuration of the alert filters, containing MetricList and * DimensionFilter.
*/ inline Alert& WithAlertFilters(const AlertFilters& value) { SetAlertFilters(value); return *this;} /** *The configuration of the alert filters, containing MetricList and * DimensionFilter.
*/ inline Alert& WithAlertFilters(AlertFilters&& value) { SetAlertFilters(std::move(value)); return *this;} private: Action m_action; bool m_actionHasBeenSet = false; Aws::String m_alertDescription; bool m_alertDescriptionHasBeenSet = false; Aws::String m_alertArn; bool m_alertArnHasBeenSet = false; Aws::String m_anomalyDetectorArn; bool m_anomalyDetectorArnHasBeenSet = false; Aws::String m_alertName; bool m_alertNameHasBeenSet = false; int m_alertSensitivityThreshold; bool m_alertSensitivityThresholdHasBeenSet = false; AlertType m_alertType; bool m_alertTypeHasBeenSet = false; AlertStatus m_alertStatus; bool m_alertStatusHasBeenSet = false; Aws::Utils::DateTime m_lastModificationTime; bool m_lastModificationTimeHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; AlertFilters m_alertFilters; bool m_alertFiltersHasBeenSet = false; }; } // namespace Model } // namespace LookoutMetrics } // namespace Aws