AWS SDK for C++

AWS SDK for C++ Version 1.11.767

Loading...
Searching...
No Matches
ViolationEvent.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/iot/IoT_EXPORTS.h>
10#include <aws/iot/model/Behavior.h>
11#include <aws/iot/model/MetricValue.h>
12#include <aws/iot/model/VerificationState.h>
13#include <aws/iot/model/ViolationEventAdditionalInfo.h>
14#include <aws/iot/model/ViolationEventType.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace IoT {
26namespace Model {
27
35 public:
36 AWS_IOT_API ViolationEvent() = default;
40
42
45 inline const Aws::String& GetViolationId() const { return m_violationId; }
46 inline bool ViolationIdHasBeenSet() const { return m_violationIdHasBeenSet; }
47 template <typename ViolationIdT = Aws::String>
48 void SetViolationId(ViolationIdT&& value) {
49 m_violationIdHasBeenSet = true;
50 m_violationId = std::forward<ViolationIdT>(value);
51 }
52 template <typename ViolationIdT = Aws::String>
53 ViolationEvent& WithViolationId(ViolationIdT&& value) {
54 SetViolationId(std::forward<ViolationIdT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetThingName() const { return m_thingName; }
64 inline bool ThingNameHasBeenSet() const { return m_thingNameHasBeenSet; }
65 template <typename ThingNameT = Aws::String>
66 void SetThingName(ThingNameT&& value) {
67 m_thingNameHasBeenSet = true;
68 m_thingName = std::forward<ThingNameT>(value);
69 }
70 template <typename ThingNameT = Aws::String>
71 ViolationEvent& WithThingName(ThingNameT&& value) {
72 SetThingName(std::forward<ThingNameT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::String& GetSecurityProfileName() const { return m_securityProfileName; }
82 inline bool SecurityProfileNameHasBeenSet() const { return m_securityProfileNameHasBeenSet; }
83 template <typename SecurityProfileNameT = Aws::String>
84 void SetSecurityProfileName(SecurityProfileNameT&& value) {
85 m_securityProfileNameHasBeenSet = true;
86 m_securityProfileName = std::forward<SecurityProfileNameT>(value);
87 }
88 template <typename SecurityProfileNameT = Aws::String>
89 ViolationEvent& WithSecurityProfileName(SecurityProfileNameT&& value) {
90 SetSecurityProfileName(std::forward<SecurityProfileNameT>(value));
91 return *this;
92 }
94
96
99 inline const Behavior& GetBehavior() const { return m_behavior; }
100 inline bool BehaviorHasBeenSet() const { return m_behaviorHasBeenSet; }
101 template <typename BehaviorT = Behavior>
102 void SetBehavior(BehaviorT&& value) {
103 m_behaviorHasBeenSet = true;
104 m_behavior = std::forward<BehaviorT>(value);
105 }
106 template <typename BehaviorT = Behavior>
107 ViolationEvent& WithBehavior(BehaviorT&& value) {
108 SetBehavior(std::forward<BehaviorT>(value));
109 return *this;
110 }
112
114
117 inline const MetricValue& GetMetricValue() const { return m_metricValue; }
118 inline bool MetricValueHasBeenSet() const { return m_metricValueHasBeenSet; }
119 template <typename MetricValueT = MetricValue>
120 void SetMetricValue(MetricValueT&& value) {
121 m_metricValueHasBeenSet = true;
122 m_metricValue = std::forward<MetricValueT>(value);
123 }
124 template <typename MetricValueT = MetricValue>
125 ViolationEvent& WithMetricValue(MetricValueT&& value) {
126 SetMetricValue(std::forward<MetricValueT>(value));
127 return *this;
128 }
130
132
135 inline const ViolationEventAdditionalInfo& GetViolationEventAdditionalInfo() const { return m_violationEventAdditionalInfo; }
136 inline bool ViolationEventAdditionalInfoHasBeenSet() const { return m_violationEventAdditionalInfoHasBeenSet; }
137 template <typename ViolationEventAdditionalInfoT = ViolationEventAdditionalInfo>
138 void SetViolationEventAdditionalInfo(ViolationEventAdditionalInfoT&& value) {
139 m_violationEventAdditionalInfoHasBeenSet = true;
140 m_violationEventAdditionalInfo = std::forward<ViolationEventAdditionalInfoT>(value);
141 }
142 template <typename ViolationEventAdditionalInfoT = ViolationEventAdditionalInfo>
143 ViolationEvent& WithViolationEventAdditionalInfo(ViolationEventAdditionalInfoT&& value) {
144 SetViolationEventAdditionalInfo(std::forward<ViolationEventAdditionalInfoT>(value));
145 return *this;
146 }
148
150
153 inline ViolationEventType GetViolationEventType() const { return m_violationEventType; }
154 inline bool ViolationEventTypeHasBeenSet() const { return m_violationEventTypeHasBeenSet; }
156 m_violationEventTypeHasBeenSet = true;
157 m_violationEventType = value;
158 }
161 return *this;
162 }
164
166
169 inline VerificationState GetVerificationState() const { return m_verificationState; }
170 inline bool VerificationStateHasBeenSet() const { return m_verificationStateHasBeenSet; }
172 m_verificationStateHasBeenSet = true;
173 m_verificationState = value;
174 }
177 return *this;
178 }
180
182
185 inline const Aws::String& GetVerificationStateDescription() const { return m_verificationStateDescription; }
186 inline bool VerificationStateDescriptionHasBeenSet() const { return m_verificationStateDescriptionHasBeenSet; }
187 template <typename VerificationStateDescriptionT = Aws::String>
188 void SetVerificationStateDescription(VerificationStateDescriptionT&& value) {
189 m_verificationStateDescriptionHasBeenSet = true;
190 m_verificationStateDescription = std::forward<VerificationStateDescriptionT>(value);
191 }
192 template <typename VerificationStateDescriptionT = Aws::String>
193 ViolationEvent& WithVerificationStateDescription(VerificationStateDescriptionT&& value) {
194 SetVerificationStateDescription(std::forward<VerificationStateDescriptionT>(value));
195 return *this;
196 }
198
200
203 inline const Aws::Utils::DateTime& GetViolationEventTime() const { return m_violationEventTime; }
204 inline bool ViolationEventTimeHasBeenSet() const { return m_violationEventTimeHasBeenSet; }
205 template <typename ViolationEventTimeT = Aws::Utils::DateTime>
206 void SetViolationEventTime(ViolationEventTimeT&& value) {
207 m_violationEventTimeHasBeenSet = true;
208 m_violationEventTime = std::forward<ViolationEventTimeT>(value);
209 }
210 template <typename ViolationEventTimeT = Aws::Utils::DateTime>
211 ViolationEvent& WithViolationEventTime(ViolationEventTimeT&& value) {
212 SetViolationEventTime(std::forward<ViolationEventTimeT>(value));
213 return *this;
214 }
216 private:
217 Aws::String m_violationId;
218
219 Aws::String m_thingName;
220
221 Aws::String m_securityProfileName;
222
223 Behavior m_behavior;
224
225 MetricValue m_metricValue;
226
227 ViolationEventAdditionalInfo m_violationEventAdditionalInfo;
228
230
232
233 Aws::String m_verificationStateDescription;
234
235 Aws::Utils::DateTime m_violationEventTime{};
236 bool m_violationIdHasBeenSet = false;
237 bool m_thingNameHasBeenSet = false;
238 bool m_securityProfileNameHasBeenSet = false;
239 bool m_behaviorHasBeenSet = false;
240 bool m_metricValueHasBeenSet = false;
241 bool m_violationEventAdditionalInfoHasBeenSet = false;
242 bool m_violationEventTypeHasBeenSet = false;
243 bool m_verificationStateHasBeenSet = false;
244 bool m_verificationStateDescriptionHasBeenSet = false;
245 bool m_violationEventTimeHasBeenSet = false;
246};
247
248} // namespace Model
249} // namespace IoT
250} // namespace Aws
VerificationState GetVerificationState() const
ViolationEvent & WithBehavior(BehaviorT &&value)
ViolationEvent & WithViolationId(ViolationIdT &&value)
const MetricValue & GetMetricValue() const
ViolationEventType GetViolationEventType() const
void SetSecurityProfileName(SecurityProfileNameT &&value)
void SetViolationEventAdditionalInfo(ViolationEventAdditionalInfoT &&value)
const Aws::String & GetViolationId() const
AWS_IOT_API ViolationEvent()=default
ViolationEvent & WithSecurityProfileName(SecurityProfileNameT &&value)
void SetVerificationState(VerificationState value)
bool ViolationEventAdditionalInfoHasBeenSet() const
void SetViolationEventTime(ViolationEventTimeT &&value)
ViolationEvent & WithMetricValue(MetricValueT &&value)
ViolationEvent & WithViolationEventType(ViolationEventType value)
ViolationEvent & WithVerificationState(VerificationState value)
void SetThingName(ThingNameT &&value)
const Behavior & GetBehavior() const
const ViolationEventAdditionalInfo & GetViolationEventAdditionalInfo() const
const Aws::Utils::DateTime & GetViolationEventTime() const
void SetMetricValue(MetricValueT &&value)
const Aws::String & GetVerificationStateDescription() const
ViolationEvent & WithVerificationStateDescription(VerificationStateDescriptionT &&value)
void SetViolationId(ViolationIdT &&value)
ViolationEvent & WithThingName(ThingNameT &&value)
void SetVerificationStateDescription(VerificationStateDescriptionT &&value)
AWS_IOT_API ViolationEvent & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetViolationEventType(ViolationEventType value)
ViolationEvent & WithViolationEventTime(ViolationEventTimeT &&value)
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
bool VerificationStateDescriptionHasBeenSet() const
const Aws::String & GetSecurityProfileName() const
AWS_IOT_API ViolationEvent(Aws::Utils::Json::JsonView jsonValue)
ViolationEvent & WithViolationEventAdditionalInfo(ViolationEventAdditionalInfoT &&value)
void SetBehavior(BehaviorT &&value)
const Aws::String & GetThingName() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue