AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
MetricReference.h
1
6#pragma once
7#include <aws/application-signals/ApplicationSignals_EXPORTS.h>
8#include <aws/application-signals/model/Dimension.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace ApplicationSignals {
22namespace Model {
23
32 public:
33 AWS_APPLICATIONSIGNALS_API MetricReference() = default;
34 AWS_APPLICATIONSIGNALS_API MetricReference(Aws::Utils::Json::JsonView jsonValue);
35 AWS_APPLICATIONSIGNALS_API MetricReference& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
43 inline const Aws::String& GetNamespace() const { return m_namespace; }
44 inline bool NamespaceHasBeenSet() const { return m_namespaceHasBeenSet; }
45 template <typename NamespaceT = Aws::String>
46 void SetNamespace(NamespaceT&& value) {
47 m_namespaceHasBeenSet = true;
48 m_namespace = std::forward<NamespaceT>(value);
49 }
50 template <typename NamespaceT = Aws::String>
51 MetricReference& WithNamespace(NamespaceT&& value) {
52 SetNamespace(std::forward<NamespaceT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetMetricType() const { return m_metricType; }
62 inline bool MetricTypeHasBeenSet() const { return m_metricTypeHasBeenSet; }
63 template <typename MetricTypeT = Aws::String>
64 void SetMetricType(MetricTypeT&& value) {
65 m_metricTypeHasBeenSet = true;
66 m_metricType = std::forward<MetricTypeT>(value);
67 }
68 template <typename MetricTypeT = Aws::String>
69 MetricReference& WithMetricType(MetricTypeT&& value) {
70 SetMetricType(std::forward<MetricTypeT>(value));
71 return *this;
72 }
74
76
81 inline const Aws::Vector<Dimension>& GetDimensions() const { return m_dimensions; }
82 inline bool DimensionsHasBeenSet() const { return m_dimensionsHasBeenSet; }
83 template <typename DimensionsT = Aws::Vector<Dimension>>
84 void SetDimensions(DimensionsT&& value) {
85 m_dimensionsHasBeenSet = true;
86 m_dimensions = std::forward<DimensionsT>(value);
87 }
88 template <typename DimensionsT = Aws::Vector<Dimension>>
89 MetricReference& WithDimensions(DimensionsT&& value) {
90 SetDimensions(std::forward<DimensionsT>(value));
91 return *this;
92 }
93 template <typename DimensionsT = Dimension>
94 MetricReference& AddDimensions(DimensionsT&& value) {
95 m_dimensionsHasBeenSet = true;
96 m_dimensions.emplace_back(std::forward<DimensionsT>(value));
97 return *this;
98 }
100
102
105 inline const Aws::String& GetMetricName() const { return m_metricName; }
106 inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; }
107 template <typename MetricNameT = Aws::String>
108 void SetMetricName(MetricNameT&& value) {
109 m_metricNameHasBeenSet = true;
110 m_metricName = std::forward<MetricNameT>(value);
111 }
112 template <typename MetricNameT = Aws::String>
113 MetricReference& WithMetricName(MetricNameT&& value) {
114 SetMetricName(std::forward<MetricNameT>(value));
115 return *this;
116 }
118
120
123 inline const Aws::String& GetAccountId() const { return m_accountId; }
124 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
125 template <typename AccountIdT = Aws::String>
126 void SetAccountId(AccountIdT&& value) {
127 m_accountIdHasBeenSet = true;
128 m_accountId = std::forward<AccountIdT>(value);
129 }
130 template <typename AccountIdT = Aws::String>
131 MetricReference& WithAccountId(AccountIdT&& value) {
132 SetAccountId(std::forward<AccountIdT>(value));
133 return *this;
134 }
136 private:
137 Aws::String m_namespace;
138
139 Aws::String m_metricType;
140
141 Aws::Vector<Dimension> m_dimensions;
142
143 Aws::String m_metricName;
144
145 Aws::String m_accountId;
146 bool m_namespaceHasBeenSet = false;
147 bool m_metricTypeHasBeenSet = false;
148 bool m_dimensionsHasBeenSet = false;
149 bool m_metricNameHasBeenSet = false;
150 bool m_accountIdHasBeenSet = false;
151};
152
153} // namespace Model
154} // namespace ApplicationSignals
155} // namespace Aws
MetricReference & WithNamespace(NamespaceT &&value)
MetricReference & WithDimensions(DimensionsT &&value)
const Aws::Vector< Dimension > & GetDimensions() const
AWS_APPLICATIONSIGNALS_API MetricReference & operator=(Aws::Utils::Json::JsonView jsonValue)
MetricReference & WithAccountId(AccountIdT &&value)
AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_APPLICATIONSIGNALS_API MetricReference()=default
AWS_APPLICATIONSIGNALS_API MetricReference(Aws::Utils::Json::JsonView jsonValue)
MetricReference & WithMetricName(MetricNameT &&value)
MetricReference & AddDimensions(DimensionsT &&value)
MetricReference & WithMetricType(MetricTypeT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue