AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
ServiceLevelIndicatorMetric.h
1
6#pragma once
7#include <aws/application-signals/ApplicationSignals_EXPORTS.h>
8#include <aws/application-signals/model/DependencyConfig.h>
9#include <aws/application-signals/model/MetricDataQuery.h>
10#include <aws/application-signals/model/MetricSource.h>
11#include <aws/application-signals/model/ServiceLevelIndicatorMetricType.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace ApplicationSignals {
26namespace Model {
27
35 public:
36 AWS_APPLICATIONSIGNALS_API ServiceLevelIndicatorMetric() = default;
37 AWS_APPLICATIONSIGNALS_API ServiceLevelIndicatorMetric(Aws::Utils::Json::JsonView jsonValue);
39 AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
58 inline const Aws::Map<Aws::String, Aws::String>& GetKeyAttributes() const { return m_keyAttributes; }
59 inline bool KeyAttributesHasBeenSet() const { return m_keyAttributesHasBeenSet; }
60 template <typename KeyAttributesT = Aws::Map<Aws::String, Aws::String>>
61 void SetKeyAttributes(KeyAttributesT&& value) {
62 m_keyAttributesHasBeenSet = true;
63 m_keyAttributes = std::forward<KeyAttributesT>(value);
64 }
65 template <typename KeyAttributesT = Aws::Map<Aws::String, Aws::String>>
67 SetKeyAttributes(std::forward<KeyAttributesT>(value));
68 return *this;
69 }
70 template <typename KeyAttributesKeyT = Aws::String, typename KeyAttributesValueT = Aws::String>
71 ServiceLevelIndicatorMetric& AddKeyAttributes(KeyAttributesKeyT&& key, KeyAttributesValueT&& value) {
72 m_keyAttributesHasBeenSet = true;
73 m_keyAttributes.emplace(std::forward<KeyAttributesKeyT>(key), std::forward<KeyAttributesValueT>(value));
74 return *this;
75 }
77
79
83 inline const Aws::String& GetOperationName() const { return m_operationName; }
84 inline bool OperationNameHasBeenSet() const { return m_operationNameHasBeenSet; }
85 template <typename OperationNameT = Aws::String>
86 void SetOperationName(OperationNameT&& value) {
87 m_operationNameHasBeenSet = true;
88 m_operationName = std::forward<OperationNameT>(value);
89 }
90 template <typename OperationNameT = Aws::String>
92 SetOperationName(std::forward<OperationNameT>(value));
93 return *this;
94 }
96
98
103 inline ServiceLevelIndicatorMetricType GetMetricType() const { return m_metricType; }
104 inline bool MetricTypeHasBeenSet() const { return m_metricTypeHasBeenSet; }
106 m_metricTypeHasBeenSet = true;
107 m_metricType = value;
108 }
110 SetMetricType(value);
111 return *this;
112 }
114
116
121 inline const Aws::Vector<MetricDataQuery>& GetMetricDataQueries() const { return m_metricDataQueries; }
122 inline bool MetricDataQueriesHasBeenSet() const { return m_metricDataQueriesHasBeenSet; }
123 template <typename MetricDataQueriesT = Aws::Vector<MetricDataQuery>>
124 void SetMetricDataQueries(MetricDataQueriesT&& value) {
125 m_metricDataQueriesHasBeenSet = true;
126 m_metricDataQueries = std::forward<MetricDataQueriesT>(value);
127 }
128 template <typename MetricDataQueriesT = Aws::Vector<MetricDataQuery>>
130 SetMetricDataQueries(std::forward<MetricDataQueriesT>(value));
131 return *this;
132 }
133 template <typename MetricDataQueriesT = MetricDataQuery>
135 m_metricDataQueriesHasBeenSet = true;
136 m_metricDataQueries.emplace_back(std::forward<MetricDataQueriesT>(value));
137 return *this;
138 }
140
142
146 inline const DependencyConfig& GetDependencyConfig() const { return m_dependencyConfig; }
147 inline bool DependencyConfigHasBeenSet() const { return m_dependencyConfigHasBeenSet; }
148 template <typename DependencyConfigT = DependencyConfig>
149 void SetDependencyConfig(DependencyConfigT&& value) {
150 m_dependencyConfigHasBeenSet = true;
151 m_dependencyConfig = std::forward<DependencyConfigT>(value);
152 }
153 template <typename DependencyConfigT = DependencyConfig>
155 SetDependencyConfig(std::forward<DependencyConfigT>(value));
156 return *this;
157 }
159
161
165 inline const MetricSource& GetMetricSource() const { return m_metricSource; }
166 inline bool MetricSourceHasBeenSet() const { return m_metricSourceHasBeenSet; }
167 template <typename MetricSourceT = MetricSource>
168 void SetMetricSource(MetricSourceT&& value) {
169 m_metricSourceHasBeenSet = true;
170 m_metricSource = std::forward<MetricSourceT>(value);
171 }
172 template <typename MetricSourceT = MetricSource>
174 SetMetricSource(std::forward<MetricSourceT>(value));
175 return *this;
176 }
178 private:
180
181 Aws::String m_operationName;
182
184
185 Aws::Vector<MetricDataQuery> m_metricDataQueries;
186
187 DependencyConfig m_dependencyConfig;
188
189 MetricSource m_metricSource;
190 bool m_keyAttributesHasBeenSet = false;
191 bool m_operationNameHasBeenSet = false;
192 bool m_metricTypeHasBeenSet = false;
193 bool m_metricDataQueriesHasBeenSet = false;
194 bool m_dependencyConfigHasBeenSet = false;
195 bool m_metricSourceHasBeenSet = false;
196};
197
198} // namespace Model
199} // namespace ApplicationSignals
200} // namespace Aws
AWS_APPLICATIONSIGNALS_API ServiceLevelIndicatorMetric()=default
ServiceLevelIndicatorMetric & WithMetricType(ServiceLevelIndicatorMetricType value)
const Aws::Map< Aws::String, Aws::String > & GetKeyAttributes() const
ServiceLevelIndicatorMetric & WithDependencyConfig(DependencyConfigT &&value)
ServiceLevelIndicatorMetric & WithOperationName(OperationNameT &&value)
const Aws::Vector< MetricDataQuery > & GetMetricDataQueries() const
ServiceLevelIndicatorMetric & AddMetricDataQueries(MetricDataQueriesT &&value)
AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_APPLICATIONSIGNALS_API ServiceLevelIndicatorMetric(Aws::Utils::Json::JsonView jsonValue)
AWS_APPLICATIONSIGNALS_API ServiceLevelIndicatorMetric & operator=(Aws::Utils::Json::JsonView jsonValue)
ServiceLevelIndicatorMetric & WithMetricSource(MetricSourceT &&value)
ServiceLevelIndicatorMetric & WithMetricDataQueries(MetricDataQueriesT &&value)
ServiceLevelIndicatorMetric & WithKeyAttributes(KeyAttributesT &&value)
ServiceLevelIndicatorMetric & AddKeyAttributes(KeyAttributesKeyT &&key, KeyAttributesValueT &&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