/** * 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 IoT { namespace Model { /** *

The summary of the mitigation action tasks.

See Also:

AWS * API Reference

*/ class DetectMitigationActionsTaskSummary { public: AWS_IOT_API DetectMitigationActionsTaskSummary(); AWS_IOT_API DetectMitigationActionsTaskSummary(Aws::Utils::Json::JsonView jsonValue); AWS_IOT_API DetectMitigationActionsTaskSummary& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The unique identifier of the task.

*/ inline const Aws::String& GetTaskId() const{ return m_taskId; } /** *

The unique identifier of the task.

*/ inline bool TaskIdHasBeenSet() const { return m_taskIdHasBeenSet; } /** *

The unique identifier of the task.

*/ inline void SetTaskId(const Aws::String& value) { m_taskIdHasBeenSet = true; m_taskId = value; } /** *

The unique identifier of the task.

*/ inline void SetTaskId(Aws::String&& value) { m_taskIdHasBeenSet = true; m_taskId = std::move(value); } /** *

The unique identifier of the task.

*/ inline void SetTaskId(const char* value) { m_taskIdHasBeenSet = true; m_taskId.assign(value); } /** *

The unique identifier of the task.

*/ inline DetectMitigationActionsTaskSummary& WithTaskId(const Aws::String& value) { SetTaskId(value); return *this;} /** *

The unique identifier of the task.

*/ inline DetectMitigationActionsTaskSummary& WithTaskId(Aws::String&& value) { SetTaskId(std::move(value)); return *this;} /** *

The unique identifier of the task.

*/ inline DetectMitigationActionsTaskSummary& WithTaskId(const char* value) { SetTaskId(value); return *this;} /** *

The status of the task.

*/ inline const DetectMitigationActionsTaskStatus& GetTaskStatus() const{ return m_taskStatus; } /** *

The status of the task.

*/ inline bool TaskStatusHasBeenSet() const { return m_taskStatusHasBeenSet; } /** *

The status of the task.

*/ inline void SetTaskStatus(const DetectMitigationActionsTaskStatus& value) { m_taskStatusHasBeenSet = true; m_taskStatus = value; } /** *

The status of the task.

*/ inline void SetTaskStatus(DetectMitigationActionsTaskStatus&& value) { m_taskStatusHasBeenSet = true; m_taskStatus = std::move(value); } /** *

The status of the task.

*/ inline DetectMitigationActionsTaskSummary& WithTaskStatus(const DetectMitigationActionsTaskStatus& value) { SetTaskStatus(value); return *this;} /** *

The status of the task.

*/ inline DetectMitigationActionsTaskSummary& WithTaskStatus(DetectMitigationActionsTaskStatus&& value) { SetTaskStatus(std::move(value)); return *this;} /** *

The date the task started.

*/ inline const Aws::Utils::DateTime& GetTaskStartTime() const{ return m_taskStartTime; } /** *

The date the task started.

*/ inline bool TaskStartTimeHasBeenSet() const { return m_taskStartTimeHasBeenSet; } /** *

The date the task started.

*/ inline void SetTaskStartTime(const Aws::Utils::DateTime& value) { m_taskStartTimeHasBeenSet = true; m_taskStartTime = value; } /** *

The date the task started.

*/ inline void SetTaskStartTime(Aws::Utils::DateTime&& value) { m_taskStartTimeHasBeenSet = true; m_taskStartTime = std::move(value); } /** *

The date the task started.

*/ inline DetectMitigationActionsTaskSummary& WithTaskStartTime(const Aws::Utils::DateTime& value) { SetTaskStartTime(value); return *this;} /** *

The date the task started.

*/ inline DetectMitigationActionsTaskSummary& WithTaskStartTime(Aws::Utils::DateTime&& value) { SetTaskStartTime(std::move(value)); return *this;} /** *

The date the task ended.

*/ inline const Aws::Utils::DateTime& GetTaskEndTime() const{ return m_taskEndTime; } /** *

The date the task ended.

*/ inline bool TaskEndTimeHasBeenSet() const { return m_taskEndTimeHasBeenSet; } /** *

The date the task ended.

*/ inline void SetTaskEndTime(const Aws::Utils::DateTime& value) { m_taskEndTimeHasBeenSet = true; m_taskEndTime = value; } /** *

The date the task ended.

*/ inline void SetTaskEndTime(Aws::Utils::DateTime&& value) { m_taskEndTimeHasBeenSet = true; m_taskEndTime = std::move(value); } /** *

The date the task ended.

*/ inline DetectMitigationActionsTaskSummary& WithTaskEndTime(const Aws::Utils::DateTime& value) { SetTaskEndTime(value); return *this;} /** *

The date the task ended.

*/ inline DetectMitigationActionsTaskSummary& WithTaskEndTime(Aws::Utils::DateTime&& value) { SetTaskEndTime(std::move(value)); return *this;} /** *

Specifies the ML Detect findings to which the mitigation actions are * applied.

*/ inline const DetectMitigationActionsTaskTarget& GetTarget() const{ return m_target; } /** *

Specifies the ML Detect findings to which the mitigation actions are * applied.

*/ inline bool TargetHasBeenSet() const { return m_targetHasBeenSet; } /** *

Specifies the ML Detect findings to which the mitigation actions are * applied.

*/ inline void SetTarget(const DetectMitigationActionsTaskTarget& value) { m_targetHasBeenSet = true; m_target = value; } /** *

Specifies the ML Detect findings to which the mitigation actions are * applied.

*/ inline void SetTarget(DetectMitigationActionsTaskTarget&& value) { m_targetHasBeenSet = true; m_target = std::move(value); } /** *

Specifies the ML Detect findings to which the mitigation actions are * applied.

*/ inline DetectMitigationActionsTaskSummary& WithTarget(const DetectMitigationActionsTaskTarget& value) { SetTarget(value); return *this;} /** *

Specifies the ML Detect findings to which the mitigation actions are * applied.

*/ inline DetectMitigationActionsTaskSummary& WithTarget(DetectMitigationActionsTaskTarget&& value) { SetTarget(std::move(value)); return *this;} /** *

Specifies the time period of which violation events occurred between.

*/ inline const ViolationEventOccurrenceRange& GetViolationEventOccurrenceRange() const{ return m_violationEventOccurrenceRange; } /** *

Specifies the time period of which violation events occurred between.

*/ inline bool ViolationEventOccurrenceRangeHasBeenSet() const { return m_violationEventOccurrenceRangeHasBeenSet; } /** *

Specifies the time period of which violation events occurred between.

*/ inline void SetViolationEventOccurrenceRange(const ViolationEventOccurrenceRange& value) { m_violationEventOccurrenceRangeHasBeenSet = true; m_violationEventOccurrenceRange = value; } /** *

Specifies the time period of which violation events occurred between.

*/ inline void SetViolationEventOccurrenceRange(ViolationEventOccurrenceRange&& value) { m_violationEventOccurrenceRangeHasBeenSet = true; m_violationEventOccurrenceRange = std::move(value); } /** *

Specifies the time period of which violation events occurred between.

*/ inline DetectMitigationActionsTaskSummary& WithViolationEventOccurrenceRange(const ViolationEventOccurrenceRange& value) { SetViolationEventOccurrenceRange(value); return *this;} /** *

Specifies the time period of which violation events occurred between.

*/ inline DetectMitigationActionsTaskSummary& WithViolationEventOccurrenceRange(ViolationEventOccurrenceRange&& value) { SetViolationEventOccurrenceRange(std::move(value)); return *this;} /** *

Includes only active violations.

*/ inline bool GetOnlyActiveViolationsIncluded() const{ return m_onlyActiveViolationsIncluded; } /** *

Includes only active violations.

*/ inline bool OnlyActiveViolationsIncludedHasBeenSet() const { return m_onlyActiveViolationsIncludedHasBeenSet; } /** *

Includes only active violations.

*/ inline void SetOnlyActiveViolationsIncluded(bool value) { m_onlyActiveViolationsIncludedHasBeenSet = true; m_onlyActiveViolationsIncluded = value; } /** *

Includes only active violations.

*/ inline DetectMitigationActionsTaskSummary& WithOnlyActiveViolationsIncluded(bool value) { SetOnlyActiveViolationsIncluded(value); return *this;} /** *

Includes suppressed alerts.

*/ inline bool GetSuppressedAlertsIncluded() const{ return m_suppressedAlertsIncluded; } /** *

Includes suppressed alerts.

*/ inline bool SuppressedAlertsIncludedHasBeenSet() const { return m_suppressedAlertsIncludedHasBeenSet; } /** *

Includes suppressed alerts.

*/ inline void SetSuppressedAlertsIncluded(bool value) { m_suppressedAlertsIncludedHasBeenSet = true; m_suppressedAlertsIncluded = value; } /** *

Includes suppressed alerts.

*/ inline DetectMitigationActionsTaskSummary& WithSuppressedAlertsIncluded(bool value) { SetSuppressedAlertsIncluded(value); return *this;} /** *

The definition of the actions.

*/ inline const Aws::Vector& GetActionsDefinition() const{ return m_actionsDefinition; } /** *

The definition of the actions.

*/ inline bool ActionsDefinitionHasBeenSet() const { return m_actionsDefinitionHasBeenSet; } /** *

The definition of the actions.

*/ inline void SetActionsDefinition(const Aws::Vector& value) { m_actionsDefinitionHasBeenSet = true; m_actionsDefinition = value; } /** *

The definition of the actions.

*/ inline void SetActionsDefinition(Aws::Vector&& value) { m_actionsDefinitionHasBeenSet = true; m_actionsDefinition = std::move(value); } /** *

The definition of the actions.

*/ inline DetectMitigationActionsTaskSummary& WithActionsDefinition(const Aws::Vector& value) { SetActionsDefinition(value); return *this;} /** *

The definition of the actions.

*/ inline DetectMitigationActionsTaskSummary& WithActionsDefinition(Aws::Vector&& value) { SetActionsDefinition(std::move(value)); return *this;} /** *

The definition of the actions.

*/ inline DetectMitigationActionsTaskSummary& AddActionsDefinition(const MitigationAction& value) { m_actionsDefinitionHasBeenSet = true; m_actionsDefinition.push_back(value); return *this; } /** *

The definition of the actions.

*/ inline DetectMitigationActionsTaskSummary& AddActionsDefinition(MitigationAction&& value) { m_actionsDefinitionHasBeenSet = true; m_actionsDefinition.push_back(std::move(value)); return *this; } /** *

The statistics of a mitigation action task.

*/ inline const DetectMitigationActionsTaskStatistics& GetTaskStatistics() const{ return m_taskStatistics; } /** *

The statistics of a mitigation action task.

*/ inline bool TaskStatisticsHasBeenSet() const { return m_taskStatisticsHasBeenSet; } /** *

The statistics of a mitigation action task.

*/ inline void SetTaskStatistics(const DetectMitigationActionsTaskStatistics& value) { m_taskStatisticsHasBeenSet = true; m_taskStatistics = value; } /** *

The statistics of a mitigation action task.

*/ inline void SetTaskStatistics(DetectMitigationActionsTaskStatistics&& value) { m_taskStatisticsHasBeenSet = true; m_taskStatistics = std::move(value); } /** *

The statistics of a mitigation action task.

*/ inline DetectMitigationActionsTaskSummary& WithTaskStatistics(const DetectMitigationActionsTaskStatistics& value) { SetTaskStatistics(value); return *this;} /** *

The statistics of a mitigation action task.

*/ inline DetectMitigationActionsTaskSummary& WithTaskStatistics(DetectMitigationActionsTaskStatistics&& value) { SetTaskStatistics(std::move(value)); return *this;} private: Aws::String m_taskId; bool m_taskIdHasBeenSet = false; DetectMitigationActionsTaskStatus m_taskStatus; bool m_taskStatusHasBeenSet = false; Aws::Utils::DateTime m_taskStartTime; bool m_taskStartTimeHasBeenSet = false; Aws::Utils::DateTime m_taskEndTime; bool m_taskEndTimeHasBeenSet = false; DetectMitigationActionsTaskTarget m_target; bool m_targetHasBeenSet = false; ViolationEventOccurrenceRange m_violationEventOccurrenceRange; bool m_violationEventOccurrenceRangeHasBeenSet = false; bool m_onlyActiveViolationsIncluded; bool m_onlyActiveViolationsIncludedHasBeenSet = false; bool m_suppressedAlertsIncluded; bool m_suppressedAlertsIncludedHasBeenSet = false; Aws::Vector m_actionsDefinition; bool m_actionsDefinitionHasBeenSet = false; DetectMitigationActionsTaskStatistics m_taskStatistics; bool m_taskStatisticsHasBeenSet = false; }; } // namespace Model } // namespace IoT } // namespace Aws