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

Contains a summary of an alarm model version.

See Also:

AWS * API Reference

*/ class AlarmModelVersionSummary { public: AWS_IOTEVENTS_API AlarmModelVersionSummary(); AWS_IOTEVENTS_API AlarmModelVersionSummary(Aws::Utils::Json::JsonView jsonValue); AWS_IOTEVENTS_API AlarmModelVersionSummary& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_IOTEVENTS_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 AlarmModelVersionSummary& WithAlarmModelName(const Aws::String& value) { SetAlarmModelName(value); return *this;} /** *

The name of the alarm model.

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

The name of the alarm model.

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

The ARN of the alarm model. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline const Aws::String& GetAlarmModelArn() const{ return m_alarmModelArn; } /** *

The ARN of the alarm model. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline bool AlarmModelArnHasBeenSet() const { return m_alarmModelArnHasBeenSet; } /** *

The ARN of the alarm model. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline void SetAlarmModelArn(const Aws::String& value) { m_alarmModelArnHasBeenSet = true; m_alarmModelArn = value; } /** *

The ARN of the alarm model. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline void SetAlarmModelArn(Aws::String&& value) { m_alarmModelArnHasBeenSet = true; m_alarmModelArn = std::move(value); } /** *

The ARN of the alarm model. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline void SetAlarmModelArn(const char* value) { m_alarmModelArnHasBeenSet = true; m_alarmModelArn.assign(value); } /** *

The ARN of the alarm model. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline AlarmModelVersionSummary& WithAlarmModelArn(const Aws::String& value) { SetAlarmModelArn(value); return *this;} /** *

The ARN of the alarm model. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline AlarmModelVersionSummary& WithAlarmModelArn(Aws::String&& value) { SetAlarmModelArn(std::move(value)); return *this;} /** *

The ARN of the alarm model. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline AlarmModelVersionSummary& WithAlarmModelArn(const char* value) { SetAlarmModelArn(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 AlarmModelVersionSummary& WithAlarmModelVersion(const Aws::String& value) { SetAlarmModelVersion(value); return *this;} /** *

The version of the alarm model.

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

The version of the alarm model.

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

The ARN of the IAM role that allows the alarm to perform actions and access * AWS resources. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

The ARN of the IAM role that allows the alarm to perform actions and access * AWS resources. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *

The ARN of the IAM role that allows the alarm to perform actions and access * AWS resources. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *

The ARN of the IAM role that allows the alarm to perform actions and access * AWS resources. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *

The ARN of the IAM role that allows the alarm to perform actions and access * AWS resources. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *

The ARN of the IAM role that allows the alarm to perform actions and access * AWS resources. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline AlarmModelVersionSummary& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

The ARN of the IAM role that allows the alarm to perform actions and access * AWS resources. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline AlarmModelVersionSummary& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

The ARN of the IAM role that allows the alarm to perform actions and access * AWS resources. For more information, see Amazon * Resource Names (ARNs) in the AWS General Reference.

*/ inline AlarmModelVersionSummary& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

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

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

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

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

The time the alarm model 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 model 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 model was created, in the Unix epoch format.

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

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

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

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

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

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

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

The time the alarm model 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 model 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 model was last updated, in the Unix epoch format.

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

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

*/ inline AlarmModelVersionSummary& WithLastUpdateTime(Aws::Utils::DateTime&& value) { SetLastUpdateTime(std::move(value)); return *this;} /** *

The status of the alarm model. The status can be one of the following * values:

  • ACTIVE - The alarm model is active and * it's ready to evaluate data.

  • ACTIVATING - AWS * IoT Events is activating your alarm model. Activating an alarm model can take up * to a few minutes.

  • INACTIVE - The alarm model is * inactive, so it isn't ready to evaluate data. Check your alarm model information * and update the alarm model.

  • FAILED - You * couldn't create or update the alarm model. Check your alarm model information * and try again.

*/ inline const AlarmModelVersionStatus& GetStatus() const{ return m_status; } /** *

The status of the alarm model. The status can be one of the following * values:

  • ACTIVE - The alarm model is active and * it's ready to evaluate data.

  • ACTIVATING - AWS * IoT Events is activating your alarm model. Activating an alarm model can take up * to a few minutes.

  • INACTIVE - The alarm model is * inactive, so it isn't ready to evaluate data. Check your alarm model information * and update the alarm model.

  • FAILED - You * couldn't create or update the alarm model. Check your alarm model information * and try again.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of the alarm model. The status can be one of the following * values:

  • ACTIVE - The alarm model is active and * it's ready to evaluate data.

  • ACTIVATING - AWS * IoT Events is activating your alarm model. Activating an alarm model can take up * to a few minutes.

  • INACTIVE - The alarm model is * inactive, so it isn't ready to evaluate data. Check your alarm model information * and update the alarm model.

  • FAILED - You * couldn't create or update the alarm model. Check your alarm model information * and try again.

*/ inline void SetStatus(const AlarmModelVersionStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of the alarm model. The status can be one of the following * values:

  • ACTIVE - The alarm model is active and * it's ready to evaluate data.

  • ACTIVATING - AWS * IoT Events is activating your alarm model. Activating an alarm model can take up * to a few minutes.

  • INACTIVE - The alarm model is * inactive, so it isn't ready to evaluate data. Check your alarm model information * and update the alarm model.

  • FAILED - You * couldn't create or update the alarm model. Check your alarm model information * and try again.

*/ inline void SetStatus(AlarmModelVersionStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of the alarm model. The status can be one of the following * values:

  • ACTIVE - The alarm model is active and * it's ready to evaluate data.

  • ACTIVATING - AWS * IoT Events is activating your alarm model. Activating an alarm model can take up * to a few minutes.

  • INACTIVE - The alarm model is * inactive, so it isn't ready to evaluate data. Check your alarm model information * and update the alarm model.

  • FAILED - You * couldn't create or update the alarm model. Check your alarm model information * and try again.

*/ inline AlarmModelVersionSummary& WithStatus(const AlarmModelVersionStatus& value) { SetStatus(value); return *this;} /** *

The status of the alarm model. The status can be one of the following * values:

  • ACTIVE - The alarm model is active and * it's ready to evaluate data.

  • ACTIVATING - AWS * IoT Events is activating your alarm model. Activating an alarm model can take up * to a few minutes.

  • INACTIVE - The alarm model is * inactive, so it isn't ready to evaluate data. Check your alarm model information * and update the alarm model.

  • FAILED - You * couldn't create or update the alarm model. Check your alarm model information * and try again.

*/ inline AlarmModelVersionSummary& WithStatus(AlarmModelVersionStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

Contains information about the status of the alarm model version.

*/ inline const Aws::String& GetStatusMessage() const{ return m_statusMessage; } /** *

Contains information about the status of the alarm model version.

*/ inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; } /** *

Contains information about the status of the alarm model version.

*/ inline void SetStatusMessage(const Aws::String& value) { m_statusMessageHasBeenSet = true; m_statusMessage = value; } /** *

Contains information about the status of the alarm model version.

*/ inline void SetStatusMessage(Aws::String&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::move(value); } /** *

Contains information about the status of the alarm model version.

*/ inline void SetStatusMessage(const char* value) { m_statusMessageHasBeenSet = true; m_statusMessage.assign(value); } /** *

Contains information about the status of the alarm model version.

*/ inline AlarmModelVersionSummary& WithStatusMessage(const Aws::String& value) { SetStatusMessage(value); return *this;} /** *

Contains information about the status of the alarm model version.

*/ inline AlarmModelVersionSummary& WithStatusMessage(Aws::String&& value) { SetStatusMessage(std::move(value)); return *this;} /** *

Contains information about the status of the alarm model version.

*/ inline AlarmModelVersionSummary& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} private: Aws::String m_alarmModelName; bool m_alarmModelNameHasBeenSet = false; Aws::String m_alarmModelArn; bool m_alarmModelArnHasBeenSet = false; Aws::String m_alarmModelVersion; bool m_alarmModelVersionHasBeenSet = false; Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::Utils::DateTime m_lastUpdateTime; bool m_lastUpdateTimeHasBeenSet = false; AlarmModelVersionStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; }; } // namespace Model } // namespace IoTEvents } // namespace Aws