7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/securityagent/SecurityAgent_EXPORTS.h>
11#include <aws/securityagent/model/StrideCategory.h>
12#include <aws/securityagent/model/ThreatActor.h>
13#include <aws/securityagent/model/ThreatAnchorShape.h>
14#include <aws/securityagent/model/ThreatEvidenceShape.h>
15#include <aws/securityagent/model/ThreatSeverity.h>
16#include <aws/securityagent/model/ThreatStatus.h>
27namespace SecurityAgent {
38 AWS_SECURITYAGENT_API
Threat() =
default;
49 template <
typename ThreatIdT = Aws::String>
51 m_threatIdHasBeenSet =
true;
52 m_threatId = std::forward<ThreatIdT>(value);
54 template <
typename ThreatIdT = Aws::String>
67 template <
typename ThreatJobIdT = Aws::String>
69 m_threatJobIdHasBeenSet =
true;
70 m_threatJobId = std::forward<ThreatJobIdT>(value);
72 template <
typename ThreatJobIdT = Aws::String>
85 template <
typename TitleT = Aws::String>
87 m_titleHasBeenSet =
true;
88 m_title = std::forward<TitleT>(value);
90 template <
typename TitleT = Aws::String>
92 SetTitle(std::forward<TitleT>(value));
103 template <
typename StatementT = Aws::String>
105 m_statementHasBeenSet =
true;
106 m_statement = std::forward<StatementT>(value);
108 template <
typename StatementT = Aws::String>
122 m_severityHasBeenSet =
true;
138 m_statusHasBeenSet =
true;
153 template <
typename CommentsT = Aws::String>
155 m_commentsHasBeenSet =
true;
156 m_comments = std::forward<CommentsT>(value);
158 template <
typename CommentsT = Aws::String>
171 template <
typename ThreatSourceT = Aws::String>
173 m_threatSourceHasBeenSet =
true;
174 m_threatSource = std::forward<ThreatSourceT>(value);
176 template <
typename ThreatSourceT = Aws::String>
189 template <
typename PrerequisitesT = Aws::String>
191 m_prerequisitesHasBeenSet =
true;
192 m_prerequisites = std::forward<PrerequisitesT>(value);
194 template <
typename PrerequisitesT = Aws::String>
207 template <
typename ThreatActionT = Aws::String>
209 m_threatActionHasBeenSet =
true;
210 m_threatAction = std::forward<ThreatActionT>(value);
212 template <
typename ThreatActionT = Aws::String>
225 template <
typename ThreatImpactT = Aws::String>
227 m_threatImpactHasBeenSet =
true;
228 m_threatImpact = std::forward<ThreatImpactT>(value);
230 template <
typename ThreatImpactT = Aws::String>
243 template <
typename ImpactedGoalT = Aws::Vector<Aws::String>>
245 m_impactedGoalHasBeenSet =
true;
246 m_impactedGoal = std::forward<ImpactedGoalT>(value);
248 template <
typename ImpactedGoalT = Aws::Vector<Aws::String>>
253 template <
typename ImpactedGoalT = Aws::String>
255 m_impactedGoalHasBeenSet =
true;
256 m_impactedGoal.emplace_back(std::forward<ImpactedGoalT>(value));
267 template <
typename ImpactedAssetsT = Aws::Vector<Aws::String>>
269 m_impactedAssetsHasBeenSet =
true;
270 m_impactedAssets = std::forward<ImpactedAssetsT>(value);
272 template <
typename ImpactedAssetsT = Aws::Vector<Aws::String>>
277 template <
typename ImpactedAssetsT = Aws::String>
279 m_impactedAssetsHasBeenSet =
true;
280 m_impactedAssets.emplace_back(std::forward<ImpactedAssetsT>(value));
291 template <
typename AnchorT = ThreatAnchorShape>
293 m_anchorHasBeenSet =
true;
294 m_anchor = std::forward<AnchorT>(value);
296 template <
typename AnchorT = ThreatAnchorShape>
309 template <
typename Ev
idenceT = Aws::Vector<ThreatEv
idenceShape>>
311 m_evidenceHasBeenSet =
true;
312 m_evidence = std::forward<EvidenceT>(value);
314 template <
typename Ev
idenceT = Aws::Vector<ThreatEv
idenceShape>>
319 template <
typename Ev
idenceT = ThreatEv
idenceShape>
321 m_evidenceHasBeenSet =
true;
322 m_evidence.emplace_back(std::forward<EvidenceT>(value));
333 template <
typename Str
ideT = Aws::Vector<Str
ideCategory>>
335 m_strideHasBeenSet =
true;
336 m_stride = std::forward<StrideT>(value);
338 template <
typename Str
ideT = Aws::Vector<Str
ideCategory>>
344 m_strideHasBeenSet =
true;
345 m_stride.push_back(value);
356 template <
typename RecommendationT = Aws::String>
358 m_recommendationHasBeenSet =
true;
359 m_recommendation = std::forward<RecommendationT>(value);
361 template <
typename RecommendationT = Aws::String>
375 m_createdByHasBeenSet =
true;
391 m_updatedByHasBeenSet =
true;
406 template <
typename CreatedAtT = Aws::Utils::DateTime>
408 m_createdAtHasBeenSet =
true;
409 m_createdAt = std::forward<CreatedAtT>(value);
411 template <
typename CreatedAtT = Aws::Utils::DateTime>
424 template <
typename UpdatedAtT = Aws::Utils::DateTime>
426 m_updatedAtHasBeenSet =
true;
427 m_updatedAt = std::forward<UpdatedAtT>(value);
429 template <
typename UpdatedAtT = Aws::Utils::DateTime>
462 ThreatAnchorShape m_anchor;
477 bool m_threatIdHasBeenSet =
false;
478 bool m_threatJobIdHasBeenSet =
false;
479 bool m_titleHasBeenSet =
false;
480 bool m_statementHasBeenSet =
false;
481 bool m_severityHasBeenSet =
false;
482 bool m_statusHasBeenSet =
false;
483 bool m_commentsHasBeenSet =
false;
484 bool m_threatSourceHasBeenSet =
false;
485 bool m_prerequisitesHasBeenSet =
false;
486 bool m_threatActionHasBeenSet =
false;
487 bool m_threatImpactHasBeenSet =
false;
488 bool m_impactedGoalHasBeenSet =
false;
489 bool m_impactedAssetsHasBeenSet =
false;
490 bool m_anchorHasBeenSet =
false;
491 bool m_evidenceHasBeenSet =
false;
492 bool m_strideHasBeenSet =
false;
493 bool m_recommendationHasBeenSet =
false;
494 bool m_createdByHasBeenSet =
false;
495 bool m_updatedByHasBeenSet =
false;
496 bool m_createdAtHasBeenSet =
false;
497 bool m_updatedAtHasBeenSet =
false;
Threat & AddImpactedAssets(ImpactedAssetsT &&value)
Threat & AddImpactedGoal(ImpactedGoalT &&value)
bool PrerequisitesHasBeenSet() const
const Aws::Vector< StrideCategory > & GetStride() const
void SetUpdatedBy(ThreatActor value)
Threat & WithImpactedAssets(ImpactedAssetsT &&value)
bool TitleHasBeenSet() const
void SetStatement(StatementT &&value)
Threat & WithCreatedBy(ThreatActor value)
Threat & WithPrerequisites(PrerequisitesT &&value)
ThreatActor GetCreatedBy() const
bool ThreatIdHasBeenSet() const
void SetThreatJobId(ThreatJobIdT &&value)
const Aws::Utils::DateTime & GetCreatedAt() const
Threat & WithTitle(TitleT &&value)
bool EvidenceHasBeenSet() const
void SetCreatedAt(CreatedAtT &&value)
Threat & AddStride(StrideCategory value)
Threat & WithStride(StrideT &&value)
Threat & WithAnchor(AnchorT &&value)
void SetAnchor(AnchorT &&value)
ThreatSeverity GetSeverity() const
Threat & WithThreatSource(ThreatSourceT &&value)
bool CreatedByHasBeenSet() const
const Aws::String & GetComments() const
bool AnchorHasBeenSet() const
const Aws::String & GetPrerequisites() const
AWS_SECURITYAGENT_API Threat & operator=(Aws::Utils::Json::JsonView jsonValue)
Threat & WithThreatId(ThreatIdT &&value)
Threat & WithImpactedGoal(ImpactedGoalT &&value)
const Aws::String & GetThreatSource() const
const Aws::String & GetThreatImpact() const
const Aws::Vector< Aws::String > & GetImpactedGoal() const
const Aws::Vector< Aws::String > & GetImpactedAssets() const
const Aws::String & GetThreatJobId() const
const ThreatAnchorShape & GetAnchor() const
Threat & WithRecommendation(RecommendationT &&value)
Threat & WithStatement(StatementT &&value)
Threat & WithComments(CommentsT &&value)
void SetComments(CommentsT &&value)
const Aws::String & GetRecommendation() const
bool ImpactedGoalHasBeenSet() const
Threat & WithUpdatedAt(UpdatedAtT &&value)
void SetUpdatedAt(UpdatedAtT &&value)
bool StrideHasBeenSet() const
void SetSeverity(ThreatSeverity value)
ThreatStatus GetStatus() const
void SetCreatedBy(ThreatActor value)
Threat & WithThreatImpact(ThreatImpactT &&value)
Threat & WithStatus(ThreatStatus value)
AWS_SECURITYAGENT_API Threat()=default
void SetStatus(ThreatStatus value)
AWS_SECURITYAGENT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetThreatImpact(ThreatImpactT &&value)
void SetImpactedAssets(ImpactedAssetsT &&value)
bool ImpactedAssetsHasBeenSet() const
void SetTitle(TitleT &&value)
bool ThreatSourceHasBeenSet() const
bool ThreatJobIdHasBeenSet() const
bool CreatedAtHasBeenSet() const
void SetRecommendation(RecommendationT &&value)
Threat & WithUpdatedBy(ThreatActor value)
void SetImpactedGoal(ImpactedGoalT &&value)
void SetThreatId(ThreatIdT &&value)
const Aws::String & GetThreatAction() const
void SetPrerequisites(PrerequisitesT &&value)
const Aws::String & GetTitle() const
bool RecommendationHasBeenSet() const
bool ThreatImpactHasBeenSet() const
bool UpdatedAtHasBeenSet() const
bool UpdatedByHasBeenSet() const
Threat & WithThreatJobId(ThreatJobIdT &&value)
const Aws::Utils::DateTime & GetUpdatedAt() const
Threat & AddEvidence(EvidenceT &&value)
const Aws::String & GetThreatId() const
const Aws::String & GetStatement() const
Threat & WithEvidence(EvidenceT &&value)
Threat & WithCreatedAt(CreatedAtT &&value)
const Aws::Vector< ThreatEvidenceShape > & GetEvidence() const
Threat & WithSeverity(ThreatSeverity value)
bool CommentsHasBeenSet() const
bool SeverityHasBeenSet() const
void SetEvidence(EvidenceT &&value)
void SetStride(StrideT &&value)
void SetThreatAction(ThreatActionT &&value)
bool StatusHasBeenSet() const
bool StatementHasBeenSet() const
bool ThreatActionHasBeenSet() const
void SetThreatSource(ThreatSourceT &&value)
AWS_SECURITYAGENT_API Threat(Aws::Utils::Json::JsonView jsonValue)
Threat & WithThreatAction(ThreatActionT &&value)
ThreatActor GetUpdatedBy() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue