AWS SDK

AWS SDK

rev. 97ba95e6039d206ffea5b866ddc214d34f7f88c3 (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/ssm/src/operation/update_maintenance_window_task/_update_maintenance_window_task_output.rs

@@ -0,1 +0,1004 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
#[allow(missing_docs)] // documentation missing in model
           3  +
#[non_exhaustive]
           4  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
           5  +
pub struct UpdateMaintenanceWindowTaskOutput {
           6  +
    /// <p>The ID of the maintenance window that was updated.</p>
           7  +
    pub window_id: ::std::option::Option<::std::string::String>,
           8  +
    /// <p>The task ID of the maintenance window that was updated.</p>
           9  +
    pub window_task_id: ::std::option::Option<::std::string::String>,
          10  +
    /// <p>The updated target values.</p>
          11  +
    pub targets: ::std::option::Option<::std::vec::Vec<crate::types::Target>>,
          12  +
    /// <p>The updated task ARN value.</p>
          13  +
    pub task_arn: ::std::option::Option<::std::string::String>,
          14  +
    /// <p>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 a service-linked role in your account. If no appropriate service-linked role for Systems Manager exists in your account, it is created when you run <code>RegisterTaskWithMaintenanceWindow</code>.</p>
          15  +
    /// <p>However, for an improved security posture, we strongly recommend creating a custom policy and custom service role for running your maintenance window tasks. The policy can be crafted to provide only the permissions needed for your particular maintenance window tasks. For more information, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html">Setting up Maintenance Windows</a> in the in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
          16  +
    pub service_role_arn: ::std::option::Option<::std::string::String>,
          17  +
    /// <p>The updated parameter values.</p><note>
          18  +
    /// <p><code>TaskParameters</code> has been deprecated. To specify parameters to pass to a task when it runs, instead use the <code>Parameters</code> option in the <code>TaskInvocationParameters</code> structure. For information about how Systems Manager handles these options for the supported maintenance window task types, see <code>MaintenanceWindowTaskInvocationParameters</code>.</p>
          19  +
    /// </note>
          20  +
    pub task_parameters:
          21  +
        ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::MaintenanceWindowTaskParameterValueExpression>>,
          22  +
    /// <p>The updated parameter values.</p>
          23  +
    pub task_invocation_parameters: ::std::option::Option<crate::types::MaintenanceWindowTaskInvocationParameters>,
          24  +
    /// <p>The updated priority value.</p>
          25  +
    pub priority: i32,
          26  +
    /// <p>The updated <code>MaxConcurrency</code> value.</p>
          27  +
    pub max_concurrency: ::std::option::Option<::std::string::String>,
          28  +
    /// <p>The updated <code>MaxErrors</code> value.</p>
          29  +
    pub max_errors: ::std::option::Option<::std::string::String>,
          30  +
    /// <p>The updated logging information in Amazon S3.</p><note>
          31  +
    /// <p><code>LoggingInfo</code> has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the <code>OutputS3BucketName</code> and <code>OutputS3KeyPrefix</code> options in the <code>TaskInvocationParameters</code> structure. For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance window task types, see <code>MaintenanceWindowTaskInvocationParameters</code>.</p>
          32  +
    /// </note>
          33  +
    pub logging_info: ::std::option::Option<crate::types::LoggingInfo>,
          34  +
    /// <p>The updated task name.</p>
          35  +
    pub name: ::std::option::Option<::std::string::String>,
          36  +
    /// <p>The updated task description.</p>
          37  +
    pub description: ::std::option::Option<::std::string::String>,
          38  +
    /// <p>The specification for whether tasks should continue to run after the cutoff time specified in the maintenance windows is reached.</p>
          39  +
    pub cutoff_behavior: ::std::option::Option<crate::types::MaintenanceWindowTaskCutoffBehavior>,
          40  +
    /// <p>The details for the CloudWatch alarm you applied to your maintenance window task.</p>
          41  +
    pub alarm_configuration: ::std::option::Option<crate::types::AlarmConfiguration>,
          42  +
    _request_id: Option<String>,
          43  +
}
          44  +
impl UpdateMaintenanceWindowTaskOutput {
          45  +
    /// <p>The ID of the maintenance window that was updated.</p>
          46  +
    pub fn window_id(&self) -> ::std::option::Option<&str> {
          47  +
        self.window_id.as_deref()
          48  +
    }
          49  +
    /// <p>The task ID of the maintenance window that was updated.</p>
          50  +
    pub fn window_task_id(&self) -> ::std::option::Option<&str> {
          51  +
        self.window_task_id.as_deref()
          52  +
    }
          53  +
    /// <p>The updated target values.</p>
          54  +
    ///
          55  +
    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.targets.is_none()`.
          56  +
    pub fn targets(&self) -> &[crate::types::Target] {
          57  +
        self.targets.as_deref().unwrap_or_default()
          58  +
    }
          59  +
    /// <p>The updated task ARN value.</p>
          60  +
    pub fn task_arn(&self) -> ::std::option::Option<&str> {
          61  +
        self.task_arn.as_deref()
          62  +
    }
          63  +
    /// <p>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 a service-linked role in your account. If no appropriate service-linked role for Systems Manager exists in your account, it is created when you run <code>RegisterTaskWithMaintenanceWindow</code>.</p>
          64  +
    /// <p>However, for an improved security posture, we strongly recommend creating a custom policy and custom service role for running your maintenance window tasks. The policy can be crafted to provide only the permissions needed for your particular maintenance window tasks. For more information, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html">Setting up Maintenance Windows</a> in the in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
          65  +
    pub fn service_role_arn(&self) -> ::std::option::Option<&str> {
          66  +
        self.service_role_arn.as_deref()
          67  +
    }
          68  +
    /// <p>The updated parameter values.</p><note>
          69  +
    /// <p><code>TaskParameters</code> has been deprecated. To specify parameters to pass to a task when it runs, instead use the <code>Parameters</code> option in the <code>TaskInvocationParameters</code> structure. For information about how Systems Manager handles these options for the supported maintenance window task types, see <code>MaintenanceWindowTaskInvocationParameters</code>.</p>
          70  +
    /// </note>
          71  +
    pub fn task_parameters(
          72  +
        &self,
          73  +
    ) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, crate::types::MaintenanceWindowTaskParameterValueExpression>> {
          74  +
        self.task_parameters.as_ref()
          75  +
    }
          76  +
    /// <p>The updated parameter values.</p>
          77  +
    pub fn task_invocation_parameters(&self) -> ::std::option::Option<&crate::types::MaintenanceWindowTaskInvocationParameters> {
          78  +
        self.task_invocation_parameters.as_ref()
          79  +
    }
          80  +
    /// <p>The updated priority value.</p>
          81  +
    pub fn priority(&self) -> i32 {
          82  +
        self.priority
          83  +
    }
          84  +
    /// <p>The updated <code>MaxConcurrency</code> value.</p>
          85  +
    pub fn max_concurrency(&self) -> ::std::option::Option<&str> {
          86  +
        self.max_concurrency.as_deref()
          87  +
    }
          88  +
    /// <p>The updated <code>MaxErrors</code> value.</p>
          89  +
    pub fn max_errors(&self) -> ::std::option::Option<&str> {
          90  +
        self.max_errors.as_deref()
          91  +
    }
          92  +
    /// <p>The updated logging information in Amazon S3.</p><note>
          93  +
    /// <p><code>LoggingInfo</code> has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the <code>OutputS3BucketName</code> and <code>OutputS3KeyPrefix</code> options in the <code>TaskInvocationParameters</code> structure. For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance window task types, see <code>MaintenanceWindowTaskInvocationParameters</code>.</p>
          94  +
    /// </note>
          95  +
    pub fn logging_info(&self) -> ::std::option::Option<&crate::types::LoggingInfo> {
          96  +
        self.logging_info.as_ref()
          97  +
    }
          98  +
    /// <p>The updated task name.</p>
          99  +
    pub fn name(&self) -> ::std::option::Option<&str> {
         100  +
        self.name.as_deref()
         101  +
    }
         102  +
    /// <p>The updated task description.</p>
         103  +
    pub fn description(&self) -> ::std::option::Option<&str> {
         104  +
        self.description.as_deref()
         105  +
    }
         106  +
    /// <p>The specification for whether tasks should continue to run after the cutoff time specified in the maintenance windows is reached.</p>
         107  +
    pub fn cutoff_behavior(&self) -> ::std::option::Option<&crate::types::MaintenanceWindowTaskCutoffBehavior> {
         108  +
        self.cutoff_behavior.as_ref()
         109  +
    }
         110  +
    /// <p>The details for the CloudWatch alarm you applied to your maintenance window task.</p>
         111  +
    pub fn alarm_configuration(&self) -> ::std::option::Option<&crate::types::AlarmConfiguration> {
         112  +
        self.alarm_configuration.as_ref()
         113  +
    }
         114  +
}
         115  +
impl ::std::fmt::Debug for UpdateMaintenanceWindowTaskOutput {
         116  +
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         117  +
        let mut formatter = f.debug_struct("UpdateMaintenanceWindowTaskOutput");
         118  +
        formatter.field("window_id", &self.window_id);
         119  +
        formatter.field("window_task_id", &self.window_task_id);
         120  +
        formatter.field("targets", &self.targets);
         121  +
        formatter.field("task_arn", &self.task_arn);
         122  +
        formatter.field("service_role_arn", &self.service_role_arn);
         123  +
        formatter.field("task_parameters", &"*** Sensitive Data Redacted ***");
         124  +
        formatter.field("task_invocation_parameters", &self.task_invocation_parameters);
         125  +
        formatter.field("priority", &self.priority);
         126  +
        formatter.field("max_concurrency", &self.max_concurrency);
         127  +
        formatter.field("max_errors", &self.max_errors);
         128  +
        formatter.field("logging_info", &self.logging_info);
         129  +
        formatter.field("name", &self.name);
         130  +
        formatter.field("description", &"*** Sensitive Data Redacted ***");
         131  +
        formatter.field("cutoff_behavior", &self.cutoff_behavior);
         132  +
        formatter.field("alarm_configuration", &self.alarm_configuration);
         133  +
        formatter.field("_request_id", &self._request_id);
         134  +
        formatter.finish()
         135  +
    }
         136  +
}
         137  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_WINDOW_ID: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         138  +
    ::aws_smithy_schema::ShapeId::from_parts(
         139  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$WindowId",
         140  +
        "com.amazonaws.ssm.synthetic",
         141  +
        "UpdateMaintenanceWindowTaskOutput",
         142  +
    ),
         143  +
    ::aws_smithy_schema::ShapeType::String,
         144  +
    "WindowId",
         145  +
    0,
         146  +
);
         147  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_WINDOW_TASK_ID: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         148  +
    ::aws_smithy_schema::ShapeId::from_parts(
         149  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$WindowTaskId",
         150  +
        "com.amazonaws.ssm.synthetic",
         151  +
        "UpdateMaintenanceWindowTaskOutput",
         152  +
    ),
         153  +
    ::aws_smithy_schema::ShapeType::String,
         154  +
    "WindowTaskId",
         155  +
    1,
         156  +
);
         157  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TARGETS_MEMBER: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         158  +
    ::aws_smithy_schema::ShapeId::from_parts("com.amazonaws.ssm#Targets$member", "com.amazonaws.ssm", "Targets"),
         159  +
    ::aws_smithy_schema::ShapeType::Structure,
         160  +
    "member",
         161  +
    0,
         162  +
);
         163  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TARGETS: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         164  +
    ::aws_smithy_schema::ShapeId::from_parts(
         165  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$Targets",
         166  +
        "com.amazonaws.ssm.synthetic",
         167  +
        "UpdateMaintenanceWindowTaskOutput",
         168  +
    ),
         169  +
    ::aws_smithy_schema::ShapeType::List,
         170  +
    "Targets",
         171  +
    2,
         172  +
)
         173  +
.with_list_member(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TARGETS_MEMBER);
         174  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_ARN: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         175  +
    ::aws_smithy_schema::ShapeId::from_parts(
         176  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$TaskArn",
         177  +
        "com.amazonaws.ssm.synthetic",
         178  +
        "UpdateMaintenanceWindowTaskOutput",
         179  +
    ),
         180  +
    ::aws_smithy_schema::ShapeType::String,
         181  +
    "TaskArn",
         182  +
    3,
         183  +
);
         184  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_SERVICE_ROLE_ARN: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         185  +
    ::aws_smithy_schema::ShapeId::from_parts(
         186  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$ServiceRoleArn",
         187  +
        "com.amazonaws.ssm.synthetic",
         188  +
        "UpdateMaintenanceWindowTaskOutput",
         189  +
    ),
         190  +
    ::aws_smithy_schema::ShapeType::String,
         191  +
    "ServiceRoleArn",
         192  +
    4,
         193  +
);
         194  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_PARAMETERS_KEY: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         195  +
    ::aws_smithy_schema::ShapeId::from_parts(
         196  +
        "com.amazonaws.ssm#MaintenanceWindowTaskParameters$key",
         197  +
        "com.amazonaws.ssm",
         198  +
        "MaintenanceWindowTaskParameters",
         199  +
    ),
         200  +
    ::aws_smithy_schema::ShapeType::String,
         201  +
    "key",
         202  +
    0,
         203  +
);
         204  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_PARAMETERS_VALUE: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         205  +
    ::aws_smithy_schema::ShapeId::from_parts(
         206  +
        "com.amazonaws.ssm#MaintenanceWindowTaskParameters$value",
         207  +
        "com.amazonaws.ssm",
         208  +
        "MaintenanceWindowTaskParameters",
         209  +
    ),
         210  +
    ::aws_smithy_schema::ShapeType::Structure,
         211  +
    "value",
         212  +
    1,
         213  +
);
         214  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_PARAMETERS: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         215  +
    ::aws_smithy_schema::ShapeId::from_parts(
         216  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$TaskParameters",
         217  +
        "com.amazonaws.ssm.synthetic",
         218  +
        "UpdateMaintenanceWindowTaskOutput",
         219  +
    ),
         220  +
    ::aws_smithy_schema::ShapeType::Map,
         221  +
    "TaskParameters",
         222  +
    5,
         223  +
)
         224  +
.with_map_members(
         225  +
    &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_PARAMETERS_KEY,
         226  +
    &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_PARAMETERS_VALUE,
         227  +
);
         228  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_INVOCATION_PARAMETERS: ::aws_smithy_schema::Schema<'static> =
         229  +
    ::aws_smithy_schema::Schema::new_member(
         230  +
        ::aws_smithy_schema::ShapeId::from_parts(
         231  +
            "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$TaskInvocationParameters",
         232  +
            "com.amazonaws.ssm.synthetic",
         233  +
            "UpdateMaintenanceWindowTaskOutput",
         234  +
        ),
         235  +
        ::aws_smithy_schema::ShapeType::Structure,
         236  +
        "TaskInvocationParameters",
         237  +
        6,
         238  +
    );
         239  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_PRIORITY: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         240  +
    ::aws_smithy_schema::ShapeId::from_parts(
         241  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$Priority",
         242  +
        "com.amazonaws.ssm.synthetic",
         243  +
        "UpdateMaintenanceWindowTaskOutput",
         244  +
    ),
         245  +
    ::aws_smithy_schema::ShapeType::Integer,
         246  +
    "Priority",
         247  +
    7,
         248  +
);
         249  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_MAX_CONCURRENCY: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         250  +
    ::aws_smithy_schema::ShapeId::from_parts(
         251  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$MaxConcurrency",
         252  +
        "com.amazonaws.ssm.synthetic",
         253  +
        "UpdateMaintenanceWindowTaskOutput",
         254  +
    ),
         255  +
    ::aws_smithy_schema::ShapeType::String,
         256  +
    "MaxConcurrency",
         257  +
    8,
         258  +
);
         259  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_MAX_ERRORS: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         260  +
    ::aws_smithy_schema::ShapeId::from_parts(
         261  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$MaxErrors",
         262  +
        "com.amazonaws.ssm.synthetic",
         263  +
        "UpdateMaintenanceWindowTaskOutput",
         264  +
    ),
         265  +
    ::aws_smithy_schema::ShapeType::String,
         266  +
    "MaxErrors",
         267  +
    9,
         268  +
);
         269  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_LOGGING_INFO: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         270  +
    ::aws_smithy_schema::ShapeId::from_parts(
         271  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$LoggingInfo",
         272  +
        "com.amazonaws.ssm.synthetic",
         273  +
        "UpdateMaintenanceWindowTaskOutput",
         274  +
    ),
         275  +
    ::aws_smithy_schema::ShapeType::Structure,
         276  +
    "LoggingInfo",
         277  +
    10,
         278  +
);
         279  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_NAME: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         280  +
    ::aws_smithy_schema::ShapeId::from_parts(
         281  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$Name",
         282  +
        "com.amazonaws.ssm.synthetic",
         283  +
        "UpdateMaintenanceWindowTaskOutput",
         284  +
    ),
         285  +
    ::aws_smithy_schema::ShapeType::String,
         286  +
    "Name",
         287  +
    11,
         288  +
);
         289  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_DESCRIPTION: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         290  +
    ::aws_smithy_schema::ShapeId::from_parts(
         291  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$Description",
         292  +
        "com.amazonaws.ssm.synthetic",
         293  +
        "UpdateMaintenanceWindowTaskOutput",
         294  +
    ),
         295  +
    ::aws_smithy_schema::ShapeType::String,
         296  +
    "Description",
         297  +
    12,
         298  +
);
         299  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_CUTOFF_BEHAVIOR: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         300  +
    ::aws_smithy_schema::ShapeId::from_parts(
         301  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$CutoffBehavior",
         302  +
        "com.amazonaws.ssm.synthetic",
         303  +
        "UpdateMaintenanceWindowTaskOutput",
         304  +
    ),
         305  +
    ::aws_smithy_schema::ShapeType::String,
         306  +
    "CutoffBehavior",
         307  +
    13,
         308  +
);
         309  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_ALARM_CONFIGURATION: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         310  +
    ::aws_smithy_schema::ShapeId::from_parts(
         311  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput$AlarmConfiguration",
         312  +
        "com.amazonaws.ssm.synthetic",
         313  +
        "UpdateMaintenanceWindowTaskOutput",
         314  +
    ),
         315  +
    ::aws_smithy_schema::ShapeType::Structure,
         316  +
    "AlarmConfiguration",
         317  +
    14,
         318  +
);
         319  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
         320  +
    ::aws_smithy_schema::ShapeId::from_parts("synthetic#request_id", "synthetic", "request_id"),
         321  +
    ::aws_smithy_schema::ShapeType::String,
         322  +
    "request_id",
         323  +
    15,
         324  +
)
         325  +
.with_http_header("x-amzn-requestid");
         326  +
static UPDATEMAINTENANCEWINDOWTASKOUTPUT_SCHEMA: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_struct(
         327  +
    ::aws_smithy_schema::ShapeId::from_parts(
         328  +
        "com.amazonaws.ssm.synthetic#UpdateMaintenanceWindowTaskOutput",
         329  +
        "com.amazonaws.ssm.synthetic",
         330  +
        "UpdateMaintenanceWindowTaskOutput",
         331  +
    ),
         332  +
    ::aws_smithy_schema::ShapeType::Structure,
         333  +
    &[
         334  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_WINDOW_ID,
         335  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_WINDOW_TASK_ID,
         336  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TARGETS,
         337  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_ARN,
         338  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_SERVICE_ROLE_ARN,
         339  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_PARAMETERS,
         340  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_INVOCATION_PARAMETERS,
         341  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_PRIORITY,
         342  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_MAX_CONCURRENCY,
         343  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_MAX_ERRORS,
         344  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_LOGGING_INFO,
         345  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_NAME,
         346  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_DESCRIPTION,
         347  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_CUTOFF_BEHAVIOR,
         348  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_ALARM_CONFIGURATION,
         349  +
        &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER__REQUEST_ID,
         350  +
    ],
         351  +
)
         352  +
.with_original_name("UpdateMaintenanceWindowTaskResult");
         353  +
impl UpdateMaintenanceWindowTaskOutput {
         354  +
    /// The schema for this shape.
         355  +
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema<'static> = &UPDATEMAINTENANCEWINDOWTASKOUTPUT_SCHEMA;
         356  +
}
         357  +
impl ::aws_smithy_schema::serde::SerializableStruct for UpdateMaintenanceWindowTaskOutput {
         358  +
    #[allow(unused_variables, clippy::diverging_sub_expression)]
         359  +
    fn serialize_members(
         360  +
        &self,
         361  +
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
         362  +
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
         363  +
        if let Some(ref val) = self.window_id {
         364  +
            ser.write_string(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_WINDOW_ID, val)?;
         365  +
        }
         366  +
        if let Some(ref val) = self.window_task_id {
         367  +
            ser.write_string(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_WINDOW_TASK_ID, val)?;
         368  +
        }
         369  +
        if let Some(ref val) = self.targets {
         370  +
            ser.write_list(
         371  +
                &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TARGETS,
         372  +
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
         373  +
                    for item in val {
         374  +
                        ser.write_struct(crate::types::Target::SCHEMA, item)?;
         375  +
                    }
         376  +
                    Ok(())
         377  +
                },
         378  +
            )?;
         379  +
        }
         380  +
        if let Some(ref val) = self.task_arn {
         381  +
            ser.write_string(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_ARN, val)?;
         382  +
        }
         383  +
        if let Some(ref val) = self.service_role_arn {
         384  +
            ser.write_string(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_SERVICE_ROLE_ARN, val)?;
         385  +
        }
         386  +
        if let Some(ref val) = self.task_parameters {
         387  +
            ser.write_map(
         388  +
                &UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_PARAMETERS,
         389  +
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
         390  +
                    for (key, value) in val {
         391  +
                        ser.write_string(&::aws_smithy_schema::prelude::STRING, key)?;
         392  +
                        ser.write_struct(crate::types::MaintenanceWindowTaskParameterValueExpression::SCHEMA, value)?;
         393  +
                    }
         394  +
                    Ok(())
         395  +
                },
         396  +
            )?;
         397  +
        }
         398  +
        if let Some(ref val) = self.task_invocation_parameters {
         399  +
            ser.write_struct(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_TASK_INVOCATION_PARAMETERS, val)?;
         400  +
        }
         401  +
        {
         402  +
            let val = &self.priority;
         403  +
            ser.write_integer(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_PRIORITY, *val)?;
         404  +
        }
         405  +
        if let Some(ref val) = self.max_concurrency {
         406  +
            ser.write_string(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_MAX_CONCURRENCY, val)?;
         407  +
        }
         408  +
        if let Some(ref val) = self.max_errors {
         409  +
            ser.write_string(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_MAX_ERRORS, val)?;
         410  +
        }
         411  +
        if let Some(ref val) = self.logging_info {
         412  +
            ser.write_struct(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_LOGGING_INFO, val)?;
         413  +
        }
         414  +
        if let Some(ref val) = self.name {
         415  +
            ser.write_string(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_NAME, val)?;
         416  +
        }
         417  +
        if let Some(ref val) = self.description {
         418  +
            ser.write_string(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_DESCRIPTION, val)?;
         419  +
        }
         420  +
        if let Some(ref val) = self.cutoff_behavior {
         421  +
            ser.write_string(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_CUTOFF_BEHAVIOR, val.as_str())?;
         422  +
        }
         423  +
        if let Some(ref val) = self.alarm_configuration {
         424  +
            ser.write_struct(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_MEMBER_ALARM_CONFIGURATION, val)?;
         425  +
        }
         426  +
        Ok(())
         427  +
    }
         428  +
}
         429  +
impl UpdateMaintenanceWindowTaskOutput {
         430  +
    /// Deserializes this structure from a [`ShapeDeserializer`].
         431  +
    pub fn deserialize(
         432  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         433  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         434  +
        #[allow(unused_variables, unused_mut)]
         435  +
        let mut builder = Self::builder();
         436  +
        #[allow(
         437  +
            unused_variables,
         438  +
            unreachable_code,
         439  +
            clippy::single_match,
         440  +
            clippy::match_single_binding,
         441  +
            clippy::diverging_sub_expression
         442  +
        )]
         443  +
        deserializer.read_struct(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_SCHEMA, &mut |member, deser| {
         444  +
            match member.member_index() {
         445  +
                Some(0) => {
         446  +
                    if deser.is_null() {
         447  +
                        deser.read_null()?;
         448  +
                    } else {
         449  +
                        builder.window_id = Some(deser.read_string(member)?);
         450  +
                    }
         451  +
                }
         452  +
                Some(1) => {
         453  +
                    if deser.is_null() {
         454  +
                        deser.read_null()?;
         455  +
                    } else {
         456  +
                        builder.window_task_id = Some(deser.read_string(member)?);
         457  +
                    }
         458  +
                }
         459  +
                Some(2) => {
         460  +
                    if deser.is_null() {
         461  +
                        deser.read_null()?;
         462  +
                    } else {
         463  +
                        builder.targets = Some({
         464  +
                            let mut container = Vec::new();
         465  +
                            deser.read_list(member, &mut |deser| {
         466  +
                                container.push(crate::types::Target::deserialize(deser)?);
         467  +
                                Ok(())
         468  +
                            })?;
         469  +
                            container
         470  +
                        });
         471  +
                    }
         472  +
                }
         473  +
                Some(3) => {
         474  +
                    if deser.is_null() {
         475  +
                        deser.read_null()?;
         476  +
                    } else {
         477  +
                        builder.task_arn = Some(deser.read_string(member)?);
         478  +
                    }
         479  +
                }
         480  +
                Some(4) => {
         481  +
                    if deser.is_null() {
         482  +
                        deser.read_null()?;
         483  +
                    } else {
         484  +
                        builder.service_role_arn = Some(deser.read_string(member)?);
         485  +
                    }
         486  +
                }
         487  +
                Some(5) => {
         488  +
                    if deser.is_null() {
         489  +
                        deser.read_null()?;
         490  +
                    } else {
         491  +
                        builder.task_parameters = Some({
         492  +
                            let mut container = std::collections::HashMap::new();
         493  +
                            deser.read_map(member, &mut |key, deser| {
         494  +
                                container.insert(key, crate::types::MaintenanceWindowTaskParameterValueExpression::deserialize(deser)?);
         495  +
                                Ok(())
         496  +
                            })?;
         497  +
                            container
         498  +
                        });
         499  +
                    }
         500  +
                }
         501  +
                Some(6) => {
         502  +
                    if deser.is_null() {
         503  +
                        deser.read_null()?;
         504  +
                    } else {
         505  +
                        builder.task_invocation_parameters = Some(crate::types::MaintenanceWindowTaskInvocationParameters::deserialize(deser)?);
         506  +
                    }
         507  +
                }
         508  +
                Some(7) => {
         509  +
                    builder.priority = Some(deser.read_integer(member)?);
         510  +
                }
         511  +
                Some(8) => {
         512  +
                    if deser.is_null() {
         513  +
                        deser.read_null()?;
         514  +
                    } else {
         515  +
                        builder.max_concurrency = Some(deser.read_string(member)?);
         516  +
                    }
         517  +
                }
         518  +
                Some(9) => {
         519  +
                    if deser.is_null() {
         520  +
                        deser.read_null()?;
         521  +
                    } else {
         522  +
                        builder.max_errors = Some(deser.read_string(member)?);
         523  +
                    }
         524  +
                }
         525  +
                Some(10) => {
         526  +
                    if deser.is_null() {
         527  +
                        deser.read_null()?;
         528  +
                    } else {
         529  +
                        builder.logging_info = Some(crate::types::LoggingInfo::deserialize(deser)?);
         530  +
                    }
         531  +
                }
         532  +
                Some(11) => {
         533  +
                    if deser.is_null() {
         534  +
                        deser.read_null()?;
         535  +
                    } else {
         536  +
                        builder.name = Some(deser.read_string(member)?);
         537  +
                    }
         538  +
                }
         539  +
                Some(12) => {
         540  +
                    if deser.is_null() {
         541  +
                        deser.read_null()?;
         542  +
                    } else {
         543  +
                        builder.description = Some(deser.read_string(member)?);
         544  +
                    }
         545  +
                }
         546  +
                Some(13) => {
         547  +
                    if deser.is_null() {
         548  +
                        deser.read_null()?;
         549  +
                    } else {
         550  +
                        builder.cutoff_behavior = Some(crate::types::MaintenanceWindowTaskCutoffBehavior::from(
         551  +
                            deser.read_string(member)?.as_str(),
         552  +
                        ));
         553  +
                    }
         554  +
                }
         555  +
                Some(14) => {
         556  +
                    if deser.is_null() {
         557  +
                        deser.read_null()?;
         558  +
                    } else {
         559  +
                        builder.alarm_configuration = Some(crate::types::AlarmConfiguration::deserialize(deser)?);
         560  +
                    }
         561  +
                }
         562  +
                Some(15) => {
         563  +
                    builder._request_id = Some(deser.read_string(member)?);
         564  +
                }
         565  +
                _ => {}
         566  +
            }
         567  +
            Ok(())
         568  +
        })?;
         569  +
        Ok(builder.build())
         570  +
    }
         571  +
}
         572  +
impl UpdateMaintenanceWindowTaskOutput {
         573  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         574  +
    /// Header-bound members are read directly from headers, avoiding runtime
         575  +
    /// member iteration overhead. Body members are read via the deserializer.
         576  +
    pub fn deserialize_with_response(
         577  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         578  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         579  +
        _status: u16,
         580  +
        _body: &[u8],
         581  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         582  +
        #[allow(unused_variables, unused_mut)]
         583  +
        let mut builder = Self::builder();
         584  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         585  +
            builder._request_id = Some(val.to_string());
         586  +
        }
         587  +
         588  +
        #[allow(
         589  +
            unused_variables,
         590  +
            unreachable_code,
         591  +
            clippy::single_match,
         592  +
            clippy::match_single_binding,
         593  +
            clippy::diverging_sub_expression
         594  +
        )]
         595  +
        deserializer.read_struct(&UPDATEMAINTENANCEWINDOWTASKOUTPUT_SCHEMA, &mut |member, deser| {
         596  +
            match member.member_index() {
         597  +
                Some(0) => {
         598  +
                    builder.window_id = Some(deser.read_string(member)?);
         599  +
                }
         600  +
                Some(1) => {
         601  +
                    builder.window_task_id = Some(deser.read_string(member)?);
         602  +
                }
         603  +
                Some(2) => {
         604  +
                    builder.targets = Some({
         605  +
                        let mut container = Vec::new();
         606  +
                        deser.read_list(member, &mut |deser| {
         607  +
                            container.push(crate::types::Target::deserialize(deser)?);
         608  +
                            Ok(())
         609  +
                        })?;
         610  +
                        container
         611  +
                    });
         612  +
                }
         613  +
                Some(3) => {
         614  +
                    builder.task_arn = Some(deser.read_string(member)?);
         615  +
                }
         616  +
                Some(4) => {
         617  +
                    builder.service_role_arn = Some(deser.read_string(member)?);
         618  +
                }
         619  +
                Some(5) => {
         620  +
                    builder.task_parameters = Some({
         621  +
                        let mut container = std::collections::HashMap::new();
         622  +
                        deser.read_map(member, &mut |key, deser| {
         623  +
                            container.insert(key, crate::types::MaintenanceWindowTaskParameterValueExpression::deserialize(deser)?);
         624  +
                            Ok(())
         625  +
                        })?;
         626  +
                        container
         627  +
                    });
         628  +
                }
         629  +
                Some(6) => {
         630  +
                    builder.task_invocation_parameters = Some(crate::types::MaintenanceWindowTaskInvocationParameters::deserialize(deser)?);
         631  +
                }
         632  +
                Some(7) => {
         633  +
                    builder.priority = Some(deser.read_integer(member)?);
         634  +
                }
         635  +
                Some(8) => {
         636  +
                    builder.max_concurrency = Some(deser.read_string(member)?);
         637  +
                }
         638  +
                Some(9) => {
         639  +
                    builder.max_errors = Some(deser.read_string(member)?);
         640  +
                }
         641  +
                Some(10) => {
         642  +
                    builder.logging_info = Some(crate::types::LoggingInfo::deserialize(deser)?);
         643  +
                }
         644  +
                Some(11) => {
         645  +
                    builder.name = Some(deser.read_string(member)?);
         646  +
                }
         647  +
                Some(12) => {
         648  +
                    builder.description = Some(deser.read_string(member)?);
         649  +
                }
         650  +
                Some(13) => {
         651  +
                    builder.cutoff_behavior = Some(crate::types::MaintenanceWindowTaskCutoffBehavior::from(
         652  +
                        deser.read_string(member)?.as_str(),
         653  +
                    ));
         654  +
                }
         655  +
                Some(14) => {
         656  +
                    builder.alarm_configuration = Some(crate::types::AlarmConfiguration::deserialize(deser)?);
         657  +
                }
         658  +
                _ => {}
         659  +
            }
         660  +
            Ok(())
         661  +
        })?;
         662  +
        Ok(builder.build())
         663  +
    }
         664  +
}
         665  +
impl ::aws_types::request_id::RequestId for UpdateMaintenanceWindowTaskOutput {
         666  +
    fn request_id(&self) -> Option<&str> {
         667  +
        self._request_id.as_deref()
         668  +
    }
         669  +
}
         670  +
impl UpdateMaintenanceWindowTaskOutput {
         671  +
    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
         672  +
        self._request_id = request_id;
         673  +
        self
         674  +
    }
         675  +
}
         676  +
impl UpdateMaintenanceWindowTaskOutput {
         677  +
    /// Creates a new builder-style object to manufacture [`UpdateMaintenanceWindowTaskOutput`](crate::operation::update_maintenance_window_task::UpdateMaintenanceWindowTaskOutput).
         678  +
    pub fn builder() -> crate::operation::update_maintenance_window_task::builders::UpdateMaintenanceWindowTaskOutputBuilder {
         679  +
        crate::operation::update_maintenance_window_task::builders::UpdateMaintenanceWindowTaskOutputBuilder::default()
         680  +
    }
         681  +
}
         682  +
         683  +
/// A builder for [`UpdateMaintenanceWindowTaskOutput`](crate::operation::update_maintenance_window_task::UpdateMaintenanceWindowTaskOutput).
         684  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
         685  +
#[non_exhaustive]
         686  +
pub struct UpdateMaintenanceWindowTaskOutputBuilder {
         687  +
    pub(crate) window_id: ::std::option::Option<::std::string::String>,
         688  +
    pub(crate) window_task_id: ::std::option::Option<::std::string::String>,
         689  +
    pub(crate) targets: ::std::option::Option<::std::vec::Vec<crate::types::Target>>,
         690  +
    pub(crate) task_arn: ::std::option::Option<::std::string::String>,
         691  +
    pub(crate) service_role_arn: ::std::option::Option<::std::string::String>,
         692  +
    pub(crate) task_parameters:
         693  +
        ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::MaintenanceWindowTaskParameterValueExpression>>,
         694  +
    pub(crate) task_invocation_parameters: ::std::option::Option<crate::types::MaintenanceWindowTaskInvocationParameters>,
         695  +
    pub(crate) priority: ::std::option::Option<i32>,
         696  +
    pub(crate) max_concurrency: ::std::option::Option<::std::string::String>,
         697  +
    pub(crate) max_errors: ::std::option::Option<::std::string::String>,
         698  +
    pub(crate) logging_info: ::std::option::Option<crate::types::LoggingInfo>,
         699  +
    pub(crate) name: ::std::option::Option<::std::string::String>,
         700  +
    pub(crate) description: ::std::option::Option<::std::string::String>,
         701  +
    pub(crate) cutoff_behavior: ::std::option::Option<crate::types::MaintenanceWindowTaskCutoffBehavior>,
         702  +
    pub(crate) alarm_configuration: ::std::option::Option<crate::types::AlarmConfiguration>,
         703  +
    _request_id: Option<String>,
         704  +
}
         705  +
impl UpdateMaintenanceWindowTaskOutputBuilder {
         706  +
    /// <p>The ID of the maintenance window that was updated.</p>
         707  +
    pub fn window_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         708  +
        self.window_id = ::std::option::Option::Some(input.into());
         709  +
        self
         710  +
    }
         711  +
    /// <p>The ID of the maintenance window that was updated.</p>
         712  +
    pub fn set_window_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         713  +
        self.window_id = input;
         714  +
        self
         715  +
    }
         716  +
    /// <p>The ID of the maintenance window that was updated.</p>
         717  +
    pub fn get_window_id(&self) -> &::std::option::Option<::std::string::String> {
         718  +
        &self.window_id
         719  +
    }
         720  +
    /// <p>The task ID of the maintenance window that was updated.</p>
         721  +
    pub fn window_task_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         722  +
        self.window_task_id = ::std::option::Option::Some(input.into());
         723  +
        self
         724  +
    }
         725  +
    /// <p>The task ID of the maintenance window that was updated.</p>
         726  +
    pub fn set_window_task_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         727  +
        self.window_task_id = input;
         728  +
        self
         729  +
    }
         730  +
    /// <p>The task ID of the maintenance window that was updated.</p>
         731  +
    pub fn get_window_task_id(&self) -> &::std::option::Option<::std::string::String> {
         732  +
        &self.window_task_id
         733  +
    }
         734  +
    /// Appends an item to `targets`.
         735  +
    ///
         736  +
    /// To override the contents of this collection use [`set_targets`](Self::set_targets).
         737  +
    ///
         738  +
    /// <p>The updated target values.</p>
         739  +
    pub fn targets(mut self, input: crate::types::Target) -> Self {
         740  +
        let mut v = self.targets.unwrap_or_default();
         741  +
        v.push(input);
         742  +
        self.targets = ::std::option::Option::Some(v);
         743  +
        self
         744  +
    }
         745  +
    /// <p>The updated target values.</p>
         746  +
    pub fn set_targets(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Target>>) -> Self {
         747  +
        self.targets = input;
         748  +
        self
         749  +
    }
         750  +
    /// <p>The updated target values.</p>
         751  +
    pub fn get_targets(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Target>> {
         752  +
        &self.targets
         753  +
    }
         754  +
    /// <p>The updated task ARN value.</p>
         755  +
    pub fn task_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         756  +
        self.task_arn = ::std::option::Option::Some(input.into());
         757  +
        self
         758  +
    }
         759  +
    /// <p>The updated task ARN value.</p>
         760  +
    pub fn set_task_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         761  +
        self.task_arn = input;
         762  +
        self
         763  +
    }
         764  +
    /// <p>The updated task ARN value.</p>
         765  +
    pub fn get_task_arn(&self) -> &::std::option::Option<::std::string::String> {
         766  +
        &self.task_arn
         767  +
    }
         768  +
    /// <p>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 a service-linked role in your account. If no appropriate service-linked role for Systems Manager exists in your account, it is created when you run <code>RegisterTaskWithMaintenanceWindow</code>.</p>
         769  +
    /// <p>However, for an improved security posture, we strongly recommend creating a custom policy and custom service role for running your maintenance window tasks. The policy can be crafted to provide only the permissions needed for your particular maintenance window tasks. For more information, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html">Setting up Maintenance Windows</a> in the in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
         770  +
    pub fn service_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         771  +
        self.service_role_arn = ::std::option::Option::Some(input.into());
         772  +
        self
         773  +
    }
         774  +
    /// <p>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 a service-linked role in your account. If no appropriate service-linked role for Systems Manager exists in your account, it is created when you run <code>RegisterTaskWithMaintenanceWindow</code>.</p>
         775  +
    /// <p>However, for an improved security posture, we strongly recommend creating a custom policy and custom service role for running your maintenance window tasks. The policy can be crafted to provide only the permissions needed for your particular maintenance window tasks. For more information, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html">Setting up Maintenance Windows</a> in the in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
         776  +
    pub fn set_service_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         777  +
        self.service_role_arn = input;
         778  +
        self
         779  +
    }
         780  +
    /// <p>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 a service-linked role in your account. If no appropriate service-linked role for Systems Manager exists in your account, it is created when you run <code>RegisterTaskWithMaintenanceWindow</code>.</p>
         781  +
    /// <p>However, for an improved security posture, we strongly recommend creating a custom policy and custom service role for running your maintenance window tasks. The policy can be crafted to provide only the permissions needed for your particular maintenance window tasks. For more information, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html">Setting up Maintenance Windows</a> in the in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
         782  +
    pub fn get_service_role_arn(&self) -> &::std::option::Option<::std::string::String> {
         783  +
        &self.service_role_arn
         784  +
    }
         785  +
    /// Adds a key-value pair to `task_parameters`.
         786  +
    ///
         787  +
    /// To override the contents of this collection use [`set_task_parameters`](Self::set_task_parameters).
         788  +
    ///
         789  +
    /// <p>The updated parameter values.</p><note>
         790  +
    /// <p><code>TaskParameters</code> has been deprecated. To specify parameters to pass to a task when it runs, instead use the <code>Parameters</code> option in the <code>TaskInvocationParameters</code> structure. For information about how Systems Manager handles these options for the supported maintenance window task types, see <code>MaintenanceWindowTaskInvocationParameters</code>.</p>
         791  +
    /// </note>
         792  +
    pub fn task_parameters(
         793  +
        mut self,
         794  +
        k: impl ::std::convert::Into<::std::string::String>,
         795  +
        v: crate::types::MaintenanceWindowTaskParameterValueExpression,
         796  +
    ) -> Self {
         797  +
        let mut hash_map = self.task_parameters.unwrap_or_default();
         798  +
        hash_map.insert(k.into(), v);
         799  +
        self.task_parameters = ::std::option::Option::Some(hash_map);
         800  +
        self
         801  +
    }
         802  +
    /// <p>The updated parameter values.</p><note>
         803  +
    /// <p><code>TaskParameters</code> has been deprecated. To specify parameters to pass to a task when it runs, instead use the <code>Parameters</code> option in the <code>TaskInvocationParameters</code> structure. For information about how Systems Manager handles these options for the supported maintenance window task types, see <code>MaintenanceWindowTaskInvocationParameters</code>.</p>
         804  +
    /// </note>
         805  +
    pub fn set_task_parameters(
         806  +
        mut self,
         807  +
        input: ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::MaintenanceWindowTaskParameterValueExpression>>,
         808  +
    ) -> Self {
         809  +
        self.task_parameters = input;
         810  +
        self
         811  +
    }
         812  +
    /// <p>The updated parameter values.</p><note>
         813  +
    /// <p><code>TaskParameters</code> has been deprecated. To specify parameters to pass to a task when it runs, instead use the <code>Parameters</code> option in the <code>TaskInvocationParameters</code> structure. For information about how Systems Manager handles these options for the supported maintenance window task types, see <code>MaintenanceWindowTaskInvocationParameters</code>.</p>
         814  +
    /// </note>
         815  +
    pub fn get_task_parameters(
         816  +
        &self,
         817  +
    ) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::MaintenanceWindowTaskParameterValueExpression>> {
         818  +
        &self.task_parameters
         819  +
    }
         820  +
    /// <p>The updated parameter values.</p>
         821  +
    pub fn task_invocation_parameters(mut self, input: crate::types::MaintenanceWindowTaskInvocationParameters) -> Self {
         822  +
        self.task_invocation_parameters = ::std::option::Option::Some(input);
         823  +
        self
         824  +
    }
         825  +
    /// <p>The updated parameter values.</p>
         826  +
    pub fn set_task_invocation_parameters(mut self, input: ::std::option::Option<crate::types::MaintenanceWindowTaskInvocationParameters>) -> Self {
         827  +
        self.task_invocation_parameters = input;
         828  +
        self
         829  +
    }
         830  +
    /// <p>The updated parameter values.</p>
         831  +
    pub fn get_task_invocation_parameters(&self) -> &::std::option::Option<crate::types::MaintenanceWindowTaskInvocationParameters> {
         832  +
        &self.task_invocation_parameters
         833  +
    }
         834  +
    /// <p>The updated priority value.</p>
         835  +
    pub fn priority(mut self, input: i32) -> Self {
         836  +
        self.priority = ::std::option::Option::Some(input);
         837  +
        self
         838  +
    }
         839  +
    /// <p>The updated priority value.</p>
         840  +
    pub fn set_priority(mut self, input: ::std::option::Option<i32>) -> Self {
         841  +
        self.priority = input;
         842  +
        self
         843  +
    }
         844  +
    /// <p>The updated priority value.</p>
         845  +
    pub fn get_priority(&self) -> &::std::option::Option<i32> {
         846  +
        &self.priority
         847  +
    }
         848  +
    /// <p>The updated <code>MaxConcurrency</code> value.</p>
         849  +
    pub fn max_concurrency(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         850  +
        self.max_concurrency = ::std::option::Option::Some(input.into());
         851  +
        self
         852  +
    }
         853  +
    /// <p>The updated <code>MaxConcurrency</code> value.</p>
         854  +
    pub fn set_max_concurrency(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         855  +
        self.max_concurrency = input;
         856  +
        self
         857  +
    }
         858  +
    /// <p>The updated <code>MaxConcurrency</code> value.</p>
         859  +
    pub fn get_max_concurrency(&self) -> &::std::option::Option<::std::string::String> {
         860  +
        &self.max_concurrency
         861  +
    }
         862  +
    /// <p>The updated <code>MaxErrors</code> value.</p>
         863  +
    pub fn max_errors(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         864  +
        self.max_errors = ::std::option::Option::Some(input.into());
         865  +
        self
         866  +
    }
         867  +
    /// <p>The updated <code>MaxErrors</code> value.</p>
         868  +
    pub fn set_max_errors(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         869  +
        self.max_errors = input;
         870  +
        self
         871  +
    }
         872  +
    /// <p>The updated <code>MaxErrors</code> value.</p>
         873  +
    pub fn get_max_errors(&self) -> &::std::option::Option<::std::string::String> {
         874  +
        &self.max_errors
         875  +
    }
         876  +
    /// <p>The updated logging information in Amazon S3.</p><note>
         877  +
    /// <p><code>LoggingInfo</code> has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the <code>OutputS3BucketName</code> and <code>OutputS3KeyPrefix</code> options in the <code>TaskInvocationParameters</code> structure. For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance window task types, see <code>MaintenanceWindowTaskInvocationParameters</code>.</p>
         878  +
    /// </note>
         879  +
    pub fn logging_info(mut self, input: crate::types::LoggingInfo) -> Self {
         880  +
        self.logging_info = ::std::option::Option::Some(input);
         881  +
        self
         882  +
    }
         883  +
    /// <p>The updated logging information in Amazon S3.</p><note>
         884  +
    /// <p><code>LoggingInfo</code> has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the <code>OutputS3BucketName</code> and <code>OutputS3KeyPrefix</code> options in the <code>TaskInvocationParameters</code> structure. For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance window task types, see <code>MaintenanceWindowTaskInvocationParameters</code>.</p>
         885  +
    /// </note>
         886  +
    pub fn set_logging_info(mut self, input: ::std::option::Option<crate::types::LoggingInfo>) -> Self {
         887  +
        self.logging_info = input;
         888  +
        self
         889  +
    }
         890  +
    /// <p>The updated logging information in Amazon S3.</p><note>
         891  +
    /// <p><code>LoggingInfo</code> has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the <code>OutputS3BucketName</code> and <code>OutputS3KeyPrefix</code> options in the <code>TaskInvocationParameters</code> structure. For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance window task types, see <code>MaintenanceWindowTaskInvocationParameters</code>.</p>
         892  +
    /// </note>
         893  +
    pub fn get_logging_info(&self) -> &::std::option::Option<crate::types::LoggingInfo> {
         894  +
        &self.logging_info
         895  +
    }
         896  +
    /// <p>The updated task name.</p>
         897  +
    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         898  +
        self.name = ::std::option::Option::Some(input.into());
         899  +
        self
         900  +
    }
         901  +
    /// <p>The updated task name.</p>
         902  +
    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         903  +
        self.name = input;
         904  +
        self
         905  +
    }
         906  +
    /// <p>The updated task name.</p>
         907  +
    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
         908  +
        &self.name
         909  +
    }
         910  +
    /// <p>The updated task description.</p>
         911  +
    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         912  +
        self.description = ::std::option::Option::Some(input.into());
         913  +
        self
         914  +
    }
         915  +
    /// <p>The updated task description.</p>
         916  +
    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         917  +
        self.description = input;
         918  +
        self
         919  +
    }
         920  +
    /// <p>The updated task description.</p>
         921  +
    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
         922  +
        &self.description
         923  +
    }
         924  +
    /// <p>The specification for whether tasks should continue to run after the cutoff time specified in the maintenance windows is reached.</p>
         925  +
    pub fn cutoff_behavior(mut self, input: crate::types::MaintenanceWindowTaskCutoffBehavior) -> Self {
         926  +
        self.cutoff_behavior = ::std::option::Option::Some(input);
         927  +
        self
         928  +
    }
         929  +
    /// <p>The specification for whether tasks should continue to run after the cutoff time specified in the maintenance windows is reached.</p>
         930  +
    pub fn set_cutoff_behavior(mut self, input: ::std::option::Option<crate::types::MaintenanceWindowTaskCutoffBehavior>) -> Self {
         931  +
        self.cutoff_behavior = input;
         932  +
        self
         933  +
    }
         934  +
    /// <p>The specification for whether tasks should continue to run after the cutoff time specified in the maintenance windows is reached.</p>
         935  +
    pub fn get_cutoff_behavior(&self) -> &::std::option::Option<crate::types::MaintenanceWindowTaskCutoffBehavior> {
         936  +
        &self.cutoff_behavior
         937  +
    }
         938  +
    /// <p>The details for the CloudWatch alarm you applied to your maintenance window task.</p>
         939  +
    pub fn alarm_configuration(mut self, input: crate::types::AlarmConfiguration) -> Self {
         940  +
        self.alarm_configuration = ::std::option::Option::Some(input);
         941  +
        self
         942  +
    }
         943  +
    /// <p>The details for the CloudWatch alarm you applied to your maintenance window task.</p>
         944  +
    pub fn set_alarm_configuration(mut self, input: ::std::option::Option<crate::types::AlarmConfiguration>) -> Self {
         945  +
        self.alarm_configuration = input;
         946  +
        self
         947  +
    }
         948  +
    /// <p>The details for the CloudWatch alarm you applied to your maintenance window task.</p>
         949  +
    pub fn get_alarm_configuration(&self) -> &::std::option::Option<crate::types::AlarmConfiguration> {
         950  +
        &self.alarm_configuration
         951  +
    }
         952  +
    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
         953  +
        self._request_id = Some(request_id.into());
         954  +
        self
         955  +
    }
         956  +
         957  +
    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
         958  +
        self._request_id = request_id;
         959  +
        self
         960  +
    }
         961  +
    /// Consumes the builder and constructs a [`UpdateMaintenanceWindowTaskOutput`](crate::operation::update_maintenance_window_task::UpdateMaintenanceWindowTaskOutput).
         962  +
    pub fn build(self) -> crate::operation::update_maintenance_window_task::UpdateMaintenanceWindowTaskOutput {
         963  +
        crate::operation::update_maintenance_window_task::UpdateMaintenanceWindowTaskOutput {
         964  +
            window_id: self.window_id,
         965  +
            window_task_id: self.window_task_id,
         966  +
            targets: self.targets,
         967  +
            task_arn: self.task_arn,
         968  +
            service_role_arn: self.service_role_arn,
         969  +
            task_parameters: self.task_parameters,
         970  +
            task_invocation_parameters: self.task_invocation_parameters,
         971  +
            priority: self.priority.unwrap_or_default(),
         972  +
            max_concurrency: self.max_concurrency,
         973  +
            max_errors: self.max_errors,
         974  +
            logging_info: self.logging_info,
         975  +
            name: self.name,
         976  +
            description: self.description,
         977  +
            cutoff_behavior: self.cutoff_behavior,
         978  +
            alarm_configuration: self.alarm_configuration,
         979  +
            _request_id: self._request_id,
         980  +
        }
         981  +
    }
         982  +
}
         983  +
impl ::std::fmt::Debug for UpdateMaintenanceWindowTaskOutputBuilder {
         984  +
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         985  +
        let mut formatter = f.debug_struct("UpdateMaintenanceWindowTaskOutputBuilder");
         986  +
        formatter.field("window_id", &self.window_id);
         987  +
        formatter.field("window_task_id", &self.window_task_id);
         988  +
        formatter.field("targets", &self.targets);
         989  +
        formatter.field("task_arn", &self.task_arn);
         990  +
        formatter.field("service_role_arn", &self.service_role_arn);
         991  +
        formatter.field("task_parameters", &"*** Sensitive Data Redacted ***");
         992  +
        formatter.field("task_invocation_parameters", &self.task_invocation_parameters);
         993  +
        formatter.field("priority", &self.priority);
         994  +
        formatter.field("max_concurrency", &self.max_concurrency);
         995  +
        formatter.field("max_errors", &self.max_errors);
         996  +
        formatter.field("logging_info", &self.logging_info);
         997  +
        formatter.field("name", &self.name);
         998  +
        formatter.field("description", &"*** Sensitive Data Redacted ***");
         999  +
        formatter.field("cutoff_behavior", &self.cutoff_behavior);
        1000  +
        formatter.field("alarm_configuration", &self.alarm_configuration);
        1001  +
        formatter.field("_request_id", &self._request_id);
        1002  +
        formatter.finish()
        1003  +
    }
        1004  +
}