AWS SDK for C++

AWS SDK for C++ Version 1.11.717

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/ServiceLevelIndicatorMetricType.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace ApplicationSignals {
25namespace Model {
26
34 public:
35 AWS_APPLICATIONSIGNALS_API ServiceLevelIndicatorMetric() = default;
36 AWS_APPLICATIONSIGNALS_API ServiceLevelIndicatorMetric(Aws::Utils::Json::JsonView jsonValue);
38 AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
57 inline const Aws::Map<Aws::String, Aws::String>& GetKeyAttributes() const { return m_keyAttributes; }
58 inline bool KeyAttributesHasBeenSet() const { return m_keyAttributesHasBeenSet; }
59 template <typename KeyAttributesT = Aws::Map<Aws::String, Aws::String>>
60 void SetKeyAttributes(KeyAttributesT&& value) {
61 m_keyAttributesHasBeenSet = true;
62 m_keyAttributes = std::forward<KeyAttributesT>(value);
63 }
64 template <typename KeyAttributesT = Aws::Map<Aws::String, Aws::String>>
66 SetKeyAttributes(std::forward<KeyAttributesT>(value));
67 return *this;
68 }
69 template <typename KeyAttributesKeyT = Aws::String, typename KeyAttributesValueT = Aws::String>
70 ServiceLevelIndicatorMetric& AddKeyAttributes(KeyAttributesKeyT&& key, KeyAttributesValueT&& value) {
71 m_keyAttributesHasBeenSet = true;
72 m_keyAttributes.emplace(std::forward<KeyAttributesKeyT>(key), std::forward<KeyAttributesValueT>(value));
73 return *this;
74 }
76
78
82 inline const Aws::String& GetOperationName() const { return m_operationName; }
83 inline bool OperationNameHasBeenSet() const { return m_operationNameHasBeenSet; }
84 template <typename OperationNameT = Aws::String>
85 void SetOperationName(OperationNameT&& value) {
86 m_operationNameHasBeenSet = true;
87 m_operationName = std::forward<OperationNameT>(value);
88 }
89 template <typename OperationNameT = Aws::String>
91 SetOperationName(std::forward<OperationNameT>(value));
92 return *this;
93 }
95
97
102 inline ServiceLevelIndicatorMetricType GetMetricType() const { return m_metricType; }
103 inline bool MetricTypeHasBeenSet() const { return m_metricTypeHasBeenSet; }
105 m_metricTypeHasBeenSet = true;
106 m_metricType = value;
107 }
109 SetMetricType(value);
110 return *this;
111 }
113
115
120 inline const Aws::Vector<MetricDataQuery>& GetMetricDataQueries() const { return m_metricDataQueries; }
121 inline bool MetricDataQueriesHasBeenSet() const { return m_metricDataQueriesHasBeenSet; }
122 template <typename MetricDataQueriesT = Aws::Vector<MetricDataQuery>>
123 void SetMetricDataQueries(MetricDataQueriesT&& value) {
124 m_metricDataQueriesHasBeenSet = true;
125 m_metricDataQueries = std::forward<MetricDataQueriesT>(value);
126 }
127 template <typename MetricDataQueriesT = Aws::Vector<MetricDataQuery>>
129 SetMetricDataQueries(std::forward<MetricDataQueriesT>(value));
130 return *this;
131 }
132 template <typename MetricDataQueriesT = MetricDataQuery>
134 m_metricDataQueriesHasBeenSet = true;
135 m_metricDataQueries.emplace_back(std::forward<MetricDataQueriesT>(value));
136 return *this;
137 }
139
141
145 inline const DependencyConfig& GetDependencyConfig() const { return m_dependencyConfig; }
146 inline bool DependencyConfigHasBeenSet() const { return m_dependencyConfigHasBeenSet; }
147 template <typename DependencyConfigT = DependencyConfig>
148 void SetDependencyConfig(DependencyConfigT&& value) {
149 m_dependencyConfigHasBeenSet = true;
150 m_dependencyConfig = std::forward<DependencyConfigT>(value);
151 }
152 template <typename DependencyConfigT = DependencyConfig>
154 SetDependencyConfig(std::forward<DependencyConfigT>(value));
155 return *this;
156 }
158 private:
160
161 Aws::String m_operationName;
162
164
165 Aws::Vector<MetricDataQuery> m_metricDataQueries;
166
167 DependencyConfig m_dependencyConfig;
168 bool m_keyAttributesHasBeenSet = false;
169 bool m_operationNameHasBeenSet = false;
170 bool m_metricTypeHasBeenSet = false;
171 bool m_metricDataQueriesHasBeenSet = false;
172 bool m_dependencyConfigHasBeenSet = false;
173};
174
175} // namespace Model
176} // namespace ApplicationSignals
177} // 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 & 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