/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.simplesystemsmanagement.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** * * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class RegisterTaskWithMaintenanceWindowRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *
* The ID of the maintenance window the task should be added to. *
*/ private String windowId; /** ** The targets (either managed nodes or maintenance window targets). *
** One or more targets must be specified for maintenance window Run Command-type tasks. Depending on the task, * targets are optional for other maintenance window task types (Automation, Lambda, and Step Functions). For more * information about running tasks that don't specify targets, see Registering maintenance window tasks without targets in the Amazon Web Services Systems Manager User * Guide. *
** Specify managed nodes using the following format: *
*
* Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>
*
* Specify maintenance window targets using the following format: *
*
* Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
*
* The ARN of the task to run. *
*/ private String taskArn; /** *
* The Amazon Resource Name (ARN) of the IAM service role for Amazon Web Services Systems Manager to assume when
* running a maintenance window task. If you do not specify a service role ARN, Systems Manager uses your account's
* service-linked role. If no service-linked role for Systems Manager exists in your account, it is created when you
* run RegisterTaskWithMaintenanceWindow.
*
* For more information, see the following topics in the in the Amazon Web Services Systems Manager User * Guide: *
** Should I use a service-linked role or a custom service role to run maintenance window tasks? *
** The type of task being registered. *
*/ private String taskType; /** ** 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 the task should use during execution. Populate only the fields that match the task type. All * other fields should be empty. *
*/ private MaintenanceWindowTaskInvocationParameters taskInvocationParameters; /** ** The priority of the task in the maintenance window, the lower the number the higher the priority. Tasks in a * maintenance window are scheduled in priority order with tasks that have the same priority scheduled in parallel. *
*/ private Integer priority; /** ** The maximum number of targets this task can be run for, in parallel. *
** Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option. Instead, the
* system inserts a placeholder value of 1. This value doesn't affect the running of your task.
*
* The maximum number of errors allowed before this task stops being scheduled. *
** Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option. Instead, the
* system inserts a placeholder value of 1. This value doesn't affect the running of your task.
*
* A structure containing information about an Amazon Simple Storage Service (Amazon S3) bucket to write managed * node-level logs to. *
*
* LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to
* contain logs, instead use the OutputS3BucketName and OutputS3KeyPrefix options in the
* TaskInvocationParameters structure. For information about how Amazon Web Services Systems Manager
* handles these options for the supported maintenance window task types, see
* MaintenanceWindowTaskInvocationParameters.
*
* An optional name for the task. *
*/ private String name; /** ** An optional description for the task. *
*/ private String description; /** ** User-provided idempotency token. *
*/ private String clientToken; /** ** Indicates whether tasks should continue to run after the cutoff time specified in the maintenance windows is * reached. *
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The default
* value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that are * already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation that * attempts to cancel the command associated with the task. However, there is no guarantee that the command will be * terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* The CloudWatch alarm you want to apply to your maintenance window task. *
*/ private AlarmConfiguration alarmConfiguration; /** ** The ID of the maintenance window the task should be added to. *
* * @param windowId * The ID of the maintenance window the task should be added to. */ public void setWindowId(String windowId) { this.windowId = windowId; } /** ** The ID of the maintenance window the task should be added to. *
* * @return The ID of the maintenance window the task should be added to. */ public String getWindowId() { return this.windowId; } /** ** The ID of the maintenance window the task should be added to. *
* * @param windowId * The ID of the maintenance window the task should be added to. * @return Returns a reference to this object so that method calls can be chained together. */ public RegisterTaskWithMaintenanceWindowRequest withWindowId(String windowId) { setWindowId(windowId); return this; } /** ** The targets (either managed nodes or maintenance window targets). *
** One or more targets must be specified for maintenance window Run Command-type tasks. Depending on the task, * targets are optional for other maintenance window task types (Automation, Lambda, and Step Functions). For more * information about running tasks that don't specify targets, see Registering maintenance window tasks without targets in the Amazon Web Services Systems Manager User * Guide. *
** Specify managed nodes using the following format: *
*
* Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>
*
* Specify maintenance window targets using the following format: *
*
* Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
*
* One or more targets must be specified for maintenance window Run Command-type tasks. Depending on the * task, targets are optional for other maintenance window task types (Automation, Lambda, and Step * Functions). For more information about running tasks that don't specify targets, see Registering maintenance window tasks without targets in the Amazon Web Services Systems Manager * User Guide. *
** Specify managed nodes using the following format: *
*
* Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>
*
* Specify maintenance window targets using the following format: *
*
*
* The targets (either managed nodes or maintenance window targets).
*
* One or more targets must be specified for maintenance window Run Command-type tasks. Depending on the task,
* targets are optional for other maintenance window task types (Automation, Lambda, and Step Functions). For more
* information about running tasks that don't specify targets, see Registering maintenance window tasks without targets in the Amazon Web Services Systems Manager User
* Guide.
*
* Specify managed nodes using the following format:
*
*
* Specify maintenance window targets using the following format:
*
* Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
*/
public java.util.ListKey=InstanceIds,Values=<instance-id-1>,<instance-id-2>
* Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
*
* One or more targets must be specified for maintenance window Run Command-type tasks. Depending on the * task, targets are optional for other maintenance window task types (Automation, Lambda, and Step * Functions). For more information about running tasks that don't specify targets, see Registering maintenance window tasks without targets in the Amazon Web Services Systems Manager * User Guide. *
** Specify managed nodes using the following format: *
*
* Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>
*
* Specify maintenance window targets using the following format: *
*
*
* The targets (either managed nodes or maintenance window targets).
*
* One or more targets must be specified for maintenance window Run Command-type tasks. Depending on the task,
* targets are optional for other maintenance window task types (Automation, Lambda, and Step Functions). For more
* information about running tasks that don't specify targets, see Registering maintenance window tasks without targets in the Amazon Web Services Systems Manager User
* Guide.
*
* Specify managed nodes using the following format:
*
*
* Specify maintenance window targets using the following format:
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setTargets(java.util.Collection)} or {@link #withTargets(java.util.Collection)} if you want to override
* the existing values.
* Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
*/
public void setTargets(java.util.CollectionKey=InstanceIds,Values=<instance-id-1>,<instance-id-2>
* Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
*
* One or more targets must be specified for maintenance window Run Command-type tasks. Depending on the * task, targets are optional for other maintenance window task types (Automation, Lambda, and Step * Functions). For more information about running tasks that don't specify targets, see Registering maintenance window tasks without targets in the Amazon Web Services Systems Manager * User Guide. *
** Specify managed nodes using the following format: *
*
* Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>
*
* Specify maintenance window targets using the following format: *
*
*
* The targets (either managed nodes or maintenance window targets).
*
* One or more targets must be specified for maintenance window Run Command-type tasks. Depending on the task,
* targets are optional for other maintenance window task types (Automation, Lambda, and Step Functions). For more
* information about running tasks that don't specify targets, see Registering maintenance window tasks without targets in the Amazon Web Services Systems Manager User
* Guide.
*
* Specify managed nodes using the following format:
*
*
* Specify maintenance window targets using the following format:
*
* Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RegisterTaskWithMaintenanceWindowRequest withTargets(Target... targets) {
if (this.targets == null) {
setTargets(new com.amazonaws.internal.SdkInternalListKey=InstanceIds,Values=<instance-id-1>,<instance-id-2>
* Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
*
* One or more targets must be specified for maintenance window Run Command-type tasks. Depending on the * task, targets are optional for other maintenance window task types (Automation, Lambda, and Step * Functions). For more information about running tasks that don't specify targets, see Registering maintenance window tasks without targets in the Amazon Web Services Systems Manager * User Guide. *
** Specify managed nodes using the following format: *
*
* Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>
*
* Specify maintenance window targets using the following format: *
*
*
* The ARN of the task to run.
*
* The ARN of the task to run.
*
* The ARN of the task to run.
*
* The Amazon Resource Name (ARN) of the IAM service role for Amazon Web Services Systems Manager to assume when
* running a maintenance window task. If you do not specify a service role ARN, Systems Manager uses your account's
* service-linked role. If no service-linked role for Systems Manager exists in your account, it is created when you
* run
* For more information, see the following topics in the in the Amazon Web Services Systems Manager User
* Guide:
*
* Should I use a service-linked role or a custom service role to run maintenance window tasks?
* Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RegisterTaskWithMaintenanceWindowRequest withTargets(java.util.CollectionRegisterTaskWithMaintenanceWindow.
*
*
*
* @param serviceRoleArn
* The Amazon Resource Name (ARN) of the IAM service role for Amazon Web Services Systems Manager to assume
* when running a maintenance window task. If you do not specify a service role ARN, Systems Manager uses
* your account's service-linked role. If no service-linked role for Systems Manager exists in your account,
* it is created when you run RegisterTaskWithMaintenanceWindow.
* For more information, see the following topics in the in the Amazon Web Services Systems Manager User * Guide: *
** Should I use a service-linked role or a custom service role to run maintenance window tasks? *
*
* The Amazon Resource Name (ARN) of the IAM service role for Amazon Web Services Systems Manager to assume when
* running a maintenance window task. If you do not specify a service role ARN, Systems Manager uses your account's
* service-linked role. If no service-linked role for Systems Manager exists in your account, it is created when you
* run RegisterTaskWithMaintenanceWindow.
*
* For more information, see the following topics in the in the Amazon Web Services Systems Manager User * Guide: *
** Should I use a service-linked role or a custom service role to run maintenance window tasks? *
*RegisterTaskWithMaintenanceWindow.
* * For more information, see the following topics in the in the Amazon Web Services Systems Manager User * Guide: *
** Should I use a service-linked role or a custom service role to run maintenance window tasks? *
*
* The Amazon Resource Name (ARN) of the IAM service role for Amazon Web Services Systems Manager to assume when
* running a maintenance window task. If you do not specify a service role ARN, Systems Manager uses your account's
* service-linked role. If no service-linked role for Systems Manager exists in your account, it is created when you
* run RegisterTaskWithMaintenanceWindow.
*
* For more information, see the following topics in the in the Amazon Web Services Systems Manager User * Guide: *
** Should I use a service-linked role or a custom service role to run maintenance window tasks? *
*RegisterTaskWithMaintenanceWindow.
* * For more information, see the following topics in the in the Amazon Web Services Systems Manager User * Guide: *
** Should I use a service-linked role or a custom service role to run maintenance window tasks? *
** The type of task being registered. *
* * @param taskType * The type of task being registered. * @see MaintenanceWindowTaskType */ public void setTaskType(String taskType) { this.taskType = taskType; } /** ** The type of task being registered. *
* * @return The type of task being registered. * @see MaintenanceWindowTaskType */ public String getTaskType() { return this.taskType; } /** ** The type of task being registered. *
* * @param taskType * The type of task being registered. * @return Returns a reference to this object so that method calls can be chained together. * @see MaintenanceWindowTaskType */ public RegisterTaskWithMaintenanceWindowRequest withTaskType(String taskType) { setTaskType(taskType); return this; } /** ** The type of task being registered. *
* * @param taskType * The type of task being registered. * @see MaintenanceWindowTaskType */ public void setTaskType(MaintenanceWindowTaskType taskType) { withTaskType(taskType); } /** ** The type of task being registered. *
* * @param taskType * The type of task being registered. * @return Returns a reference to this object so that method calls can be chained together. * @see MaintenanceWindowTaskType */ public RegisterTaskWithMaintenanceWindowRequest withTaskType(MaintenanceWindowTaskType taskType) { this.taskType = taskType.toString(); 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.
*
* 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.
*
* 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.
*
* 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 the task should use during execution. Populate only the fields that match the task type. All * other fields should be empty. *
* * @param taskInvocationParameters * The parameters that the task should use during execution. Populate only the fields that match the task * type. All other fields should be empty. */ public void setTaskInvocationParameters(MaintenanceWindowTaskInvocationParameters taskInvocationParameters) { this.taskInvocationParameters = taskInvocationParameters; } /** ** The parameters that the task should use during execution. Populate only the fields that match the task type. All * other fields should be empty. *
* * @return The parameters that the task should use during execution. Populate only the fields that match the task * type. All other fields should be empty. */ public MaintenanceWindowTaskInvocationParameters getTaskInvocationParameters() { return this.taskInvocationParameters; } /** ** The parameters that the task should use during execution. Populate only the fields that match the task type. All * other fields should be empty. *
* * @param taskInvocationParameters * The parameters that the task should use during execution. Populate only the fields that match the task * type. All other fields should be empty. * @return Returns a reference to this object so that method calls can be chained together. */ public RegisterTaskWithMaintenanceWindowRequest withTaskInvocationParameters(MaintenanceWindowTaskInvocationParameters taskInvocationParameters) { setTaskInvocationParameters(taskInvocationParameters); return this; } /** ** The priority of the task in the maintenance window, the lower the number the higher the priority. Tasks in a * maintenance window are scheduled in priority order with tasks that have the same priority scheduled in parallel. *
* * @param priority * The priority of the task in the maintenance window, the lower the number the higher the priority. Tasks in * a maintenance window are scheduled in priority order with tasks that have the same priority scheduled in * parallel. */ public void setPriority(Integer priority) { this.priority = priority; } /** ** The priority of the task in the maintenance window, the lower the number the higher the priority. Tasks in a * maintenance window are scheduled in priority order with tasks that have the same priority scheduled in parallel. *
* * @return The priority of the task in the maintenance window, the lower the number the higher the priority. Tasks * in a maintenance window are scheduled in priority order with tasks that have the same priority scheduled * in parallel. */ public Integer getPriority() { return this.priority; } /** ** The priority of the task in the maintenance window, the lower the number the higher the priority. Tasks in a * maintenance window are scheduled in priority order with tasks that have the same priority scheduled in parallel. *
* * @param priority * The priority of the task in the maintenance window, the lower the number the higher the priority. Tasks in * a maintenance window are scheduled in priority order with tasks that have the same priority scheduled in * parallel. * @return Returns a reference to this object so that method calls can be chained together. */ public RegisterTaskWithMaintenanceWindowRequest withPriority(Integer priority) { setPriority(priority); return this; } /** ** The maximum number of targets this task can be run for, in parallel. *
** Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option. Instead, the
* system inserts a placeholder value of 1. This value doesn't affect the running of your task.
*
* Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option.
* Instead, the system inserts a placeholder value of 1. This value doesn't affect the running
* of your task.
*
* The maximum number of targets this task can be run for, in parallel. *
** Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option. Instead, the
* system inserts a placeholder value of 1. This value doesn't affect the running of your task.
*
* Although this element is listed as "Required: No", a value can be omitted only when you are registering * or updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option.
* Instead, the system inserts a placeholder value of 1. This value doesn't affect the running
* of your task.
*
* The maximum number of targets this task can be run for, in parallel. *
** Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option. Instead, the
* system inserts a placeholder value of 1. This value doesn't affect the running of your task.
*
* Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option.
* Instead, the system inserts a placeholder value of 1. This value doesn't affect the running
* of your task.
*
* The maximum number of errors allowed before this task stops being scheduled. *
** Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option. Instead, the
* system inserts a placeholder value of 1. This value doesn't affect the running of your task.
*
* Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option.
* Instead, the system inserts a placeholder value of 1. This value doesn't affect the running
* of your task.
*
* The maximum number of errors allowed before this task stops being scheduled. *
** Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option. Instead, the
* system inserts a placeholder value of 1. This value doesn't affect the running of your task.
*
* Although this element is listed as "Required: No", a value can be omitted only when you are registering * or updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option.
* Instead, the system inserts a placeholder value of 1. This value doesn't affect the running
* of your task.
*
* The maximum number of errors allowed before this task stops being scheduled. *
** Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option. Instead, the
* system inserts a placeholder value of 1. This value doesn't affect the running of your task.
*
* Although this element is listed as "Required: No", a value can be omitted only when you are registering or * updating a targetless task You must provide a value in all other cases. *
*
* For maintenance window tasks without a target specified, you can't supply a value for this option.
* Instead, the system inserts a placeholder value of 1. This value doesn't affect the running
* of your task.
*
* A structure containing information about an Amazon Simple Storage Service (Amazon S3) bucket to write managed * node-level logs to. *
*
* LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to
* contain logs, instead use the OutputS3BucketName and OutputS3KeyPrefix options in the
* TaskInvocationParameters structure. For information about how Amazon Web Services Systems Manager
* handles these options for the supported maintenance window task types, see
* MaintenanceWindowTaskInvocationParameters.
*
* LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3)
* bucket to contain logs, instead use the OutputS3BucketName and OutputS3KeyPrefix
* options in the TaskInvocationParameters structure. For information about how Amazon Web
* Services Systems Manager handles these options for the supported maintenance window task types, see
* MaintenanceWindowTaskInvocationParameters.
*
* A structure containing information about an Amazon Simple Storage Service (Amazon S3) bucket to write managed * node-level logs to. *
*
* LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to
* contain logs, instead use the OutputS3BucketName and OutputS3KeyPrefix options in the
* TaskInvocationParameters structure. For information about how Amazon Web Services Systems Manager
* handles these options for the supported maintenance window task types, see
* MaintenanceWindowTaskInvocationParameters.
*
* LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3)
* bucket to contain logs, instead use the OutputS3BucketName and
* OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
* information about how Amazon Web Services Systems Manager handles these options for the supported
* maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
*
* A structure containing information about an Amazon Simple Storage Service (Amazon S3) bucket to write managed * node-level logs to. *
*
* LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to
* contain logs, instead use the OutputS3BucketName and OutputS3KeyPrefix options in the
* TaskInvocationParameters structure. For information about how Amazon Web Services Systems Manager
* handles these options for the supported maintenance window task types, see
* MaintenanceWindowTaskInvocationParameters.
*
* LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3)
* bucket to contain logs, instead use the OutputS3BucketName and OutputS3KeyPrefix
* options in the TaskInvocationParameters structure. For information about how Amazon Web
* Services Systems Manager handles these options for the supported maintenance window task types, see
* MaintenanceWindowTaskInvocationParameters.
*
* An optional name for the task. *
* * @param name * An optional name for the task. */ public void setName(String name) { this.name = name; } /** ** An optional name for the task. *
* * @return An optional name for the task. */ public String getName() { return this.name; } /** ** An optional name for the task. *
* * @param name * An optional name for the task. * @return Returns a reference to this object so that method calls can be chained together. */ public RegisterTaskWithMaintenanceWindowRequest withName(String name) { setName(name); return this; } /** ** An optional description for the task. *
* * @param description * An optional description for the task. */ public void setDescription(String description) { this.description = description; } /** ** An optional description for the task. *
* * @return An optional description for the task. */ public String getDescription() { return this.description; } /** ** An optional description for the task. *
* * @param description * An optional description for the task. * @return Returns a reference to this object so that method calls can be chained together. */ public RegisterTaskWithMaintenanceWindowRequest withDescription(String description) { setDescription(description); return this; } /** ** User-provided idempotency token. *
* * @param clientToken * User-provided idempotency token. */ public void setClientToken(String clientToken) { this.clientToken = clientToken; } /** ** User-provided idempotency token. *
* * @return User-provided idempotency token. */ public String getClientToken() { return this.clientToken; } /** ** User-provided idempotency token. *
* * @param clientToken * User-provided idempotency token. * @return Returns a reference to this object so that method calls can be chained together. */ public RegisterTaskWithMaintenanceWindowRequest withClientToken(String clientToken) { setClientToken(clientToken); return this; } /** ** Indicates whether tasks should continue to run after the cutoff time specified in the maintenance windows is * reached. *
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The default
* value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that are * already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation that * attempts to cancel the command associated with the task. However, there is no guarantee that the command will be * terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The
* default value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that * are already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation * that attempts to cancel the command associated with the task. However, there is no guarantee that the * command will be terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* Indicates whether tasks should continue to run after the cutoff time specified in the maintenance windows is * reached. *
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The default
* value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that are * already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation that * attempts to cancel the command associated with the task. However, there is no guarantee that the command will be * terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The
* default value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that * are already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation * that attempts to cancel the command associated with the task. However, there is no guarantee that the * command will be terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* Indicates whether tasks should continue to run after the cutoff time specified in the maintenance windows is * reached. *
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The default
* value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that are * already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation that * attempts to cancel the command associated with the task. However, there is no guarantee that the command will be * terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The
* default value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that * are already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation * that attempts to cancel the command associated with the task. However, there is no guarantee that the * command will be terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* Indicates whether tasks should continue to run after the cutoff time specified in the maintenance windows is * reached. *
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The default
* value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that are * already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation that * attempts to cancel the command associated with the task. However, there is no guarantee that the command will be * terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The
* default value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that * are already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation * that attempts to cancel the command associated with the task. However, there is no guarantee that the * command will be terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* Indicates whether tasks should continue to run after the cutoff time specified in the maintenance windows is * reached. *
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The default
* value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that are * already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation that * attempts to cancel the command associated with the task. However, there is no guarantee that the command will be * terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* CONTINUE_TASK: When the cutoff time is reached, any tasks that are running continue. The
* default value.
*
* CANCEL_TASK:
*
* For Automation, Lambda, Step Functions tasks: When the cutoff time is reached, any task invocations that * are already running continue, but no new task invocations are started. *
** For Run Command tasks: When the cutoff time is reached, the system sends a CancelCommand operation * that attempts to cancel the command associated with the task. However, there is no guarantee that the * command will be terminated and the underlying process stopped. *
*
* The status for tasks that are not completed is TIMED_OUT.
*
* The CloudWatch alarm you want to apply to your maintenance window task. *
* * @param alarmConfiguration * The CloudWatch alarm you want to apply to your maintenance window task. */ public void setAlarmConfiguration(AlarmConfiguration alarmConfiguration) { this.alarmConfiguration = alarmConfiguration; } /** ** The CloudWatch alarm you want to apply to your maintenance window task. *
* * @return The CloudWatch alarm you want to apply to your maintenance window task. */ public AlarmConfiguration getAlarmConfiguration() { return this.alarmConfiguration; } /** ** The CloudWatch alarm you want to apply to your maintenance window task. *
* * @param alarmConfiguration * The CloudWatch alarm you want to apply to your maintenance window task. * @return Returns a reference to this object so that method calls can be chained together. */ public RegisterTaskWithMaintenanceWindowRequest withAlarmConfiguration(AlarmConfiguration alarmConfiguration) { setAlarmConfiguration(alarmConfiguration); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getWindowId() != null) sb.append("WindowId: ").append(getWindowId()).append(","); if (getTargets() != null) sb.append("Targets: ").append(getTargets()).append(","); if (getTaskArn() != null) sb.append("TaskArn: ").append(getTaskArn()).append(","); if (getServiceRoleArn() != null) sb.append("ServiceRoleArn: ").append(getServiceRoleArn()).append(","); if (getTaskType() != null) sb.append("TaskType: ").append(getTaskType()).append(","); if (getTaskParameters() != null) sb.append("TaskParameters: ").append("***Sensitive Data Redacted***").append(","); if (getTaskInvocationParameters() != null) sb.append("TaskInvocationParameters: ").append(getTaskInvocationParameters()).append(","); if (getPriority() != null) sb.append("Priority: ").append(getPriority()).append(","); if (getMaxConcurrency() != null) sb.append("MaxConcurrency: ").append(getMaxConcurrency()).append(","); if (getMaxErrors() != null) sb.append("MaxErrors: ").append(getMaxErrors()).append(","); if (getLoggingInfo() != null) sb.append("LoggingInfo: ").append(getLoggingInfo()).append(","); if (getName() != null) sb.append("Name: ").append(getName()).append(","); if (getDescription() != null) sb.append("Description: ").append("***Sensitive Data Redacted***").append(","); if (getClientToken() != null) sb.append("ClientToken: ").append(getClientToken()).append(","); if (getCutoffBehavior() != null) sb.append("CutoffBehavior: ").append(getCutoffBehavior()).append(","); if (getAlarmConfiguration() != null) sb.append("AlarmConfiguration: ").append(getAlarmConfiguration()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof RegisterTaskWithMaintenanceWindowRequest == false) return false; RegisterTaskWithMaintenanceWindowRequest other = (RegisterTaskWithMaintenanceWindowRequest) obj; if (other.getWindowId() == null ^ this.getWindowId() == null) return false; if (other.getWindowId() != null && other.getWindowId().equals(this.getWindowId()) == false) return false; if (other.getTargets() == null ^ this.getTargets() == null) return false; if (other.getTargets() != null && other.getTargets().equals(this.getTargets()) == false) return false; if (other.getTaskArn() == null ^ this.getTaskArn() == null) return false; if (other.getTaskArn() != null && other.getTaskArn().equals(this.getTaskArn()) == false) return false; if (other.getServiceRoleArn() == null ^ this.getServiceRoleArn() == null) return false; if (other.getServiceRoleArn() != null && other.getServiceRoleArn().equals(this.getServiceRoleArn()) == false) return false; if (other.getTaskType() == null ^ this.getTaskType() == null) return false; if (other.getTaskType() != null && other.getTaskType().equals(this.getTaskType()) == false) return false; if (other.getTaskParameters() == null ^ this.getTaskParameters() == null) return false; if (other.getTaskParameters() != null && other.getTaskParameters().equals(this.getTaskParameters()) == false) return false; if (other.getTaskInvocationParameters() == null ^ this.getTaskInvocationParameters() == null) return false; if (other.getTaskInvocationParameters() != null && other.getTaskInvocationParameters().equals(this.getTaskInvocationParameters()) == false) return false; if (other.getPriority() == null ^ this.getPriority() == null) return false; if (other.getPriority() != null && other.getPriority().equals(this.getPriority()) == false) return false; if (other.getMaxConcurrency() == null ^ this.getMaxConcurrency() == null) return false; if (other.getMaxConcurrency() != null && other.getMaxConcurrency().equals(this.getMaxConcurrency()) == false) return false; if (other.getMaxErrors() == null ^ this.getMaxErrors() == null) return false; if (other.getMaxErrors() != null && other.getMaxErrors().equals(this.getMaxErrors()) == false) return false; if (other.getLoggingInfo() == null ^ this.getLoggingInfo() == null) return false; if (other.getLoggingInfo() != null && other.getLoggingInfo().equals(this.getLoggingInfo()) == false) return false; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getDescription() == null ^ this.getDescription() == null) return false; if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == false) return false; if (other.getClientToken() == null ^ this.getClientToken() == null) return false; if (other.getClientToken() != null && other.getClientToken().equals(this.getClientToken()) == false) return false; if (other.getCutoffBehavior() == null ^ this.getCutoffBehavior() == null) return false; if (other.getCutoffBehavior() != null && other.getCutoffBehavior().equals(this.getCutoffBehavior()) == false) return false; if (other.getAlarmConfiguration() == null ^ this.getAlarmConfiguration() == null) return false; if (other.getAlarmConfiguration() != null && other.getAlarmConfiguration().equals(this.getAlarmConfiguration()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getWindowId() == null) ? 0 : getWindowId().hashCode()); hashCode = prime * hashCode + ((getTargets() == null) ? 0 : getTargets().hashCode()); hashCode = prime * hashCode + ((getTaskArn() == null) ? 0 : getTaskArn().hashCode()); hashCode = prime * hashCode + ((getServiceRoleArn() == null) ? 0 : getServiceRoleArn().hashCode()); hashCode = prime * hashCode + ((getTaskType() == null) ? 0 : getTaskType().hashCode()); hashCode = prime * hashCode + ((getTaskParameters() == null) ? 0 : getTaskParameters().hashCode()); hashCode = prime * hashCode + ((getTaskInvocationParameters() == null) ? 0 : getTaskInvocationParameters().hashCode()); hashCode = prime * hashCode + ((getPriority() == null) ? 0 : getPriority().hashCode()); hashCode = prime * hashCode + ((getMaxConcurrency() == null) ? 0 : getMaxConcurrency().hashCode()); hashCode = prime * hashCode + ((getMaxErrors() == null) ? 0 : getMaxErrors().hashCode()); hashCode = prime * hashCode + ((getLoggingInfo() == null) ? 0 : getLoggingInfo().hashCode()); hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode()); hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); hashCode = prime * hashCode + ((getClientToken() == null) ? 0 : getClientToken().hashCode()); hashCode = prime * hashCode + ((getCutoffBehavior() == null) ? 0 : getCutoffBehavior().hashCode()); hashCode = prime * hashCode + ((getAlarmConfiguration() == null) ? 0 : getAlarmConfiguration().hashCode()); return hashCode; } @Override public RegisterTaskWithMaintenanceWindowRequest clone() { return (RegisterTaskWithMaintenanceWindowRequest) super.clone(); } }