AWS SDK for C++

AWS SDK for C++ Version 1.11.763

Loading...
Searching...
No Matches
Behavior.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/iot/IoT_EXPORTS.h>
9#include <aws/iot/model/BehaviorCriteria.h>
10#include <aws/iot/model/MetricDimension.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace IoT {
22namespace Model {
23
29class Behavior {
30 public:
31 AWS_IOT_API Behavior() = default;
32 AWS_IOT_API Behavior(Aws::Utils::Json::JsonView jsonValue);
35
37
40 inline const Aws::String& GetName() const { return m_name; }
41 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
42 template <typename NameT = Aws::String>
43 void SetName(NameT&& value) {
44 m_nameHasBeenSet = true;
45 m_name = std::forward<NameT>(value);
46 }
47 template <typename NameT = Aws::String>
48 Behavior& WithName(NameT&& value) {
49 SetName(std::forward<NameT>(value));
50 return *this;
51 }
53
55
58 inline const Aws::String& GetMetric() const { return m_metric; }
59 inline bool MetricHasBeenSet() const { return m_metricHasBeenSet; }
60 template <typename MetricT = Aws::String>
61 void SetMetric(MetricT&& value) {
62 m_metricHasBeenSet = true;
63 m_metric = std::forward<MetricT>(value);
64 }
65 template <typename MetricT = Aws::String>
66 Behavior& WithMetric(MetricT&& value) {
67 SetMetric(std::forward<MetricT>(value));
68 return *this;
69 }
71
73
79 inline const MetricDimension& GetMetricDimension() const { return m_metricDimension; }
80 inline bool MetricDimensionHasBeenSet() const { return m_metricDimensionHasBeenSet; }
81 template <typename MetricDimensionT = MetricDimension>
82 void SetMetricDimension(MetricDimensionT&& value) {
83 m_metricDimensionHasBeenSet = true;
84 m_metricDimension = std::forward<MetricDimensionT>(value);
85 }
86 template <typename MetricDimensionT = MetricDimension>
87 Behavior& WithMetricDimension(MetricDimensionT&& value) {
88 SetMetricDimension(std::forward<MetricDimensionT>(value));
89 return *this;
90 }
92
94
100 inline const BehaviorCriteria& GetCriteria() const { return m_criteria; }
101 inline bool CriteriaHasBeenSet() const { return m_criteriaHasBeenSet; }
102 template <typename CriteriaT = BehaviorCriteria>
103 void SetCriteria(CriteriaT&& value) {
104 m_criteriaHasBeenSet = true;
105 m_criteria = std::forward<CriteriaT>(value);
106 }
107 template <typename CriteriaT = BehaviorCriteria>
108 Behavior& WithCriteria(CriteriaT&& value) {
109 SetCriteria(std::forward<CriteriaT>(value));
110 return *this;
111 }
113
115
118 inline bool GetSuppressAlerts() const { return m_suppressAlerts; }
119 inline bool SuppressAlertsHasBeenSet() const { return m_suppressAlertsHasBeenSet; }
120 inline void SetSuppressAlerts(bool value) {
121 m_suppressAlertsHasBeenSet = true;
122 m_suppressAlerts = value;
123 }
124 inline Behavior& WithSuppressAlerts(bool value) {
125 SetSuppressAlerts(value);
126 return *this;
127 }
129
131
135 inline bool GetExportMetric() const { return m_exportMetric; }
136 inline bool ExportMetricHasBeenSet() const { return m_exportMetricHasBeenSet; }
137 inline void SetExportMetric(bool value) {
138 m_exportMetricHasBeenSet = true;
139 m_exportMetric = value;
140 }
141 inline Behavior& WithExportMetric(bool value) {
142 SetExportMetric(value);
143 return *this;
144 }
146 private:
147 Aws::String m_name;
148
149 Aws::String m_metric;
150
151 MetricDimension m_metricDimension;
152
153 BehaviorCriteria m_criteria;
154
155 bool m_suppressAlerts{false};
156
157 bool m_exportMetric{false};
158 bool m_nameHasBeenSet = false;
159 bool m_metricHasBeenSet = false;
160 bool m_metricDimensionHasBeenSet = false;
161 bool m_criteriaHasBeenSet = false;
162 bool m_suppressAlertsHasBeenSet = false;
163 bool m_exportMetricHasBeenSet = false;
164};
165
166} // namespace Model
167} // namespace IoT
168} // namespace Aws
Behavior & WithCriteria(CriteriaT &&value)
Definition Behavior.h:108
bool CriteriaHasBeenSet() const
Definition Behavior.h:101
AWS_IOT_API Behavior & operator=(Aws::Utils::Json::JsonView jsonValue)
bool NameHasBeenSet() const
Definition Behavior.h:41
const BehaviorCriteria & GetCriteria() const
Definition Behavior.h:100
const MetricDimension & GetMetricDimension() const
Definition Behavior.h:79
const Aws::String & GetName() const
Definition Behavior.h:40
Behavior & WithExportMetric(bool value)
Definition Behavior.h:141
Behavior & WithName(NameT &&value)
Definition Behavior.h:48
void SetMetric(MetricT &&value)
Definition Behavior.h:61
bool MetricHasBeenSet() const
Definition Behavior.h:59
AWS_IOT_API Behavior(Aws::Utils::Json::JsonView jsonValue)
bool MetricDimensionHasBeenSet() const
Definition Behavior.h:80
void SetName(NameT &&value)
Definition Behavior.h:43
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_IOT_API Behavior()=default
bool GetSuppressAlerts() const
Definition Behavior.h:118
bool SuppressAlertsHasBeenSet() const
Definition Behavior.h:119
Behavior & WithSuppressAlerts(bool value)
Definition Behavior.h:124
bool GetExportMetric() const
Definition Behavior.h:135
bool ExportMetricHasBeenSet() const
Definition Behavior.h:136
void SetExportMetric(bool value)
Definition Behavior.h:137
void SetSuppressAlerts(bool value)
Definition Behavior.h:120
void SetCriteria(CriteriaT &&value)
Definition Behavior.h:103
Behavior & WithMetricDimension(MetricDimensionT &&value)
Definition Behavior.h:87
const Aws::String & GetMetric() const
Definition Behavior.h:58
void SetMetricDimension(MetricDimensionT &&value)
Definition Behavior.h:82
Behavior & WithMetric(MetricT &&value)
Definition Behavior.h:66
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue