/** * 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 namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SSM { namespace Model { /** *

Includes information about the specified association.

See * Also:

AWS * API Reference

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

The association ID.

*/ inline const Aws::String& GetAssociationId() const{ return m_associationId; } /** *

The association ID.

*/ inline bool AssociationIdHasBeenSet() const { return m_associationIdHasBeenSet; } /** *

The association ID.

*/ inline void SetAssociationId(const Aws::String& value) { m_associationIdHasBeenSet = true; m_associationId = value; } /** *

The association ID.

*/ inline void SetAssociationId(Aws::String&& value) { m_associationIdHasBeenSet = true; m_associationId = std::move(value); } /** *

The association ID.

*/ inline void SetAssociationId(const char* value) { m_associationIdHasBeenSet = true; m_associationId.assign(value); } /** *

The association ID.

*/ inline AssociationExecution& WithAssociationId(const Aws::String& value) { SetAssociationId(value); return *this;} /** *

The association ID.

*/ inline AssociationExecution& WithAssociationId(Aws::String&& value) { SetAssociationId(std::move(value)); return *this;} /** *

The association ID.

*/ inline AssociationExecution& WithAssociationId(const char* value) { SetAssociationId(value); return *this;} /** *

The association version.

*/ inline const Aws::String& GetAssociationVersion() const{ return m_associationVersion; } /** *

The association version.

*/ inline bool AssociationVersionHasBeenSet() const { return m_associationVersionHasBeenSet; } /** *

The association version.

*/ inline void SetAssociationVersion(const Aws::String& value) { m_associationVersionHasBeenSet = true; m_associationVersion = value; } /** *

The association version.

*/ inline void SetAssociationVersion(Aws::String&& value) { m_associationVersionHasBeenSet = true; m_associationVersion = std::move(value); } /** *

The association version.

*/ inline void SetAssociationVersion(const char* value) { m_associationVersionHasBeenSet = true; m_associationVersion.assign(value); } /** *

The association version.

*/ inline AssociationExecution& WithAssociationVersion(const Aws::String& value) { SetAssociationVersion(value); return *this;} /** *

The association version.

*/ inline AssociationExecution& WithAssociationVersion(Aws::String&& value) { SetAssociationVersion(std::move(value)); return *this;} /** *

The association version.

*/ inline AssociationExecution& WithAssociationVersion(const char* value) { SetAssociationVersion(value); return *this;} /** *

The execution ID for the association.

*/ inline const Aws::String& GetExecutionId() const{ return m_executionId; } /** *

The execution ID for the association.

*/ inline bool ExecutionIdHasBeenSet() const { return m_executionIdHasBeenSet; } /** *

The execution ID for the association.

*/ inline void SetExecutionId(const Aws::String& value) { m_executionIdHasBeenSet = true; m_executionId = value; } /** *

The execution ID for the association.

*/ inline void SetExecutionId(Aws::String&& value) { m_executionIdHasBeenSet = true; m_executionId = std::move(value); } /** *

The execution ID for the association.

*/ inline void SetExecutionId(const char* value) { m_executionIdHasBeenSet = true; m_executionId.assign(value); } /** *

The execution ID for the association.

*/ inline AssociationExecution& WithExecutionId(const Aws::String& value) { SetExecutionId(value); return *this;} /** *

The execution ID for the association.

*/ inline AssociationExecution& WithExecutionId(Aws::String&& value) { SetExecutionId(std::move(value)); return *this;} /** *

The execution ID for the association.

*/ inline AssociationExecution& WithExecutionId(const char* value) { SetExecutionId(value); return *this;} /** *

The status of the association execution.

*/ inline const Aws::String& GetStatus() const{ return m_status; } /** *

The status of the association execution.

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

The status of the association execution.

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

The status of the association execution.

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

The status of the association execution.

*/ inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); } /** *

The status of the association execution.

*/ inline AssociationExecution& WithStatus(const Aws::String& value) { SetStatus(value); return *this;} /** *

The status of the association execution.

*/ inline AssociationExecution& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;} /** *

The status of the association execution.

*/ inline AssociationExecution& WithStatus(const char* value) { SetStatus(value); return *this;} /** *

Detailed status information about the execution.

*/ inline const Aws::String& GetDetailedStatus() const{ return m_detailedStatus; } /** *

Detailed status information about the execution.

*/ inline bool DetailedStatusHasBeenSet() const { return m_detailedStatusHasBeenSet; } /** *

Detailed status information about the execution.

*/ inline void SetDetailedStatus(const Aws::String& value) { m_detailedStatusHasBeenSet = true; m_detailedStatus = value; } /** *

Detailed status information about the execution.

*/ inline void SetDetailedStatus(Aws::String&& value) { m_detailedStatusHasBeenSet = true; m_detailedStatus = std::move(value); } /** *

Detailed status information about the execution.

*/ inline void SetDetailedStatus(const char* value) { m_detailedStatusHasBeenSet = true; m_detailedStatus.assign(value); } /** *

Detailed status information about the execution.

*/ inline AssociationExecution& WithDetailedStatus(const Aws::String& value) { SetDetailedStatus(value); return *this;} /** *

Detailed status information about the execution.

*/ inline AssociationExecution& WithDetailedStatus(Aws::String&& value) { SetDetailedStatus(std::move(value)); return *this;} /** *

Detailed status information about the execution.

*/ inline AssociationExecution& WithDetailedStatus(const char* value) { SetDetailedStatus(value); return *this;} /** *

The time the execution started.

*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *

The time the execution started.

*/ inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } /** *

The time the execution started.

*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } /** *

The time the execution started.

*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } /** *

The time the execution started.

*/ inline AssociationExecution& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *

