AWS SDK for C++

AWS SDK for C++ Version 1.11.916

Loading...
Searching...
No Matches
RuleDetail.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/guardduty/GuardDuty_EXPORTS.h>
10#include <aws/guardduty/model/DetectionRuleDataSource.h>
11#include <aws/guardduty/model/DetectionRuleRuntimeMonitoringDetails.h>
12#include <aws/guardduty/model/DetectionRuleSeverity.h>
13#include <aws/guardduty/model/RuleDefinition.h>
14#include <aws/guardduty/model/RuleLanguage.h>
15#include <aws/guardduty/model/RuleSchema.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace GuardDuty {
27namespace Model {
28
36 public:
37 AWS_GUARDDUTY_API RuleDetail() = default;
38 AWS_GUARDDUTY_API RuleDetail(Aws::Utils::Json::JsonView jsonValue);
39 AWS_GUARDDUTY_API RuleDetail& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
46 inline const Aws::String& GetRuleId() const { return m_ruleId; }
47 inline bool RuleIdHasBeenSet() const { return m_ruleIdHasBeenSet; }
48 template <typename RuleIdT = Aws::String>
49 void SetRuleId(RuleIdT&& value) {
50 m_ruleIdHasBeenSet = true;
51 m_ruleId = std::forward<RuleIdT>(value);
52 }
53 template <typename RuleIdT = Aws::String>
54 RuleDetail& WithRuleId(RuleIdT&& value) {
55 SetRuleId(std::forward<RuleIdT>(value));
56 return *this;
57 }
59
61
64 inline const Aws::String& GetArn() const { return m_arn; }
65 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
66 template <typename ArnT = Aws::String>
67 void SetArn(ArnT&& value) {
68 m_arnHasBeenSet = true;
69 m_arn = std::forward<ArnT>(value);
70 }
71 template <typename ArnT = Aws::String>
72 RuleDetail& WithArn(ArnT&& value) {
73 SetArn(std::forward<ArnT>(value));
74 return *this;
75 }
77
79
82 inline const Aws::String& GetName() const { return m_name; }
83 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
84 template <typename NameT = Aws::String>
85 void SetName(NameT&& value) {
86 m_nameHasBeenSet = true;
87 m_name = std::forward<NameT>(value);
88 }
89 template <typename NameT = Aws::String>
90 RuleDetail& WithName(NameT&& value) {
91 SetName(std::forward<NameT>(value));
92 return *this;
93 }
95
97
100 inline const Aws::String& GetDescription() const { return m_description; }
101 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
102 template <typename DescriptionT = Aws::String>
103 void SetDescription(DescriptionT&& value) {
104 m_descriptionHasBeenSet = true;
105 m_description = std::forward<DescriptionT>(value);
106 }
107 template <typename DescriptionT = Aws::String>
108 RuleDetail& WithDescription(DescriptionT&& value) {
109 SetDescription(std::forward<DescriptionT>(value));
110 return *this;
111 }
113
115
118 inline DetectionRuleSeverity GetSeverity() const { return m_severity; }
119 inline bool SeverityHasBeenSet() const { return m_severityHasBeenSet; }
121 m_severityHasBeenSet = true;
122 m_severity = value;
123 }
125 SetSeverity(value);
126 return *this;
127 }
129
131
134 inline DetectionRuleDataSource GetDataSource() const { return m_dataSource; }
135 inline bool DataSourceHasBeenSet() const { return m_dataSourceHasBeenSet; }
137 m_dataSourceHasBeenSet = true;
138 m_dataSource = value;
139 }
141 SetDataSource(value);
142 return *this;
143 }
145
147
150 inline const Aws::String& GetTactic() const { return m_tactic; }
151 inline bool TacticHasBeenSet() const { return m_tacticHasBeenSet; }
152 template <typename TacticT = Aws::String>
153 void SetTactic(TacticT&& value) {
154 m_tacticHasBeenSet = true;
155 m_tactic = std::forward<TacticT>(value);
156 }
157 template <typename TacticT = Aws::String>
158 RuleDetail& WithTactic(TacticT&& value) {
159 SetTactic(std::forward<TacticT>(value));
160 return *this;
161 }
163
165
168 inline const Aws::String& GetTechnique() const { return m_technique; }
169 inline bool TechniqueHasBeenSet() const { return m_techniqueHasBeenSet; }
170 template <typename TechniqueT = Aws::String>
171 void SetTechnique(TechniqueT&& value) {
172 m_techniqueHasBeenSet = true;
173 m_technique = std::forward<TechniqueT>(value);
174 }
175 template <typename TechniqueT = Aws::String>
176 RuleDetail& WithTechnique(TechniqueT&& value) {
177 SetTechnique(std::forward<TechniqueT>(value));
178 return *this;
179 }
181
183
186 inline const Aws::String& GetService() const { return m_service; }
187 inline bool ServiceHasBeenSet() const { return m_serviceHasBeenSet; }
188 template <typename ServiceT = Aws::String>
189 void SetService(ServiceT&& value) {
190 m_serviceHasBeenSet = true;
191 m_service = std::forward<ServiceT>(value);
192 }
193 template <typename ServiceT = Aws::String>
194 RuleDetail& WithService(ServiceT&& value) {
195 SetService(std::forward<ServiceT>(value));
196 return *this;
197 }
199
201
204 inline const RuleDefinition& GetDefinition() const { return m_definition; }
205 inline bool DefinitionHasBeenSet() const { return m_definitionHasBeenSet; }
206 template <typename DefinitionT = RuleDefinition>
207 void SetDefinition(DefinitionT&& value) {
208 m_definitionHasBeenSet = true;
209 m_definition = std::forward<DefinitionT>(value);
210 }
211 template <typename DefinitionT = RuleDefinition>
212 RuleDetail& WithDefinition(DefinitionT&& value) {
213 SetDefinition(std::forward<DefinitionT>(value));
214 return *this;
215 }
217
219
222 inline RuleLanguage GetLanguage() const { return m_language; }
223 inline bool LanguageHasBeenSet() const { return m_languageHasBeenSet; }
224 inline void SetLanguage(RuleLanguage value) {
225 m_languageHasBeenSet = true;
226 m_language = value;
227 }
229 SetLanguage(value);
230 return *this;
231 }
233
235
238 inline RuleSchema GetSchema() const { return m_schema; }
239 inline bool SchemaHasBeenSet() const { return m_schemaHasBeenSet; }
240 inline void SetSchema(RuleSchema value) {
241 m_schemaHasBeenSet = true;
242 m_schema = value;
243 }
245 SetSchema(value);
246 return *this;
247 }
249
251
256 inline const DetectionRuleRuntimeMonitoringDetails& GetRuntimeMonitoringDetails() const { return m_runtimeMonitoringDetails; }
257 inline bool RuntimeMonitoringDetailsHasBeenSet() const { return m_runtimeMonitoringDetailsHasBeenSet; }
258 template <typename RuntimeMonitoringDetailsT = DetectionRuleRuntimeMonitoringDetails>
259 void SetRuntimeMonitoringDetails(RuntimeMonitoringDetailsT&& value) {
260 m_runtimeMonitoringDetailsHasBeenSet = true;
261 m_runtimeMonitoringDetails = std::forward<RuntimeMonitoringDetailsT>(value);
262 }
263 template <typename RuntimeMonitoringDetailsT = DetectionRuleRuntimeMonitoringDetails>
264 RuleDetail& WithRuntimeMonitoringDetails(RuntimeMonitoringDetailsT&& value) {
265 SetRuntimeMonitoringDetails(std::forward<RuntimeMonitoringDetailsT>(value));
266 return *this;
267 }
269
271
274 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
275 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
276 template <typename CreatedAtT = Aws::Utils::DateTime>
277 void SetCreatedAt(CreatedAtT&& value) {
278 m_createdAtHasBeenSet = true;
279 m_createdAt = std::forward<CreatedAtT>(value);
280 }
281 template <typename CreatedAtT = Aws::Utils::DateTime>
282 RuleDetail& WithCreatedAt(CreatedAtT&& value) {
283 SetCreatedAt(std::forward<CreatedAtT>(value));
284 return *this;
285 }
287
289
292 inline const Aws::Utils::DateTime& GetUpdatedAt() const { return m_updatedAt; }
293 inline bool UpdatedAtHasBeenSet() const { return m_updatedAtHasBeenSet; }
294 template <typename UpdatedAtT = Aws::Utils::DateTime>
295 void SetUpdatedAt(UpdatedAtT&& value) {
296 m_updatedAtHasBeenSet = true;
297 m_updatedAt = std::forward<UpdatedAtT>(value);
298 }
299 template <typename UpdatedAtT = Aws::Utils::DateTime>
300 RuleDetail& WithUpdatedAt(UpdatedAtT&& value) {
301 SetUpdatedAt(std::forward<UpdatedAtT>(value));
302 return *this;
303 }
305 private:
306 Aws::String m_ruleId;
307
308 Aws::String m_arn;
309
310 Aws::String m_name;
311
312 Aws::String m_description;
313
315
317
318 Aws::String m_tactic;
319
320 Aws::String m_technique;
321
322 Aws::String m_service;
323
324 RuleDefinition m_definition;
325
327
329
330 DetectionRuleRuntimeMonitoringDetails m_runtimeMonitoringDetails;
331
332 Aws::Utils::DateTime m_createdAt{};
333
334 Aws::Utils::DateTime m_updatedAt{};
335 bool m_ruleIdHasBeenSet = false;
336 bool m_arnHasBeenSet = false;
337 bool m_nameHasBeenSet = false;
338 bool m_descriptionHasBeenSet = false;
339 bool m_severityHasBeenSet = false;
340 bool m_dataSourceHasBeenSet = false;
341 bool m_tacticHasBeenSet = false;
342 bool m_techniqueHasBeenSet = false;
343 bool m_serviceHasBeenSet = false;
344 bool m_definitionHasBeenSet = false;
345 bool m_languageHasBeenSet = false;
346 bool m_schemaHasBeenSet = false;
347 bool m_runtimeMonitoringDetailsHasBeenSet = false;
348 bool m_createdAtHasBeenSet = false;
349 bool m_updatedAtHasBeenSet = false;
350};
351
352} // namespace Model
353} // namespace GuardDuty
354} // namespace Aws
void SetService(ServiceT &&value)
Definition RuleDetail.h:189
RuleDetail & WithDescription(DescriptionT &&value)
Definition RuleDetail.h:108
void SetDescription(DescriptionT &&value)
Definition RuleDetail.h:103
const Aws::String & GetTactic() const
Definition RuleDetail.h:150
AWS_GUARDDUTY_API RuleDetail(Aws::Utils::Json::JsonView jsonValue)
RuleDetail & WithTechnique(TechniqueT &&value)
Definition RuleDetail.h:176
RuleDetail & WithCreatedAt(CreatedAtT &&value)
Definition RuleDetail.h:282
DetectionRuleDataSource GetDataSource() const
Definition RuleDetail.h:134
DetectionRuleSeverity GetSeverity() const
Definition RuleDetail.h:118
bool RuntimeMonitoringDetailsHasBeenSet() const
Definition RuleDetail.h:257
void SetName(NameT &&value)
Definition RuleDetail.h:85
void SetDataSource(DetectionRuleDataSource value)
Definition RuleDetail.h:136
RuleDetail & WithRuleId(RuleIdT &&value)
Definition RuleDetail.h:54
const DetectionRuleRuntimeMonitoringDetails & GetRuntimeMonitoringDetails() const
Definition RuleDetail.h:256
RuleDetail & WithArn(ArnT &&value)
Definition RuleDetail.h:72
RuleDetail & WithSchema(RuleSchema value)
Definition RuleDetail.h:244
void SetLanguage(RuleLanguage value)
Definition RuleDetail.h:224
AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const
const RuleDefinition & GetDefinition() const
Definition RuleDetail.h:204
void SetDefinition(DefinitionT &&value)
Definition RuleDetail.h:207
RuleDetail & WithUpdatedAt(UpdatedAtT &&value)
Definition RuleDetail.h:300
AWS_GUARDDUTY_API RuleDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetCreatedAt(CreatedAtT &&value)
Definition RuleDetail.h:277
AWS_GUARDDUTY_API RuleDetail()=default
const Aws::Utils::DateTime & GetCreatedAt() const
Definition RuleDetail.h:274
void SetSeverity(DetectionRuleSeverity value)
Definition RuleDetail.h:120
RuleDetail & WithLanguage(RuleLanguage value)
Definition RuleDetail.h:228
void SetRuleId(RuleIdT &&value)
Definition RuleDetail.h:49
const Aws::String & GetName() const
Definition RuleDetail.h:82
void SetUpdatedAt(UpdatedAtT &&value)
Definition RuleDetail.h:295
RuleDetail & WithDefinition(DefinitionT &&value)
Definition RuleDetail.h:212
const Aws::String & GetTechnique() const
Definition RuleDetail.h:168
RuleLanguage GetLanguage() const
Definition RuleDetail.h:222
void SetRuntimeMonitoringDetails(RuntimeMonitoringDetailsT &&value)
Definition RuleDetail.h:259
void SetSchema(RuleSchema value)
Definition RuleDetail.h:240
RuleDetail & WithName(NameT &&value)
Definition RuleDetail.h:90
void SetTechnique(TechniqueT &&value)
Definition RuleDetail.h:171
RuleDetail & WithTactic(TacticT &&value)
Definition RuleDetail.h:158
void SetTactic(TacticT &&value)
Definition RuleDetail.h:153
RuleDetail & WithRuntimeMonitoringDetails(RuntimeMonitoringDetailsT &&value)
Definition RuleDetail.h:264
const Aws::String & GetRuleId() const
Definition RuleDetail.h:46
const Aws::String & GetService() const
Definition RuleDetail.h:186
const Aws::Utils::DateTime & GetUpdatedAt() const
Definition RuleDetail.h:292
const Aws::String & GetArn() const
Definition RuleDetail.h:64
RuleDetail & WithDataSource(DetectionRuleDataSource value)
Definition RuleDetail.h:140
RuleDetail & WithSeverity(DetectionRuleSeverity value)
Definition RuleDetail.h:124
const Aws::String & GetDescription() const
Definition RuleDetail.h:100
RuleDetail & WithService(ServiceT &&value)
Definition RuleDetail.h:194
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue