/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace IoTEventsData { namespace Model { /** *

Contains information about an alarm.

See Also:

AWS * API Reference

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

The name of the alarm model.

*/ inline const Aws::String& GetAlarmModelName() const{ return m_alarmModelName; } /** *

The name of the alarm model.

*/ inline bool AlarmModelNameHasBeenSet() const { return m_alarmModelNameHasBeenSet; } /** *

The name of the alarm model.

*/ inline void SetAlarmModelName(const Aws::String& value) { m_alarmModelNameHasBeenSet = true; m_alarmModelName = value; } /** *

The name of the alarm model.

*/ inline void SetAlarmModelName(Aws::String&& value) { m_alarmModelNameHasBeenSet = true; m_alarmModelName = std::move(value); } /** *

The name of the alarm model.

*/ inline void SetAlarmModelName(const char* value) { m_alarmModelNameHasBeenSet = true; m_alarmModelName.assign(value); } /** *

The name of the alarm model.

*/ inline Alarm& WithAlarmModelName(const Aws::String& value) { SetAlarmModelName(value); return *this;} /** *

The name of the alarm model.

*/ inline Alarm& WithAlarmModelName(Aws::String&& value) { SetAlarmModelName(std::move(value)); return *this;} /** *

The name of the alarm model.

*/ inline Alarm& WithAlarmModelName(const char* value) { SetAlarmModelName(value); return *this;} /** *

The version of the alarm model.

*/ inline const Aws::String& GetAlarmModelVersion() const{ return m_alarmModelVersion; } /** *

The version of the alarm model.

*/ inline bool AlarmModelVersionHasBeenSet() const { return m_alarmModelVersionHasBeenSet; } /** *

The version of the alarm model.

*/ inline void SetAlarmModelVersion(const Aws::String& value) { m_alarmModelVersionHasBeenSet = true; m_alarmModelVersion = value; } /** *

The version of the alarm model.

*/ inline void SetAlarmModelVersion(Aws::String&& value) { m_alarmModelVersionHasBeenSet = true; m_alarmModelVersion = std::move(value); } /** *

The version of the alarm model.

*/ inline void SetAlarmModelVersion(const char* value) { m_alarmModelVersionHasBeenSet = true; m_alarmModelVersion.assign(value); } /** *

The version of the alarm model.

*/ inline Alarm& WithAlarmModelVersion(const Aws::String& value) { SetAlarmModelVersion(value); return *this;} /** *

The version of the alarm model.

*/ inline Alarm& WithAlarmModelVersion(Aws::String&& value) { SetAlarmModelVersion(std::move(value)); return *this;} /** *

The version of the alarm model.

*/ inline Alarm& WithAlarmModelVersion(const char* value) { SetAlarmModelVersion(value); return *this;} /** *

The value of the key used as a filter to select only the alarms associated * with the key.

*/ inline const Aws::String& GetKeyValue() const{ return m_keyValue; } /** *

The value of the key used as a filter to select only the alarms associated * with the key.

*/ inline bool KeyValueHasBeenSet() const { return m_keyValueHasBeenSet; } /** *

The value of the key used as a filter to select only the alarms associated * with the key.

*/ inline void SetKeyValue(const Aws::String& value) { m_keyValueHasBeenSet = true; m_keyValue = value; } /** *

The value of the key used as a filter to select only the alarms associated * with the key.

*/ inline void SetKeyValue(Aws::String&& value) { m_keyValueHasBeenSet = true; m_keyValue = std::move(value); } /** *

The value of the key used as a filter to select only the alarms associated * with the key.

*/ inline void SetKeyValue(const char* value) { m_keyValueHasBeenSet = true; m_keyValue.assign(value); } /** *

The value of the key used as a filter to select only the alarms associated * with the key.

*/ inline Alarm& WithKeyValue(const Aws::String& value) { SetKeyValue(value); return *this;} /** *

The value of the key used as a filter to select only the alarms associated * with the key.

*/ inline Alarm& WithKeyValue(Aws::String&& value) { SetKeyValue(std::move(value)); return *this;} /** *

The value of the key used as a filter to select only the alarms associated * with the key.

*/ inline Alarm& WithKeyValue(const char* value) { SetKeyValue(value); return *this;} /** *

Contains information about the current state of the alarm.

*/ inline const AlarmState& GetAlarmState() const{ return m_alarmState; } /** *

Contains information about the current state of the alarm.

*/ inline bool AlarmStateHasBeenSet() const { return m_alarmStateHasBeenSet; } /** *

Contains information about the current state of the alarm.

*/ inline void SetAlarmState(const AlarmState& value) { m_alarmStateHasBeenSet = true; m_alarmState = value; } /** *

Contains information about the current state of the alarm.

*/ inline void SetAlarmState(AlarmState&& value) { m_alarmStateHasBeenSet = true; m_alarmState = std::move(value); } /** *

Contains information about the current state of the alarm.

*/ inline Alarm& WithAlarmState(const AlarmState& value) { SetAlarmState(value); return *this;} /** *

Contains information about the current state of the alarm.

*/ inline Alarm& WithAlarmState(AlarmState&& value) { SetAlarmState(std::move(value)); return *this;} /** *

A non-negative integer that reflects the severity level of the alarm.

*/ inline int GetSeverity() const{ return m_severity; } /** *

A non-negative integer that reflects the severity level of the alarm.

*/ inline bool SeverityHasBeenSet() const { return m_severityHasBeenSet; } /** *

A non-negative integer that reflects the severity level of the alarm.

*/ inline void SetSeverity(int value) { m_severityHasBeenSet = true; m_severity = value; } /** *

A non-negative integer that reflects the severity level of the alarm.

*/ inline Alarm& WithSeverity(int value) { SetSeverity(value); return *this;} /** *

The time the alarm was created, in the Unix epoch format.

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

The time the alarm was created, in the Unix epoch format.

*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *

The time the alarm was created, in the Unix epoch format.

*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *

The time the alarm was created, in the Unix epoch format.

*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *

The time the alarm was created, in the Unix epoch format.

*/ inline Alarm& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

The time the alarm was created, in the Unix epoch format.

*/ inline Alarm& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

The time the alarm was last updated, in the Unix epoch format.

*/ inline const Aws::Utils::DateTime& GetLastUpdateTime() const{ return m_lastUpdateTime; } /** *

The time the alarm was last updated, in the Unix epoch format.

*/ inline bool LastUpdateTimeHasBeenSet() const { return m_lastUpdateTimeHasBeenSet; } /** *

The time the alarm was last updated, in the Unix epoch format.

*/ inline void SetLastUpdateTime(const Aws::Utils::DateTime& value) { m_lastUpdateTimeHasBeenSet = true; m_lastUpdateTime = value; } /** *

The time the alarm was last updated, in the Unix epoch format.

*/ inline void SetLastUpdateTime(Aws::Utils::DateTime&& value) { m_lastUpdateTimeHasBeenSet = true; m_lastUpdateTime = std::move(value); } /** *

The time the alarm was last updated, in the Unix epoch format.

*/ inline Alarm& WithLastUpdateTime(const Aws::Utils::DateTime& value) { SetLastUpdateTime(value); return *this;} /** *

The time the alarm was last updated, in the Unix epoch format.

*/ inline Alarm& WithLastUpdateTime(Aws::Utils::DateTime&& value) { SetLastUpdateTime(std::move(value)); return *this;} private: Aws::String m_alarmModelName; bool m_alarmModelNameHasBeenSet = false; Aws::String m_alarmModelVersion; bool m_alarmModelVersionHasBeenSet = false; Aws::String m_keyValue; bool m_keyValueHasBeenSet = false; AlarmState m_alarmState; bool m_alarmStateHasBeenSet = false; int m_severity; bool m_severityHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::Utils::DateTime m_lastUpdateTime; bool m_lastUpdateTimeHasBeenSet = false; }; } // namespace Model } // namespace IoTEventsData } // namespace Aws