AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ServiceLevelObjectiveSummary.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/EvaluationType.h>
10#include <aws/application-signals/model/MetricSourceType.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/core/utils/memory/stl/AWSString.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 ServiceLevelObjectiveSummary() = default;
36 AWS_APPLICATIONSIGNALS_API ServiceLevelObjectiveSummary(Aws::Utils::Json::JsonView jsonValue);
38 AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline const Aws::String& GetArn() const { return m_arn; }
45 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
46 template <typename ArnT = Aws::String>
47 void SetArn(ArnT&& value) {
48 m_arnHasBeenSet = true;
49 m_arn = std::forward<ArnT>(value);
50 }
51 template <typename ArnT = Aws::String>
53 SetArn(std::forward<ArnT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetName() const { return m_name; }
63 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
64 template <typename NameT = Aws::String>
65 void SetName(NameT&& value) {
66 m_nameHasBeenSet = true;
67 m_name = std::forward<NameT>(value);
68 }
69 template <typename NameT = Aws::String>
71 SetName(std::forward<NameT>(value));
72 return *this;
73 }
75
77
93 inline const Aws::Map<Aws::String, Aws::String>& GetKeyAttributes() const { return m_keyAttributes; }
94 inline bool KeyAttributesHasBeenSet() const { return m_keyAttributesHasBeenSet; }
95 template <typename KeyAttributesT = Aws::Map<Aws::String, Aws::String>>
96 void SetKeyAttributes(KeyAttributesT&& value) {
97 m_keyAttributesHasBeenSet = true;
98 m_keyAttributes = std::forward<KeyAttributesT>(value);
99 }
100 template <typename KeyAttributesT = Aws::Map<Aws::String, Aws::String>>
102 SetKeyAttributes(std::forward<KeyAttributesT>(value));
103 return *this;
104 }
105 template <typename KeyAttributesKeyT = Aws::String, typename KeyAttributesValueT = Aws::String>
106 ServiceLevelObjectiveSummary& AddKeyAttributes(KeyAttributesKeyT&& key, KeyAttributesValueT&& value) {
107 m_keyAttributesHasBeenSet = true;
108 m_keyAttributes.emplace(std::forward<KeyAttributesKeyT>(key), std::forward<KeyAttributesValueT>(value));
109 return *this;
110 }
112
114
118 inline const Aws::String& GetOperationName() const { return m_operationName; }
119 inline bool OperationNameHasBeenSet() const { return m_operationNameHasBeenSet; }
120 template <typename OperationNameT = Aws::String>
121 void SetOperationName(OperationNameT&& value) {
122 m_operationNameHasBeenSet = true;
123 m_operationName = std::forward<OperationNameT>(value);
124 }
125 template <typename OperationNameT = Aws::String>
127 SetOperationName(std::forward<OperationNameT>(value));
128 return *this;
129 }
131
133
137 inline const DependencyConfig& GetDependencyConfig() const { return m_dependencyConfig; }
138 inline bool DependencyConfigHasBeenSet() const { return m_dependencyConfigHasBeenSet; }
139 template <typename DependencyConfigT = DependencyConfig>
140 void SetDependencyConfig(DependencyConfigT&& value) {
141 m_dependencyConfigHasBeenSet = true;
142 m_dependencyConfig = std::forward<DependencyConfigT>(value);
143 }
144 template <typename DependencyConfigT = DependencyConfig>
146 SetDependencyConfig(std::forward<DependencyConfigT>(value));
147 return *this;
148 }
150
152
156 inline const Aws::Utils::DateTime& GetCreatedTime() const { return m_createdTime; }
157 inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; }
158 template <typename CreatedTimeT = Aws::Utils::DateTime>
159 void SetCreatedTime(CreatedTimeT&& value) {
160 m_createdTimeHasBeenSet = true;
161 m_createdTime = std::forward<CreatedTimeT>(value);
162 }
163 template <typename CreatedTimeT = Aws::Utils::DateTime>
165 SetCreatedTime(std::forward<CreatedTimeT>(value));
166 return *this;
167 }
169
171
174 inline EvaluationType GetEvaluationType() const { return m_evaluationType; }
175 inline bool EvaluationTypeHasBeenSet() const { return m_evaluationTypeHasBeenSet; }
177 m_evaluationTypeHasBeenSet = true;
178 m_evaluationType = value;
179 }
181 SetEvaluationType(value);
182 return *this;
183 }
185
187
192 inline MetricSourceType GetMetricSourceType() const { return m_metricSourceType; }
193 inline bool MetricSourceTypeHasBeenSet() const { return m_metricSourceTypeHasBeenSet; }
195 m_metricSourceTypeHasBeenSet = true;
196 m_metricSourceType = value;
197 }
199 SetMetricSourceType(value);
200 return *this;
201 }
203 private:
204 Aws::String m_arn;
205
206 Aws::String m_name;
207
209
210 Aws::String m_operationName;
211
212 DependencyConfig m_dependencyConfig;
213
214 Aws::Utils::DateTime m_createdTime{};
215
216 EvaluationType m_evaluationType{EvaluationType::NOT_SET};
217
219 bool m_arnHasBeenSet = false;
220 bool m_nameHasBeenSet = false;
221 bool m_keyAttributesHasBeenSet = false;
222 bool m_operationNameHasBeenSet = false;
223 bool m_dependencyConfigHasBeenSet = false;
224 bool m_createdTimeHasBeenSet = false;
225 bool m_evaluationTypeHasBeenSet = false;
226 bool m_metricSourceTypeHasBeenSet = false;
227};
228
229} // namespace Model
230} // namespace ApplicationSignals
231} // namespace Aws
ServiceLevelObjectiveSummary & WithKeyAttributes(KeyAttributesT &&value)
AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const
ServiceLevelObjectiveSummary & WithCreatedTime(CreatedTimeT &&value)
AWS_APPLICATIONSIGNALS_API ServiceLevelObjectiveSummary & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_APPLICATIONSIGNALS_API ServiceLevelObjectiveSummary(Aws::Utils::Json::JsonView jsonValue)
const Aws::Map< Aws::String, Aws::String > & GetKeyAttributes() const
AWS_APPLICATIONSIGNALS_API ServiceLevelObjectiveSummary()=default
ServiceLevelObjectiveSummary & WithMetricSourceType(MetricSourceType value)
ServiceLevelObjectiveSummary & WithOperationName(OperationNameT &&value)
ServiceLevelObjectiveSummary & WithDependencyConfig(DependencyConfigT &&value)
ServiceLevelObjectiveSummary & AddKeyAttributes(KeyAttributesKeyT &&key, KeyAttributesValueT &&value)
ServiceLevelObjectiveSummary & WithEvaluationType(EvaluationType 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
Aws::Utils::Json::JsonValue JsonValue