AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
DimensionKeyDescription.h
1
6#pragma once
7#include <aws/pi/PI_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace PI
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_PI_API DimensionKeyDescription() = default;
41
42
44
47 inline const Aws::Map<Aws::String, Aws::String>& GetDimensions() const { return m_dimensions; }
48 inline bool DimensionsHasBeenSet() const { return m_dimensionsHasBeenSet; }
49 template<typename DimensionsT = Aws::Map<Aws::String, Aws::String>>
50 void SetDimensions(DimensionsT&& value) { m_dimensionsHasBeenSet = true; m_dimensions = std::forward<DimensionsT>(value); }
51 template<typename DimensionsT = Aws::Map<Aws::String, Aws::String>>
52 DimensionKeyDescription& WithDimensions(DimensionsT&& value) { SetDimensions(std::forward<DimensionsT>(value)); return *this;}
53 template<typename DimensionsKeyT = Aws::String, typename DimensionsValueT = Aws::String>
54 DimensionKeyDescription& AddDimensions(DimensionsKeyT&& key, DimensionsValueT&& value) {
55 m_dimensionsHasBeenSet = true; m_dimensions.emplace(std::forward<DimensionsKeyT>(key), std::forward<DimensionsValueT>(value)); return *this;
56 }
58
60
64 inline double GetTotal() const { return m_total; }
65 inline bool TotalHasBeenSet() const { return m_totalHasBeenSet; }
66 inline void SetTotal(double value) { m_totalHasBeenSet = true; m_total = value; }
67 inline DimensionKeyDescription& WithTotal(double value) { SetTotal(value); return *this;}
69
71
74 inline const Aws::Map<Aws::String, double>& GetAdditionalMetrics() const { return m_additionalMetrics; }
75 inline bool AdditionalMetricsHasBeenSet() const { return m_additionalMetricsHasBeenSet; }
76 template<typename AdditionalMetricsT = Aws::Map<Aws::String, double>>
77 void SetAdditionalMetrics(AdditionalMetricsT&& value) { m_additionalMetricsHasBeenSet = true; m_additionalMetrics = std::forward<AdditionalMetricsT>(value); }
78 template<typename AdditionalMetricsT = Aws::Map<Aws::String, double>>
79 DimensionKeyDescription& WithAdditionalMetrics(AdditionalMetricsT&& value) { SetAdditionalMetrics(std::forward<AdditionalMetricsT>(value)); return *this;}
81 m_additionalMetricsHasBeenSet = true; m_additionalMetrics.emplace(key, value); return *this;
82 }
84
86
90 inline const Aws::Vector<double>& GetPartitions() const { return m_partitions; }
91 inline bool PartitionsHasBeenSet() const { return m_partitionsHasBeenSet; }
92 template<typename PartitionsT = Aws::Vector<double>>
93 void SetPartitions(PartitionsT&& value) { m_partitionsHasBeenSet = true; m_partitions = std::forward<PartitionsT>(value); }
94 template<typename PartitionsT = Aws::Vector<double>>
95 DimensionKeyDescription& WithPartitions(PartitionsT&& value) { SetPartitions(std::forward<PartitionsT>(value)); return *this;}
96 inline DimensionKeyDescription& AddPartitions(double value) { m_partitionsHasBeenSet = true; m_partitions.push_back(value); return *this; }
98 private:
99
101 bool m_dimensionsHasBeenSet = false;
102
103 double m_total{0.0};
104 bool m_totalHasBeenSet = false;
105
106 Aws::Map<Aws::String, double> m_additionalMetrics;
107 bool m_additionalMetricsHasBeenSet = false;
108
109 Aws::Vector<double> m_partitions;
110 bool m_partitionsHasBeenSet = false;
111 };
112
113} // namespace Model
114} // namespace PI
115} // namespace Aws
AWS_PI_API DimensionKeyDescription()=default
DimensionKeyDescription & WithPartitions(PartitionsT &&value)
DimensionKeyDescription & AddPartitions(double value)
const Aws::Map< Aws::String, Aws::String > & GetDimensions() const
void SetAdditionalMetrics(AdditionalMetricsT &&value)
const Aws::Vector< double > & GetPartitions() const
DimensionKeyDescription & AddDimensions(DimensionsKeyT &&key, DimensionsValueT &&value)
const Aws::Map< Aws::String, double > & GetAdditionalMetrics() const
AWS_PI_API DimensionKeyDescription(Aws::Utils::Json::JsonView jsonValue)
DimensionKeyDescription & AddAdditionalMetrics(Aws::String key, double value)
AWS_PI_API Aws::Utils::Json::JsonValue Jsonize() const
DimensionKeyDescription & WithDimensions(DimensionsT &&value)
AWS_PI_API DimensionKeyDescription & operator=(Aws::Utils::Json::JsonView jsonValue)
DimensionKeyDescription & WithAdditionalMetrics(AdditionalMetricsT &&value)
DimensionKeyDescription & WithTotal(double value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue