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

Describes the parameters for a document.

See Also:

AWS * API Reference

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

The name of the SSM document.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the SSM document.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the SSM document.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the SSM document.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the SSM document.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the SSM document.

*/ inline AssociationDescription& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the SSM document.

*/ inline AssociationDescription& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the SSM document.

*/ inline AssociationDescription& WithName(const char* value) { SetName(value); return *this;} /** *

The managed node ID.

*/ inline const Aws::String& GetInstanceId() const{ return m_instanceId; } /** *

The managed node ID.

*/ inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; } /** *

The managed node ID.

*/ inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; } /** *

The managed node ID.

*/ inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::move(value); } /** *

The managed node ID.

*/ inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); } /** *

The managed node ID.

*/ inline AssociationDescription& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;} /** *

The managed node ID.

*/ inline AssociationDescription& WithInstanceId(Aws::String&& value) { SetInstanceId(std::move(value)); return *this;} /** *

The managed node ID.

*/ inline AssociationDescription& WithInstanceId(const char* value) { SetInstanceId(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 AssociationDescription& WithAssociationVersion(const Aws::String& value) { SetAssociationVersion(value); return *this;} /** *

The association version.

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

The association version.

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

The date when the association was made.

*/ inline const Aws::Utils::DateTime& GetDate() const{ return m_date; } /** *

The date when the association was made.

*/ inline bool DateHasBeenSet() const { return m_dateHasBeenSet; } /** *

The date when the association was made.

*/ inline void SetDate(const Aws::Utils::DateTime& value) { m_dateHasBeenSet = true; m_date = value; } /** *

The date when the association was made.

*/ inline void SetDate(Aws::Utils::DateTime&& value) { m_dateHasBeenSet = true; m_date = std::move(value); } /** *

The date when the association was made.

*/ inline AssociationDescription& WithDate(const Aws::Utils::DateTime& value) { SetDate(value); return *this;} /** *

The date when the association was made.

*/ inline AssociationDescription& WithDate(Aws::Utils::DateTime&& value) { SetDate(std::move(value)); return *this;} /** *

The date when the association was last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdateAssociationDate() const{ return m_lastUpdateAssociationDate; } /** *

The date when the association was last updated.

*/ inline bool LastUpdateAssociationDateHasBeenSet() const { return m_lastUpdateAssociationDateHasBeenSet; } /** *

The date when the association was last updated.

*/ inline void SetLastUpdateAssociationDate(const Aws::Utils::DateTime& value) { m_lastUpdateAssociationDateHasBeenSet = true; m_lastUpdateAssociationDate = value; } /** *

The date when the association was last updated.

*/ inline void SetLastUpdateAssociationDate(Aws::Utils::DateTime&& value) { m_lastUpdateAssociationDateHasBeenSet = true; m_lastUpdateAssociationDate = std::move(value); } /** *

The date when the association was last updated.

*/ inline AssociationDescription& WithLastUpdateAssociationDate(const Aws::Utils::DateTime& value) { SetLastUpdateAssociationDate(value); return *this;} /** *

The date when the association was last updated.

*/ inline AssociationDescription& WithLastUpdateAssociationDate(Aws::Utils::DateTime&& value) { SetLastUpdateAssociationDate(std::move(value)); return *this;} /** *

The association status.

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

The association status.

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

The association status.

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

The association status.

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

The association status.

*/ inline AssociationDescription& WithStatus(const AssociationStatus& value) { SetStatus(value); return *this;} /** *

The association status.

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

Information about the association.

*/ inline const AssociationOverview& GetOverview() const{ return m_overview; } /** *

Information about the association.

*/ inline bool OverviewHasBeenSet() const { return m_overviewHasBeenSet; } /** *

Information about the association.

*/ inline void SetOverview(const AssociationOverview& value) { m_overviewHasBeenSet = true; m_overview = value; } /** *

Information about the association.

*/ inline void SetOverview(AssociationOverview&& value) { m_overviewHasBeenSet = true; m_overview = std::move(value); } /** *

Information about the association.

*/ inline AssociationDescription& WithOverview(const AssociationOverview& value) { SetOverview(value); return *this;} /** *

Information about the association.

*/ inline AssociationDescription& WithOverview(AssociationOverview&& value) { SetOverview(std::move(value)); return *this;} /** *

The document version.

*/ inline const Aws::String& GetDocumentVersion() const{ return m_documentVersion; } /** *

The document version.

*/ inline bool DocumentVersionHasBeenSet() const { return m_documentVersionHasBeenSet; } /** *

The document version.

*/ inline void SetDocumentVersion(const Aws::String& value) { m_documentVersionHasBeenSet = true; m_documentVersion = value; } /** *

The document version.

*/ inline void SetDocumentVersion(Aws::String&& value) { m_documentVersionHasBeenSet = true; m_documentVersion = std::move(value); } /** *

The document version.

*/ inline void SetDocumentVersion(const char* value) { m_documentVersionHasBeenSet = true; m_documentVersion.assign(value); } /** *

The document version.

*/ inline AssociationDescription& WithDocumentVersion(const Aws::String& value) { SetDocumentVersion(value); return *this;} /** *

The document version.

*/ inline AssociationDescription& WithDocumentVersion(Aws::String&& value) { SetDocumentVersion(std::move(value)); return *this;} /** *

The document version.

*/ inline AssociationDescription& WithDocumentVersion(const char* value) { SetDocumentVersion(value); return *this;} /** *

Choose the parameter that will define how your automation will branch out. * This target is required for associations that use an Automation runbook and * target resources by using rate controls. Automation is a capability of Amazon * Web Services Systems Manager.

*/ inline const Aws::String& GetAutomationTargetParameterName() const{ return m_automationTargetParameterName; } /** *

Choose the parameter that will define how your automation will branch out. * This target is required for associations that use an Automation runbook and * target resources by using rate controls. Automation is a capability of Amazon * Web Services Systems Manager.

*/ inline bool AutomationTargetParameterNameHasBeenSet() const { return m_automationTargetParameterNameHasBeenSet; } /** *

Choose the parameter that will define how your automation will branch out. * This target is required for associations that use an Automation runbook and * target resources by using rate controls. Automation is a capability of Amazon * Web Services Systems Manager.

*/ inline void SetAutomationTargetParameterName(const Aws::String& value) { m_automationTargetParameterNameHasBeenSet = true; m_automationTargetParameterName = value; } /** *

Choose the parameter that will define how your automation will branch out. * This target is required for associations that use an Automation runbook and * target resources by using rate controls. Automation is a capability of Amazon * Web Services Systems Manager.

*/ inline void SetAutomationTargetParameterName(Aws::String&& value) { m_automationTargetParameterNameHasBeenSet = true; m_automationTargetParameterName = std::move(value); } /** *

Choose the parameter that will define how your automation will branch out. * This target is required for associations that use an Automation runbook and * target resources by using rate controls. Automation is a capability of Amazon * Web Services Systems Manager.

*/ inline void SetAutomationTargetParameterName(const char* value) { m_automationTargetParameterNameHasBeenSet = true; m_automationTargetParameterName.assign(value); } /** *

Choose the parameter that will define how your automation will branch out. * This target is required for associations that use an Automation runbook and * target resources by using rate controls. Automation is a capability of Amazon * Web Services Systems Manager.

*/ inline AssociationDescription& WithAutomationTargetParameterName(const Aws::String& value) { SetAutomationTargetParameterName(value); return *this;} /** *

Choose the parameter that will define how your automation will branch out. * This target is required for associations that use an Automation runbook and * target resources by using rate controls. Automation is a capability of Amazon * Web Services Systems Manager.

*/ inline AssociationDescription& WithAutomationTargetParameterName(Aws::String&& value) { SetAutomationTargetParameterName(std::move(value)); return *this;} /** *

Choose the parameter that will define how your automation will branch out. * This target is required for associations that use an Automation runbook and * target resources by using rate controls. Automation is a capability of Amazon * Web Services Systems Manager.

*/ inline AssociationDescription& WithAutomationTargetParameterName(const char* value) { SetAutomationTargetParameterName(value); return *this;} /** *

A description of the parameters for a document.

*/ inline const Aws::Map>& GetParameters() const{ return m_parameters; } /** *

A description of the parameters for a document.

*/ inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; } /** *

A description of the parameters for a document.

*/ inline void SetParameters(const Aws::Map>& value) { m_parametersHasBeenSet = true; m_parameters = value; } /** *

A description of the parameters for a document.

*/ inline void SetParameters(Aws::Map>&& value) { m_parametersHasBeenSet = true; m_parameters = std::move(value); } /** *

A description of the parameters for a document.

*/ inline AssociationDescription& WithParameters(const Aws::Map>& value) { SetParameters(value); return *this;} /** *

A description of the parameters for a document.

*/ inline AssociationDescription& WithParameters(Aws::Map>&& value) { SetParameters(std::move(value)); return *this;} /** *

A description of the parameters for a document.

*/ inline AssociationDescription& AddParameters(const Aws::String& key, const Aws::Vector& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, value); return *this; } /** *

A description of the parameters for a document.

*/ inline AssociationDescription& AddParameters(Aws::String&& key, const Aws::Vector& value) { m_parametersHasBeenSet = true; m_parameters.emplace(std::move(key), value); return *this; } /** *

A description of the parameters for a document.

*/ inline AssociationDescription& AddParameters(const Aws::String& key, Aws::Vector&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, std::move(value)); return *this; } /** *

A description of the parameters for a document.

*/ inline AssociationDescription& AddParameters(Aws::String&& key, Aws::Vector&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(std::move(key), std::move(value)); return *this; } /** *

A description of the parameters for a document.

*/ inline AssociationDescription& AddParameters(const char* key, Aws::Vector&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, std::move(value)); return *this; } /** *

A description of the parameters for a document.

*/ inline AssociationDescription& AddParameters(const char* key, const Aws::Vector& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, value); return *this; } /** *

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 AssociationDescription& WithAssociationId(const Aws::String& value) { SetAssociationId(value); return *this;} /** *

The association ID.

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

The association ID.

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

The managed nodes targeted by the request.

*/ inline const Aws::Vector& GetTargets() const{ return m_targets; } /** *

The managed nodes targeted by the request.

*/ inline bool TargetsHasBeenSet() const { return m_targetsHasBeenSet; } /** *

The managed nodes targeted by the request.

*/ inline void SetTargets(const Aws::Vector& value) { m_targetsHasBeenSet = true; m_targets = value; } /** *

The managed nodes targeted by the request.

*/ inline void SetTargets(Aws::Vector&& value) { m_targetsHasBeenSet = true; m_targets = std::move(value); } /** *

The managed nodes targeted by the request.

*/ inline AssociationDescription& WithTargets(const Aws::Vector& value) { SetTargets(value); return *this;} /** *

The managed nodes targeted by the request.

*/ inline AssociationDescription& WithTargets(Aws::Vector&& value) { SetTargets(std::move(value)); return *this;} /** *

The managed nodes targeted by the request.

*/ inline AssociationDescription& AddTargets(const Target& value) { m_targetsHasBeenSet = true; m_targets.push_back(value); return *this; } /** *

The managed nodes targeted by the request.

*/ inline AssociationDescription& AddTargets(Target&& value) { m_targetsHasBeenSet = true; m_targets.push_back(std::move(value)); return *this; } /** *

A cron expression that specifies a schedule when the association runs.

*/ inline const Aws::String& GetScheduleExpression() const{ return m_scheduleExpression; } /** *

A cron expression that specifies a schedule when the association runs.

*/ inline bool ScheduleExpressionHasBeenSet() const { return m_scheduleExpressionHasBeenSet; } /** *

A cron expression that specifies a schedule when the association runs.

*/ inline void SetScheduleExpression(const Aws::String& value) { m_scheduleExpressionHasBeenSet = true; m_scheduleExpression = value; } /** *

A cron expression that specifies a schedule when the association runs.

*/ inline void SetScheduleExpression(Aws::String&& value) { m_scheduleExpressionHasBeenSet = true; m_scheduleExpression = std::move(value); } /** *

A cron expression that specifies a schedule when the association runs.

*/ inline void SetScheduleExpression(const char* value) { m_scheduleExpressionHasBeenSet = true; m_scheduleExpression.assign(value); } /** *

A cron expression that specifies a schedule when the association runs.

*/ inline AssociationDescription& WithScheduleExpression(const Aws::String& value) { SetScheduleExpression(value); return *this;} /** *

A cron expression that specifies a schedule when the association runs.

*/ inline AssociationDescription& WithScheduleExpression(Aws::String&& value) { SetScheduleExpression(std::move(value)); return *this;} /** *

A cron expression that specifies a schedule when the association runs.

*/ inline AssociationDescription& WithScheduleExpression(const char* value) { SetScheduleExpression(value); return *this;} /** *

An S3 bucket where you want to store the output details of the request.

*/ inline const InstanceAssociationOutputLocation& GetOutputLocation() const{ return m_outputLocation; } /** *

An S3 bucket where you want to store the output details of the request.

*/ inline bool OutputLocationHasBeenSet() const { return m_outputLocationHasBeenSet; } /** *

An S3 bucket where you want to store the output details of the request.

*/ inline void SetOutputLocation(const InstanceAssociationOutputLocation& value) { m_outputLocationHasBeenSet = true; m_outputLocation = value; } /** *

An S3 bucket where you want to store the output details of the request.

*/ inline void SetOutputLocation(InstanceAssociationOutputLocation&& value) { m_outputLocationHasBeenSet = true; m_outputLocation = std::move(value); } /** *

An S3 bucket where you want to store the output details of the request.

*/ inline AssociationDescription& WithOutputLocation(const InstanceAssociationOutputLocation& value) { SetOutputLocation(value); return *this;} /** *

An S3 bucket where you want to store the output details of the request.

*/ inline AssociationDescription& WithOutputLocation(InstanceAssociationOutputLocation&& value) { SetOutputLocation(std::move(value)); return *this;} /** *

The date on which the association was last run.

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

The date on which the association was last run.

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

The date on which the association was last run.

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

The date on which the association was last run.

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

The date on which the association was last run.

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

The date on which the association was last run.

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

The last date on which the association was successfully run.

*/ inline const Aws::Utils::DateTime& GetLastSuccessfulExecutionDate() const{ return m_lastSuccessfulExecutionDate; } /** *

The last date on which the association was successfully run.

*/ inline bool LastSuccessfulExecutionDateHasBeenSet() const { return m_lastSuccessfulExecutionDateHasBeenSet; } /** *

The last date on which the association was successfully run.

*/ inline void SetLastSuccessfulExecutionDate(const Aws::Utils::DateTime& value) { m_lastSuccessfulExecutionDateHasBeenSet = true; m_lastSuccessfulExecutionDate = value; } /** *

The last date on which the association was successfully run.

*/ inline void SetLastSuccessfulExecutionDate(Aws::Utils::DateTime&& value) { m_lastSuccessfulExecutionDateHasBeenSet = true; m_lastSuccessfulExecutionDate = std::move(value); } /** *

The last date on which the association was successfully run.

*/ inline AssociationDescription& WithLastSuccessfulExecutionDate(const Aws::Utils::DateTime& value) { SetLastSuccessfulExecutionDate(value); return *this;} /** *

The last date on which the association was successfully run.

*/ inline AssociationDescription& WithLastSuccessfulExecutionDate(Aws::Utils::DateTime&& value) { SetLastSuccessfulExecutionDate(std::move(value)); return *this;} /** *

The association name.

*/ inline const Aws::String& GetAssociationName() const{ return m_associationName; } /** *

The association name.

*/ inline bool AssociationNameHasBeenSet() const { return m_associationNameHasBeenSet; } /** *

The association name.

*/ inline void SetAssociationName(const Aws::String& value) { m_associationNameHasBeenSet = true; m_associationName = value; } /** *

The association name.

*/ inline void SetAssociationName(Aws::String&& value) { m_associationNameHasBeenSet = true; m_associationName = std::move(value); } /** *

The association name.

*/ inline void SetAssociationName(const char* value) { m_associationNameHasBeenSet = true; m_associationName.assign(value); } /** *

The association name.

*/ inline AssociationDescription& WithAssociationName(const Aws::String& value) { SetAssociationName(value); return *this;} /** *

The association name.

*/ inline AssociationDescription& WithAssociationName(Aws::String&& value) { SetAssociationName(std::move(value)); return *this;} /** *

The association name.

*/ inline AssociationDescription& WithAssociationName(const char* value) { SetAssociationName(value); return *this;} /** *

The number of errors that are allowed before the system stops sending * requests to run the association on additional targets. You can specify either an * absolute number of errors, for example 10, or a percentage of the target set, * for example 10%. If you specify 3, for example, the system stops sending * requests when the fourth error is received. If you specify 0, then the system * stops sending requests after the first error is returned. If you run an * association on 50 managed nodes and set MaxError to 10%, then the * system stops sending the request when the sixth error is received.

*

Executions that are already running an association when * MaxErrors is reached are allowed to complete, but some of these * executions may fail as well. If you need to ensure that there won't be more than * max-errors failed executions, set MaxConcurrency to 1 so that * executions proceed one at a time.

*/ inline const Aws::String& GetMaxErrors() const{ return m_maxErrors; } /** *

The number of errors that are allowed before the system stops sending * requests to run the association on additional targets. You can specify either an * absolute number of errors, for example 10, or a percentage of the target set, * for example 10%. If you specify 3, for example, the system stops sending * requests when the fourth error is received. If you specify 0, then the system * stops sending requests after the first error is returned. If you run an * association on 50 managed nodes and set MaxError to 10%, then the * system stops sending the request when the sixth error is received.

*

Executions that are already running an association when * MaxErrors is reached are allowed to complete, but some of these * executions may fail as well. If you need to ensure that there won't be more than * max-errors failed executions, set MaxConcurrency to 1 so that * executions proceed one at a time.

*/ inline bool MaxErrorsHasBeenSet() const { return m_maxErrorsHasBeenSet; } /** *

The number of errors that are allowed before the system stops sending * requests to run the association on additional targets. You can specify either an * absolute number of errors, for example 10, or a percentage of the target set, * for example 10%. If you specify 3, for example, the system stops sending * requests when the fourth error is received. If you specify 0, then the system * stops sending requests after the first error is returned. If you run an * association on 50 managed nodes and set MaxError to 10%, then the * system stops sending the request when the sixth error is received.

*

Executions that are already running an association when * MaxErrors is reached are allowed to complete, but some of these * executions may fail as well. If you need to ensure that there won't be more than * max-errors failed executions, set MaxConcurrency to 1 so that * executions proceed one at a time.

*/ inline void SetMaxErrors(const Aws::String& value) { m_maxErrorsHasBeenSet = true; m_maxErrors = value; } /** *

The number of errors that are allowed before the system stops sending * requests to run the association on additional targets. You can specify either an * absolute number of errors, for example 10, or a percentage of the target set, * for example 10%. If you specify 3, for example, the system stops sending * requests when the fourth error is received. If you specify 0, then the system * stops sending requests after the first error is returned. If you run an * association on 50 managed nodes and set MaxError to 10%, then the * system stops sending the request when the sixth error is received.

*

Executions that are already running an association when * MaxErrors is reached are allowed to complete, but some of these * executions may fail as well. If you need to ensure that there won't be more than * max-errors failed executions, set MaxConcurrency to 1 so that * executions proceed one at a time.

*/ inline void SetMaxErrors(Aws::String&& value) { m_maxErrorsHasBeenSet = true; m_maxErrors = std::move(value); } /** *

The number of errors that are allowed before the system stops sending * requests to run the association on additional targets. You can specify either an * absolute number of errors, for example 10, or a percentage of the target set, * for example 10%. If you specify 3, for example, the system stops sending * requests when the fourth error is received. If you specify 0, then the system * stops sending requests after the first error is returned. If you run an * association on 50 managed nodes and set MaxError to 10%, then the * system stops sending the request when the sixth error is received.

*

Executions that are already running an association when * MaxErrors is reached are allowed to complete, but some of these * executions may fail as well. If you need to ensure that there won't be more than * max-errors failed executions, set MaxConcurrency to 1 so that * executions proceed one at a time.

*/ inline void SetMaxErrors(const char* value) { m_maxErrorsHasBeenSet = true; m_maxErrors.assign(value); } /** *

The number of errors that are allowed before the system stops sending * requests to run the association on additional targets. You can specify either an * absolute number of errors, for example 10, or a percentage of the target set, * for example 10%. If you specify 3, for example, the system stops sending * requests when the fourth error is received. If you specify 0, then the system * stops sending requests after the first error is returned. If you run an * association on 50 managed nodes and set MaxError to 10%, then the * system stops sending the request when the sixth error is received.

*

Executions that are already running an association when * MaxErrors is reached are allowed to complete, but some of these * executions may fail as well. If you need to ensure that there won't be more than * max-errors failed executions, set MaxConcurrency to 1 so that * executions proceed one at a time.

*/ inline AssociationDescription& WithMaxErrors(const Aws::String& value) { SetMaxErrors(value); return *this;} /** *

The number of errors that are allowed before the system stops sending * requests to run the association on additional targets. You can specify either an * absolute number of errors, for example 10, or a percentage of the target set, * for example 10%. If you specify 3, for example, the system stops sending * requests when the fourth error is received. If you specify 0, then the system * stops sending requests after the first error is returned. If you run an * association on 50 managed nodes and set MaxError to 10%, then the * system stops sending the request when the sixth error is received.

*

Executions that are already running an association when * MaxErrors is reached are allowed to complete, but some of these * executions may fail as well. If you need to ensure that there won't be more than * max-errors failed executions, set MaxConcurrency to 1 so that * executions proceed one at a time.

*/ inline AssociationDescription& WithMaxErrors(Aws::String&& value) { SetMaxErrors(std::move(value)); return *this;} /** *

The number of errors that are allowed before the system stops sending * requests to run the association on additional targets. You can specify either an * absolute number of errors, for example 10, or a percentage of the target set, * for example 10%. If you specify 3, for example, the system stops sending * requests when the fourth error is received. If you specify 0, then the system * stops sending requests after the first error is returned. If you run an * association on 50 managed nodes and set MaxError to 10%, then the * system stops sending the request when the sixth error is received.

*

Executions that are already running an association when * MaxErrors is reached are allowed to complete, but some of these * executions may fail as well. If you need to ensure that there won't be more than * max-errors failed executions, set MaxConcurrency to 1 so that * executions proceed one at a time.

*/ inline AssociationDescription& WithMaxErrors(const char* value) { SetMaxErrors(value); return *this;} /** *

The maximum number of targets allowed to run the association at the same * time. You can specify a number, for example 10, or a percentage of the target * set, for example 10%. The default value is 100%, which means all targets run the * association at the same time.

If a new managed node starts and attempts * to run an association while Systems Manager is running * MaxConcurrency associations, the association is allowed to run. * During the next association interval, the new managed node will process its * association within the limit specified for MaxConcurrency.

*/ inline const Aws::String& GetMaxConcurrency() const{ return m_maxConcurrency; } /** *

The maximum number of targets allowed to run the association at the same * time. You can specify a number, for example 10, or a percentage of the target * set, for example 10%. The default value is 100%, which means all targets run the * association at the same time.

If a new managed node starts and attempts * to run an association while Systems Manager is running * MaxConcurrency associations, the association is allowed to run. * During the next association interval, the new managed node will process its * association within the limit specified for MaxConcurrency.

*/ inline bool MaxConcurrencyHasBeenSet() const { return m_maxConcurrencyHasBeenSet; } /** *

The maximum number of targets allowed to run the association at the same * time. You can specify a number, for example 10, or a percentage of the target * set, for example 10%. The default value is 100%, which means all targets run the * association at the same time.

If a new managed node starts and attempts * to run an association while Systems Manager is running * MaxConcurrency associations, the association is allowed to run. * During the next association interval, the new managed node will process its * association within the limit specified for MaxConcurrency.

*/ inline void SetMaxConcurrency(const Aws::String& value) { m_maxConcurrencyHasBeenSet = true; m_maxConcurrency = value; } /** *

The maximum number of targets allowed to run the association at the same * time. You can specify a number, for example 10, or a percentage of the target * set, for example 10%. The default value is 100%, which means all targets run the * association at the same time.

If a new managed node starts and attempts * to run an association while Systems Manager is running * MaxConcurrency associations, the association is allowed to run. * During the next association interval, the new managed node will process its * association within the limit specified for MaxConcurrency.

*/ inline void SetMaxConcurrency(Aws::String&& value) { m_maxConcurrencyHasBeenSet = true; m_maxConcurrency = std::move(value); } /** *

The maximum number of targets allowed to run the association at the same * time. You can specify a number, for example 10, or a percentage of the target * set, for example 10%. The default value is 100%, which means all targets run the * association at the same time.

If a new managed node starts and attempts * to run an association while Systems Manager is running * MaxConcurrency associations, the association is allowed to run. * During the next association interval, the new managed node will process its * association within the limit specified for MaxConcurrency.

*/ inline void SetMaxConcurrency(const char* value) { m_maxConcurrencyHasBeenSet = true; m_maxConcurrency.assign(value); } /** *

The maximum number of targets allowed to run the association at the same * time. You can specify a number, for example 10, or a percentage of the target * set, for example 10%. The default value is 100%, which means all targets run the * association at the same time.

If a new managed node starts and attempts * to run an association while Systems Manager is running * MaxConcurrency associations, the association is allowed to run. * During the next association interval, the new managed node will process its * association within the limit specified for MaxConcurrency.

*/ inline AssociationDescription& WithMaxConcurrency(const Aws::String& value) { SetMaxConcurrency(value); return *this;} /** *

The maximum number of targets allowed to run the association at the same * time. You can specify a number, for example 10, or a percentage of the target * set, for example 10%. The default value is 100%, which means all targets run the * association at the same time.

If a new managed node starts and attempts * to run an association while Systems Manager is running * MaxConcurrency associations, the association is allowed to run. * During the next association interval, the new managed node will process its * association within the limit specified for MaxConcurrency.

*/ inline AssociationDescription& WithMaxConcurrency(Aws::String&& value) { SetMaxConcurrency(std::move(value)); return *this;} /** *

The maximum number of targets allowed to run the association at the same * time. You can specify a number, for example 10, or a percentage of the target * set, for example 10%. The default value is 100%, which means all targets run the * association at the same time.

If a new managed node starts and attempts * to run an association while Systems Manager is running * MaxConcurrency associations, the association is allowed to run. * During the next association interval, the new managed node will process its * association within the limit specified for MaxConcurrency.

*/ inline AssociationDescription& WithMaxConcurrency(const char* value) { SetMaxConcurrency(value); return *this;} /** *

The severity level that is assigned to the association.

*/ inline const AssociationComplianceSeverity& GetComplianceSeverity() const{ return m_complianceSeverity; } /** *

The severity level that is assigned to the association.

*/ inline bool ComplianceSeverityHasBeenSet() const { return m_complianceSeverityHasBeenSet; } /** *

The severity level that is assigned to the association.

*/ inline void SetComplianceSeverity(const AssociationComplianceSeverity& value) { m_complianceSeverityHasBeenSet = true; m_complianceSeverity = value; } /** *

The severity level that is assigned to the association.

*/ inline void SetComplianceSeverity(AssociationComplianceSeverity&& value) { m_complianceSeverityHasBeenSet = true; m_complianceSeverity = std::move(value); } /** *

The severity level that is assigned to the association.

*/ inline AssociationDescription& WithComplianceSeverity(const AssociationComplianceSeverity& value) { SetComplianceSeverity(value); return *this;} /** *

The severity level that is assigned to the association.

*/ inline AssociationDescription& WithComplianceSeverity(AssociationComplianceSeverity&& value) { SetComplianceSeverity(std::move(value)); return *this;} /** *

The mode for generating association compliance. You can specify * AUTO or MANUAL. In AUTO mode, the system * uses the status of the association execution to determine the compliance status. * If the association execution runs successfully, then the association is * COMPLIANT. If the association execution doesn't run successfully, * the association is NON-COMPLIANT.

In MANUAL * mode, you must specify the AssociationId as a parameter for the * PutComplianceItems API operation. In this case, compliance data isn't * managed by State Manager, a capability of Amazon Web Services Systems Manager. * It is managed by your direct call to the PutComplianceItems API * operation.

By default, all associations use AUTO mode.

*/ inline const AssociationSyncCompliance& GetSyncCompliance() const{ return m_syncCompliance; } /** *

The mode for generating association compliance. You can specify * AUTO or MANUAL. In AUTO mode, the system * uses the status of the association execution to determine the compliance status. * If the association execution runs successfully, then the association is * COMPLIANT. If the association execution doesn't run successfully, * the association is NON-COMPLIANT.

In MANUAL * mode, you must specify the AssociationId as a parameter for the * PutComplianceItems API operation. In this case, compliance data isn't * managed by State Manager, a capability of Amazon Web Services Systems Manager. * It is managed by your direct call to the PutComplianceItems API * operation.

By default, all associations use AUTO mode.

*/ inline bool SyncComplianceHasBeenSet() const { return m_syncComplianceHasBeenSet; } /** *

The mode for generating association compliance. You can specify * AUTO or MANUAL. In AUTO mode, the system * uses the status of the association execution to determine the compliance status. * If the association execution runs successfully, then the association is * COMPLIANT. If the association execution doesn't run successfully, * the association is NON-COMPLIANT.

In MANUAL * mode, you must specify the AssociationId as a parameter for the * PutComplianceItems API operation. In this case, compliance data isn't * managed by State Manager, a capability of Amazon Web Services Systems Manager. * It is managed by your direct call to the PutComplianceItems API * operation.

By default, all associations use AUTO mode.

*/ inline void SetSyncCompliance(const AssociationSyncCompliance& value) { m_syncComplianceHasBeenSet = true; m_syncCompliance = value; } /** *

The mode for generating association compliance. You can specify * AUTO or MANUAL. In AUTO mode, the system * uses the status of the association execution to determine the compliance status. * If the association execution runs successfully, then the association is * COMPLIANT. If the association execution doesn't run successfully, * the association is NON-COMPLIANT.

In MANUAL * mode, you must specify the AssociationId as a parameter for the * PutComplianceItems API operation. In this case, compliance data isn't * managed by State Manager, a capability of Amazon Web Services Systems Manager. * It is managed by your direct call to the PutComplianceItems API * operation.

By default, all associations use AUTO mode.

*/ inline void SetSyncCompliance(AssociationSyncCompliance&& value) { m_syncComplianceHasBeenSet = true; m_syncCompliance = std::move(value); } /** *

The mode for generating association compliance. You can specify * AUTO or MANUAL. In AUTO mode, the system * uses the status of the association execution to determine the compliance status. * If the association execution runs successfully, then the association is * COMPLIANT. If the association execution doesn't run successfully, * the association is NON-COMPLIANT.

In MANUAL * mode, you must specify the AssociationId as a parameter for the * PutComplianceItems API operation. In this case, compliance data isn't * managed by State Manager, a capability of Amazon Web Services Systems Manager. * It is managed by your direct call to the PutComplianceItems API * operation.

By default, all associations use AUTO mode.

*/ inline AssociationDescription& WithSyncCompliance(const AssociationSyncCompliance& value) { SetSyncCompliance(value); return *this;} /** *

The mode for generating association compliance. You can specify * AUTO or MANUAL. In AUTO mode, the system * uses the status of the association execution to determine the compliance status. * If the association execution runs successfully, then the association is * COMPLIANT. If the association execution doesn't run successfully, * the association is NON-COMPLIANT.

In MANUAL * mode, you must specify the AssociationId as a parameter for the * PutComplianceItems API operation. In this case, compliance data isn't * managed by State Manager, a capability of Amazon Web Services Systems Manager. * It is managed by your direct call to the PutComplianceItems API * operation.

By default, all associations use AUTO mode.

*/ inline AssociationDescription& WithSyncCompliance(AssociationSyncCompliance&& value) { SetSyncCompliance(std::move(value)); return *this;} /** *

By default, when you create a new associations, the system runs it * immediately after it is created and then according to the schedule you * specified. Specify this option if you don't want an association to run * immediately after you create it. This parameter isn't supported for rate * expressions.

*/ inline bool GetApplyOnlyAtCronInterval() const{ return m_applyOnlyAtCronInterval; } /** *

By default, when you create a new associations, the system runs it * immediately after it is created and then according to the schedule you * specified. Specify this option if you don't want an association to run * immediately after you create it. This parameter isn't supported for rate * expressions.

*/ inline bool ApplyOnlyAtCronIntervalHasBeenSet() const { return m_applyOnlyAtCronIntervalHasBeenSet; } /** *

By default, when you create a new associations, the system runs it * immediately after it is created and then according to the schedule you * specified. Specify this option if you don't want an association to run * immediately after you create it. This parameter isn't supported for rate * expressions.

*/ inline void SetApplyOnlyAtCronInterval(bool value) { m_applyOnlyAtCronIntervalHasBeenSet = true; m_applyOnlyAtCronInterval = value; } /** *

By default, when you create a new associations, the system runs it * immediately after it is created and then according to the schedule you * specified. Specify this option if you don't want an association to run * immediately after you create it. This parameter isn't supported for rate * expressions.

*/ inline AssociationDescription& WithApplyOnlyAtCronInterval(bool value) { SetApplyOnlyAtCronInterval(value); return *this;} /** *

The names or Amazon Resource Names (ARNs) of the Change Calendar type * documents your associations are gated under. The associations only run when that * change calendar is open. For more information, see Amazon * Web Services Systems Manager Change Calendar.

*/ inline const Aws::Vector& GetCalendarNames() const{ return m_calendarNames; } /** *

The names or Amazon Resource Names (ARNs) of the Change Calendar type * documents your associations are gated under. The associations only run when that * change calendar is open. For more information, see Amazon * Web Services Systems Manager Change Calendar.

*/ inline bool CalendarNamesHasBeenSet() const { return m_calendarNamesHasBeenSet; } /** *

The names or Amazon Resource Names (ARNs) of the Change Calendar type * documents your associations are gated under. The associations only run when that * change calendar is open. For more information, see Amazon * Web Services Systems Manager Change Calendar.

*/ inline void SetCalendarNames(const Aws::Vector& value) { m_calendarNamesHasBeenSet = true; m_calendarNames = value; } /** *

The names or Amazon Resource Names (ARNs) of the Change Calendar type * documents your associations are gated under. The associations only run when that * change calendar is open. For more information, see Amazon * Web Services Systems Manager Change Calendar.

*/ inline void SetCalendarNames(Aws::Vector&& value) { m_calendarNamesHasBeenSet = true; m_calendarNames = std::move(value); } /** *

The names or Amazon Resource Names (ARNs) of the Change Calendar type * documents your associations are gated under. The associations only run when that * change calendar is open. For more information, see Amazon * Web Services Systems Manager Change Calendar.

*/ inline AssociationDescription& WithCalendarNames(const Aws::Vector& value) { SetCalendarNames(value); return *this;} /** *

The names or Amazon Resource Names (ARNs) of the Change Calendar type * documents your associations are gated under. The associations only run when that * change calendar is open. For more information, see Amazon * Web Services Systems Manager Change Calendar.

*/ inline AssociationDescription& WithCalendarNames(Aws::Vector&& value) { SetCalendarNames(std::move(value)); return *this;} /** *

The names or Amazon Resource Names (ARNs) of the Change Calendar type * documents your associations are gated under. The associations only run when that * change calendar is open. For more information, see Amazon * Web Services Systems Manager Change Calendar.

*/ inline AssociationDescription& AddCalendarNames(const Aws::String& value) { m_calendarNamesHasBeenSet = true; m_calendarNames.push_back(value); return *this; } /** *

The names or Amazon Resource Names (ARNs) of the Change Calendar type * documents your associations are gated under. The associations only run when that * change calendar is open. For more information, see Amazon * Web Services Systems Manager Change Calendar.

*/ inline AssociationDescription& AddCalendarNames(Aws::String&& value) { m_calendarNamesHasBeenSet = true; m_calendarNames.push_back(std::move(value)); return *this; } /** *

The names or Amazon Resource Names (ARNs) of the Change Calendar type * documents your associations are gated under. The associations only run when that * change calendar is open. For more information, see Amazon * Web Services Systems Manager Change Calendar.

*/ inline AssociationDescription& AddCalendarNames(const char* value) { m_calendarNamesHasBeenSet = true; m_calendarNames.push_back(value); return *this; } /** *

The combination of Amazon Web Services Regions and Amazon Web Services * accounts where you want to run the association.

*/ inline const Aws::Vector& GetTargetLocations() const{ return m_targetLocations; } /** *

The combination of Amazon Web Services Regions and Amazon Web Services * accounts where you want to run the association.

*/ inline bool TargetLocationsHasBeenSet() const { return m_targetLocationsHasBeenSet; } /** *

The combination of Amazon Web Services Regions and Amazon Web Services * accounts where you want to run the association.

*/ inline void SetTargetLocations(const Aws::Vector& value) { m_targetLocationsHasBeenSet = true; m_targetLocations = value; } /** *

The combination of Amazon Web Services Regions and Amazon Web Services * accounts where you want to run the association.

*/ inline void SetTargetLocations(Aws::Vector&& value) { m_targetLocationsHasBeenSet = true; m_targetLocations = std::move(value); } /** *

The combination of Amazon Web Services Regions and Amazon Web Services * accounts where you want to run the association.

*/ inline AssociationDescription& WithTargetLocations(const Aws::Vector& value) { SetTargetLocations(value); return *this;} /** *

The combination of Amazon Web Services Regions and Amazon Web Services * accounts where you want to run the association.

*/ inline AssociationDescription& WithTargetLocations(Aws::Vector&& value) { SetTargetLocations(std::move(value)); return *this;} /** *

The combination of Amazon Web Services Regions and Amazon Web Services * accounts where you want to run the association.

*/ inline AssociationDescription& AddTargetLocations(const TargetLocation& value) { m_targetLocationsHasBeenSet = true; m_targetLocations.push_back(value); return *this; } /** *

The combination of Amazon Web Services Regions and Amazon Web Services * accounts where you want to run the association.

*/ inline AssociationDescription& AddTargetLocations(TargetLocation&& value) { m_targetLocationsHasBeenSet = true; m_targetLocations.push_back(std::move(value)); return *this; } /** *

Number of days to wait after the scheduled day to run an association.

*/ inline int GetScheduleOffset() const{ return m_scheduleOffset; } /** *

Number of days to wait after the scheduled day to run an association.

*/ inline bool ScheduleOffsetHasBeenSet() const { return m_scheduleOffsetHasBeenSet; } /** *

Number of days to wait after the scheduled day to run an association.

*/ inline void SetScheduleOffset(int value) { m_scheduleOffsetHasBeenSet = true; m_scheduleOffset = value; } /** *

Number of days to wait after the scheduled day to run an association.

*/ inline AssociationDescription& WithScheduleOffset(int value) { SetScheduleOffset(value); return *this;} /** *

A key-value mapping of document parameters to target resources. Both Targets * and TargetMaps can't be specified together.

*/ inline const Aws::Vector>>& GetTargetMaps() const{ return m_targetMaps; } /** *

A key-value mapping of document parameters to target resources. Both Targets * and TargetMaps can't be specified together.

*/ inline bool TargetMapsHasBeenSet() const { return m_targetMapsHasBeenSet; } /** *

A key-value mapping of document parameters to target resources. Both Targets * and TargetMaps can't be specified together.

*/ inline void SetTargetMaps(const Aws::Vector>>& value) { m_targetMapsHasBeenSet = true; m_targetMaps = value; } /** *

A key-value mapping of document parameters to target resources. Both Targets * and TargetMaps can't be specified together.

*/ inline void SetTargetMaps(Aws::Vector>>&& value) { m_targetMapsHasBeenSet = true; m_targetMaps = std::move(value); } /** *

A key-value mapping of document parameters to target resources. Both Targets * and TargetMaps can't be specified together.

*/ inline AssociationDescription& WithTargetMaps(const Aws::Vector>>& value) { SetTargetMaps(value); return *this;} /** *

A key-value mapping of document parameters to target resources. Both Targets * and TargetMaps can't be specified together.

*/ inline AssociationDescription& WithTargetMaps(Aws::Vector>>&& value) { SetTargetMaps(std::move(value)); return *this;} /** *

A key-value mapping of document parameters to target resources. Both Targets * and TargetMaps can't be specified together.

*/ inline AssociationDescription& AddTargetMaps(const Aws::Map>& value) { m_targetMapsHasBeenSet = true; m_targetMaps.push_back(value); return *this; } /** *

A key-value mapping of document parameters to target resources. Both Targets * and TargetMaps can't be specified together.

*/ inline AssociationDescription& AddTargetMaps(Aws::Map>&& value) { m_targetMapsHasBeenSet = true; m_targetMaps.push_back(std::move(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 AssociationDescription& WithAlarmConfiguration(const AlarmConfiguration& value) { SetAlarmConfiguration(value); return *this;} inline AssociationDescription& WithAlarmConfiguration(AlarmConfiguration&& value) { SetAlarmConfiguration(std::move(value)); return *this;} /** *

The CloudWatch alarm that was invoked during the association.

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

The CloudWatch alarm that was invoked during the association.

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

The CloudWatch alarm that was invoked during the association.

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

The CloudWatch alarm that was invoked during the association.

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

The CloudWatch alarm that was invoked during the association.

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

The CloudWatch alarm that was invoked during the association.

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

The CloudWatch alarm that was invoked during the association.

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

The CloudWatch alarm that was invoked during the association.

*/ inline AssociationDescription& AddTriggeredAlarms(AlarmStateInformation&& value) { m_triggeredAlarmsHasBeenSet = true; m_triggeredAlarms.push_back(std::move(value)); return *this; } private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_instanceId; bool m_instanceIdHasBeenSet = false; Aws::String m_associationVersion; bool m_associationVersionHasBeenSet = false; Aws::Utils::DateTime m_date; bool m_dateHasBeenSet = false; Aws::Utils::DateTime m_lastUpdateAssociationDate; bool m_lastUpdateAssociationDateHasBeenSet = false; AssociationStatus m_status; bool m_statusHasBeenSet = false; AssociationOverview m_overview; bool m_overviewHasBeenSet = false; Aws::String m_documentVersion; bool m_documentVersionHasBeenSet = false; Aws::String m_automationTargetParameterName; bool m_automationTargetParameterNameHasBeenSet = false; Aws::Map> m_parameters; bool m_parametersHasBeenSet = false; Aws::String m_associationId; bool m_associationIdHasBeenSet = false; Aws::Vector m_targets; bool m_targetsHasBeenSet = false; Aws::String m_scheduleExpression; bool m_scheduleExpressionHasBeenSet = false; InstanceAssociationOutputLocation m_outputLocation; bool m_outputLocationHasBeenSet = false; Aws::Utils::DateTime m_lastExecutionDate; bool m_lastExecutionDateHasBeenSet = false; Aws::Utils::DateTime m_lastSuccessfulExecutionDate; bool m_lastSuccessfulExecutionDateHasBeenSet = false; Aws::String m_associationName; bool m_associationNameHasBeenSet = false; Aws::String m_maxErrors; bool m_maxErrorsHasBeenSet = false; Aws::String m_maxConcurrency; bool m_maxConcurrencyHasBeenSet = false; AssociationComplianceSeverity m_complianceSeverity; bool m_complianceSeverityHasBeenSet = false; AssociationSyncCompliance m_syncCompliance; bool m_syncComplianceHasBeenSet = false; bool m_applyOnlyAtCronInterval; bool m_applyOnlyAtCronIntervalHasBeenSet = false; Aws::Vector m_calendarNames; bool m_calendarNamesHasBeenSet = false; Aws::Vector m_targetLocations; bool m_targetLocationsHasBeenSet = false; int m_scheduleOffset; bool m_scheduleOffsetHasBeenSet = false; Aws::Vector>> m_targetMaps; bool m_targetMapsHasBeenSet = false; AlarmConfiguration m_alarmConfiguration; bool m_alarmConfigurationHasBeenSet = false; Aws::Vector m_triggeredAlarms; bool m_triggeredAlarmsHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws