/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace SecurityHub
{
namespace Model
{
/**
* Identifies the finding fields that the automation rule action updates when a
* finding matches the defined criteria.
See Also:
AWS
* API Reference
*/
class AutomationRulesFindingFieldsUpdate
{
public:
AWS_SECURITYHUB_API AutomationRulesFindingFieldsUpdate();
AWS_SECURITYHUB_API AutomationRulesFindingFieldsUpdate(Aws::Utils::Json::JsonView jsonValue);
AWS_SECURITYHUB_API AutomationRulesFindingFieldsUpdate& operator=(Aws::Utils::Json::JsonView jsonValue);
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
inline const NoteUpdate& GetNote() const{ return m_note; }
inline bool NoteHasBeenSet() const { return m_noteHasBeenSet; }
inline void SetNote(const NoteUpdate& value) { m_noteHasBeenSet = true; m_note = value; }
inline void SetNote(NoteUpdate&& value) { m_noteHasBeenSet = true; m_note = std::move(value); }
inline AutomationRulesFindingFieldsUpdate& WithNote(const NoteUpdate& value) { SetNote(value); return *this;}
inline AutomationRulesFindingFieldsUpdate& WithNote(NoteUpdate&& value) { SetNote(std::move(value)); return *this;}
inline const SeverityUpdate& GetSeverity() const{ return m_severity; }
inline bool SeverityHasBeenSet() const { return m_severityHasBeenSet; }
inline void SetSeverity(const SeverityUpdate& value) { m_severityHasBeenSet = true; m_severity = value; }
inline void SetSeverity(SeverityUpdate&& value) { m_severityHasBeenSet = true; m_severity = std::move(value); }
inline AutomationRulesFindingFieldsUpdate& WithSeverity(const SeverityUpdate& value) { SetSeverity(value); return *this;}
inline AutomationRulesFindingFieldsUpdate& WithSeverity(SeverityUpdate&& value) { SetSeverity(std::move(value)); return *this;}
/**
* The rule action updates the VerificationState
field of a
* finding.
*/
inline const VerificationState& GetVerificationState() const{ return m_verificationState; }
/**
* The rule action updates the VerificationState
field of a
* finding.
*/
inline bool VerificationStateHasBeenSet() const { return m_verificationStateHasBeenSet; }
/**
* The rule action updates the VerificationState
field of a
* finding.
*/
inline void SetVerificationState(const VerificationState& value) { m_verificationStateHasBeenSet = true; m_verificationState = value; }
/**
* The rule action updates the VerificationState
field of a
* finding.
*/
inline void SetVerificationState(VerificationState&& value) { m_verificationStateHasBeenSet = true; m_verificationState = std::move(value); }
/**
* The rule action updates the VerificationState
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& WithVerificationState(const VerificationState& value) { SetVerificationState(value); return *this;}
/**
* The rule action updates the VerificationState
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& WithVerificationState(VerificationState&& value) { SetVerificationState(std::move(value)); return *this;}
/**
* The rule action updates the Confidence
field of a finding.
*/
inline int GetConfidence() const{ return m_confidence; }
/**
* The rule action updates the Confidence
field of a finding.
*/
inline bool ConfidenceHasBeenSet() const { return m_confidenceHasBeenSet; }
/**
* The rule action updates the Confidence
field of a finding.
*/
inline void SetConfidence(int value) { m_confidenceHasBeenSet = true; m_confidence = value; }
/**
* The rule action updates the Confidence
field of a finding.
*/
inline AutomationRulesFindingFieldsUpdate& WithConfidence(int value) { SetConfidence(value); return *this;}
/**
* The rule action updates the Criticality
field of a finding.
*
*/
inline int GetCriticality() const{ return m_criticality; }
/**
* The rule action updates the Criticality
field of a finding.
*
*/
inline bool CriticalityHasBeenSet() const { return m_criticalityHasBeenSet; }
/**
* The rule action updates the Criticality
field of a finding.
*
*/
inline void SetCriticality(int value) { m_criticalityHasBeenSet = true; m_criticality = value; }
/**
* The rule action updates the Criticality
field of a finding.
*
*/
inline AutomationRulesFindingFieldsUpdate& WithCriticality(int value) { SetCriticality(value); return *this;}
/**
* The rule action updates the Types
field of a finding.
*/
inline const Aws::Vector& GetTypes() const{ return m_types; }
/**
* The rule action updates the Types
field of a finding.
*/
inline bool TypesHasBeenSet() const { return m_typesHasBeenSet; }
/**
* The rule action updates the Types
field of a finding.
*/
inline void SetTypes(const Aws::Vector& value) { m_typesHasBeenSet = true; m_types = value; }
/**
* The rule action updates the Types
field of a finding.
*/
inline void SetTypes(Aws::Vector&& value) { m_typesHasBeenSet = true; m_types = std::move(value); }
/**
* The rule action updates the Types
field of a finding.
*/
inline AutomationRulesFindingFieldsUpdate& WithTypes(const Aws::Vector& value) { SetTypes(value); return *this;}
/**
* The rule action updates the Types
field of a finding.
*/
inline AutomationRulesFindingFieldsUpdate& WithTypes(Aws::Vector&& value) { SetTypes(std::move(value)); return *this;}
/**
* The rule action updates the Types
field of a finding.
*/
inline AutomationRulesFindingFieldsUpdate& AddTypes(const Aws::String& value) { m_typesHasBeenSet = true; m_types.push_back(value); return *this; }
/**
* The rule action updates the Types
field of a finding.
*/
inline AutomationRulesFindingFieldsUpdate& AddTypes(Aws::String&& value) { m_typesHasBeenSet = true; m_types.push_back(std::move(value)); return *this; }
/**
* The rule action updates the Types
field of a finding.
*/
inline AutomationRulesFindingFieldsUpdate& AddTypes(const char* value) { m_typesHasBeenSet = true; m_types.push_back(value); return *this; }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline const Aws::Map& GetUserDefinedFields() const{ return m_userDefinedFields; }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline bool UserDefinedFieldsHasBeenSet() const { return m_userDefinedFieldsHasBeenSet; }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline void SetUserDefinedFields(const Aws::Map& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields = value; }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline void SetUserDefinedFields(Aws::Map&& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields = std::move(value); }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& WithUserDefinedFields(const Aws::Map& value) { SetUserDefinedFields(value); return *this;}
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& WithUserDefinedFields(Aws::Map&& value) { SetUserDefinedFields(std::move(value)); return *this;}
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& AddUserDefinedFields(const Aws::String& key, const Aws::String& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(key, value); return *this; }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& AddUserDefinedFields(Aws::String&& key, const Aws::String& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(std::move(key), value); return *this; }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& AddUserDefinedFields(const Aws::String& key, Aws::String&& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(key, std::move(value)); return *this; }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& AddUserDefinedFields(Aws::String&& key, Aws::String&& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(std::move(key), std::move(value)); return *this; }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& AddUserDefinedFields(const char* key, Aws::String&& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(key, std::move(value)); return *this; }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& AddUserDefinedFields(Aws::String&& key, const char* value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(std::move(key), value); return *this; }
/**
* The rule action updates the UserDefinedFields
field of a
* finding.
*/
inline AutomationRulesFindingFieldsUpdate& AddUserDefinedFields(const char* key, const char* value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(key, value); return *this; }
inline const WorkflowUpdate& GetWorkflow() const{ return m_workflow; }
inline bool WorkflowHasBeenSet() const { return m_workflowHasBeenSet; }
inline void SetWorkflow(const WorkflowUpdate& value) { m_workflowHasBeenSet = true; m_workflow = value; }
inline void SetWorkflow(WorkflowUpdate&& value) { m_workflowHasBeenSet = true; m_workflow = std::move(value); }
inline AutomationRulesFindingFieldsUpdate& WithWorkflow(const WorkflowUpdate& value) { SetWorkflow(value); return *this;}
inline AutomationRulesFindingFieldsUpdate& WithWorkflow(WorkflowUpdate&& value) { SetWorkflow(std::move(value)); return *this;}
/**
* The rule action updates the RelatedFindings
field of a finding.
*
*/
inline const Aws::Vector& GetRelatedFindings() const{ return m_relatedFindings; }
/**
* The rule action updates the RelatedFindings
field of a finding.
*
*/
inline bool RelatedFindingsHasBeenSet() const { return m_relatedFindingsHasBeenSet; }
/**
* The rule action updates the RelatedFindings
field of a finding.
*
*/
inline void SetRelatedFindings(const Aws::Vector& value) { m_relatedFindingsHasBeenSet = true; m_relatedFindings = value; }
/**
* The rule action updates the RelatedFindings
field of a finding.
*
*/
inline void SetRelatedFindings(Aws::Vector&& value) { m_relatedFindingsHasBeenSet = true; m_relatedFindings = std::move(value); }
/**
* The rule action updates the RelatedFindings
field of a finding.
*
*/
inline AutomationRulesFindingFieldsUpdate& WithRelatedFindings(const Aws::Vector& value) { SetRelatedFindings(value); return *this;}
/**
* The rule action updates the RelatedFindings
field of a finding.
*
*/
inline AutomationRulesFindingFieldsUpdate& WithRelatedFindings(Aws::Vector&& value) { SetRelatedFindings(std::move(value)); return *this;}
/**
* The rule action updates the RelatedFindings
field of a finding.
*
*/
inline AutomationRulesFindingFieldsUpdate& AddRelatedFindings(const RelatedFinding& value) { m_relatedFindingsHasBeenSet = true; m_relatedFindings.push_back(value); return *this; }
/**
* The rule action updates the RelatedFindings
field of a finding.
*
*/
inline AutomationRulesFindingFieldsUpdate& AddRelatedFindings(RelatedFinding&& value) { m_relatedFindingsHasBeenSet = true; m_relatedFindings.push_back(std::move(value)); return *this; }
private:
NoteUpdate m_note;
bool m_noteHasBeenSet = false;
SeverityUpdate m_severity;
bool m_severityHasBeenSet = false;
VerificationState m_verificationState;
bool m_verificationStateHasBeenSet = false;
int m_confidence;
bool m_confidenceHasBeenSet = false;
int m_criticality;
bool m_criticalityHasBeenSet = false;
Aws::Vector m_types;
bool m_typesHasBeenSet = false;
Aws::Map m_userDefinedFields;
bool m_userDefinedFieldsHasBeenSet = false;
WorkflowUpdate m_workflow;
bool m_workflowHasBeenSet = false;
Aws::Vector m_relatedFindings;
bool m_relatedFindingsHasBeenSet = false;
};
} // namespace Model
} // namespace SecurityHub
} // namespace Aws