/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about a task defined for a maintenance window.See
* Also:
AWS
* API Reference
The ID of the maintenance window where the task is registered.
*/ inline const Aws::String& GetWindowId() const{ return m_windowId; } /** *The ID of the maintenance window where the task is registered.
*/ inline bool WindowIdHasBeenSet() const { return m_windowIdHasBeenSet; } /** *The ID of the maintenance window where the task is registered.
*/ inline void SetWindowId(const Aws::String& value) { m_windowIdHasBeenSet = true; m_windowId = value; } /** *The ID of the maintenance window where the task is registered.
*/ inline void SetWindowId(Aws::String&& value) { m_windowIdHasBeenSet = true; m_windowId = std::move(value); } /** *The ID of the maintenance window where the task is registered.
*/ inline void SetWindowId(const char* value) { m_windowIdHasBeenSet = true; m_windowId.assign(value); } /** *The ID of the maintenance window where the task is registered.
*/ inline MaintenanceWindowTask& WithWindowId(const Aws::String& value) { SetWindowId(value); return *this;} /** *The ID of the maintenance window where the task is registered.
*/ inline MaintenanceWindowTask& WithWindowId(Aws::String&& value) { SetWindowId(std::move(value)); return *this;} /** *The ID of the maintenance window where the task is registered.
*/ inline MaintenanceWindowTask& WithWindowId(const char* value) { SetWindowId(value); return *this;} /** *The task ID.
*/ inline const Aws::String& GetWindowTaskId() const{ return m_windowTaskId; } /** *The task ID.
*/ inline bool WindowTaskIdHasBeenSet() const { return m_windowTaskIdHasBeenSet; } /** *The task ID.
*/ inline void SetWindowTaskId(const Aws::String& value) { m_windowTaskIdHasBeenSet = true; m_windowTaskId = value; } /** *The task ID.
*/ inline void SetWindowTaskId(Aws::String&& value) { m_windowTaskIdHasBeenSet = true; m_windowTaskId = std::move(value); } /** *The task ID.
*/ inline void SetWindowTaskId(const char* value) { m_windowTaskIdHasBeenSet = true; m_windowTaskId.assign(value); } /** *The task ID.
*/ inline MaintenanceWindowTask& WithWindowTaskId(const Aws::String& value) { SetWindowTaskId(value); return *this;} /** *The task ID.
*/ inline MaintenanceWindowTask& WithWindowTaskId(Aws::String&& value) { SetWindowTaskId(std::move(value)); return *this;} /** *The task ID.
*/ inline MaintenanceWindowTask& WithWindowTaskId(const char* value) { SetWindowTaskId(value); return *this;} /** *The resource that the task uses during execution. For RUN_COMMAND and
* AUTOMATION task types, TaskArn is the Systems Manager document name
* or ARN. For LAMBDA tasks, it's the function name or ARN. For STEP_FUNCTIONS
* tasks, it's the state machine ARN.
The resource that the task uses during execution. For RUN_COMMAND and
* AUTOMATION task types, TaskArn is the Systems Manager document name
* or ARN. For LAMBDA tasks, it's the function name or ARN. For STEP_FUNCTIONS
* tasks, it's the state machine ARN.
The resource that the task uses during execution. For RUN_COMMAND and
* AUTOMATION task types, TaskArn is the Systems Manager document name
* or ARN. For LAMBDA tasks, it's the function name or ARN. For STEP_FUNCTIONS
* tasks, it's the state machine ARN.
The resource that the task uses during execution. For RUN_COMMAND and
* AUTOMATION task types, TaskArn is the Systems Manager document name
* or ARN. For LAMBDA tasks, it's the function name or ARN. For STEP_FUNCTIONS
* tasks, it's the state machine ARN.
The resource that the task uses during execution. For RUN_COMMAND and
* AUTOMATION task types, TaskArn is the Systems Manager document name
* or ARN. For LAMBDA tasks, it's the function name or ARN. For STEP_FUNCTIONS
* tasks, it's the state machine ARN.
The resource that the task uses during execution. For RUN_COMMAND and
* AUTOMATION task types, TaskArn is the Systems Manager document name
* or ARN. For LAMBDA tasks, it's the function name or ARN. For STEP_FUNCTIONS
* tasks, it's the state machine ARN.
The resource that the task uses during execution. For RUN_COMMAND and
* AUTOMATION task types, TaskArn is the Systems Manager document name
* or ARN. For LAMBDA tasks, it's the function name or ARN. For STEP_FUNCTIONS
* tasks, it's the state machine ARN.
The resource that the task uses during execution. For RUN_COMMAND and
* AUTOMATION task types, TaskArn is the Systems Manager document name
* or ARN. For LAMBDA tasks, it's the function name or ARN. For STEP_FUNCTIONS
* tasks, it's the state machine ARN.
The type of task. The type can be one of the following: RUN_COMMAND, * AUTOMATION, LAMBDA, or STEP_FUNCTIONS.
*/ inline const MaintenanceWindowTaskType& GetType() const{ return m_type; } /** *The type of task. The type can be one of the following: RUN_COMMAND, * AUTOMATION, LAMBDA, or STEP_FUNCTIONS.
*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *The type of task. The type can be one of the following: RUN_COMMAND, * AUTOMATION, LAMBDA, or STEP_FUNCTIONS.
*/ inline void SetType(const MaintenanceWindowTaskType& value) { m_typeHasBeenSet = true; m_type = value; } /** *The type of task. The type can be one of the following: RUN_COMMAND, * AUTOMATION, LAMBDA, or STEP_FUNCTIONS.
*/ inline void SetType(MaintenanceWindowTaskType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *The type of task. The type can be one of the following: RUN_COMMAND, * AUTOMATION, LAMBDA, or STEP_FUNCTIONS.
*/ inline MaintenanceWindowTask& WithType(const MaintenanceWindowTaskType& value) { SetType(value); return *this;} /** *The type of task. The type can be one of the following: RUN_COMMAND, * AUTOMATION, LAMBDA, or STEP_FUNCTIONS.
*/ inline MaintenanceWindowTask& WithType(MaintenanceWindowTaskType&& value) { SetType(std::move(value)); return *this;} /** *The targets (either instances or tags). Instances are specified using * Key=instanceids,Values=<instanceid1>,<instanceid2>. Tags are * specified using Key=<tag name>,Values=<tag value>.
*/ inline const Aws::VectorThe targets (either instances or tags). Instances are specified using * Key=instanceids,Values=<instanceid1>,<instanceid2>. Tags are * specified using Key=<tag name>,Values=<tag value>.
*/ inline bool TargetsHasBeenSet() const { return m_targetsHasBeenSet; } /** *The targets (either instances or tags). Instances are specified using * Key=instanceids,Values=<instanceid1>,<instanceid2>. Tags are * specified using Key=<tag name>,Values=<tag value>.
*/ inline void SetTargets(const Aws::VectorThe targets (either instances or tags). Instances are specified using * Key=instanceids,Values=<instanceid1>,<instanceid2>. Tags are * specified using Key=<tag name>,Values=<tag value>.
*/ inline void SetTargets(Aws::VectorThe targets (either instances or tags). Instances are specified using * Key=instanceids,Values=<instanceid1>,<instanceid2>. Tags are * specified using Key=<tag name>,Values=<tag value>.
*/ inline MaintenanceWindowTask& WithTargets(const Aws::VectorThe targets (either instances or tags). Instances are specified using * Key=instanceids,Values=<instanceid1>,<instanceid2>. Tags are * specified using Key=<tag name>,Values=<tag value>.
*/ inline MaintenanceWindowTask& WithTargets(Aws::VectorThe targets (either instances or tags). Instances are specified using * Key=instanceids,Values=<instanceid1>,<instanceid2>. Tags are * specified using Key=<tag name>,Values=<tag value>.
*/ inline MaintenanceWindowTask& AddTargets(const Target& value) { m_targetsHasBeenSet = true; m_targets.push_back(value); return *this; } /** *The targets (either instances or tags). Instances are specified using * Key=instanceids,Values=<instanceid1>,<instanceid2>. Tags are * specified using Key=<tag name>,Values=<tag value>.
*/ inline MaintenanceWindowTask& AddTargets(Target&& value) { m_targetsHasBeenSet = true; m_targets.push_back(std::move(value)); return *this; } /** *The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The parameters that should be passed to the task when it is run.
* TaskParameters has been deprecated. To specify parameters to
* pass to a task when it runs, instead use the Parameters option in
* the TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The priority of the task in the maintenance window. The lower the number, the * higher the priority. Tasks that have the same priority are scheduled in * parallel.
*/ inline int GetPriority() const{ return m_priority; } /** *The priority of the task in the maintenance window. The lower the number, the * higher the priority. Tasks that have the same priority are scheduled in * parallel.
*/ inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; } /** *The priority of the task in the maintenance window. The lower the number, the * higher the priority. Tasks that have the same priority are scheduled in * parallel.
*/ inline void SetPriority(int value) { m_priorityHasBeenSet = true; m_priority = value; } /** *The priority of the task in the maintenance window. The lower the number, the * higher the priority. Tasks that have the same priority are scheduled in * parallel.
*/ inline MaintenanceWindowTask& WithPriority(int value) { SetPriority(value); return *this;} /** *Information about an S3 bucket to write task-level logs to.
* LoggingInfo has been deprecated. To specify an S3 bucket to contain
* logs, instead use the OutputS3BucketName and
* OutputS3KeyPrefix options in the
* TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
Information about an S3 bucket to write task-level logs to.
* LoggingInfo has been deprecated. To specify an S3 bucket to contain
* logs, instead use the OutputS3BucketName and
* OutputS3KeyPrefix options in the
* TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
Information about an S3 bucket to write task-level logs to.
* LoggingInfo has been deprecated. To specify an S3 bucket to contain
* logs, instead use the OutputS3BucketName and
* OutputS3KeyPrefix options in the
* TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
Information about an S3 bucket to write task-level logs to.
* LoggingInfo has been deprecated. To specify an S3 bucket to contain
* logs, instead use the OutputS3BucketName and
* OutputS3KeyPrefix options in the
* TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
Information about an S3 bucket to write task-level logs to.
* LoggingInfo has been deprecated. To specify an S3 bucket to contain
* logs, instead use the OutputS3BucketName and
* OutputS3KeyPrefix options in the
* TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
Information about an S3 bucket to write task-level logs to.
* LoggingInfo has been deprecated. To specify an S3 bucket to contain
* logs, instead use the OutputS3BucketName and
* OutputS3KeyPrefix options in the
* TaskInvocationParameters structure. For information about how
* Systems Manager handles these options for the supported maintenance window task
* types, see MaintenanceWindowTaskInvocationParameters.
The ARN of the IAM service role to use to publish Amazon Simple Notification * Service (Amazon SNS) notifications for maintenance window Run Command tasks.
*/ inline const Aws::String& GetServiceRoleArn() const{ return m_serviceRoleArn; } /** *The ARN of the IAM service role to use to publish Amazon Simple Notification * Service (Amazon SNS) notifications for maintenance window Run Command tasks.
*/ inline bool ServiceRoleArnHasBeenSet() const { return m_serviceRoleArnHasBeenSet; } /** *The ARN of the IAM service role to use to publish Amazon Simple Notification * Service (Amazon SNS) notifications for maintenance window Run Command tasks.
*/ inline void SetServiceRoleArn(const Aws::String& value) { m_serviceRoleArnHasBeenSet = true; m_serviceRoleArn = value; } /** *The ARN of the IAM service role to use to publish Amazon Simple Notification * Service (Amazon SNS) notifications for maintenance window Run Command tasks.
*/ inline void SetServiceRoleArn(Aws::String&& value) { m_serviceRoleArnHasBeenSet = true; m_serviceRoleArn = std::move(value); } /** *The ARN of the IAM service role to use to publish Amazon Simple Notification * Service (Amazon SNS) notifications for maintenance window Run Command tasks.
*/ inline void SetServiceRoleArn(const char* value) { m_serviceRoleArnHasBeenSet = true; m_serviceRoleArn.assign(value); } /** *The ARN of the IAM service role to use to publish Amazon Simple Notification * Service (Amazon SNS) notifications for maintenance window Run Command tasks.
*/ inline MaintenanceWindowTask& WithServiceRoleArn(const Aws::String& value) { SetServiceRoleArn(value); return *this;} /** *The ARN of the IAM service role to use to publish Amazon Simple Notification * Service (Amazon SNS) notifications for maintenance window Run Command tasks.
*/ inline MaintenanceWindowTask& WithServiceRoleArn(Aws::String&& value) { SetServiceRoleArn(std::move(value)); return *this;} /** *The ARN of the IAM service role to use to publish Amazon Simple Notification * Service (Amazon SNS) notifications for maintenance window Run Command tasks.
*/ inline MaintenanceWindowTask& WithServiceRoleArn(const char* value) { SetServiceRoleArn(value); return *this;} /** *The maximum number of targets this task can be run for, in parallel.
*/ inline const Aws::String& GetMaxConcurrency() const{ return m_maxConcurrency; } /** *The maximum number of targets this task can be run for, in parallel.
*/ inline bool MaxConcurrencyHasBeenSet() const { return m_maxConcurrencyHasBeenSet; } /** *The maximum number of targets this task can be run for, in parallel.
*/ inline void SetMaxConcurrency(const Aws::String& value) { m_maxConcurrencyHasBeenSet = true; m_maxConcurrency = value; } /** *The maximum number of targets this task can be run for, in parallel.
*/ inline void SetMaxConcurrency(Aws::String&& value) { m_maxConcurrencyHasBeenSet = true; m_maxConcurrency = std::move(value); } /** *The maximum number of targets this task can be run for, in parallel.
*/ inline void SetMaxConcurrency(const char* value) { m_maxConcurrencyHasBeenSet = true; m_maxConcurrency.assign(value); } /** *The maximum number of targets this task can be run for, in parallel.
*/ inline MaintenanceWindowTask& WithMaxConcurrency(const Aws::String& value) { SetMaxConcurrency(value); return *this;} /** *The maximum number of targets this task can be run for, in parallel.
*/ inline MaintenanceWindowTask& WithMaxConcurrency(Aws::String&& value) { SetMaxConcurrency(std::move(value)); return *this;} /** *The maximum number of targets this task can be run for, in parallel.
*/ inline MaintenanceWindowTask& WithMaxConcurrency(const char* value) { SetMaxConcurrency(value); return *this;} /** *The maximum number of errors allowed before this task stops being * scheduled.
*/ inline const Aws::String& GetMaxErrors() const{ return m_maxErrors; } /** *The maximum number of errors allowed before this task stops being * scheduled.
*/ inline bool MaxErrorsHasBeenSet() const { return m_maxErrorsHasBeenSet; } /** *The maximum number of errors allowed before this task stops being * scheduled.
*/ inline void SetMaxErrors(const Aws::String& value) { m_maxErrorsHasBeenSet = true; m_maxErrors = value; } /** *The maximum number of errors allowed before this task stops being * scheduled.
*/ inline void SetMaxErrors(Aws::String&& value) { m_maxErrorsHasBeenSet = true; m_maxErrors = std::move(value); } /** *The maximum number of errors allowed before this task stops being * scheduled.
*/ inline void SetMaxErrors(const char* value) { m_maxErrorsHasBeenSet = true; m_maxErrors.assign(value); } /** *The maximum number of errors allowed before this task stops being * scheduled.
*/ inline MaintenanceWindowTask& WithMaxErrors(const Aws::String& value) { SetMaxErrors(value); return *this;} /** *The maximum number of errors allowed before this task stops being * scheduled.
*/ inline MaintenanceWindowTask& WithMaxErrors(Aws::String&& value) { SetMaxErrors(std::move(value)); return *this;} /** *The maximum number of errors allowed before this task stops being * scheduled.
*/ inline MaintenanceWindowTask& WithMaxErrors(const char* value) { SetMaxErrors(value); return *this;} /** *The task name.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The task name.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The task name.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The task name.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The task name.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The task name.
*/ inline MaintenanceWindowTask& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The task name.
*/ inline MaintenanceWindowTask& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The task name.
*/ inline MaintenanceWindowTask& WithName(const char* value) { SetName(value); return *this;} /** *A description of the task.
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *A description of the task.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *A description of the task.
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *A description of the task.
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *A description of the task.
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *A description of the task.
*/ inline MaintenanceWindowTask& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *A description of the task.
*/ inline MaintenanceWindowTask& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *A description of the task.
*/ inline MaintenanceWindowTask& WithDescription(const char* value) { SetDescription(value); return *this;} private: Aws::String m_windowId; bool m_windowIdHasBeenSet; Aws::String m_windowTaskId; bool m_windowTaskIdHasBeenSet; Aws::String m_taskArn; bool m_taskArnHasBeenSet; MaintenanceWindowTaskType m_type; bool m_typeHasBeenSet; Aws::Vector