/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace LookoutMetrics { namespace Model { /** *

A group of anomalous metrics

See Also:

AWS * API Reference

*/ class AnomalyGroup { public: AWS_LOOKOUTMETRICS_API AnomalyGroup(); AWS_LOOKOUTMETRICS_API AnomalyGroup(Aws::Utils::Json::JsonView jsonValue); AWS_LOOKOUTMETRICS_API AnomalyGroup& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_LOOKOUTMETRICS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The start time for the group.

*/ inline const Aws::String& GetStartTime() const{ return m_startTime; } /** *

The start time for the group.

*/ inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } /** *

The start time for the group.

*/ inline void SetStartTime(const Aws::String& value) { m_startTimeHasBeenSet = true; m_startTime = value; } /** *

The start time for the group.

*/ inline void SetStartTime(Aws::String&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } /** *

The start time for the group.

*/ inline void SetStartTime(const char* value) { m_startTimeHasBeenSet = true; m_startTime.assign(value); } /** *

The start time for the group.

*/ inline AnomalyGroup& WithStartTime(const Aws::String& value) { SetStartTime(value); return *this;} /** *

The start time for the group.

*/ inline AnomalyGroup& WithStartTime(Aws::String&& value) { SetStartTime(std::move(value)); return *this;} /** *

The start time for the group.

*/ inline AnomalyGroup& WithStartTime(const char* value) { SetStartTime(value); return *this;} /** *

The end time for the group.

*/ inline const Aws::String& GetEndTime() const{ return m_endTime; } /** *

The end time for the group.

*/ inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; } /** *

The end time for the group.

*/ inline void SetEndTime(const Aws::String& value) { m_endTimeHasBeenSet = true; m_endTime = value; } /** *

The end time for the group.

*/ inline void SetEndTime(Aws::String&& value) { m_endTimeHasBeenSet = true; m_endTime = std::move(value); } /** *

The end time for the group.

*/ inline void SetEndTime(const char* value) { m_endTimeHasBeenSet = true; m_endTime.assign(value); } /** *

The end time for the group.

*/ inline AnomalyGroup& WithEndTime(const Aws::String& value) { SetEndTime(value); return *this;} /** *

The end time for the group.

*/ inline AnomalyGroup& WithEndTime(Aws::String&& value) { SetEndTime(std::move(value)); return *this;} /** *

The end time for the group.

*/ inline AnomalyGroup& WithEndTime(const char* value) { SetEndTime(value); return *this;} /** *

The ID of the anomaly group.

*/ inline const Aws::String& GetAnomalyGroupId() const{ return m_anomalyGroupId; } /** *

The ID of the anomaly group.

*/ inline bool AnomalyGroupIdHasBeenSet() const { return m_anomalyGroupIdHasBeenSet; } /** *

The ID of the anomaly group.

*/ inline void SetAnomalyGroupId(const Aws::String& value) { m_anomalyGroupIdHasBeenSet = true; m_anomalyGroupId = value; } /** *

The ID of the anomaly group.

*/ inline void SetAnomalyGroupId(Aws::String&& value) { m_anomalyGroupIdHasBeenSet = true; m_anomalyGroupId = std::move(value); } /** *

The ID of the anomaly group.

*/ inline void SetAnomalyGroupId(const char* value) { m_anomalyGroupIdHasBeenSet = true; m_anomalyGroupId.assign(value); } /** *

The ID of the anomaly group.

*/ inline AnomalyGroup& WithAnomalyGroupId(const Aws::String& value) { SetAnomalyGroupId(value); return *this;} /** *

The ID of the anomaly group.

*/ inline AnomalyGroup& WithAnomalyGroupId(Aws::String&& value) { SetAnomalyGroupId(std::move(value)); return *this;} /** *

The ID of the anomaly group.

*/ inline AnomalyGroup& WithAnomalyGroupId(const char* value) { SetAnomalyGroupId(value); return *this;} /** *

The severity score of the group.

*/ inline double GetAnomalyGroupScore() const{ return m_anomalyGroupScore; } /** *

The severity score of the group.

*/ inline bool AnomalyGroupScoreHasBeenSet() const { return m_anomalyGroupScoreHasBeenSet; } /** *

The severity score of the group.

*/ inline void SetAnomalyGroupScore(double value) { m_anomalyGroupScoreHasBeenSet = true; m_anomalyGroupScore = value; } /** *

The severity score of the group.

*/ inline AnomalyGroup& WithAnomalyGroupScore(double value) { SetAnomalyGroupScore(value); return *this;} /** *

The name of the primary affected measure for the group.

*/ inline const Aws::String& GetPrimaryMetricName() const{ return m_primaryMetricName; } /** *

The name of the primary affected measure for the group.

*/ inline bool PrimaryMetricNameHasBeenSet() const { return m_primaryMetricNameHasBeenSet; } /** *

The name of the primary affected measure for the group.

*/ inline void SetPrimaryMetricName(const Aws::String& value) { m_primaryMetricNameHasBeenSet = true; m_primaryMetricName = value; } /** *

The name of the primary affected measure for the group.

*/ inline void SetPrimaryMetricName(Aws::String&& value) { m_primaryMetricNameHasBeenSet = true; m_primaryMetricName = std::move(value); } /** *

The name of the primary affected measure for the group.

*/ inline void SetPrimaryMetricName(const char* value) { m_primaryMetricNameHasBeenSet = true; m_primaryMetricName.assign(value); } /** *

The name of the primary affected measure for the group.

*/ inline AnomalyGroup& WithPrimaryMetricName(const Aws::String& value) { SetPrimaryMetricName(value); return *this;} /** *

The name of the primary affected measure for the group.

*/ inline AnomalyGroup& WithPrimaryMetricName(Aws::String&& value) { SetPrimaryMetricName(std::move(value)); return *this;} /** *

The name of the primary affected measure for the group.

*/ inline AnomalyGroup& WithPrimaryMetricName(const char* value) { SetPrimaryMetricName(value); return *this;} /** *

A list of measures affected by the anomaly.

*/ inline const Aws::Vector& GetMetricLevelImpactList() const{ return m_metricLevelImpactList; } /** *

A list of measures affected by the anomaly.

*/ inline bool MetricLevelImpactListHasBeenSet() const { return m_metricLevelImpactListHasBeenSet; } /** *

A list of measures affected by the anomaly.

*/ inline void SetMetricLevelImpactList(const Aws::Vector& value) { m_metricLevelImpactListHasBeenSet = true; m_metricLevelImpactList = value; } /** *

A list of measures affected by the anomaly.

*/ inline void SetMetricLevelImpactList(Aws::Vector&& value) { m_metricLevelImpactListHasBeenSet = true; m_metricLevelImpactList = std::move(value); } /** *

A list of measures affected by the anomaly.

*/ inline AnomalyGroup& WithMetricLevelImpactList(const Aws::Vector& value) { SetMetricLevelImpactList(value); return *this;} /** *

A list of measures affected by the anomaly.

*/ inline AnomalyGroup& WithMetricLevelImpactList(Aws::Vector&& value) { SetMetricLevelImpactList(std::move(value)); return *this;} /** *

A list of measures affected by the anomaly.

*/ inline AnomalyGroup& AddMetricLevelImpactList(const MetricLevelImpact& value) { m_metricLevelImpactListHasBeenSet = true; m_metricLevelImpactList.push_back(value); return *this; } /** *

A list of measures affected by the anomaly.

*/ inline AnomalyGroup& AddMetricLevelImpactList(MetricLevelImpact&& value) { m_metricLevelImpactListHasBeenSet = true; m_metricLevelImpactList.push_back(std::move(value)); return *this; } private: Aws::String m_startTime; bool m_startTimeHasBeenSet = false; Aws::String m_endTime; bool m_endTimeHasBeenSet = false; Aws::String m_anomalyGroupId; bool m_anomalyGroupIdHasBeenSet = false; double m_anomalyGroupScore; bool m_anomalyGroupScoreHasBeenSet = false; Aws::String m_primaryMetricName; bool m_primaryMetricNameHasBeenSet = false; Aws::Vector m_metricLevelImpactList; bool m_metricLevelImpactListHasBeenSet = false; }; } // namespace Model } // namespace LookoutMetrics } // namespace Aws