/** * 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 PI { namespace Model { /** *

A time-ordered series of data points, corresponding to a dimension of a * Performance Insights metric.

See Also:

AWS * API Reference

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

The dimensions to which the data points apply.

*/ inline const ResponseResourceMetricKey& GetKey() const{ return m_key; } /** *

The dimensions to which the data points apply.

*/ inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; } /** *

The dimensions to which the data points apply.

*/ inline void SetKey(const ResponseResourceMetricKey& value) { m_keyHasBeenSet = true; m_key = value; } /** *

The dimensions to which the data points apply.

*/ inline void SetKey(ResponseResourceMetricKey&& value) { m_keyHasBeenSet = true; m_key = std::move(value); } /** *

The dimensions to which the data points apply.

*/ inline MetricKeyDataPoints& WithKey(const ResponseResourceMetricKey& value) { SetKey(value); return *this;} /** *

The dimensions to which the data points apply.

*/ inline MetricKeyDataPoints& WithKey(ResponseResourceMetricKey&& value) { SetKey(std::move(value)); return *this;} /** *

An array of timestamp-value pairs, representing measurements over a period of * time.

*/ inline const Aws::Vector& GetDataPoints() const{ return m_dataPoints; } /** *

An array of timestamp-value pairs, representing measurements over a period of * time.

*/ inline bool DataPointsHasBeenSet() const { return m_dataPointsHasBeenSet; } /** *

An array of timestamp-value pairs, representing measurements over a period of * time.

*/ inline void SetDataPoints(const Aws::Vector& value) { m_dataPointsHasBeenSet = true; m_dataPoints = value; } /** *

An array of timestamp-value pairs, representing measurements over a period of * time.

*/ inline void SetDataPoints(Aws::Vector&& value) { m_dataPointsHasBeenSet = true; m_dataPoints = std::move(value); } /** *

An array of timestamp-value pairs, representing measurements over a period of * time.

*/ inline MetricKeyDataPoints& WithDataPoints(const Aws::Vector& value) { SetDataPoints(value); return *this;} /** *

An array of timestamp-value pairs, representing measurements over a period of * time.

*/ inline MetricKeyDataPoints& WithDataPoints(Aws::Vector&& value) { SetDataPoints(std::move(value)); return *this;} /** *

An array of timestamp-value pairs, representing measurements over a period of * time.

*/ inline MetricKeyDataPoints& AddDataPoints(const DataPoint& value) { m_dataPointsHasBeenSet = true; m_dataPoints.push_back(value); return *this; } /** *

An array of timestamp-value pairs, representing measurements over a period of * time.

*/ inline MetricKeyDataPoints& AddDataPoints(DataPoint&& value) { m_dataPointsHasBeenSet = true; m_dataPoints.push_back(std::move(value)); return *this; } private: ResponseResourceMetricKey m_key; bool m_keyHasBeenSet = false; Aws::Vector m_dataPoints; bool m_dataPointsHasBeenSet = false; }; } // namespace Model } // namespace PI } // namespace Aws