/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about an active Device Defender security profile behavior
* violation.See Also:
AWS
* API Reference
The ID of the active violation.
*/ inline const Aws::String& GetViolationId() const{ return m_violationId; } /** *The ID of the active violation.
*/ inline bool ViolationIdHasBeenSet() const { return m_violationIdHasBeenSet; } /** *The ID of the active violation.
*/ inline void SetViolationId(const Aws::String& value) { m_violationIdHasBeenSet = true; m_violationId = value; } /** *The ID of the active violation.
*/ inline void SetViolationId(Aws::String&& value) { m_violationIdHasBeenSet = true; m_violationId = std::move(value); } /** *The ID of the active violation.
*/ inline void SetViolationId(const char* value) { m_violationIdHasBeenSet = true; m_violationId.assign(value); } /** *The ID of the active violation.
*/ inline ActiveViolation& WithViolationId(const Aws::String& value) { SetViolationId(value); return *this;} /** *The ID of the active violation.
*/ inline ActiveViolation& WithViolationId(Aws::String&& value) { SetViolationId(std::move(value)); return *this;} /** *The ID of the active violation.
*/ inline ActiveViolation& WithViolationId(const char* value) { SetViolationId(value); return *this;} /** *The name of the thing responsible for the active violation.
*/ inline const Aws::String& GetThingName() const{ return m_thingName; } /** *The name of the thing responsible for the active violation.
*/ inline bool ThingNameHasBeenSet() const { return m_thingNameHasBeenSet; } /** *The name of the thing responsible for the active violation.
*/ inline void SetThingName(const Aws::String& value) { m_thingNameHasBeenSet = true; m_thingName = value; } /** *The name of the thing responsible for the active violation.
*/ inline void SetThingName(Aws::String&& value) { m_thingNameHasBeenSet = true; m_thingName = std::move(value); } /** *The name of the thing responsible for the active violation.
*/ inline void SetThingName(const char* value) { m_thingNameHasBeenSet = true; m_thingName.assign(value); } /** *The name of the thing responsible for the active violation.
*/ inline ActiveViolation& WithThingName(const Aws::String& value) { SetThingName(value); return *this;} /** *The name of the thing responsible for the active violation.
*/ inline ActiveViolation& WithThingName(Aws::String&& value) { SetThingName(std::move(value)); return *this;} /** *The name of the thing responsible for the active violation.
*/ inline ActiveViolation& WithThingName(const char* value) { SetThingName(value); return *this;} /** *The security profile whose behavior is in violation.
*/ inline const Aws::String& GetSecurityProfileName() const{ return m_securityProfileName; } /** *The security profile whose behavior is in violation.
*/ inline bool SecurityProfileNameHasBeenSet() const { return m_securityProfileNameHasBeenSet; } /** *The security profile whose behavior is in violation.
*/ inline void SetSecurityProfileName(const Aws::String& value) { m_securityProfileNameHasBeenSet = true; m_securityProfileName = value; } /** *The security profile whose behavior is in violation.
*/ inline void SetSecurityProfileName(Aws::String&& value) { m_securityProfileNameHasBeenSet = true; m_securityProfileName = std::move(value); } /** *The security profile whose behavior is in violation.
*/ inline void SetSecurityProfileName(const char* value) { m_securityProfileNameHasBeenSet = true; m_securityProfileName.assign(value); } /** *The security profile whose behavior is in violation.
*/ inline ActiveViolation& WithSecurityProfileName(const Aws::String& value) { SetSecurityProfileName(value); return *this;} /** *The security profile whose behavior is in violation.
*/ inline ActiveViolation& WithSecurityProfileName(Aws::String&& value) { SetSecurityProfileName(std::move(value)); return *this;} /** *The security profile whose behavior is in violation.
*/ inline ActiveViolation& WithSecurityProfileName(const char* value) { SetSecurityProfileName(value); return *this;} /** *The behavior which is being violated.
*/ inline const Behavior& GetBehavior() const{ return m_behavior; } /** *The behavior which is being violated.
*/ inline bool BehaviorHasBeenSet() const { return m_behaviorHasBeenSet; } /** *The behavior which is being violated.
*/ inline void SetBehavior(const Behavior& value) { m_behaviorHasBeenSet = true; m_behavior = value; } /** *The behavior which is being violated.
*/ inline void SetBehavior(Behavior&& value) { m_behaviorHasBeenSet = true; m_behavior = std::move(value); } /** *The behavior which is being violated.
*/ inline ActiveViolation& WithBehavior(const Behavior& value) { SetBehavior(value); return *this;} /** *The behavior which is being violated.
*/ inline ActiveViolation& WithBehavior(Behavior&& value) { SetBehavior(std::move(value)); return *this;} /** *The value of the metric (the measurement) which caused the most recent * violation.
*/ inline const MetricValue& GetLastViolationValue() const{ return m_lastViolationValue; } /** *The value of the metric (the measurement) which caused the most recent * violation.
*/ inline bool LastViolationValueHasBeenSet() const { return m_lastViolationValueHasBeenSet; } /** *The value of the metric (the measurement) which caused the most recent * violation.
*/ inline void SetLastViolationValue(const MetricValue& value) { m_lastViolationValueHasBeenSet = true; m_lastViolationValue = value; } /** *The value of the metric (the measurement) which caused the most recent * violation.
*/ inline void SetLastViolationValue(MetricValue&& value) { m_lastViolationValueHasBeenSet = true; m_lastViolationValue = std::move(value); } /** *The value of the metric (the measurement) which caused the most recent * violation.
*/ inline ActiveViolation& WithLastViolationValue(const MetricValue& value) { SetLastViolationValue(value); return *this;} /** *The value of the metric (the measurement) which caused the most recent * violation.
*/ inline ActiveViolation& WithLastViolationValue(MetricValue&& value) { SetLastViolationValue(std::move(value)); return *this;} /** *The time the most recent violation occurred.
*/ inline const Aws::Utils::DateTime& GetLastViolationTime() const{ return m_lastViolationTime; } /** *The time the most recent violation occurred.
*/ inline bool LastViolationTimeHasBeenSet() const { return m_lastViolationTimeHasBeenSet; } /** *The time the most recent violation occurred.
*/ inline void SetLastViolationTime(const Aws::Utils::DateTime& value) { m_lastViolationTimeHasBeenSet = true; m_lastViolationTime = value; } /** *The time the most recent violation occurred.
*/ inline void SetLastViolationTime(Aws::Utils::DateTime&& value) { m_lastViolationTimeHasBeenSet = true; m_lastViolationTime = std::move(value); } /** *The time the most recent violation occurred.
*/ inline ActiveViolation& WithLastViolationTime(const Aws::Utils::DateTime& value) { SetLastViolationTime(value); return *this;} /** *The time the most recent violation occurred.
*/ inline ActiveViolation& WithLastViolationTime(Aws::Utils::DateTime&& value) { SetLastViolationTime(std::move(value)); return *this;} /** *The time the violation started.
*/ inline const Aws::Utils::DateTime& GetViolationStartTime() const{ return m_violationStartTime; } /** *The time the violation started.
*/ inline bool ViolationStartTimeHasBeenSet() const { return m_violationStartTimeHasBeenSet; } /** *The time the violation started.
*/ inline void SetViolationStartTime(const Aws::Utils::DateTime& value) { m_violationStartTimeHasBeenSet = true; m_violationStartTime = value; } /** *The time the violation started.
*/ inline void SetViolationStartTime(Aws::Utils::DateTime&& value) { m_violationStartTimeHasBeenSet = true; m_violationStartTime = std::move(value); } /** *The time the violation started.
*/ inline ActiveViolation& WithViolationStartTime(const Aws::Utils::DateTime& value) { SetViolationStartTime(value); return *this;} /** *The time the violation started.
*/ inline ActiveViolation& WithViolationStartTime(Aws::Utils::DateTime&& value) { SetViolationStartTime(std::move(value)); return *this;} private: Aws::String m_violationId; bool m_violationIdHasBeenSet; Aws::String m_thingName; bool m_thingNameHasBeenSet; Aws::String m_securityProfileName; bool m_securityProfileNameHasBeenSet; Behavior m_behavior; bool m_behaviorHasBeenSet; MetricValue m_lastViolationValue; bool m_lastViolationValueHasBeenSet; Aws::Utils::DateTime m_lastViolationTime; bool m_lastViolationTimeHasBeenSet; Aws::Utils::DateTime m_violationStartTime; bool m_violationStartTimeHasBeenSet; }; } // namespace Model } // namespace IoT } // namespace Aws