The time the execution started.

*/ inline AssociationExecution& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *

The date of the last execution.

*/ inline const Aws::Utils::DateTime& GetLastExecutionDate() const{ return m_lastExecutionDate; } /** *

The date of the last execution.

*/ inline bool LastExecutionDateHasBeenSet() const { return m_lastExecutionDateHasBeenSet; } /** *

The date of the last execution.

*/ inline void SetLastExecutionDate(const Aws::Utils::DateTime& value) { m_lastExecutionDateHasBeenSet = true; m_lastExecutionDate = value; } /** *

The date of the last execution.

*/ inline void SetLastExecutionDate(Aws::Utils::DateTime&& value) { m_lastExecutionDateHasBeenSet = true; m_lastExecutionDate = std::move(value); } /** *

The date of the last execution.

*/ inline AssociationExecution& WithLastExecutionDate(const Aws::Utils::DateTime& value) { SetLastExecutionDate(value); return *this;} /** *

The date of the last execution.

*/ inline AssociationExecution& WithLastExecutionDate(Aws::Utils::DateTime&& value) { SetLastExecutionDate(std::move(value)); return *this;} /** *

An aggregate status of the resources in the execution based on the status * type.

*/ inline const Aws::String& GetResourceCountByStatus() const{ return m_resourceCountByStatus; } /** *

An aggregate status of the resources in the execution based on the status * type.

*/ inline bool ResourceCountByStatusHasBeenSet() const { return m_resourceCountByStatusHasBeenSet; } /** *

An aggregate status of the resources in the execution based on the status * type.

*/ inline void SetResourceCountByStatus(const Aws::String& value) { m_resourceCountByStatusHasBeenSet = true; m_resourceCountByStatus = value; } /** *

An aggregate status of the resources in the execution based on the status * type.

*/ inline void SetResourceCountByStatus(Aws::String&& value) { m_resourceCountByStatusHasBeenSet = true; m_resourceCountByStatus = std::move(value); } /** *

An aggregate status of the resources in the execution based on the status * type.

*/ inline void SetResourceCountByStatus(const char* value) { m_resourceCountByStatusHasBeenSet = true; m_resourceCountByStatus.assign(value); } /** *

An aggregate status of the resources in the execution based on the status * type.

*/ inline AssociationExecution& WithResourceCountByStatus(const Aws::String& value) { SetResourceCountByStatus(value); return *this;} /** *

An aggregate status of the resources in the execution based on the status * type.

*/ inline AssociationExecution& WithResourceCountByStatus(Aws::String&& value) { SetResourceCountByStatus(std::move(value)); return *this;} /** *

An aggregate status of the resources in the execution based on the status * type.

*/ inline AssociationExecution& WithResourceCountByStatus(const char* value) { SetResourceCountByStatus(value); return *this;} inline const AlarmConfiguration& GetAlarmConfiguration() const{ return m_alarmConfiguration; } inline bool AlarmConfigurationHasBeenSet() const { return m_alarmConfigurationHasBeenSet; } inline void SetAlarmConfiguration(const AlarmConfiguration& value) { m_alarmConfigurationHasBeenSet = true; m_alarmConfiguration = value; } inline void SetAlarmConfiguration(AlarmConfiguration&& value) { m_alarmConfigurationHasBeenSet = true; m_alarmConfiguration = std::move(value); } inline AssociationExecution& WithAlarmConfiguration(const AlarmConfiguration& value) { SetAlarmConfiguration(value); return *this;} inline AssociationExecution& WithAlarmConfiguration(AlarmConfiguration&& value) { SetAlarmConfiguration(std::move(value)); return *this;} /** *

The CloudWatch alarms that were invoked by the association.

*/ inline const Aws::Vector& GetTriggeredAlarms() const{ return m_triggeredAlarms; } /** *

The CloudWatch alarms that were invoked by the association.

*/ inline bool TriggeredAlarmsHasBeenSet() const { return m_triggeredAlarmsHasBeenSet; } /** *

The CloudWatch alarms that were invoked by the association.

*/ inline void SetTriggeredAlarms(const Aws::Vector& value) { m_triggeredAlarmsHasBeenSet = true; m_triggeredAlarms = value; } /** *

The CloudWatch alarms that were invoked by the association.

*/ inline void SetTriggeredAlarms(Aws::Vector&& value) { m_triggeredAlarmsHasBeenSet = true; m_triggeredAlarms = std::move(value); } /** *

The CloudWatch alarms that were invoked by the association.

*/ inline AssociationExecution& WithTriggeredAlarms(const Aws::Vector& value) { SetTriggeredAlarms(value); return *this;} /** *

The CloudWatch alarms that were invoked by the association.

*/ inline AssociationExecution& WithTriggeredAlarms(Aws::Vector&& value) { SetTriggeredAlarms(std::move(value)); return *this;} /** *

The CloudWatch alarms that were invoked by the association.

*/ inline AssociationExecution& AddTriggeredAlarms(const AlarmStateInformation& value) { m_triggeredAlarmsHasBeenSet = true; m_triggeredAlarms.push_back(value); return *this; } /** *

The CloudWatch alarms that were invoked by the association.

*/ inline AssociationExecution& AddTriggeredAlarms(AlarmStateInformation&& value) { m_triggeredAlarmsHasBeenSet = true; m_triggeredAlarms.push_back(std::move(value)); return *this; } private: Aws::String m_associationId; bool m_associationIdHasBeenSet = false; Aws::String m_associationVersion; bool m_associationVersionHasBeenSet = false; Aws::String m_executionId; bool m_executionIdHasBeenSet = false; Aws::String m_status; bool m_statusHasBeenSet = false; Aws::String m_detailedStatus; bool m_detailedStatusHasBeenSet = false; Aws::Utils::DateTime m_createdTime; bool m_createdTimeHasBeenSet = false; Aws::Utils::DateTime m_lastExecutionDate; bool m_lastExecutionDateHasBeenSet = false; Aws::String m_resourceCountByStatus; bool m_resourceCountByStatusHasBeenSet = false; AlarmConfiguration m_alarmConfiguration; bool m_alarmConfigurationHasBeenSet = false; Aws::Vector m_triggeredAlarms; bool m_triggeredAlarmsHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws