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

Specifies metric-based criteria for including or excluding endpoints from a * segment. These criteria derive from custom metrics that you define for * endpoints.

See Also:

AWS * API Reference

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

The operator to use when comparing metric values. Valid values are: * GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and * EQUAL.

*/ inline const Aws::String& GetComparisonOperator() const{ return m_comparisonOperator; } /** *

The operator to use when comparing metric values. Valid values are: * GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and * EQUAL.

*/ inline bool ComparisonOperatorHasBeenSet() const { return m_comparisonOperatorHasBeenSet; } /** *

The operator to use when comparing metric values. Valid values are: * GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and * EQUAL.

*/ inline void SetComparisonOperator(const Aws::String& value) { m_comparisonOperatorHasBeenSet = true; m_comparisonOperator = value; } /** *

The operator to use when comparing metric values. Valid values are: * GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and * EQUAL.

*/ inline void SetComparisonOperator(Aws::String&& value) { m_comparisonOperatorHasBeenSet = true; m_comparisonOperator = std::move(value); } /** *

The operator to use when comparing metric values. Valid values are: * GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and * EQUAL.

*/ inline void SetComparisonOperator(const char* value) { m_comparisonOperatorHasBeenSet = true; m_comparisonOperator.assign(value); } /** *

The operator to use when comparing metric values. Valid values are: * GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and * EQUAL.

*/ inline MetricDimension& WithComparisonOperator(const Aws::String& value) { SetComparisonOperator(value); return *this;} /** *

The operator to use when comparing metric values. Valid values are: * GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and * EQUAL.

*/ inline MetricDimension& WithComparisonOperator(Aws::String&& value) { SetComparisonOperator(std::move(value)); return *this;} /** *

The operator to use when comparing metric values. Valid values are: * GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and * EQUAL.

*/ inline MetricDimension& WithComparisonOperator(const char* value) { SetComparisonOperator(value); return *this;} /** *

The value to compare.

*/ inline double GetValue() const{ return m_value; } /** *

The value to compare.

*/ inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; } /** *

The value to compare.

*/ inline void SetValue(double value) { m_valueHasBeenSet = true; m_value = value; } /** *

The value to compare.

*/ inline MetricDimension& WithValue(double value) { SetValue(value); return *this;} private: Aws::String m_comparisonOperator; bool m_comparisonOperatorHasBeenSet = false; double m_value; bool m_valueHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws