/** * 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 { /** *

Details about a dimension that contributed to an anomaly.

See * Also:

AWS * API Reference

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

The name of the dimension.

*/ inline const Aws::String& GetDimensionName() const{ return m_dimensionName; } /** *

The name of the dimension.

*/ inline bool DimensionNameHasBeenSet() const { return m_dimensionNameHasBeenSet; } /** *

The name of the dimension.

*/ inline void SetDimensionName(const Aws::String& value) { m_dimensionNameHasBeenSet = true; m_dimensionName = value; } /** *

The name of the dimension.

*/ inline void SetDimensionName(Aws::String&& value) { m_dimensionNameHasBeenSet = true; m_dimensionName = std::move(value); } /** *

The name of the dimension.

*/ inline void SetDimensionName(const char* value) { m_dimensionNameHasBeenSet = true; m_dimensionName.assign(value); } /** *

The name of the dimension.

*/ inline DimensionContribution& WithDimensionName(const Aws::String& value) { SetDimensionName(value); return *this;} /** *

The name of the dimension.

*/ inline DimensionContribution& WithDimensionName(Aws::String&& value) { SetDimensionName(std::move(value)); return *this;} /** *

The name of the dimension.

*/ inline DimensionContribution& WithDimensionName(const char* value) { SetDimensionName(value); return *this;} /** *

A list of dimension values that contributed to the anomaly.

*/ inline const Aws::Vector& GetDimensionValueContributionList() const{ return m_dimensionValueContributionList; } /** *

A list of dimension values that contributed to the anomaly.

*/ inline bool DimensionValueContributionListHasBeenSet() const { return m_dimensionValueContributionListHasBeenSet; } /** *

A list of dimension values that contributed to the anomaly.

*/ inline void SetDimensionValueContributionList(const Aws::Vector& value) { m_dimensionValueContributionListHasBeenSet = true; m_dimensionValueContributionList = value; } /** *

A list of dimension values that contributed to the anomaly.

*/ inline void SetDimensionValueContributionList(Aws::Vector&& value) { m_dimensionValueContributionListHasBeenSet = true; m_dimensionValueContributionList = std::move(value); } /** *

A list of dimension values that contributed to the anomaly.

*/ inline DimensionContribution& WithDimensionValueContributionList(const Aws::Vector& value) { SetDimensionValueContributionList(value); return *this;} /** *

A list of dimension values that contributed to the anomaly.

*/ inline DimensionContribution& WithDimensionValueContributionList(Aws::Vector&& value) { SetDimensionValueContributionList(std::move(value)); return *this;} /** *

A list of dimension values that contributed to the anomaly.

*/ inline DimensionContribution& AddDimensionValueContributionList(const DimensionValueContribution& value) { m_dimensionValueContributionListHasBeenSet = true; m_dimensionValueContributionList.push_back(value); return *this; } /** *

A list of dimension values that contributed to the anomaly.

*/ inline DimensionContribution& AddDimensionValueContributionList(DimensionValueContribution&& value) { m_dimensionValueContributionListHasBeenSet = true; m_dimensionValueContributionList.push_back(std::move(value)); return *this; } private: Aws::String m_dimensionName; bool m_dimensionNameHasBeenSet = false; Aws::Vector m_dimensionValueContributionList; bool m_dimensionValueContributionListHasBeenSet = false; }; } // namespace Model } // namespace LookoutMetrics } // namespace Aws