/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include This object continuously inspects your account's cost data for anomalies.
* It's based on MonitorType
and MonitorSpecification
.
* The content consists of detailed metadata and the current status of the monitor
* object. See Also:
AWS
* API Reference
The Amazon Resource Name (ARN) value.
*/ inline const Aws::String& GetMonitorArn() const{ return m_monitorArn; } /** *The Amazon Resource Name (ARN) value.
*/ inline bool MonitorArnHasBeenSet() const { return m_monitorArnHasBeenSet; } /** *The Amazon Resource Name (ARN) value.
*/ inline void SetMonitorArn(const Aws::String& value) { m_monitorArnHasBeenSet = true; m_monitorArn = value; } /** *The Amazon Resource Name (ARN) value.
*/ inline void SetMonitorArn(Aws::String&& value) { m_monitorArnHasBeenSet = true; m_monitorArn = std::move(value); } /** *The Amazon Resource Name (ARN) value.
*/ inline void SetMonitorArn(const char* value) { m_monitorArnHasBeenSet = true; m_monitorArn.assign(value); } /** *The Amazon Resource Name (ARN) value.
*/ inline AnomalyMonitor& WithMonitorArn(const Aws::String& value) { SetMonitorArn(value); return *this;} /** *The Amazon Resource Name (ARN) value.
*/ inline AnomalyMonitor& WithMonitorArn(Aws::String&& value) { SetMonitorArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) value.
*/ inline AnomalyMonitor& WithMonitorArn(const char* value) { SetMonitorArn(value); return *this;} /** *The name of the monitor.
*/ inline const Aws::String& GetMonitorName() const{ return m_monitorName; } /** *The name of the monitor.
*/ inline bool MonitorNameHasBeenSet() const { return m_monitorNameHasBeenSet; } /** *The name of the monitor.
*/ inline void SetMonitorName(const Aws::String& value) { m_monitorNameHasBeenSet = true; m_monitorName = value; } /** *The name of the monitor.
*/ inline void SetMonitorName(Aws::String&& value) { m_monitorNameHasBeenSet = true; m_monitorName = std::move(value); } /** *The name of the monitor.
*/ inline void SetMonitorName(const char* value) { m_monitorNameHasBeenSet = true; m_monitorName.assign(value); } /** *The name of the monitor.
*/ inline AnomalyMonitor& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} /** *The name of the monitor.
*/ inline AnomalyMonitor& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} /** *The name of the monitor.
*/ inline AnomalyMonitor& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} /** *The date when the monitor was created.
*/ inline const Aws::String& GetCreationDate() const{ return m_creationDate; } /** *The date when the monitor was created.
*/ inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; } /** *The date when the monitor was created.
*/ inline void SetCreationDate(const Aws::String& value) { m_creationDateHasBeenSet = true; m_creationDate = value; } /** *The date when the monitor was created.
*/ inline void SetCreationDate(Aws::String&& value) { m_creationDateHasBeenSet = true; m_creationDate = std::move(value); } /** *The date when the monitor was created.
*/ inline void SetCreationDate(const char* value) { m_creationDateHasBeenSet = true; m_creationDate.assign(value); } /** *The date when the monitor was created.
*/ inline AnomalyMonitor& WithCreationDate(const Aws::String& value) { SetCreationDate(value); return *this;} /** *The date when the monitor was created.
*/ inline AnomalyMonitor& WithCreationDate(Aws::String&& value) { SetCreationDate(std::move(value)); return *this;} /** *The date when the monitor was created.
*/ inline AnomalyMonitor& WithCreationDate(const char* value) { SetCreationDate(value); return *this;} /** *The date when the monitor was last updated.
*/ inline const Aws::String& GetLastUpdatedDate() const{ return m_lastUpdatedDate; } /** *The date when the monitor was last updated.
*/ inline bool LastUpdatedDateHasBeenSet() const { return m_lastUpdatedDateHasBeenSet; } /** *The date when the monitor was last updated.
*/ inline void SetLastUpdatedDate(const Aws::String& value) { m_lastUpdatedDateHasBeenSet = true; m_lastUpdatedDate = value; } /** *The date when the monitor was last updated.
*/ inline void SetLastUpdatedDate(Aws::String&& value) { m_lastUpdatedDateHasBeenSet = true; m_lastUpdatedDate = std::move(value); } /** *The date when the monitor was last updated.
*/ inline void SetLastUpdatedDate(const char* value) { m_lastUpdatedDateHasBeenSet = true; m_lastUpdatedDate.assign(value); } /** *The date when the monitor was last updated.
*/ inline AnomalyMonitor& WithLastUpdatedDate(const Aws::String& value) { SetLastUpdatedDate(value); return *this;} /** *The date when the monitor was last updated.
*/ inline AnomalyMonitor& WithLastUpdatedDate(Aws::String&& value) { SetLastUpdatedDate(std::move(value)); return *this;} /** *The date when the monitor was last updated.
*/ inline AnomalyMonitor& WithLastUpdatedDate(const char* value) { SetLastUpdatedDate(value); return *this;} /** *The date when the monitor last evaluated for anomalies.
*/ inline const Aws::String& GetLastEvaluatedDate() const{ return m_lastEvaluatedDate; } /** *The date when the monitor last evaluated for anomalies.
*/ inline bool LastEvaluatedDateHasBeenSet() const { return m_lastEvaluatedDateHasBeenSet; } /** *The date when the monitor last evaluated for anomalies.
*/ inline void SetLastEvaluatedDate(const Aws::String& value) { m_lastEvaluatedDateHasBeenSet = true; m_lastEvaluatedDate = value; } /** *The date when the monitor last evaluated for anomalies.
*/ inline void SetLastEvaluatedDate(Aws::String&& value) { m_lastEvaluatedDateHasBeenSet = true; m_lastEvaluatedDate = std::move(value); } /** *The date when the monitor last evaluated for anomalies.
*/ inline void SetLastEvaluatedDate(const char* value) { m_lastEvaluatedDateHasBeenSet = true; m_lastEvaluatedDate.assign(value); } /** *The date when the monitor last evaluated for anomalies.
*/ inline AnomalyMonitor& WithLastEvaluatedDate(const Aws::String& value) { SetLastEvaluatedDate(value); return *this;} /** *The date when the monitor last evaluated for anomalies.
*/ inline AnomalyMonitor& WithLastEvaluatedDate(Aws::String&& value) { SetLastEvaluatedDate(std::move(value)); return *this;} /** *The date when the monitor last evaluated for anomalies.
*/ inline AnomalyMonitor& WithLastEvaluatedDate(const char* value) { SetLastEvaluatedDate(value); return *this;} /** *The possible type values.
*/ inline const MonitorType& GetMonitorType() const{ return m_monitorType; } /** *The possible type values.
*/ inline bool MonitorTypeHasBeenSet() const { return m_monitorTypeHasBeenSet; } /** *The possible type values.
*/ inline void SetMonitorType(const MonitorType& value) { m_monitorTypeHasBeenSet = true; m_monitorType = value; } /** *The possible type values.
*/ inline void SetMonitorType(MonitorType&& value) { m_monitorTypeHasBeenSet = true; m_monitorType = std::move(value); } /** *The possible type values.
*/ inline AnomalyMonitor& WithMonitorType(const MonitorType& value) { SetMonitorType(value); return *this;} /** *The possible type values.
*/ inline AnomalyMonitor& WithMonitorType(MonitorType&& value) { SetMonitorType(std::move(value)); return *this;} /** *The dimensions to evaluate.
*/ inline const MonitorDimension& GetMonitorDimension() const{ return m_monitorDimension; } /** *The dimensions to evaluate.
*/ inline bool MonitorDimensionHasBeenSet() const { return m_monitorDimensionHasBeenSet; } /** *The dimensions to evaluate.
*/ inline void SetMonitorDimension(const MonitorDimension& value) { m_monitorDimensionHasBeenSet = true; m_monitorDimension = value; } /** *The dimensions to evaluate.
*/ inline void SetMonitorDimension(MonitorDimension&& value) { m_monitorDimensionHasBeenSet = true; m_monitorDimension = std::move(value); } /** *The dimensions to evaluate.
*/ inline AnomalyMonitor& WithMonitorDimension(const MonitorDimension& value) { SetMonitorDimension(value); return *this;} /** *The dimensions to evaluate.
*/ inline AnomalyMonitor& WithMonitorDimension(MonitorDimension&& value) { SetMonitorDimension(std::move(value)); return *this;} inline const Expression& GetMonitorSpecification() const{ return m_monitorSpecification; } inline bool MonitorSpecificationHasBeenSet() const { return m_monitorSpecificationHasBeenSet; } inline void SetMonitorSpecification(const Expression& value) { m_monitorSpecificationHasBeenSet = true; m_monitorSpecification = value; } inline void SetMonitorSpecification(Expression&& value) { m_monitorSpecificationHasBeenSet = true; m_monitorSpecification = std::move(value); } inline AnomalyMonitor& WithMonitorSpecification(const Expression& value) { SetMonitorSpecification(value); return *this;} inline AnomalyMonitor& WithMonitorSpecification(Expression&& value) { SetMonitorSpecification(std::move(value)); return *this;} /** *The value for evaluated dimensions.
*/ inline int GetDimensionalValueCount() const{ return m_dimensionalValueCount; } /** *The value for evaluated dimensions.
*/ inline bool DimensionalValueCountHasBeenSet() const { return m_dimensionalValueCountHasBeenSet; } /** *The value for evaluated dimensions.
*/ inline void SetDimensionalValueCount(int value) { m_dimensionalValueCountHasBeenSet = true; m_dimensionalValueCount = value; } /** *The value for evaluated dimensions.
*/ inline AnomalyMonitor& WithDimensionalValueCount(int value) { SetDimensionalValueCount(value); return *this;} private: Aws::String m_monitorArn; bool m_monitorArnHasBeenSet = false; Aws::String m_monitorName; bool m_monitorNameHasBeenSet = false; Aws::String m_creationDate; bool m_creationDateHasBeenSet = false; Aws::String m_lastUpdatedDate; bool m_lastUpdatedDateHasBeenSet = false; Aws::String m_lastEvaluatedDate; bool m_lastEvaluatedDateHasBeenSet = false; MonitorType m_monitorType; bool m_monitorTypeHasBeenSet = false; MonitorDimension m_monitorDimension; bool m_monitorDimensionHasBeenSet = false; Expression m_monitorSpecification; bool m_monitorSpecificationHasBeenSet = false; int m_dimensionalValueCount; bool m_dimensionalValueCountHasBeenSet = false; }; } // namespace Model } // namespace CostExplorer } // namespace Aws