github.com/aavshr/aws-sdk-go@v1.41.3/service/ssm/api.go (about)

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package ssm
     4  
     5  import (
     6  	"fmt"
     7  	"time"
     8  
     9  	"github.com/aavshr/aws-sdk-go/aws"
    10  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    11  	"github.com/aavshr/aws-sdk-go/aws/request"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol"
    13  	"github.com/aavshr/aws-sdk-go/private/protocol/jsonrpc"
    14  )
    15  
    16  const opAddTagsToResource = "AddTagsToResource"
    17  
    18  // AddTagsToResourceRequest generates a "aws/request.Request" representing the
    19  // client's request for the AddTagsToResource operation. The "output" return
    20  // value will be populated with the request's response once the request completes
    21  // successfully.
    22  //
    23  // Use "Send" method on the returned Request to send the API call to the service.
    24  // the "output" return value is not valid until after Send returns without error.
    25  //
    26  // See AddTagsToResource for more information on using the AddTagsToResource
    27  // API call, and error handling.
    28  //
    29  // This method is useful when you want to inject custom logic or configuration
    30  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
    31  //
    32  //
    33  //    // Example sending a request using the AddTagsToResourceRequest method.
    34  //    req, resp := client.AddTagsToResourceRequest(params)
    35  //
    36  //    err := req.Send()
    37  //    if err == nil { // resp is now filled
    38  //        fmt.Println(resp)
    39  //    }
    40  //
    41  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/AddTagsToResource
    42  func (c *SSM) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *request.Request, output *AddTagsToResourceOutput) {
    43  	op := &request.Operation{
    44  		Name:       opAddTagsToResource,
    45  		HTTPMethod: "POST",
    46  		HTTPPath:   "/",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &AddTagsToResourceInput{}
    51  	}
    52  
    53  	output = &AddTagsToResourceOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
    56  	return
    57  }
    58  
    59  // AddTagsToResource API operation for Amazon Simple Systems Manager (SSM).
    60  //
    61  // Adds or overwrites one or more tags for the specified resource. Tags are
    62  // metadata that you can assign to your documents, managed instances, maintenance
    63  // windows, Parameter Store parameters, and patch baselines. Tags enable you
    64  // to categorize your resources in different ways, for example, by purpose,
    65  // owner, or environment. Each tag consists of a key and an optional value,
    66  // both of which you define. For example, you could define a set of tags for
    67  // your account's managed instances that helps you track each instance's owner
    68  // and stack level. For example:
    69  //
    70  //    * Key=Owner,Value=DbAdmin
    71  //
    72  //    * Key=Owner,Value=SysAdmin
    73  //
    74  //    * Key=Owner,Value=Dev
    75  //
    76  //    * Key=Stack,Value=Production
    77  //
    78  //    * Key=Stack,Value=Pre-Production
    79  //
    80  //    * Key=Stack,Value=Test
    81  //
    82  // Each resource can have a maximum of 50 tags.
    83  //
    84  // We recommend that you devise a set of tag keys that meets your needs for
    85  // each resource type. Using a consistent set of tag keys makes it easier for
    86  // you to manage your resources. You can search and filter the resources based
    87  // on the tags you add. Tags don't have any semantic meaning to and are interpreted
    88  // strictly as a string of characters.
    89  //
    90  // For more information about using tags with Amazon Elastic Compute Cloud (Amazon
    91  // EC2) instances, see Tagging your Amazon EC2 resources (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html)
    92  // in the Amazon EC2 User Guide.
    93  //
    94  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    95  // with awserr.Error's Code and Message methods to get detailed information about
    96  // the error.
    97  //
    98  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
    99  // API operation AddTagsToResource for usage and error information.
   100  //
   101  // Returned Error Types:
   102  //   * InvalidResourceType
   103  //   The resource type isn't valid. For example, if you are attempting to tag
   104  //   an instance, the instance must be a registered, managed instance.
   105  //
   106  //   * InvalidResourceId
   107  //   The resource ID isn't valid. Verify that you entered the correct ID and try
   108  //   again.
   109  //
   110  //   * InternalServerError
   111  //   An error occurred on the server side.
   112  //
   113  //   * TooManyTagsError
   114  //   The Targets parameter includes too many tags. Remove one or more tags and
   115  //   try the command again.
   116  //
   117  //   * TooManyUpdates
   118  //   There are concurrent updates for a resource that supports one update at a
   119  //   time.
   120  //
   121  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/AddTagsToResource
   122  func (c *SSM) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) {
   123  	req, out := c.AddTagsToResourceRequest(input)
   124  	return out, req.Send()
   125  }
   126  
   127  // AddTagsToResourceWithContext is the same as AddTagsToResource with the addition of
   128  // the ability to pass a context and additional request options.
   129  //
   130  // See AddTagsToResource for details on how to use this API operation.
   131  //
   132  // The context must be non-nil and will be used for request cancellation. If
   133  // the context is nil a panic will occur. In the future the SDK may create
   134  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   135  // for more information on using Contexts.
   136  func (c *SSM) AddTagsToResourceWithContext(ctx aws.Context, input *AddTagsToResourceInput, opts ...request.Option) (*AddTagsToResourceOutput, error) {
   137  	req, out := c.AddTagsToResourceRequest(input)
   138  	req.SetContext(ctx)
   139  	req.ApplyOptions(opts...)
   140  	return out, req.Send()
   141  }
   142  
   143  const opAssociateOpsItemRelatedItem = "AssociateOpsItemRelatedItem"
   144  
   145  // AssociateOpsItemRelatedItemRequest generates a "aws/request.Request" representing the
   146  // client's request for the AssociateOpsItemRelatedItem operation. The "output" return
   147  // value will be populated with the request's response once the request completes
   148  // successfully.
   149  //
   150  // Use "Send" method on the returned Request to send the API call to the service.
   151  // the "output" return value is not valid until after Send returns without error.
   152  //
   153  // See AssociateOpsItemRelatedItem for more information on using the AssociateOpsItemRelatedItem
   154  // API call, and error handling.
   155  //
   156  // This method is useful when you want to inject custom logic or configuration
   157  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   158  //
   159  //
   160  //    // Example sending a request using the AssociateOpsItemRelatedItemRequest method.
   161  //    req, resp := client.AssociateOpsItemRelatedItemRequest(params)
   162  //
   163  //    err := req.Send()
   164  //    if err == nil { // resp is now filled
   165  //        fmt.Println(resp)
   166  //    }
   167  //
   168  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/AssociateOpsItemRelatedItem
   169  func (c *SSM) AssociateOpsItemRelatedItemRequest(input *AssociateOpsItemRelatedItemInput) (req *request.Request, output *AssociateOpsItemRelatedItemOutput) {
   170  	op := &request.Operation{
   171  		Name:       opAssociateOpsItemRelatedItem,
   172  		HTTPMethod: "POST",
   173  		HTTPPath:   "/",
   174  	}
   175  
   176  	if input == nil {
   177  		input = &AssociateOpsItemRelatedItemInput{}
   178  	}
   179  
   180  	output = &AssociateOpsItemRelatedItemOutput{}
   181  	req = c.newRequest(op, input, output)
   182  	return
   183  }
   184  
   185  // AssociateOpsItemRelatedItem API operation for Amazon Simple Systems Manager (SSM).
   186  //
   187  // Associates a related item to a Systems Manager OpsCenter OpsItem. For example,
   188  // you can associate an Incident Manager incident or analysis with an OpsItem.
   189  // Incident Manager and OpsCenter are capabilities of Amazon Web Services Systems
   190  // Manager.
   191  //
   192  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   193  // with awserr.Error's Code and Message methods to get detailed information about
   194  // the error.
   195  //
   196  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
   197  // API operation AssociateOpsItemRelatedItem for usage and error information.
   198  //
   199  // Returned Error Types:
   200  //   * InternalServerError
   201  //   An error occurred on the server side.
   202  //
   203  //   * OpsItemNotFoundException
   204  //   The specified OpsItem ID doesn't exist. Verify the ID and try again.
   205  //
   206  //   * OpsItemLimitExceededException
   207  //   The request caused OpsItems to exceed one or more quotas. For information
   208  //   about OpsItem quotas, see What are the resource limits for OpsCenter? (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-learn-more.html#OpsCenter-learn-more-limits).
   209  //
   210  //   * OpsItemInvalidParameterException
   211  //   A specified parameter argument isn't valid. Verify the available arguments
   212  //   and try again.
   213  //
   214  //   * OpsItemRelatedItemAlreadyExistsException
   215  //   The Amazon Resource Name (ARN) is already associated with the OpsItem.
   216  //
   217  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/AssociateOpsItemRelatedItem
   218  func (c *SSM) AssociateOpsItemRelatedItem(input *AssociateOpsItemRelatedItemInput) (*AssociateOpsItemRelatedItemOutput, error) {
   219  	req, out := c.AssociateOpsItemRelatedItemRequest(input)
   220  	return out, req.Send()
   221  }
   222  
   223  // AssociateOpsItemRelatedItemWithContext is the same as AssociateOpsItemRelatedItem with the addition of
   224  // the ability to pass a context and additional request options.
   225  //
   226  // See AssociateOpsItemRelatedItem for details on how to use this API operation.
   227  //
   228  // The context must be non-nil and will be used for request cancellation. If
   229  // the context is nil a panic will occur. In the future the SDK may create
   230  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   231  // for more information on using Contexts.
   232  func (c *SSM) AssociateOpsItemRelatedItemWithContext(ctx aws.Context, input *AssociateOpsItemRelatedItemInput, opts ...request.Option) (*AssociateOpsItemRelatedItemOutput, error) {
   233  	req, out := c.AssociateOpsItemRelatedItemRequest(input)
   234  	req.SetContext(ctx)
   235  	req.ApplyOptions(opts...)
   236  	return out, req.Send()
   237  }
   238  
   239  const opCancelCommand = "CancelCommand"
   240  
   241  // CancelCommandRequest generates a "aws/request.Request" representing the
   242  // client's request for the CancelCommand operation. The "output" return
   243  // value will be populated with the request's response once the request completes
   244  // successfully.
   245  //
   246  // Use "Send" method on the returned Request to send the API call to the service.
   247  // the "output" return value is not valid until after Send returns without error.
   248  //
   249  // See CancelCommand for more information on using the CancelCommand
   250  // API call, and error handling.
   251  //
   252  // This method is useful when you want to inject custom logic or configuration
   253  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   254  //
   255  //
   256  //    // Example sending a request using the CancelCommandRequest method.
   257  //    req, resp := client.CancelCommandRequest(params)
   258  //
   259  //    err := req.Send()
   260  //    if err == nil { // resp is now filled
   261  //        fmt.Println(resp)
   262  //    }
   263  //
   264  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CancelCommand
   265  func (c *SSM) CancelCommandRequest(input *CancelCommandInput) (req *request.Request, output *CancelCommandOutput) {
   266  	op := &request.Operation{
   267  		Name:       opCancelCommand,
   268  		HTTPMethod: "POST",
   269  		HTTPPath:   "/",
   270  	}
   271  
   272  	if input == nil {
   273  		input = &CancelCommandInput{}
   274  	}
   275  
   276  	output = &CancelCommandOutput{}
   277  	req = c.newRequest(op, input, output)
   278  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   279  	return
   280  }
   281  
   282  // CancelCommand API operation for Amazon Simple Systems Manager (SSM).
   283  //
   284  // Attempts to cancel the command specified by the Command ID. There is no guarantee
   285  // that the command will be terminated and the underlying process stopped.
   286  //
   287  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   288  // with awserr.Error's Code and Message methods to get detailed information about
   289  // the error.
   290  //
   291  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
   292  // API operation CancelCommand for usage and error information.
   293  //
   294  // Returned Error Types:
   295  //   * InternalServerError
   296  //   An error occurred on the server side.
   297  //
   298  //   * InvalidCommandId
   299  //   The specified command ID isn't valid. Verify the ID and try again.
   300  //
   301  //   * InvalidInstanceId
   302  //   The following problems can cause this exception:
   303  //
   304  //      * You don't have permission to access the instance.
   305  //
   306  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
   307  //      Verify that SSM Agent is running.
   308  //
   309  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
   310  //      Agent.
   311  //
   312  //      * The instance isn't in valid state. Valid states are: Running, Pending,
   313  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
   314  //
   315  //   * DuplicateInstanceId
   316  //   You can't specify an instance ID in more than one association.
   317  //
   318  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CancelCommand
   319  func (c *SSM) CancelCommand(input *CancelCommandInput) (*CancelCommandOutput, error) {
   320  	req, out := c.CancelCommandRequest(input)
   321  	return out, req.Send()
   322  }
   323  
   324  // CancelCommandWithContext is the same as CancelCommand with the addition of
   325  // the ability to pass a context and additional request options.
   326  //
   327  // See CancelCommand for details on how to use this API operation.
   328  //
   329  // The context must be non-nil and will be used for request cancellation. If
   330  // the context is nil a panic will occur. In the future the SDK may create
   331  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   332  // for more information on using Contexts.
   333  func (c *SSM) CancelCommandWithContext(ctx aws.Context, input *CancelCommandInput, opts ...request.Option) (*CancelCommandOutput, error) {
   334  	req, out := c.CancelCommandRequest(input)
   335  	req.SetContext(ctx)
   336  	req.ApplyOptions(opts...)
   337  	return out, req.Send()
   338  }
   339  
   340  const opCancelMaintenanceWindowExecution = "CancelMaintenanceWindowExecution"
   341  
   342  // CancelMaintenanceWindowExecutionRequest generates a "aws/request.Request" representing the
   343  // client's request for the CancelMaintenanceWindowExecution operation. The "output" return
   344  // value will be populated with the request's response once the request completes
   345  // successfully.
   346  //
   347  // Use "Send" method on the returned Request to send the API call to the service.
   348  // the "output" return value is not valid until after Send returns without error.
   349  //
   350  // See CancelMaintenanceWindowExecution for more information on using the CancelMaintenanceWindowExecution
   351  // API call, and error handling.
   352  //
   353  // This method is useful when you want to inject custom logic or configuration
   354  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   355  //
   356  //
   357  //    // Example sending a request using the CancelMaintenanceWindowExecutionRequest method.
   358  //    req, resp := client.CancelMaintenanceWindowExecutionRequest(params)
   359  //
   360  //    err := req.Send()
   361  //    if err == nil { // resp is now filled
   362  //        fmt.Println(resp)
   363  //    }
   364  //
   365  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CancelMaintenanceWindowExecution
   366  func (c *SSM) CancelMaintenanceWindowExecutionRequest(input *CancelMaintenanceWindowExecutionInput) (req *request.Request, output *CancelMaintenanceWindowExecutionOutput) {
   367  	op := &request.Operation{
   368  		Name:       opCancelMaintenanceWindowExecution,
   369  		HTTPMethod: "POST",
   370  		HTTPPath:   "/",
   371  	}
   372  
   373  	if input == nil {
   374  		input = &CancelMaintenanceWindowExecutionInput{}
   375  	}
   376  
   377  	output = &CancelMaintenanceWindowExecutionOutput{}
   378  	req = c.newRequest(op, input, output)
   379  	return
   380  }
   381  
   382  // CancelMaintenanceWindowExecution API operation for Amazon Simple Systems Manager (SSM).
   383  //
   384  // Stops a maintenance window execution that is already in progress and cancels
   385  // any tasks in the window that haven't already starting running. Tasks already
   386  // in progress will continue to completion.
   387  //
   388  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   389  // with awserr.Error's Code and Message methods to get detailed information about
   390  // the error.
   391  //
   392  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
   393  // API operation CancelMaintenanceWindowExecution for usage and error information.
   394  //
   395  // Returned Error Types:
   396  //   * InternalServerError
   397  //   An error occurred on the server side.
   398  //
   399  //   * DoesNotExistException
   400  //   Error returned when the ID specified for a resource, such as a maintenance
   401  //   window or patch baseline, doesn't exist.
   402  //
   403  //   For information about resource quotas in Amazon Web Services Systems Manager,
   404  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
   405  //   in the Amazon Web Services General Reference.
   406  //
   407  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CancelMaintenanceWindowExecution
   408  func (c *SSM) CancelMaintenanceWindowExecution(input *CancelMaintenanceWindowExecutionInput) (*CancelMaintenanceWindowExecutionOutput, error) {
   409  	req, out := c.CancelMaintenanceWindowExecutionRequest(input)
   410  	return out, req.Send()
   411  }
   412  
   413  // CancelMaintenanceWindowExecutionWithContext is the same as CancelMaintenanceWindowExecution with the addition of
   414  // the ability to pass a context and additional request options.
   415  //
   416  // See CancelMaintenanceWindowExecution for details on how to use this API operation.
   417  //
   418  // The context must be non-nil and will be used for request cancellation. If
   419  // the context is nil a panic will occur. In the future the SDK may create
   420  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   421  // for more information on using Contexts.
   422  func (c *SSM) CancelMaintenanceWindowExecutionWithContext(ctx aws.Context, input *CancelMaintenanceWindowExecutionInput, opts ...request.Option) (*CancelMaintenanceWindowExecutionOutput, error) {
   423  	req, out := c.CancelMaintenanceWindowExecutionRequest(input)
   424  	req.SetContext(ctx)
   425  	req.ApplyOptions(opts...)
   426  	return out, req.Send()
   427  }
   428  
   429  const opCreateActivation = "CreateActivation"
   430  
   431  // CreateActivationRequest generates a "aws/request.Request" representing the
   432  // client's request for the CreateActivation operation. The "output" return
   433  // value will be populated with the request's response once the request completes
   434  // successfully.
   435  //
   436  // Use "Send" method on the returned Request to send the API call to the service.
   437  // the "output" return value is not valid until after Send returns without error.
   438  //
   439  // See CreateActivation for more information on using the CreateActivation
   440  // API call, and error handling.
   441  //
   442  // This method is useful when you want to inject custom logic or configuration
   443  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   444  //
   445  //
   446  //    // Example sending a request using the CreateActivationRequest method.
   447  //    req, resp := client.CreateActivationRequest(params)
   448  //
   449  //    err := req.Send()
   450  //    if err == nil { // resp is now filled
   451  //        fmt.Println(resp)
   452  //    }
   453  //
   454  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateActivation
   455  func (c *SSM) CreateActivationRequest(input *CreateActivationInput) (req *request.Request, output *CreateActivationOutput) {
   456  	op := &request.Operation{
   457  		Name:       opCreateActivation,
   458  		HTTPMethod: "POST",
   459  		HTTPPath:   "/",
   460  	}
   461  
   462  	if input == nil {
   463  		input = &CreateActivationInput{}
   464  	}
   465  
   466  	output = &CreateActivationOutput{}
   467  	req = c.newRequest(op, input, output)
   468  	return
   469  }
   470  
   471  // CreateActivation API operation for Amazon Simple Systems Manager (SSM).
   472  //
   473  // Generates an activation code and activation ID you can use to register your
   474  // on-premises server or virtual machine (VM) with Amazon Web Services Systems
   475  // Manager. Registering these machines with Systems Manager makes it possible
   476  // to manage them using Systems Manager capabilities. You use the activation
   477  // code and ID when installing SSM Agent on machines in your hybrid environment.
   478  // For more information about requirements for managing on-premises instances
   479  // and VMs using Systems Manager, see Setting up Amazon Web Services Systems
   480  // Manager for hybrid environments (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances.html)
   481  // in the Amazon Web Services Systems Manager User Guide.
   482  //
   483  // On-premises servers or VMs that are registered with Systems Manager and Amazon
   484  // Elastic Compute Cloud (Amazon EC2) instances that you manage with Systems
   485  // Manager are all called managed instances.
   486  //
   487  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   488  // with awserr.Error's Code and Message methods to get detailed information about
   489  // the error.
   490  //
   491  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
   492  // API operation CreateActivation for usage and error information.
   493  //
   494  // Returned Error Types:
   495  //   * InternalServerError
   496  //   An error occurred on the server side.
   497  //
   498  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateActivation
   499  func (c *SSM) CreateActivation(input *CreateActivationInput) (*CreateActivationOutput, error) {
   500  	req, out := c.CreateActivationRequest(input)
   501  	return out, req.Send()
   502  }
   503  
   504  // CreateActivationWithContext is the same as CreateActivation with the addition of
   505  // the ability to pass a context and additional request options.
   506  //
   507  // See CreateActivation for details on how to use this API operation.
   508  //
   509  // The context must be non-nil and will be used for request cancellation. If
   510  // the context is nil a panic will occur. In the future the SDK may create
   511  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   512  // for more information on using Contexts.
   513  func (c *SSM) CreateActivationWithContext(ctx aws.Context, input *CreateActivationInput, opts ...request.Option) (*CreateActivationOutput, error) {
   514  	req, out := c.CreateActivationRequest(input)
   515  	req.SetContext(ctx)
   516  	req.ApplyOptions(opts...)
   517  	return out, req.Send()
   518  }
   519  
   520  const opCreateAssociation = "CreateAssociation"
   521  
   522  // CreateAssociationRequest generates a "aws/request.Request" representing the
   523  // client's request for the CreateAssociation operation. The "output" return
   524  // value will be populated with the request's response once the request completes
   525  // successfully.
   526  //
   527  // Use "Send" method on the returned Request to send the API call to the service.
   528  // the "output" return value is not valid until after Send returns without error.
   529  //
   530  // See CreateAssociation for more information on using the CreateAssociation
   531  // API call, and error handling.
   532  //
   533  // This method is useful when you want to inject custom logic or configuration
   534  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   535  //
   536  //
   537  //    // Example sending a request using the CreateAssociationRequest method.
   538  //    req, resp := client.CreateAssociationRequest(params)
   539  //
   540  //    err := req.Send()
   541  //    if err == nil { // resp is now filled
   542  //        fmt.Println(resp)
   543  //    }
   544  //
   545  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateAssociation
   546  func (c *SSM) CreateAssociationRequest(input *CreateAssociationInput) (req *request.Request, output *CreateAssociationOutput) {
   547  	op := &request.Operation{
   548  		Name:       opCreateAssociation,
   549  		HTTPMethod: "POST",
   550  		HTTPPath:   "/",
   551  	}
   552  
   553  	if input == nil {
   554  		input = &CreateAssociationInput{}
   555  	}
   556  
   557  	output = &CreateAssociationOutput{}
   558  	req = c.newRequest(op, input, output)
   559  	return
   560  }
   561  
   562  // CreateAssociation API operation for Amazon Simple Systems Manager (SSM).
   563  //
   564  // A State Manager association defines the state that you want to maintain on
   565  // your instances. For example, an association can specify that anti-virus software
   566  // must be installed and running on your instances, or that certain ports must
   567  // be closed. For static targets, the association specifies a schedule for when
   568  // the configuration is reapplied. For dynamic targets, such as an Amazon Web
   569  // Services resource group or an Amazon Web Services autoscaling group, State
   570  // Manager, a capability of Amazon Web Services Systems Manager applies the
   571  // configuration when new instances are added to the group. The association
   572  // also specifies actions to take when applying the configuration. For example,
   573  // an association for anti-virus software might run once a day. If the software
   574  // isn't installed, then State Manager installs it. If the software is installed,
   575  // but the service isn't running, then the association might instruct State
   576  // Manager to start the service.
   577  //
   578  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   579  // with awserr.Error's Code and Message methods to get detailed information about
   580  // the error.
   581  //
   582  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
   583  // API operation CreateAssociation for usage and error information.
   584  //
   585  // Returned Error Types:
   586  //   * AssociationAlreadyExists
   587  //   The specified association already exists.
   588  //
   589  //   * AssociationLimitExceeded
   590  //   You can have at most 2,000 active associations.
   591  //
   592  //   * InternalServerError
   593  //   An error occurred on the server side.
   594  //
   595  //   * InvalidDocument
   596  //   The specified SSM document doesn't exist.
   597  //
   598  //   * InvalidDocumentVersion
   599  //   The document version isn't valid or doesn't exist.
   600  //
   601  //   * InvalidInstanceId
   602  //   The following problems can cause this exception:
   603  //
   604  //      * You don't have permission to access the instance.
   605  //
   606  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
   607  //      Verify that SSM Agent is running.
   608  //
   609  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
   610  //      Agent.
   611  //
   612  //      * The instance isn't in valid state. Valid states are: Running, Pending,
   613  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
   614  //
   615  //   * UnsupportedPlatformType
   616  //   The document doesn't support the platform type of the given instance ID(s).
   617  //   For example, you sent an document for a Windows instance to a Linux instance.
   618  //
   619  //   * InvalidOutputLocation
   620  //   The output location isn't valid or doesn't exist.
   621  //
   622  //   * InvalidParameters
   623  //   You must specify values for all required parameters in the Amazon Web Services
   624  //   Systems Manager document (SSM document). You can only supply values to parameters
   625  //   defined in the SSM document.
   626  //
   627  //   * InvalidTarget
   628  //   The target isn't valid or doesn't exist. It might not be configured for Systems
   629  //   Manager or you might not have permission to perform the operation.
   630  //
   631  //   * InvalidSchedule
   632  //   The schedule is invalid. Verify your cron or rate expression and try again.
   633  //
   634  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateAssociation
   635  func (c *SSM) CreateAssociation(input *CreateAssociationInput) (*CreateAssociationOutput, error) {
   636  	req, out := c.CreateAssociationRequest(input)
   637  	return out, req.Send()
   638  }
   639  
   640  // CreateAssociationWithContext is the same as CreateAssociation with the addition of
   641  // the ability to pass a context and additional request options.
   642  //
   643  // See CreateAssociation for details on how to use this API operation.
   644  //
   645  // The context must be non-nil and will be used for request cancellation. If
   646  // the context is nil a panic will occur. In the future the SDK may create
   647  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   648  // for more information on using Contexts.
   649  func (c *SSM) CreateAssociationWithContext(ctx aws.Context, input *CreateAssociationInput, opts ...request.Option) (*CreateAssociationOutput, error) {
   650  	req, out := c.CreateAssociationRequest(input)
   651  	req.SetContext(ctx)
   652  	req.ApplyOptions(opts...)
   653  	return out, req.Send()
   654  }
   655  
   656  const opCreateAssociationBatch = "CreateAssociationBatch"
   657  
   658  // CreateAssociationBatchRequest generates a "aws/request.Request" representing the
   659  // client's request for the CreateAssociationBatch operation. The "output" return
   660  // value will be populated with the request's response once the request completes
   661  // successfully.
   662  //
   663  // Use "Send" method on the returned Request to send the API call to the service.
   664  // the "output" return value is not valid until after Send returns without error.
   665  //
   666  // See CreateAssociationBatch for more information on using the CreateAssociationBatch
   667  // API call, and error handling.
   668  //
   669  // This method is useful when you want to inject custom logic or configuration
   670  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   671  //
   672  //
   673  //    // Example sending a request using the CreateAssociationBatchRequest method.
   674  //    req, resp := client.CreateAssociationBatchRequest(params)
   675  //
   676  //    err := req.Send()
   677  //    if err == nil { // resp is now filled
   678  //        fmt.Println(resp)
   679  //    }
   680  //
   681  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateAssociationBatch
   682  func (c *SSM) CreateAssociationBatchRequest(input *CreateAssociationBatchInput) (req *request.Request, output *CreateAssociationBatchOutput) {
   683  	op := &request.Operation{
   684  		Name:       opCreateAssociationBatch,
   685  		HTTPMethod: "POST",
   686  		HTTPPath:   "/",
   687  	}
   688  
   689  	if input == nil {
   690  		input = &CreateAssociationBatchInput{}
   691  	}
   692  
   693  	output = &CreateAssociationBatchOutput{}
   694  	req = c.newRequest(op, input, output)
   695  	return
   696  }
   697  
   698  // CreateAssociationBatch API operation for Amazon Simple Systems Manager (SSM).
   699  //
   700  // Associates the specified Amazon Web Services Systems Manager document (SSM
   701  // document) with the specified instances or targets.
   702  //
   703  // When you associate a document with one or more instances using instance IDs
   704  // or tags, Amazon Web Services Systems Manager Agent (SSM Agent) running on
   705  // the instance processes the document and configures the instance as specified.
   706  //
   707  // If you associate a document with an instance that already has an associated
   708  // document, the system returns the AssociationAlreadyExists exception.
   709  //
   710  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   711  // with awserr.Error's Code and Message methods to get detailed information about
   712  // the error.
   713  //
   714  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
   715  // API operation CreateAssociationBatch for usage and error information.
   716  //
   717  // Returned Error Types:
   718  //   * InternalServerError
   719  //   An error occurred on the server side.
   720  //
   721  //   * InvalidDocument
   722  //   The specified SSM document doesn't exist.
   723  //
   724  //   * InvalidDocumentVersion
   725  //   The document version isn't valid or doesn't exist.
   726  //
   727  //   * InvalidInstanceId
   728  //   The following problems can cause this exception:
   729  //
   730  //      * You don't have permission to access the instance.
   731  //
   732  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
   733  //      Verify that SSM Agent is running.
   734  //
   735  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
   736  //      Agent.
   737  //
   738  //      * The instance isn't in valid state. Valid states are: Running, Pending,
   739  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
   740  //
   741  //   * InvalidParameters
   742  //   You must specify values for all required parameters in the Amazon Web Services
   743  //   Systems Manager document (SSM document). You can only supply values to parameters
   744  //   defined in the SSM document.
   745  //
   746  //   * DuplicateInstanceId
   747  //   You can't specify an instance ID in more than one association.
   748  //
   749  //   * AssociationLimitExceeded
   750  //   You can have at most 2,000 active associations.
   751  //
   752  //   * UnsupportedPlatformType
   753  //   The document doesn't support the platform type of the given instance ID(s).
   754  //   For example, you sent an document for a Windows instance to a Linux instance.
   755  //
   756  //   * InvalidOutputLocation
   757  //   The output location isn't valid or doesn't exist.
   758  //
   759  //   * InvalidTarget
   760  //   The target isn't valid or doesn't exist. It might not be configured for Systems
   761  //   Manager or you might not have permission to perform the operation.
   762  //
   763  //   * InvalidSchedule
   764  //   The schedule is invalid. Verify your cron or rate expression and try again.
   765  //
   766  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateAssociationBatch
   767  func (c *SSM) CreateAssociationBatch(input *CreateAssociationBatchInput) (*CreateAssociationBatchOutput, error) {
   768  	req, out := c.CreateAssociationBatchRequest(input)
   769  	return out, req.Send()
   770  }
   771  
   772  // CreateAssociationBatchWithContext is the same as CreateAssociationBatch with the addition of
   773  // the ability to pass a context and additional request options.
   774  //
   775  // See CreateAssociationBatch for details on how to use this API operation.
   776  //
   777  // The context must be non-nil and will be used for request cancellation. If
   778  // the context is nil a panic will occur. In the future the SDK may create
   779  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   780  // for more information on using Contexts.
   781  func (c *SSM) CreateAssociationBatchWithContext(ctx aws.Context, input *CreateAssociationBatchInput, opts ...request.Option) (*CreateAssociationBatchOutput, error) {
   782  	req, out := c.CreateAssociationBatchRequest(input)
   783  	req.SetContext(ctx)
   784  	req.ApplyOptions(opts...)
   785  	return out, req.Send()
   786  }
   787  
   788  const opCreateDocument = "CreateDocument"
   789  
   790  // CreateDocumentRequest generates a "aws/request.Request" representing the
   791  // client's request for the CreateDocument operation. The "output" return
   792  // value will be populated with the request's response once the request completes
   793  // successfully.
   794  //
   795  // Use "Send" method on the returned Request to send the API call to the service.
   796  // the "output" return value is not valid until after Send returns without error.
   797  //
   798  // See CreateDocument for more information on using the CreateDocument
   799  // API call, and error handling.
   800  //
   801  // This method is useful when you want to inject custom logic or configuration
   802  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   803  //
   804  //
   805  //    // Example sending a request using the CreateDocumentRequest method.
   806  //    req, resp := client.CreateDocumentRequest(params)
   807  //
   808  //    err := req.Send()
   809  //    if err == nil { // resp is now filled
   810  //        fmt.Println(resp)
   811  //    }
   812  //
   813  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateDocument
   814  func (c *SSM) CreateDocumentRequest(input *CreateDocumentInput) (req *request.Request, output *CreateDocumentOutput) {
   815  	op := &request.Operation{
   816  		Name:       opCreateDocument,
   817  		HTTPMethod: "POST",
   818  		HTTPPath:   "/",
   819  	}
   820  
   821  	if input == nil {
   822  		input = &CreateDocumentInput{}
   823  	}
   824  
   825  	output = &CreateDocumentOutput{}
   826  	req = c.newRequest(op, input, output)
   827  	return
   828  }
   829  
   830  // CreateDocument API operation for Amazon Simple Systems Manager (SSM).
   831  //
   832  // Creates a Amazon Web Services Systems Manager (SSM document). An SSM document
   833  // defines the actions that Systems Manager performs on your managed instances.
   834  // For more information about SSM documents, including information about supported
   835  // schemas, features, and syntax, see Amazon Web Services Systems Manager Documents
   836  // (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ssm-docs.html)
   837  // in the Amazon Web Services Systems Manager User Guide.
   838  //
   839  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   840  // with awserr.Error's Code and Message methods to get detailed information about
   841  // the error.
   842  //
   843  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
   844  // API operation CreateDocument for usage and error information.
   845  //
   846  // Returned Error Types:
   847  //   * DocumentAlreadyExists
   848  //   The specified document already exists.
   849  //
   850  //   * MaxDocumentSizeExceeded
   851  //   The size limit of a document is 64 KB.
   852  //
   853  //   * InternalServerError
   854  //   An error occurred on the server side.
   855  //
   856  //   * InvalidDocumentContent
   857  //   The content for the document isn't valid.
   858  //
   859  //   * DocumentLimitExceeded
   860  //   You can have at most 500 active SSM documents.
   861  //
   862  //   * InvalidDocumentSchemaVersion
   863  //   The version of the document schema isn't supported.
   864  //
   865  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateDocument
   866  func (c *SSM) CreateDocument(input *CreateDocumentInput) (*CreateDocumentOutput, error) {
   867  	req, out := c.CreateDocumentRequest(input)
   868  	return out, req.Send()
   869  }
   870  
   871  // CreateDocumentWithContext is the same as CreateDocument with the addition of
   872  // the ability to pass a context and additional request options.
   873  //
   874  // See CreateDocument for details on how to use this API operation.
   875  //
   876  // The context must be non-nil and will be used for request cancellation. If
   877  // the context is nil a panic will occur. In the future the SDK may create
   878  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   879  // for more information on using Contexts.
   880  func (c *SSM) CreateDocumentWithContext(ctx aws.Context, input *CreateDocumentInput, opts ...request.Option) (*CreateDocumentOutput, error) {
   881  	req, out := c.CreateDocumentRequest(input)
   882  	req.SetContext(ctx)
   883  	req.ApplyOptions(opts...)
   884  	return out, req.Send()
   885  }
   886  
   887  const opCreateMaintenanceWindow = "CreateMaintenanceWindow"
   888  
   889  // CreateMaintenanceWindowRequest generates a "aws/request.Request" representing the
   890  // client's request for the CreateMaintenanceWindow operation. The "output" return
   891  // value will be populated with the request's response once the request completes
   892  // successfully.
   893  //
   894  // Use "Send" method on the returned Request to send the API call to the service.
   895  // the "output" return value is not valid until after Send returns without error.
   896  //
   897  // See CreateMaintenanceWindow for more information on using the CreateMaintenanceWindow
   898  // API call, and error handling.
   899  //
   900  // This method is useful when you want to inject custom logic or configuration
   901  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   902  //
   903  //
   904  //    // Example sending a request using the CreateMaintenanceWindowRequest method.
   905  //    req, resp := client.CreateMaintenanceWindowRequest(params)
   906  //
   907  //    err := req.Send()
   908  //    if err == nil { // resp is now filled
   909  //        fmt.Println(resp)
   910  //    }
   911  //
   912  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateMaintenanceWindow
   913  func (c *SSM) CreateMaintenanceWindowRequest(input *CreateMaintenanceWindowInput) (req *request.Request, output *CreateMaintenanceWindowOutput) {
   914  	op := &request.Operation{
   915  		Name:       opCreateMaintenanceWindow,
   916  		HTTPMethod: "POST",
   917  		HTTPPath:   "/",
   918  	}
   919  
   920  	if input == nil {
   921  		input = &CreateMaintenanceWindowInput{}
   922  	}
   923  
   924  	output = &CreateMaintenanceWindowOutput{}
   925  	req = c.newRequest(op, input, output)
   926  	return
   927  }
   928  
   929  // CreateMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
   930  //
   931  // Creates a new maintenance window.
   932  //
   933  // The value you specify for Duration determines the specific end time for the
   934  // maintenance window based on the time it begins. No maintenance window tasks
   935  // are permitted to start after the resulting endtime minus the number of hours
   936  // you specify for Cutoff. For example, if the maintenance window starts at
   937  // 3 PM, the duration is three hours, and the value you specify for Cutoff is
   938  // one hour, no maintenance window tasks can start after 5 PM.
   939  //
   940  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   941  // with awserr.Error's Code and Message methods to get detailed information about
   942  // the error.
   943  //
   944  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
   945  // API operation CreateMaintenanceWindow for usage and error information.
   946  //
   947  // Returned Error Types:
   948  //   * IdempotentParameterMismatch
   949  //   Error returned when an idempotent operation is retried and the parameters
   950  //   don't match the original call to the API with the same idempotency token.
   951  //
   952  //   * ResourceLimitExceededException
   953  //   Error returned when the caller has exceeded the default resource quotas.
   954  //   For example, too many maintenance windows or patch baselines have been created.
   955  //
   956  //   For information about resource quotas in Systems Manager, see Systems Manager
   957  //   service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
   958  //   in the Amazon Web Services General Reference.
   959  //
   960  //   * InternalServerError
   961  //   An error occurred on the server side.
   962  //
   963  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateMaintenanceWindow
   964  func (c *SSM) CreateMaintenanceWindow(input *CreateMaintenanceWindowInput) (*CreateMaintenanceWindowOutput, error) {
   965  	req, out := c.CreateMaintenanceWindowRequest(input)
   966  	return out, req.Send()
   967  }
   968  
   969  // CreateMaintenanceWindowWithContext is the same as CreateMaintenanceWindow with the addition of
   970  // the ability to pass a context and additional request options.
   971  //
   972  // See CreateMaintenanceWindow for details on how to use this API operation.
   973  //
   974  // The context must be non-nil and will be used for request cancellation. If
   975  // the context is nil a panic will occur. In the future the SDK may create
   976  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   977  // for more information on using Contexts.
   978  func (c *SSM) CreateMaintenanceWindowWithContext(ctx aws.Context, input *CreateMaintenanceWindowInput, opts ...request.Option) (*CreateMaintenanceWindowOutput, error) {
   979  	req, out := c.CreateMaintenanceWindowRequest(input)
   980  	req.SetContext(ctx)
   981  	req.ApplyOptions(opts...)
   982  	return out, req.Send()
   983  }
   984  
   985  const opCreateOpsItem = "CreateOpsItem"
   986  
   987  // CreateOpsItemRequest generates a "aws/request.Request" representing the
   988  // client's request for the CreateOpsItem operation. The "output" return
   989  // value will be populated with the request's response once the request completes
   990  // successfully.
   991  //
   992  // Use "Send" method on the returned Request to send the API call to the service.
   993  // the "output" return value is not valid until after Send returns without error.
   994  //
   995  // See CreateOpsItem for more information on using the CreateOpsItem
   996  // API call, and error handling.
   997  //
   998  // This method is useful when you want to inject custom logic or configuration
   999  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1000  //
  1001  //
  1002  //    // Example sending a request using the CreateOpsItemRequest method.
  1003  //    req, resp := client.CreateOpsItemRequest(params)
  1004  //
  1005  //    err := req.Send()
  1006  //    if err == nil { // resp is now filled
  1007  //        fmt.Println(resp)
  1008  //    }
  1009  //
  1010  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateOpsItem
  1011  func (c *SSM) CreateOpsItemRequest(input *CreateOpsItemInput) (req *request.Request, output *CreateOpsItemOutput) {
  1012  	op := &request.Operation{
  1013  		Name:       opCreateOpsItem,
  1014  		HTTPMethod: "POST",
  1015  		HTTPPath:   "/",
  1016  	}
  1017  
  1018  	if input == nil {
  1019  		input = &CreateOpsItemInput{}
  1020  	}
  1021  
  1022  	output = &CreateOpsItemOutput{}
  1023  	req = c.newRequest(op, input, output)
  1024  	return
  1025  }
  1026  
  1027  // CreateOpsItem API operation for Amazon Simple Systems Manager (SSM).
  1028  //
  1029  // Creates a new OpsItem. You must have permission in Identity and Access Management
  1030  // (IAM) to create a new OpsItem. For more information, see Getting started
  1031  // with OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-getting-started.html)
  1032  // in the Amazon Web Services Systems Manager User Guide.
  1033  //
  1034  // Operations engineers and IT professionals use Amazon Web Services Systems
  1035  // Manager OpsCenter to view, investigate, and remediate operational issues
  1036  // impacting the performance and health of their Amazon Web Services resources.
  1037  // For more information, see Amazon Web Services Systems Manager OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html)
  1038  // in the Amazon Web Services Systems Manager User Guide.
  1039  //
  1040  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1041  // with awserr.Error's Code and Message methods to get detailed information about
  1042  // the error.
  1043  //
  1044  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  1045  // API operation CreateOpsItem for usage and error information.
  1046  //
  1047  // Returned Error Types:
  1048  //   * InternalServerError
  1049  //   An error occurred on the server side.
  1050  //
  1051  //   * OpsItemAlreadyExistsException
  1052  //   The OpsItem already exists.
  1053  //
  1054  //   * OpsItemLimitExceededException
  1055  //   The request caused OpsItems to exceed one or more quotas. For information
  1056  //   about OpsItem quotas, see What are the resource limits for OpsCenter? (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-learn-more.html#OpsCenter-learn-more-limits).
  1057  //
  1058  //   * OpsItemInvalidParameterException
  1059  //   A specified parameter argument isn't valid. Verify the available arguments
  1060  //   and try again.
  1061  //
  1062  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateOpsItem
  1063  func (c *SSM) CreateOpsItem(input *CreateOpsItemInput) (*CreateOpsItemOutput, error) {
  1064  	req, out := c.CreateOpsItemRequest(input)
  1065  	return out, req.Send()
  1066  }
  1067  
  1068  // CreateOpsItemWithContext is the same as CreateOpsItem with the addition of
  1069  // the ability to pass a context and additional request options.
  1070  //
  1071  // See CreateOpsItem for details on how to use this API operation.
  1072  //
  1073  // The context must be non-nil and will be used for request cancellation. If
  1074  // the context is nil a panic will occur. In the future the SDK may create
  1075  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1076  // for more information on using Contexts.
  1077  func (c *SSM) CreateOpsItemWithContext(ctx aws.Context, input *CreateOpsItemInput, opts ...request.Option) (*CreateOpsItemOutput, error) {
  1078  	req, out := c.CreateOpsItemRequest(input)
  1079  	req.SetContext(ctx)
  1080  	req.ApplyOptions(opts...)
  1081  	return out, req.Send()
  1082  }
  1083  
  1084  const opCreateOpsMetadata = "CreateOpsMetadata"
  1085  
  1086  // CreateOpsMetadataRequest generates a "aws/request.Request" representing the
  1087  // client's request for the CreateOpsMetadata operation. The "output" return
  1088  // value will be populated with the request's response once the request completes
  1089  // successfully.
  1090  //
  1091  // Use "Send" method on the returned Request to send the API call to the service.
  1092  // the "output" return value is not valid until after Send returns without error.
  1093  //
  1094  // See CreateOpsMetadata for more information on using the CreateOpsMetadata
  1095  // API call, and error handling.
  1096  //
  1097  // This method is useful when you want to inject custom logic or configuration
  1098  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1099  //
  1100  //
  1101  //    // Example sending a request using the CreateOpsMetadataRequest method.
  1102  //    req, resp := client.CreateOpsMetadataRequest(params)
  1103  //
  1104  //    err := req.Send()
  1105  //    if err == nil { // resp is now filled
  1106  //        fmt.Println(resp)
  1107  //    }
  1108  //
  1109  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateOpsMetadata
  1110  func (c *SSM) CreateOpsMetadataRequest(input *CreateOpsMetadataInput) (req *request.Request, output *CreateOpsMetadataOutput) {
  1111  	op := &request.Operation{
  1112  		Name:       opCreateOpsMetadata,
  1113  		HTTPMethod: "POST",
  1114  		HTTPPath:   "/",
  1115  	}
  1116  
  1117  	if input == nil {
  1118  		input = &CreateOpsMetadataInput{}
  1119  	}
  1120  
  1121  	output = &CreateOpsMetadataOutput{}
  1122  	req = c.newRequest(op, input, output)
  1123  	return
  1124  }
  1125  
  1126  // CreateOpsMetadata API operation for Amazon Simple Systems Manager (SSM).
  1127  //
  1128  // If you create a new application in Application Manager, Amazon Web Services
  1129  // Systems Manager calls this API operation to specify information about the
  1130  // new application, including the application type.
  1131  //
  1132  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1133  // with awserr.Error's Code and Message methods to get detailed information about
  1134  // the error.
  1135  //
  1136  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  1137  // API operation CreateOpsMetadata for usage and error information.
  1138  //
  1139  // Returned Error Types:
  1140  //   * OpsMetadataAlreadyExistsException
  1141  //   An OpsMetadata object already exists for the selected resource.
  1142  //
  1143  //   * OpsMetadataTooManyUpdatesException
  1144  //   The system is processing too many concurrent updates. Wait a few moments
  1145  //   and try again.
  1146  //
  1147  //   * OpsMetadataInvalidArgumentException
  1148  //   One of the arguments passed is invalid.
  1149  //
  1150  //   * OpsMetadataLimitExceededException
  1151  //   Your account reached the maximum number of OpsMetadata objects allowed by
  1152  //   Application Manager. The maximum is 200 OpsMetadata objects. Delete one or
  1153  //   more OpsMetadata object and try again.
  1154  //
  1155  //   * InternalServerError
  1156  //   An error occurred on the server side.
  1157  //
  1158  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateOpsMetadata
  1159  func (c *SSM) CreateOpsMetadata(input *CreateOpsMetadataInput) (*CreateOpsMetadataOutput, error) {
  1160  	req, out := c.CreateOpsMetadataRequest(input)
  1161  	return out, req.Send()
  1162  }
  1163  
  1164  // CreateOpsMetadataWithContext is the same as CreateOpsMetadata with the addition of
  1165  // the ability to pass a context and additional request options.
  1166  //
  1167  // See CreateOpsMetadata for details on how to use this API operation.
  1168  //
  1169  // The context must be non-nil and will be used for request cancellation. If
  1170  // the context is nil a panic will occur. In the future the SDK may create
  1171  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1172  // for more information on using Contexts.
  1173  func (c *SSM) CreateOpsMetadataWithContext(ctx aws.Context, input *CreateOpsMetadataInput, opts ...request.Option) (*CreateOpsMetadataOutput, error) {
  1174  	req, out := c.CreateOpsMetadataRequest(input)
  1175  	req.SetContext(ctx)
  1176  	req.ApplyOptions(opts...)
  1177  	return out, req.Send()
  1178  }
  1179  
  1180  const opCreatePatchBaseline = "CreatePatchBaseline"
  1181  
  1182  // CreatePatchBaselineRequest generates a "aws/request.Request" representing the
  1183  // client's request for the CreatePatchBaseline operation. The "output" return
  1184  // value will be populated with the request's response once the request completes
  1185  // successfully.
  1186  //
  1187  // Use "Send" method on the returned Request to send the API call to the service.
  1188  // the "output" return value is not valid until after Send returns without error.
  1189  //
  1190  // See CreatePatchBaseline for more information on using the CreatePatchBaseline
  1191  // API call, and error handling.
  1192  //
  1193  // This method is useful when you want to inject custom logic or configuration
  1194  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1195  //
  1196  //
  1197  //    // Example sending a request using the CreatePatchBaselineRequest method.
  1198  //    req, resp := client.CreatePatchBaselineRequest(params)
  1199  //
  1200  //    err := req.Send()
  1201  //    if err == nil { // resp is now filled
  1202  //        fmt.Println(resp)
  1203  //    }
  1204  //
  1205  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreatePatchBaseline
  1206  func (c *SSM) CreatePatchBaselineRequest(input *CreatePatchBaselineInput) (req *request.Request, output *CreatePatchBaselineOutput) {
  1207  	op := &request.Operation{
  1208  		Name:       opCreatePatchBaseline,
  1209  		HTTPMethod: "POST",
  1210  		HTTPPath:   "/",
  1211  	}
  1212  
  1213  	if input == nil {
  1214  		input = &CreatePatchBaselineInput{}
  1215  	}
  1216  
  1217  	output = &CreatePatchBaselineOutput{}
  1218  	req = c.newRequest(op, input, output)
  1219  	return
  1220  }
  1221  
  1222  // CreatePatchBaseline API operation for Amazon Simple Systems Manager (SSM).
  1223  //
  1224  // Creates a patch baseline.
  1225  //
  1226  // For information about valid key-value pairs in PatchFilters for each supported
  1227  // operating system type, see PatchFilter.
  1228  //
  1229  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1230  // with awserr.Error's Code and Message methods to get detailed information about
  1231  // the error.
  1232  //
  1233  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  1234  // API operation CreatePatchBaseline for usage and error information.
  1235  //
  1236  // Returned Error Types:
  1237  //   * IdempotentParameterMismatch
  1238  //   Error returned when an idempotent operation is retried and the parameters
  1239  //   don't match the original call to the API with the same idempotency token.
  1240  //
  1241  //   * ResourceLimitExceededException
  1242  //   Error returned when the caller has exceeded the default resource quotas.
  1243  //   For example, too many maintenance windows or patch baselines have been created.
  1244  //
  1245  //   For information about resource quotas in Systems Manager, see Systems Manager
  1246  //   service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  1247  //   in the Amazon Web Services General Reference.
  1248  //
  1249  //   * InternalServerError
  1250  //   An error occurred on the server side.
  1251  //
  1252  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreatePatchBaseline
  1253  func (c *SSM) CreatePatchBaseline(input *CreatePatchBaselineInput) (*CreatePatchBaselineOutput, error) {
  1254  	req, out := c.CreatePatchBaselineRequest(input)
  1255  	return out, req.Send()
  1256  }
  1257  
  1258  // CreatePatchBaselineWithContext is the same as CreatePatchBaseline with the addition of
  1259  // the ability to pass a context and additional request options.
  1260  //
  1261  // See CreatePatchBaseline for details on how to use this API operation.
  1262  //
  1263  // The context must be non-nil and will be used for request cancellation. If
  1264  // the context is nil a panic will occur. In the future the SDK may create
  1265  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1266  // for more information on using Contexts.
  1267  func (c *SSM) CreatePatchBaselineWithContext(ctx aws.Context, input *CreatePatchBaselineInput, opts ...request.Option) (*CreatePatchBaselineOutput, error) {
  1268  	req, out := c.CreatePatchBaselineRequest(input)
  1269  	req.SetContext(ctx)
  1270  	req.ApplyOptions(opts...)
  1271  	return out, req.Send()
  1272  }
  1273  
  1274  const opCreateResourceDataSync = "CreateResourceDataSync"
  1275  
  1276  // CreateResourceDataSyncRequest generates a "aws/request.Request" representing the
  1277  // client's request for the CreateResourceDataSync operation. The "output" return
  1278  // value will be populated with the request's response once the request completes
  1279  // successfully.
  1280  //
  1281  // Use "Send" method on the returned Request to send the API call to the service.
  1282  // the "output" return value is not valid until after Send returns without error.
  1283  //
  1284  // See CreateResourceDataSync for more information on using the CreateResourceDataSync
  1285  // API call, and error handling.
  1286  //
  1287  // This method is useful when you want to inject custom logic or configuration
  1288  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1289  //
  1290  //
  1291  //    // Example sending a request using the CreateResourceDataSyncRequest method.
  1292  //    req, resp := client.CreateResourceDataSyncRequest(params)
  1293  //
  1294  //    err := req.Send()
  1295  //    if err == nil { // resp is now filled
  1296  //        fmt.Println(resp)
  1297  //    }
  1298  //
  1299  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateResourceDataSync
  1300  func (c *SSM) CreateResourceDataSyncRequest(input *CreateResourceDataSyncInput) (req *request.Request, output *CreateResourceDataSyncOutput) {
  1301  	op := &request.Operation{
  1302  		Name:       opCreateResourceDataSync,
  1303  		HTTPMethod: "POST",
  1304  		HTTPPath:   "/",
  1305  	}
  1306  
  1307  	if input == nil {
  1308  		input = &CreateResourceDataSyncInput{}
  1309  	}
  1310  
  1311  	output = &CreateResourceDataSyncOutput{}
  1312  	req = c.newRequest(op, input, output)
  1313  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1314  	return
  1315  }
  1316  
  1317  // CreateResourceDataSync API operation for Amazon Simple Systems Manager (SSM).
  1318  //
  1319  // A resource data sync helps you view data from multiple sources in a single
  1320  // location. Amazon Web Services Systems Manager offers two types of resource
  1321  // data sync: SyncToDestination and SyncFromSource.
  1322  //
  1323  // You can configure Systems Manager Inventory to use the SyncToDestination
  1324  // type to synchronize Inventory data from multiple Amazon Web Services Regions
  1325  // to a single Amazon Simple Storage Service (Amazon S3) bucket. For more information,
  1326  // see Configuring resource data sync for Inventory (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-datasync.html)
  1327  // in the Amazon Web Services Systems Manager User Guide.
  1328  //
  1329  // You can configure Systems Manager Explorer to use the SyncFromSource type
  1330  // to synchronize operational work items (OpsItems) and operational data (OpsData)
  1331  // from multiple Amazon Web Services Regions to a single Amazon S3 bucket. This
  1332  // type can synchronize OpsItems and OpsData from multiple Amazon Web Services
  1333  // accounts and Amazon Web Services Regions or EntireOrganization by using Organizations.
  1334  // For more information, see Setting up Systems Manager Explorer to display
  1335  // data from multiple accounts and Regions (https://docs.aws.amazon.com/systems-manager/latest/userguide/Explorer-resource-data-sync.html)
  1336  // in the Amazon Web Services Systems Manager User Guide.
  1337  //
  1338  // A resource data sync is an asynchronous operation that returns immediately.
  1339  // After a successful initial sync is completed, the system continuously syncs
  1340  // data. To check the status of a sync, use the ListResourceDataSync.
  1341  //
  1342  // By default, data isn't encrypted in Amazon S3. We strongly recommend that
  1343  // you enable encryption in Amazon S3 to ensure secure data storage. We also
  1344  // recommend that you secure access to the Amazon S3 bucket by creating a restrictive
  1345  // bucket policy.
  1346  //
  1347  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1348  // with awserr.Error's Code and Message methods to get detailed information about
  1349  // the error.
  1350  //
  1351  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  1352  // API operation CreateResourceDataSync for usage and error information.
  1353  //
  1354  // Returned Error Types:
  1355  //   * InternalServerError
  1356  //   An error occurred on the server side.
  1357  //
  1358  //   * ResourceDataSyncCountExceededException
  1359  //   You have exceeded the allowed maximum sync configurations.
  1360  //
  1361  //   * ResourceDataSyncAlreadyExistsException
  1362  //   A sync configuration with the same name already exists.
  1363  //
  1364  //   * ResourceDataSyncInvalidConfigurationException
  1365  //   The specified sync configuration is invalid.
  1366  //
  1367  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateResourceDataSync
  1368  func (c *SSM) CreateResourceDataSync(input *CreateResourceDataSyncInput) (*CreateResourceDataSyncOutput, error) {
  1369  	req, out := c.CreateResourceDataSyncRequest(input)
  1370  	return out, req.Send()
  1371  }
  1372  
  1373  // CreateResourceDataSyncWithContext is the same as CreateResourceDataSync with the addition of
  1374  // the ability to pass a context and additional request options.
  1375  //
  1376  // See CreateResourceDataSync for details on how to use this API operation.
  1377  //
  1378  // The context must be non-nil and will be used for request cancellation. If
  1379  // the context is nil a panic will occur. In the future the SDK may create
  1380  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1381  // for more information on using Contexts.
  1382  func (c *SSM) CreateResourceDataSyncWithContext(ctx aws.Context, input *CreateResourceDataSyncInput, opts ...request.Option) (*CreateResourceDataSyncOutput, error) {
  1383  	req, out := c.CreateResourceDataSyncRequest(input)
  1384  	req.SetContext(ctx)
  1385  	req.ApplyOptions(opts...)
  1386  	return out, req.Send()
  1387  }
  1388  
  1389  const opDeleteActivation = "DeleteActivation"
  1390  
  1391  // DeleteActivationRequest generates a "aws/request.Request" representing the
  1392  // client's request for the DeleteActivation operation. The "output" return
  1393  // value will be populated with the request's response once the request completes
  1394  // successfully.
  1395  //
  1396  // Use "Send" method on the returned Request to send the API call to the service.
  1397  // the "output" return value is not valid until after Send returns without error.
  1398  //
  1399  // See DeleteActivation for more information on using the DeleteActivation
  1400  // API call, and error handling.
  1401  //
  1402  // This method is useful when you want to inject custom logic or configuration
  1403  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1404  //
  1405  //
  1406  //    // Example sending a request using the DeleteActivationRequest method.
  1407  //    req, resp := client.DeleteActivationRequest(params)
  1408  //
  1409  //    err := req.Send()
  1410  //    if err == nil { // resp is now filled
  1411  //        fmt.Println(resp)
  1412  //    }
  1413  //
  1414  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteActivation
  1415  func (c *SSM) DeleteActivationRequest(input *DeleteActivationInput) (req *request.Request, output *DeleteActivationOutput) {
  1416  	op := &request.Operation{
  1417  		Name:       opDeleteActivation,
  1418  		HTTPMethod: "POST",
  1419  		HTTPPath:   "/",
  1420  	}
  1421  
  1422  	if input == nil {
  1423  		input = &DeleteActivationInput{}
  1424  	}
  1425  
  1426  	output = &DeleteActivationOutput{}
  1427  	req = c.newRequest(op, input, output)
  1428  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1429  	return
  1430  }
  1431  
  1432  // DeleteActivation API operation for Amazon Simple Systems Manager (SSM).
  1433  //
  1434  // Deletes an activation. You aren't required to delete an activation. If you
  1435  // delete an activation, you can no longer use it to register additional managed
  1436  // instances. Deleting an activation doesn't de-register managed instances.
  1437  // You must manually de-register managed instances.
  1438  //
  1439  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1440  // with awserr.Error's Code and Message methods to get detailed information about
  1441  // the error.
  1442  //
  1443  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  1444  // API operation DeleteActivation for usage and error information.
  1445  //
  1446  // Returned Error Types:
  1447  //   * InvalidActivationId
  1448  //   The activation ID isn't valid. Verify the you entered the correct ActivationId
  1449  //   or ActivationCode and try again.
  1450  //
  1451  //   * InvalidActivation
  1452  //   The activation isn't valid. The activation might have been deleted, or the
  1453  //   ActivationId and the ActivationCode don't match.
  1454  //
  1455  //   * InternalServerError
  1456  //   An error occurred on the server side.
  1457  //
  1458  //   * TooManyUpdates
  1459  //   There are concurrent updates for a resource that supports one update at a
  1460  //   time.
  1461  //
  1462  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteActivation
  1463  func (c *SSM) DeleteActivation(input *DeleteActivationInput) (*DeleteActivationOutput, error) {
  1464  	req, out := c.DeleteActivationRequest(input)
  1465  	return out, req.Send()
  1466  }
  1467  
  1468  // DeleteActivationWithContext is the same as DeleteActivation with the addition of
  1469  // the ability to pass a context and additional request options.
  1470  //
  1471  // See DeleteActivation for details on how to use this API operation.
  1472  //
  1473  // The context must be non-nil and will be used for request cancellation. If
  1474  // the context is nil a panic will occur. In the future the SDK may create
  1475  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1476  // for more information on using Contexts.
  1477  func (c *SSM) DeleteActivationWithContext(ctx aws.Context, input *DeleteActivationInput, opts ...request.Option) (*DeleteActivationOutput, error) {
  1478  	req, out := c.DeleteActivationRequest(input)
  1479  	req.SetContext(ctx)
  1480  	req.ApplyOptions(opts...)
  1481  	return out, req.Send()
  1482  }
  1483  
  1484  const opDeleteAssociation = "DeleteAssociation"
  1485  
  1486  // DeleteAssociationRequest generates a "aws/request.Request" representing the
  1487  // client's request for the DeleteAssociation operation. The "output" return
  1488  // value will be populated with the request's response once the request completes
  1489  // successfully.
  1490  //
  1491  // Use "Send" method on the returned Request to send the API call to the service.
  1492  // the "output" return value is not valid until after Send returns without error.
  1493  //
  1494  // See DeleteAssociation for more information on using the DeleteAssociation
  1495  // API call, and error handling.
  1496  //
  1497  // This method is useful when you want to inject custom logic or configuration
  1498  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1499  //
  1500  //
  1501  //    // Example sending a request using the DeleteAssociationRequest method.
  1502  //    req, resp := client.DeleteAssociationRequest(params)
  1503  //
  1504  //    err := req.Send()
  1505  //    if err == nil { // resp is now filled
  1506  //        fmt.Println(resp)
  1507  //    }
  1508  //
  1509  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteAssociation
  1510  func (c *SSM) DeleteAssociationRequest(input *DeleteAssociationInput) (req *request.Request, output *DeleteAssociationOutput) {
  1511  	op := &request.Operation{
  1512  		Name:       opDeleteAssociation,
  1513  		HTTPMethod: "POST",
  1514  		HTTPPath:   "/",
  1515  	}
  1516  
  1517  	if input == nil {
  1518  		input = &DeleteAssociationInput{}
  1519  	}
  1520  
  1521  	output = &DeleteAssociationOutput{}
  1522  	req = c.newRequest(op, input, output)
  1523  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1524  	return
  1525  }
  1526  
  1527  // DeleteAssociation API operation for Amazon Simple Systems Manager (SSM).
  1528  //
  1529  // Disassociates the specified Amazon Web Services Systems Manager document
  1530  // (SSM document) from the specified instance. If you created the association
  1531  // by using the Targets parameter, then you must delete the association by using
  1532  // the association ID.
  1533  //
  1534  // When you disassociate a document from an instance, it doesn't change the
  1535  // configuration of the instance. To change the configuration state of an instance
  1536  // after you disassociate a document, you must create a new document with the
  1537  // desired configuration and associate it with the instance.
  1538  //
  1539  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1540  // with awserr.Error's Code and Message methods to get detailed information about
  1541  // the error.
  1542  //
  1543  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  1544  // API operation DeleteAssociation for usage and error information.
  1545  //
  1546  // Returned Error Types:
  1547  //   * AssociationDoesNotExist
  1548  //   The specified association doesn't exist.
  1549  //
  1550  //   * InternalServerError
  1551  //   An error occurred on the server side.
  1552  //
  1553  //   * InvalidDocument
  1554  //   The specified SSM document doesn't exist.
  1555  //
  1556  //   * InvalidInstanceId
  1557  //   The following problems can cause this exception:
  1558  //
  1559  //      * You don't have permission to access the instance.
  1560  //
  1561  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
  1562  //      Verify that SSM Agent is running.
  1563  //
  1564  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
  1565  //      Agent.
  1566  //
  1567  //      * The instance isn't in valid state. Valid states are: Running, Pending,
  1568  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
  1569  //
  1570  //   * TooManyUpdates
  1571  //   There are concurrent updates for a resource that supports one update at a
  1572  //   time.
  1573  //
  1574  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteAssociation
  1575  func (c *SSM) DeleteAssociation(input *DeleteAssociationInput) (*DeleteAssociationOutput, error) {
  1576  	req, out := c.DeleteAssociationRequest(input)
  1577  	return out, req.Send()
  1578  }
  1579  
  1580  // DeleteAssociationWithContext is the same as DeleteAssociation with the addition of
  1581  // the ability to pass a context and additional request options.
  1582  //
  1583  // See DeleteAssociation for details on how to use this API operation.
  1584  //
  1585  // The context must be non-nil and will be used for request cancellation. If
  1586  // the context is nil a panic will occur. In the future the SDK may create
  1587  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1588  // for more information on using Contexts.
  1589  func (c *SSM) DeleteAssociationWithContext(ctx aws.Context, input *DeleteAssociationInput, opts ...request.Option) (*DeleteAssociationOutput, error) {
  1590  	req, out := c.DeleteAssociationRequest(input)
  1591  	req.SetContext(ctx)
  1592  	req.ApplyOptions(opts...)
  1593  	return out, req.Send()
  1594  }
  1595  
  1596  const opDeleteDocument = "DeleteDocument"
  1597  
  1598  // DeleteDocumentRequest generates a "aws/request.Request" representing the
  1599  // client's request for the DeleteDocument operation. The "output" return
  1600  // value will be populated with the request's response once the request completes
  1601  // successfully.
  1602  //
  1603  // Use "Send" method on the returned Request to send the API call to the service.
  1604  // the "output" return value is not valid until after Send returns without error.
  1605  //
  1606  // See DeleteDocument for more information on using the DeleteDocument
  1607  // API call, and error handling.
  1608  //
  1609  // This method is useful when you want to inject custom logic or configuration
  1610  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1611  //
  1612  //
  1613  //    // Example sending a request using the DeleteDocumentRequest method.
  1614  //    req, resp := client.DeleteDocumentRequest(params)
  1615  //
  1616  //    err := req.Send()
  1617  //    if err == nil { // resp is now filled
  1618  //        fmt.Println(resp)
  1619  //    }
  1620  //
  1621  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteDocument
  1622  func (c *SSM) DeleteDocumentRequest(input *DeleteDocumentInput) (req *request.Request, output *DeleteDocumentOutput) {
  1623  	op := &request.Operation{
  1624  		Name:       opDeleteDocument,
  1625  		HTTPMethod: "POST",
  1626  		HTTPPath:   "/",
  1627  	}
  1628  
  1629  	if input == nil {
  1630  		input = &DeleteDocumentInput{}
  1631  	}
  1632  
  1633  	output = &DeleteDocumentOutput{}
  1634  	req = c.newRequest(op, input, output)
  1635  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1636  	return
  1637  }
  1638  
  1639  // DeleteDocument API operation for Amazon Simple Systems Manager (SSM).
  1640  //
  1641  // Deletes the Amazon Web Services Systems Manager document (SSM document) and
  1642  // all instance associations to the document.
  1643  //
  1644  // Before you delete the document, we recommend that you use DeleteAssociation
  1645  // to disassociate all instances that are associated with the document.
  1646  //
  1647  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1648  // with awserr.Error's Code and Message methods to get detailed information about
  1649  // the error.
  1650  //
  1651  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  1652  // API operation DeleteDocument for usage and error information.
  1653  //
  1654  // Returned Error Types:
  1655  //   * InternalServerError
  1656  //   An error occurred on the server side.
  1657  //
  1658  //   * InvalidDocument
  1659  //   The specified SSM document doesn't exist.
  1660  //
  1661  //   * InvalidDocumentOperation
  1662  //   You attempted to delete a document while it is still shared. You must stop
  1663  //   sharing the document before you can delete it.
  1664  //
  1665  //   * AssociatedInstances
  1666  //   You must disassociate a document from all instances before you can delete
  1667  //   it.
  1668  //
  1669  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteDocument
  1670  func (c *SSM) DeleteDocument(input *DeleteDocumentInput) (*DeleteDocumentOutput, error) {
  1671  	req, out := c.DeleteDocumentRequest(input)
  1672  	return out, req.Send()
  1673  }
  1674  
  1675  // DeleteDocumentWithContext is the same as DeleteDocument with the addition of
  1676  // the ability to pass a context and additional request options.
  1677  //
  1678  // See DeleteDocument for details on how to use this API operation.
  1679  //
  1680  // The context must be non-nil and will be used for request cancellation. If
  1681  // the context is nil a panic will occur. In the future the SDK may create
  1682  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1683  // for more information on using Contexts.
  1684  func (c *SSM) DeleteDocumentWithContext(ctx aws.Context, input *DeleteDocumentInput, opts ...request.Option) (*DeleteDocumentOutput, error) {
  1685  	req, out := c.DeleteDocumentRequest(input)
  1686  	req.SetContext(ctx)
  1687  	req.ApplyOptions(opts...)
  1688  	return out, req.Send()
  1689  }
  1690  
  1691  const opDeleteInventory = "DeleteInventory"
  1692  
  1693  // DeleteInventoryRequest generates a "aws/request.Request" representing the
  1694  // client's request for the DeleteInventory operation. The "output" return
  1695  // value will be populated with the request's response once the request completes
  1696  // successfully.
  1697  //
  1698  // Use "Send" method on the returned Request to send the API call to the service.
  1699  // the "output" return value is not valid until after Send returns without error.
  1700  //
  1701  // See DeleteInventory for more information on using the DeleteInventory
  1702  // API call, and error handling.
  1703  //
  1704  // This method is useful when you want to inject custom logic or configuration
  1705  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1706  //
  1707  //
  1708  //    // Example sending a request using the DeleteInventoryRequest method.
  1709  //    req, resp := client.DeleteInventoryRequest(params)
  1710  //
  1711  //    err := req.Send()
  1712  //    if err == nil { // resp is now filled
  1713  //        fmt.Println(resp)
  1714  //    }
  1715  //
  1716  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteInventory
  1717  func (c *SSM) DeleteInventoryRequest(input *DeleteInventoryInput) (req *request.Request, output *DeleteInventoryOutput) {
  1718  	op := &request.Operation{
  1719  		Name:       opDeleteInventory,
  1720  		HTTPMethod: "POST",
  1721  		HTTPPath:   "/",
  1722  	}
  1723  
  1724  	if input == nil {
  1725  		input = &DeleteInventoryInput{}
  1726  	}
  1727  
  1728  	output = &DeleteInventoryOutput{}
  1729  	req = c.newRequest(op, input, output)
  1730  	return
  1731  }
  1732  
  1733  // DeleteInventory API operation for Amazon Simple Systems Manager (SSM).
  1734  //
  1735  // Delete a custom inventory type or the data associated with a custom Inventory
  1736  // type. Deleting a custom inventory type is also referred to as deleting a
  1737  // custom inventory schema.
  1738  //
  1739  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1740  // with awserr.Error's Code and Message methods to get detailed information about
  1741  // the error.
  1742  //
  1743  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  1744  // API operation DeleteInventory for usage and error information.
  1745  //
  1746  // Returned Error Types:
  1747  //   * InternalServerError
  1748  //   An error occurred on the server side.
  1749  //
  1750  //   * InvalidTypeNameException
  1751  //   The parameter type name isn't valid.
  1752  //
  1753  //   * InvalidOptionException
  1754  //   The delete inventory option specified isn't valid. Verify the option and
  1755  //   try again.
  1756  //
  1757  //   * InvalidDeleteInventoryParametersException
  1758  //   One or more of the parameters specified for the delete operation isn't valid.
  1759  //   Verify all parameters and try again.
  1760  //
  1761  //   * InvalidInventoryRequestException
  1762  //   The request isn't valid.
  1763  //
  1764  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteInventory
  1765  func (c *SSM) DeleteInventory(input *DeleteInventoryInput) (*DeleteInventoryOutput, error) {
  1766  	req, out := c.DeleteInventoryRequest(input)
  1767  	return out, req.Send()
  1768  }
  1769  
  1770  // DeleteInventoryWithContext is the same as DeleteInventory with the addition of
  1771  // the ability to pass a context and additional request options.
  1772  //
  1773  // See DeleteInventory for details on how to use this API operation.
  1774  //
  1775  // The context must be non-nil and will be used for request cancellation. If
  1776  // the context is nil a panic will occur. In the future the SDK may create
  1777  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1778  // for more information on using Contexts.
  1779  func (c *SSM) DeleteInventoryWithContext(ctx aws.Context, input *DeleteInventoryInput, opts ...request.Option) (*DeleteInventoryOutput, error) {
  1780  	req, out := c.DeleteInventoryRequest(input)
  1781  	req.SetContext(ctx)
  1782  	req.ApplyOptions(opts...)
  1783  	return out, req.Send()
  1784  }
  1785  
  1786  const opDeleteMaintenanceWindow = "DeleteMaintenanceWindow"
  1787  
  1788  // DeleteMaintenanceWindowRequest generates a "aws/request.Request" representing the
  1789  // client's request for the DeleteMaintenanceWindow operation. The "output" return
  1790  // value will be populated with the request's response once the request completes
  1791  // successfully.
  1792  //
  1793  // Use "Send" method on the returned Request to send the API call to the service.
  1794  // the "output" return value is not valid until after Send returns without error.
  1795  //
  1796  // See DeleteMaintenanceWindow for more information on using the DeleteMaintenanceWindow
  1797  // API call, and error handling.
  1798  //
  1799  // This method is useful when you want to inject custom logic or configuration
  1800  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1801  //
  1802  //
  1803  //    // Example sending a request using the DeleteMaintenanceWindowRequest method.
  1804  //    req, resp := client.DeleteMaintenanceWindowRequest(params)
  1805  //
  1806  //    err := req.Send()
  1807  //    if err == nil { // resp is now filled
  1808  //        fmt.Println(resp)
  1809  //    }
  1810  //
  1811  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteMaintenanceWindow
  1812  func (c *SSM) DeleteMaintenanceWindowRequest(input *DeleteMaintenanceWindowInput) (req *request.Request, output *DeleteMaintenanceWindowOutput) {
  1813  	op := &request.Operation{
  1814  		Name:       opDeleteMaintenanceWindow,
  1815  		HTTPMethod: "POST",
  1816  		HTTPPath:   "/",
  1817  	}
  1818  
  1819  	if input == nil {
  1820  		input = &DeleteMaintenanceWindowInput{}
  1821  	}
  1822  
  1823  	output = &DeleteMaintenanceWindowOutput{}
  1824  	req = c.newRequest(op, input, output)
  1825  	return
  1826  }
  1827  
  1828  // DeleteMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
  1829  //
  1830  // Deletes a maintenance window.
  1831  //
  1832  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1833  // with awserr.Error's Code and Message methods to get detailed information about
  1834  // the error.
  1835  //
  1836  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  1837  // API operation DeleteMaintenanceWindow for usage and error information.
  1838  //
  1839  // Returned Error Types:
  1840  //   * InternalServerError
  1841  //   An error occurred on the server side.
  1842  //
  1843  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteMaintenanceWindow
  1844  func (c *SSM) DeleteMaintenanceWindow(input *DeleteMaintenanceWindowInput) (*DeleteMaintenanceWindowOutput, error) {
  1845  	req, out := c.DeleteMaintenanceWindowRequest(input)
  1846  	return out, req.Send()
  1847  }
  1848  
  1849  // DeleteMaintenanceWindowWithContext is the same as DeleteMaintenanceWindow with the addition of
  1850  // the ability to pass a context and additional request options.
  1851  //
  1852  // See DeleteMaintenanceWindow for details on how to use this API operation.
  1853  //
  1854  // The context must be non-nil and will be used for request cancellation. If
  1855  // the context is nil a panic will occur. In the future the SDK may create
  1856  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1857  // for more information on using Contexts.
  1858  func (c *SSM) DeleteMaintenanceWindowWithContext(ctx aws.Context, input *DeleteMaintenanceWindowInput, opts ...request.Option) (*DeleteMaintenanceWindowOutput, error) {
  1859  	req, out := c.DeleteMaintenanceWindowRequest(input)
  1860  	req.SetContext(ctx)
  1861  	req.ApplyOptions(opts...)
  1862  	return out, req.Send()
  1863  }
  1864  
  1865  const opDeleteOpsMetadata = "DeleteOpsMetadata"
  1866  
  1867  // DeleteOpsMetadataRequest generates a "aws/request.Request" representing the
  1868  // client's request for the DeleteOpsMetadata operation. The "output" return
  1869  // value will be populated with the request's response once the request completes
  1870  // successfully.
  1871  //
  1872  // Use "Send" method on the returned Request to send the API call to the service.
  1873  // the "output" return value is not valid until after Send returns without error.
  1874  //
  1875  // See DeleteOpsMetadata for more information on using the DeleteOpsMetadata
  1876  // API call, and error handling.
  1877  //
  1878  // This method is useful when you want to inject custom logic or configuration
  1879  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1880  //
  1881  //
  1882  //    // Example sending a request using the DeleteOpsMetadataRequest method.
  1883  //    req, resp := client.DeleteOpsMetadataRequest(params)
  1884  //
  1885  //    err := req.Send()
  1886  //    if err == nil { // resp is now filled
  1887  //        fmt.Println(resp)
  1888  //    }
  1889  //
  1890  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteOpsMetadata
  1891  func (c *SSM) DeleteOpsMetadataRequest(input *DeleteOpsMetadataInput) (req *request.Request, output *DeleteOpsMetadataOutput) {
  1892  	op := &request.Operation{
  1893  		Name:       opDeleteOpsMetadata,
  1894  		HTTPMethod: "POST",
  1895  		HTTPPath:   "/",
  1896  	}
  1897  
  1898  	if input == nil {
  1899  		input = &DeleteOpsMetadataInput{}
  1900  	}
  1901  
  1902  	output = &DeleteOpsMetadataOutput{}
  1903  	req = c.newRequest(op, input, output)
  1904  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1905  	return
  1906  }
  1907  
  1908  // DeleteOpsMetadata API operation for Amazon Simple Systems Manager (SSM).
  1909  //
  1910  // Delete OpsMetadata related to an application.
  1911  //
  1912  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1913  // with awserr.Error's Code and Message methods to get detailed information about
  1914  // the error.
  1915  //
  1916  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  1917  // API operation DeleteOpsMetadata for usage and error information.
  1918  //
  1919  // Returned Error Types:
  1920  //   * OpsMetadataNotFoundException
  1921  //   The OpsMetadata object doesn't exist.
  1922  //
  1923  //   * OpsMetadataInvalidArgumentException
  1924  //   One of the arguments passed is invalid.
  1925  //
  1926  //   * InternalServerError
  1927  //   An error occurred on the server side.
  1928  //
  1929  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteOpsMetadata
  1930  func (c *SSM) DeleteOpsMetadata(input *DeleteOpsMetadataInput) (*DeleteOpsMetadataOutput, error) {
  1931  	req, out := c.DeleteOpsMetadataRequest(input)
  1932  	return out, req.Send()
  1933  }
  1934  
  1935  // DeleteOpsMetadataWithContext is the same as DeleteOpsMetadata with the addition of
  1936  // the ability to pass a context and additional request options.
  1937  //
  1938  // See DeleteOpsMetadata for details on how to use this API operation.
  1939  //
  1940  // The context must be non-nil and will be used for request cancellation. If
  1941  // the context is nil a panic will occur. In the future the SDK may create
  1942  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1943  // for more information on using Contexts.
  1944  func (c *SSM) DeleteOpsMetadataWithContext(ctx aws.Context, input *DeleteOpsMetadataInput, opts ...request.Option) (*DeleteOpsMetadataOutput, error) {
  1945  	req, out := c.DeleteOpsMetadataRequest(input)
  1946  	req.SetContext(ctx)
  1947  	req.ApplyOptions(opts...)
  1948  	return out, req.Send()
  1949  }
  1950  
  1951  const opDeleteParameter = "DeleteParameter"
  1952  
  1953  // DeleteParameterRequest generates a "aws/request.Request" representing the
  1954  // client's request for the DeleteParameter operation. The "output" return
  1955  // value will be populated with the request's response once the request completes
  1956  // successfully.
  1957  //
  1958  // Use "Send" method on the returned Request to send the API call to the service.
  1959  // the "output" return value is not valid until after Send returns without error.
  1960  //
  1961  // See DeleteParameter for more information on using the DeleteParameter
  1962  // API call, and error handling.
  1963  //
  1964  // This method is useful when you want to inject custom logic or configuration
  1965  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1966  //
  1967  //
  1968  //    // Example sending a request using the DeleteParameterRequest method.
  1969  //    req, resp := client.DeleteParameterRequest(params)
  1970  //
  1971  //    err := req.Send()
  1972  //    if err == nil { // resp is now filled
  1973  //        fmt.Println(resp)
  1974  //    }
  1975  //
  1976  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteParameter
  1977  func (c *SSM) DeleteParameterRequest(input *DeleteParameterInput) (req *request.Request, output *DeleteParameterOutput) {
  1978  	op := &request.Operation{
  1979  		Name:       opDeleteParameter,
  1980  		HTTPMethod: "POST",
  1981  		HTTPPath:   "/",
  1982  	}
  1983  
  1984  	if input == nil {
  1985  		input = &DeleteParameterInput{}
  1986  	}
  1987  
  1988  	output = &DeleteParameterOutput{}
  1989  	req = c.newRequest(op, input, output)
  1990  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1991  	return
  1992  }
  1993  
  1994  // DeleteParameter API operation for Amazon Simple Systems Manager (SSM).
  1995  //
  1996  // Delete a parameter from the system. After deleting a parameter, wait for
  1997  // at least 30 seconds to create a parameter with the same name.
  1998  //
  1999  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2000  // with awserr.Error's Code and Message methods to get detailed information about
  2001  // the error.
  2002  //
  2003  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2004  // API operation DeleteParameter for usage and error information.
  2005  //
  2006  // Returned Error Types:
  2007  //   * InternalServerError
  2008  //   An error occurred on the server side.
  2009  //
  2010  //   * ParameterNotFound
  2011  //   The parameter couldn't be found. Verify the name and try again.
  2012  //
  2013  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteParameter
  2014  func (c *SSM) DeleteParameter(input *DeleteParameterInput) (*DeleteParameterOutput, error) {
  2015  	req, out := c.DeleteParameterRequest(input)
  2016  	return out, req.Send()
  2017  }
  2018  
  2019  // DeleteParameterWithContext is the same as DeleteParameter with the addition of
  2020  // the ability to pass a context and additional request options.
  2021  //
  2022  // See DeleteParameter for details on how to use this API operation.
  2023  //
  2024  // The context must be non-nil and will be used for request cancellation. If
  2025  // the context is nil a panic will occur. In the future the SDK may create
  2026  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2027  // for more information on using Contexts.
  2028  func (c *SSM) DeleteParameterWithContext(ctx aws.Context, input *DeleteParameterInput, opts ...request.Option) (*DeleteParameterOutput, error) {
  2029  	req, out := c.DeleteParameterRequest(input)
  2030  	req.SetContext(ctx)
  2031  	req.ApplyOptions(opts...)
  2032  	return out, req.Send()
  2033  }
  2034  
  2035  const opDeleteParameters = "DeleteParameters"
  2036  
  2037  // DeleteParametersRequest generates a "aws/request.Request" representing the
  2038  // client's request for the DeleteParameters operation. The "output" return
  2039  // value will be populated with the request's response once the request completes
  2040  // successfully.
  2041  //
  2042  // Use "Send" method on the returned Request to send the API call to the service.
  2043  // the "output" return value is not valid until after Send returns without error.
  2044  //
  2045  // See DeleteParameters for more information on using the DeleteParameters
  2046  // API call, and error handling.
  2047  //
  2048  // This method is useful when you want to inject custom logic or configuration
  2049  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2050  //
  2051  //
  2052  //    // Example sending a request using the DeleteParametersRequest method.
  2053  //    req, resp := client.DeleteParametersRequest(params)
  2054  //
  2055  //    err := req.Send()
  2056  //    if err == nil { // resp is now filled
  2057  //        fmt.Println(resp)
  2058  //    }
  2059  //
  2060  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteParameters
  2061  func (c *SSM) DeleteParametersRequest(input *DeleteParametersInput) (req *request.Request, output *DeleteParametersOutput) {
  2062  	op := &request.Operation{
  2063  		Name:       opDeleteParameters,
  2064  		HTTPMethod: "POST",
  2065  		HTTPPath:   "/",
  2066  	}
  2067  
  2068  	if input == nil {
  2069  		input = &DeleteParametersInput{}
  2070  	}
  2071  
  2072  	output = &DeleteParametersOutput{}
  2073  	req = c.newRequest(op, input, output)
  2074  	return
  2075  }
  2076  
  2077  // DeleteParameters API operation for Amazon Simple Systems Manager (SSM).
  2078  //
  2079  // Delete a list of parameters. After deleting a parameter, wait for at least
  2080  // 30 seconds to create a parameter with the same name.
  2081  //
  2082  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2083  // with awserr.Error's Code and Message methods to get detailed information about
  2084  // the error.
  2085  //
  2086  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2087  // API operation DeleteParameters for usage and error information.
  2088  //
  2089  // Returned Error Types:
  2090  //   * InternalServerError
  2091  //   An error occurred on the server side.
  2092  //
  2093  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteParameters
  2094  func (c *SSM) DeleteParameters(input *DeleteParametersInput) (*DeleteParametersOutput, error) {
  2095  	req, out := c.DeleteParametersRequest(input)
  2096  	return out, req.Send()
  2097  }
  2098  
  2099  // DeleteParametersWithContext is the same as DeleteParameters with the addition of
  2100  // the ability to pass a context and additional request options.
  2101  //
  2102  // See DeleteParameters for details on how to use this API operation.
  2103  //
  2104  // The context must be non-nil and will be used for request cancellation. If
  2105  // the context is nil a panic will occur. In the future the SDK may create
  2106  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2107  // for more information on using Contexts.
  2108  func (c *SSM) DeleteParametersWithContext(ctx aws.Context, input *DeleteParametersInput, opts ...request.Option) (*DeleteParametersOutput, error) {
  2109  	req, out := c.DeleteParametersRequest(input)
  2110  	req.SetContext(ctx)
  2111  	req.ApplyOptions(opts...)
  2112  	return out, req.Send()
  2113  }
  2114  
  2115  const opDeletePatchBaseline = "DeletePatchBaseline"
  2116  
  2117  // DeletePatchBaselineRequest generates a "aws/request.Request" representing the
  2118  // client's request for the DeletePatchBaseline operation. The "output" return
  2119  // value will be populated with the request's response once the request completes
  2120  // successfully.
  2121  //
  2122  // Use "Send" method on the returned Request to send the API call to the service.
  2123  // the "output" return value is not valid until after Send returns without error.
  2124  //
  2125  // See DeletePatchBaseline for more information on using the DeletePatchBaseline
  2126  // API call, and error handling.
  2127  //
  2128  // This method is useful when you want to inject custom logic or configuration
  2129  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2130  //
  2131  //
  2132  //    // Example sending a request using the DeletePatchBaselineRequest method.
  2133  //    req, resp := client.DeletePatchBaselineRequest(params)
  2134  //
  2135  //    err := req.Send()
  2136  //    if err == nil { // resp is now filled
  2137  //        fmt.Println(resp)
  2138  //    }
  2139  //
  2140  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeletePatchBaseline
  2141  func (c *SSM) DeletePatchBaselineRequest(input *DeletePatchBaselineInput) (req *request.Request, output *DeletePatchBaselineOutput) {
  2142  	op := &request.Operation{
  2143  		Name:       opDeletePatchBaseline,
  2144  		HTTPMethod: "POST",
  2145  		HTTPPath:   "/",
  2146  	}
  2147  
  2148  	if input == nil {
  2149  		input = &DeletePatchBaselineInput{}
  2150  	}
  2151  
  2152  	output = &DeletePatchBaselineOutput{}
  2153  	req = c.newRequest(op, input, output)
  2154  	return
  2155  }
  2156  
  2157  // DeletePatchBaseline API operation for Amazon Simple Systems Manager (SSM).
  2158  //
  2159  // Deletes a patch baseline.
  2160  //
  2161  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2162  // with awserr.Error's Code and Message methods to get detailed information about
  2163  // the error.
  2164  //
  2165  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2166  // API operation DeletePatchBaseline for usage and error information.
  2167  //
  2168  // Returned Error Types:
  2169  //   * ResourceInUseException
  2170  //   Error returned if an attempt is made to delete a patch baseline that is registered
  2171  //   for a patch group.
  2172  //
  2173  //   * InternalServerError
  2174  //   An error occurred on the server side.
  2175  //
  2176  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeletePatchBaseline
  2177  func (c *SSM) DeletePatchBaseline(input *DeletePatchBaselineInput) (*DeletePatchBaselineOutput, error) {
  2178  	req, out := c.DeletePatchBaselineRequest(input)
  2179  	return out, req.Send()
  2180  }
  2181  
  2182  // DeletePatchBaselineWithContext is the same as DeletePatchBaseline with the addition of
  2183  // the ability to pass a context and additional request options.
  2184  //
  2185  // See DeletePatchBaseline for details on how to use this API operation.
  2186  //
  2187  // The context must be non-nil and will be used for request cancellation. If
  2188  // the context is nil a panic will occur. In the future the SDK may create
  2189  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2190  // for more information on using Contexts.
  2191  func (c *SSM) DeletePatchBaselineWithContext(ctx aws.Context, input *DeletePatchBaselineInput, opts ...request.Option) (*DeletePatchBaselineOutput, error) {
  2192  	req, out := c.DeletePatchBaselineRequest(input)
  2193  	req.SetContext(ctx)
  2194  	req.ApplyOptions(opts...)
  2195  	return out, req.Send()
  2196  }
  2197  
  2198  const opDeleteResourceDataSync = "DeleteResourceDataSync"
  2199  
  2200  // DeleteResourceDataSyncRequest generates a "aws/request.Request" representing the
  2201  // client's request for the DeleteResourceDataSync operation. The "output" return
  2202  // value will be populated with the request's response once the request completes
  2203  // successfully.
  2204  //
  2205  // Use "Send" method on the returned Request to send the API call to the service.
  2206  // the "output" return value is not valid until after Send returns without error.
  2207  //
  2208  // See DeleteResourceDataSync for more information on using the DeleteResourceDataSync
  2209  // API call, and error handling.
  2210  //
  2211  // This method is useful when you want to inject custom logic or configuration
  2212  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2213  //
  2214  //
  2215  //    // Example sending a request using the DeleteResourceDataSyncRequest method.
  2216  //    req, resp := client.DeleteResourceDataSyncRequest(params)
  2217  //
  2218  //    err := req.Send()
  2219  //    if err == nil { // resp is now filled
  2220  //        fmt.Println(resp)
  2221  //    }
  2222  //
  2223  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteResourceDataSync
  2224  func (c *SSM) DeleteResourceDataSyncRequest(input *DeleteResourceDataSyncInput) (req *request.Request, output *DeleteResourceDataSyncOutput) {
  2225  	op := &request.Operation{
  2226  		Name:       opDeleteResourceDataSync,
  2227  		HTTPMethod: "POST",
  2228  		HTTPPath:   "/",
  2229  	}
  2230  
  2231  	if input == nil {
  2232  		input = &DeleteResourceDataSyncInput{}
  2233  	}
  2234  
  2235  	output = &DeleteResourceDataSyncOutput{}
  2236  	req = c.newRequest(op, input, output)
  2237  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2238  	return
  2239  }
  2240  
  2241  // DeleteResourceDataSync API operation for Amazon Simple Systems Manager (SSM).
  2242  //
  2243  // Deletes a resource data sync configuration. After the configuration is deleted,
  2244  // changes to data on managed instances are no longer synced to or from the
  2245  // target. Deleting a sync configuration doesn't delete data.
  2246  //
  2247  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2248  // with awserr.Error's Code and Message methods to get detailed information about
  2249  // the error.
  2250  //
  2251  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2252  // API operation DeleteResourceDataSync for usage and error information.
  2253  //
  2254  // Returned Error Types:
  2255  //   * InternalServerError
  2256  //   An error occurred on the server side.
  2257  //
  2258  //   * ResourceDataSyncNotFoundException
  2259  //   The specified sync name wasn't found.
  2260  //
  2261  //   * ResourceDataSyncInvalidConfigurationException
  2262  //   The specified sync configuration is invalid.
  2263  //
  2264  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteResourceDataSync
  2265  func (c *SSM) DeleteResourceDataSync(input *DeleteResourceDataSyncInput) (*DeleteResourceDataSyncOutput, error) {
  2266  	req, out := c.DeleteResourceDataSyncRequest(input)
  2267  	return out, req.Send()
  2268  }
  2269  
  2270  // DeleteResourceDataSyncWithContext is the same as DeleteResourceDataSync with the addition of
  2271  // the ability to pass a context and additional request options.
  2272  //
  2273  // See DeleteResourceDataSync for details on how to use this API operation.
  2274  //
  2275  // The context must be non-nil and will be used for request cancellation. If
  2276  // the context is nil a panic will occur. In the future the SDK may create
  2277  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2278  // for more information on using Contexts.
  2279  func (c *SSM) DeleteResourceDataSyncWithContext(ctx aws.Context, input *DeleteResourceDataSyncInput, opts ...request.Option) (*DeleteResourceDataSyncOutput, error) {
  2280  	req, out := c.DeleteResourceDataSyncRequest(input)
  2281  	req.SetContext(ctx)
  2282  	req.ApplyOptions(opts...)
  2283  	return out, req.Send()
  2284  }
  2285  
  2286  const opDeregisterManagedInstance = "DeregisterManagedInstance"
  2287  
  2288  // DeregisterManagedInstanceRequest generates a "aws/request.Request" representing the
  2289  // client's request for the DeregisterManagedInstance operation. The "output" return
  2290  // value will be populated with the request's response once the request completes
  2291  // successfully.
  2292  //
  2293  // Use "Send" method on the returned Request to send the API call to the service.
  2294  // the "output" return value is not valid until after Send returns without error.
  2295  //
  2296  // See DeregisterManagedInstance for more information on using the DeregisterManagedInstance
  2297  // API call, and error handling.
  2298  //
  2299  // This method is useful when you want to inject custom logic or configuration
  2300  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2301  //
  2302  //
  2303  //    // Example sending a request using the DeregisterManagedInstanceRequest method.
  2304  //    req, resp := client.DeregisterManagedInstanceRequest(params)
  2305  //
  2306  //    err := req.Send()
  2307  //    if err == nil { // resp is now filled
  2308  //        fmt.Println(resp)
  2309  //    }
  2310  //
  2311  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterManagedInstance
  2312  func (c *SSM) DeregisterManagedInstanceRequest(input *DeregisterManagedInstanceInput) (req *request.Request, output *DeregisterManagedInstanceOutput) {
  2313  	op := &request.Operation{
  2314  		Name:       opDeregisterManagedInstance,
  2315  		HTTPMethod: "POST",
  2316  		HTTPPath:   "/",
  2317  	}
  2318  
  2319  	if input == nil {
  2320  		input = &DeregisterManagedInstanceInput{}
  2321  	}
  2322  
  2323  	output = &DeregisterManagedInstanceOutput{}
  2324  	req = c.newRequest(op, input, output)
  2325  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2326  	return
  2327  }
  2328  
  2329  // DeregisterManagedInstance API operation for Amazon Simple Systems Manager (SSM).
  2330  //
  2331  // Removes the server or virtual machine from the list of registered servers.
  2332  // You can reregister the instance again at any time. If you don't plan to use
  2333  // Run Command on the server, we suggest uninstalling SSM Agent first.
  2334  //
  2335  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2336  // with awserr.Error's Code and Message methods to get detailed information about
  2337  // the error.
  2338  //
  2339  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2340  // API operation DeregisterManagedInstance for usage and error information.
  2341  //
  2342  // Returned Error Types:
  2343  //   * InvalidInstanceId
  2344  //   The following problems can cause this exception:
  2345  //
  2346  //      * You don't have permission to access the instance.
  2347  //
  2348  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
  2349  //      Verify that SSM Agent is running.
  2350  //
  2351  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
  2352  //      Agent.
  2353  //
  2354  //      * The instance isn't in valid state. Valid states are: Running, Pending,
  2355  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
  2356  //
  2357  //   * InternalServerError
  2358  //   An error occurred on the server side.
  2359  //
  2360  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterManagedInstance
  2361  func (c *SSM) DeregisterManagedInstance(input *DeregisterManagedInstanceInput) (*DeregisterManagedInstanceOutput, error) {
  2362  	req, out := c.DeregisterManagedInstanceRequest(input)
  2363  	return out, req.Send()
  2364  }
  2365  
  2366  // DeregisterManagedInstanceWithContext is the same as DeregisterManagedInstance with the addition of
  2367  // the ability to pass a context and additional request options.
  2368  //
  2369  // See DeregisterManagedInstance for details on how to use this API operation.
  2370  //
  2371  // The context must be non-nil and will be used for request cancellation. If
  2372  // the context is nil a panic will occur. In the future the SDK may create
  2373  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2374  // for more information on using Contexts.
  2375  func (c *SSM) DeregisterManagedInstanceWithContext(ctx aws.Context, input *DeregisterManagedInstanceInput, opts ...request.Option) (*DeregisterManagedInstanceOutput, error) {
  2376  	req, out := c.DeregisterManagedInstanceRequest(input)
  2377  	req.SetContext(ctx)
  2378  	req.ApplyOptions(opts...)
  2379  	return out, req.Send()
  2380  }
  2381  
  2382  const opDeregisterPatchBaselineForPatchGroup = "DeregisterPatchBaselineForPatchGroup"
  2383  
  2384  // DeregisterPatchBaselineForPatchGroupRequest generates a "aws/request.Request" representing the
  2385  // client's request for the DeregisterPatchBaselineForPatchGroup operation. The "output" return
  2386  // value will be populated with the request's response once the request completes
  2387  // successfully.
  2388  //
  2389  // Use "Send" method on the returned Request to send the API call to the service.
  2390  // the "output" return value is not valid until after Send returns without error.
  2391  //
  2392  // See DeregisterPatchBaselineForPatchGroup for more information on using the DeregisterPatchBaselineForPatchGroup
  2393  // API call, and error handling.
  2394  //
  2395  // This method is useful when you want to inject custom logic or configuration
  2396  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2397  //
  2398  //
  2399  //    // Example sending a request using the DeregisterPatchBaselineForPatchGroupRequest method.
  2400  //    req, resp := client.DeregisterPatchBaselineForPatchGroupRequest(params)
  2401  //
  2402  //    err := req.Send()
  2403  //    if err == nil { // resp is now filled
  2404  //        fmt.Println(resp)
  2405  //    }
  2406  //
  2407  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterPatchBaselineForPatchGroup
  2408  func (c *SSM) DeregisterPatchBaselineForPatchGroupRequest(input *DeregisterPatchBaselineForPatchGroupInput) (req *request.Request, output *DeregisterPatchBaselineForPatchGroupOutput) {
  2409  	op := &request.Operation{
  2410  		Name:       opDeregisterPatchBaselineForPatchGroup,
  2411  		HTTPMethod: "POST",
  2412  		HTTPPath:   "/",
  2413  	}
  2414  
  2415  	if input == nil {
  2416  		input = &DeregisterPatchBaselineForPatchGroupInput{}
  2417  	}
  2418  
  2419  	output = &DeregisterPatchBaselineForPatchGroupOutput{}
  2420  	req = c.newRequest(op, input, output)
  2421  	return
  2422  }
  2423  
  2424  // DeregisterPatchBaselineForPatchGroup API operation for Amazon Simple Systems Manager (SSM).
  2425  //
  2426  // Removes a patch group from a patch baseline.
  2427  //
  2428  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2429  // with awserr.Error's Code and Message methods to get detailed information about
  2430  // the error.
  2431  //
  2432  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2433  // API operation DeregisterPatchBaselineForPatchGroup for usage and error information.
  2434  //
  2435  // Returned Error Types:
  2436  //   * InvalidResourceId
  2437  //   The resource ID isn't valid. Verify that you entered the correct ID and try
  2438  //   again.
  2439  //
  2440  //   * InternalServerError
  2441  //   An error occurred on the server side.
  2442  //
  2443  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterPatchBaselineForPatchGroup
  2444  func (c *SSM) DeregisterPatchBaselineForPatchGroup(input *DeregisterPatchBaselineForPatchGroupInput) (*DeregisterPatchBaselineForPatchGroupOutput, error) {
  2445  	req, out := c.DeregisterPatchBaselineForPatchGroupRequest(input)
  2446  	return out, req.Send()
  2447  }
  2448  
  2449  // DeregisterPatchBaselineForPatchGroupWithContext is the same as DeregisterPatchBaselineForPatchGroup with the addition of
  2450  // the ability to pass a context and additional request options.
  2451  //
  2452  // See DeregisterPatchBaselineForPatchGroup for details on how to use this API operation.
  2453  //
  2454  // The context must be non-nil and will be used for request cancellation. If
  2455  // the context is nil a panic will occur. In the future the SDK may create
  2456  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2457  // for more information on using Contexts.
  2458  func (c *SSM) DeregisterPatchBaselineForPatchGroupWithContext(ctx aws.Context, input *DeregisterPatchBaselineForPatchGroupInput, opts ...request.Option) (*DeregisterPatchBaselineForPatchGroupOutput, error) {
  2459  	req, out := c.DeregisterPatchBaselineForPatchGroupRequest(input)
  2460  	req.SetContext(ctx)
  2461  	req.ApplyOptions(opts...)
  2462  	return out, req.Send()
  2463  }
  2464  
  2465  const opDeregisterTargetFromMaintenanceWindow = "DeregisterTargetFromMaintenanceWindow"
  2466  
  2467  // DeregisterTargetFromMaintenanceWindowRequest generates a "aws/request.Request" representing the
  2468  // client's request for the DeregisterTargetFromMaintenanceWindow operation. The "output" return
  2469  // value will be populated with the request's response once the request completes
  2470  // successfully.
  2471  //
  2472  // Use "Send" method on the returned Request to send the API call to the service.
  2473  // the "output" return value is not valid until after Send returns without error.
  2474  //
  2475  // See DeregisterTargetFromMaintenanceWindow for more information on using the DeregisterTargetFromMaintenanceWindow
  2476  // API call, and error handling.
  2477  //
  2478  // This method is useful when you want to inject custom logic or configuration
  2479  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2480  //
  2481  //
  2482  //    // Example sending a request using the DeregisterTargetFromMaintenanceWindowRequest method.
  2483  //    req, resp := client.DeregisterTargetFromMaintenanceWindowRequest(params)
  2484  //
  2485  //    err := req.Send()
  2486  //    if err == nil { // resp is now filled
  2487  //        fmt.Println(resp)
  2488  //    }
  2489  //
  2490  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterTargetFromMaintenanceWindow
  2491  func (c *SSM) DeregisterTargetFromMaintenanceWindowRequest(input *DeregisterTargetFromMaintenanceWindowInput) (req *request.Request, output *DeregisterTargetFromMaintenanceWindowOutput) {
  2492  	op := &request.Operation{
  2493  		Name:       opDeregisterTargetFromMaintenanceWindow,
  2494  		HTTPMethod: "POST",
  2495  		HTTPPath:   "/",
  2496  	}
  2497  
  2498  	if input == nil {
  2499  		input = &DeregisterTargetFromMaintenanceWindowInput{}
  2500  	}
  2501  
  2502  	output = &DeregisterTargetFromMaintenanceWindowOutput{}
  2503  	req = c.newRequest(op, input, output)
  2504  	return
  2505  }
  2506  
  2507  // DeregisterTargetFromMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
  2508  //
  2509  // Removes a target from a maintenance window.
  2510  //
  2511  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2512  // with awserr.Error's Code and Message methods to get detailed information about
  2513  // the error.
  2514  //
  2515  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2516  // API operation DeregisterTargetFromMaintenanceWindow for usage and error information.
  2517  //
  2518  // Returned Error Types:
  2519  //   * DoesNotExistException
  2520  //   Error returned when the ID specified for a resource, such as a maintenance
  2521  //   window or patch baseline, doesn't exist.
  2522  //
  2523  //   For information about resource quotas in Amazon Web Services Systems Manager,
  2524  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  2525  //   in the Amazon Web Services General Reference.
  2526  //
  2527  //   * InternalServerError
  2528  //   An error occurred on the server side.
  2529  //
  2530  //   * TargetInUseException
  2531  //   You specified the Safe option for the DeregisterTargetFromMaintenanceWindow
  2532  //   operation, but the target is still referenced in a task.
  2533  //
  2534  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterTargetFromMaintenanceWindow
  2535  func (c *SSM) DeregisterTargetFromMaintenanceWindow(input *DeregisterTargetFromMaintenanceWindowInput) (*DeregisterTargetFromMaintenanceWindowOutput, error) {
  2536  	req, out := c.DeregisterTargetFromMaintenanceWindowRequest(input)
  2537  	return out, req.Send()
  2538  }
  2539  
  2540  // DeregisterTargetFromMaintenanceWindowWithContext is the same as DeregisterTargetFromMaintenanceWindow with the addition of
  2541  // the ability to pass a context and additional request options.
  2542  //
  2543  // See DeregisterTargetFromMaintenanceWindow for details on how to use this API operation.
  2544  //
  2545  // The context must be non-nil and will be used for request cancellation. If
  2546  // the context is nil a panic will occur. In the future the SDK may create
  2547  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2548  // for more information on using Contexts.
  2549  func (c *SSM) DeregisterTargetFromMaintenanceWindowWithContext(ctx aws.Context, input *DeregisterTargetFromMaintenanceWindowInput, opts ...request.Option) (*DeregisterTargetFromMaintenanceWindowOutput, error) {
  2550  	req, out := c.DeregisterTargetFromMaintenanceWindowRequest(input)
  2551  	req.SetContext(ctx)
  2552  	req.ApplyOptions(opts...)
  2553  	return out, req.Send()
  2554  }
  2555  
  2556  const opDeregisterTaskFromMaintenanceWindow = "DeregisterTaskFromMaintenanceWindow"
  2557  
  2558  // DeregisterTaskFromMaintenanceWindowRequest generates a "aws/request.Request" representing the
  2559  // client's request for the DeregisterTaskFromMaintenanceWindow operation. The "output" return
  2560  // value will be populated with the request's response once the request completes
  2561  // successfully.
  2562  //
  2563  // Use "Send" method on the returned Request to send the API call to the service.
  2564  // the "output" return value is not valid until after Send returns without error.
  2565  //
  2566  // See DeregisterTaskFromMaintenanceWindow for more information on using the DeregisterTaskFromMaintenanceWindow
  2567  // API call, and error handling.
  2568  //
  2569  // This method is useful when you want to inject custom logic or configuration
  2570  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2571  //
  2572  //
  2573  //    // Example sending a request using the DeregisterTaskFromMaintenanceWindowRequest method.
  2574  //    req, resp := client.DeregisterTaskFromMaintenanceWindowRequest(params)
  2575  //
  2576  //    err := req.Send()
  2577  //    if err == nil { // resp is now filled
  2578  //        fmt.Println(resp)
  2579  //    }
  2580  //
  2581  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterTaskFromMaintenanceWindow
  2582  func (c *SSM) DeregisterTaskFromMaintenanceWindowRequest(input *DeregisterTaskFromMaintenanceWindowInput) (req *request.Request, output *DeregisterTaskFromMaintenanceWindowOutput) {
  2583  	op := &request.Operation{
  2584  		Name:       opDeregisterTaskFromMaintenanceWindow,
  2585  		HTTPMethod: "POST",
  2586  		HTTPPath:   "/",
  2587  	}
  2588  
  2589  	if input == nil {
  2590  		input = &DeregisterTaskFromMaintenanceWindowInput{}
  2591  	}
  2592  
  2593  	output = &DeregisterTaskFromMaintenanceWindowOutput{}
  2594  	req = c.newRequest(op, input, output)
  2595  	return
  2596  }
  2597  
  2598  // DeregisterTaskFromMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
  2599  //
  2600  // Removes a task from a maintenance window.
  2601  //
  2602  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2603  // with awserr.Error's Code and Message methods to get detailed information about
  2604  // the error.
  2605  //
  2606  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2607  // API operation DeregisterTaskFromMaintenanceWindow for usage and error information.
  2608  //
  2609  // Returned Error Types:
  2610  //   * DoesNotExistException
  2611  //   Error returned when the ID specified for a resource, such as a maintenance
  2612  //   window or patch baseline, doesn't exist.
  2613  //
  2614  //   For information about resource quotas in Amazon Web Services Systems Manager,
  2615  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  2616  //   in the Amazon Web Services General Reference.
  2617  //
  2618  //   * InternalServerError
  2619  //   An error occurred on the server side.
  2620  //
  2621  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterTaskFromMaintenanceWindow
  2622  func (c *SSM) DeregisterTaskFromMaintenanceWindow(input *DeregisterTaskFromMaintenanceWindowInput) (*DeregisterTaskFromMaintenanceWindowOutput, error) {
  2623  	req, out := c.DeregisterTaskFromMaintenanceWindowRequest(input)
  2624  	return out, req.Send()
  2625  }
  2626  
  2627  // DeregisterTaskFromMaintenanceWindowWithContext is the same as DeregisterTaskFromMaintenanceWindow with the addition of
  2628  // the ability to pass a context and additional request options.
  2629  //
  2630  // See DeregisterTaskFromMaintenanceWindow for details on how to use this API operation.
  2631  //
  2632  // The context must be non-nil and will be used for request cancellation. If
  2633  // the context is nil a panic will occur. In the future the SDK may create
  2634  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2635  // for more information on using Contexts.
  2636  func (c *SSM) DeregisterTaskFromMaintenanceWindowWithContext(ctx aws.Context, input *DeregisterTaskFromMaintenanceWindowInput, opts ...request.Option) (*DeregisterTaskFromMaintenanceWindowOutput, error) {
  2637  	req, out := c.DeregisterTaskFromMaintenanceWindowRequest(input)
  2638  	req.SetContext(ctx)
  2639  	req.ApplyOptions(opts...)
  2640  	return out, req.Send()
  2641  }
  2642  
  2643  const opDescribeActivations = "DescribeActivations"
  2644  
  2645  // DescribeActivationsRequest generates a "aws/request.Request" representing the
  2646  // client's request for the DescribeActivations operation. The "output" return
  2647  // value will be populated with the request's response once the request completes
  2648  // successfully.
  2649  //
  2650  // Use "Send" method on the returned Request to send the API call to the service.
  2651  // the "output" return value is not valid until after Send returns without error.
  2652  //
  2653  // See DescribeActivations for more information on using the DescribeActivations
  2654  // API call, and error handling.
  2655  //
  2656  // This method is useful when you want to inject custom logic or configuration
  2657  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2658  //
  2659  //
  2660  //    // Example sending a request using the DescribeActivationsRequest method.
  2661  //    req, resp := client.DescribeActivationsRequest(params)
  2662  //
  2663  //    err := req.Send()
  2664  //    if err == nil { // resp is now filled
  2665  //        fmt.Println(resp)
  2666  //    }
  2667  //
  2668  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeActivations
  2669  func (c *SSM) DescribeActivationsRequest(input *DescribeActivationsInput) (req *request.Request, output *DescribeActivationsOutput) {
  2670  	op := &request.Operation{
  2671  		Name:       opDescribeActivations,
  2672  		HTTPMethod: "POST",
  2673  		HTTPPath:   "/",
  2674  		Paginator: &request.Paginator{
  2675  			InputTokens:     []string{"NextToken"},
  2676  			OutputTokens:    []string{"NextToken"},
  2677  			LimitToken:      "MaxResults",
  2678  			TruncationToken: "",
  2679  		},
  2680  	}
  2681  
  2682  	if input == nil {
  2683  		input = &DescribeActivationsInput{}
  2684  	}
  2685  
  2686  	output = &DescribeActivationsOutput{}
  2687  	req = c.newRequest(op, input, output)
  2688  	return
  2689  }
  2690  
  2691  // DescribeActivations API operation for Amazon Simple Systems Manager (SSM).
  2692  //
  2693  // Describes details about the activation, such as the date and time the activation
  2694  // was created, its expiration date, the Identity and Access Management (IAM)
  2695  // role assigned to the instances in the activation, and the number of instances
  2696  // registered by using this activation.
  2697  //
  2698  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2699  // with awserr.Error's Code and Message methods to get detailed information about
  2700  // the error.
  2701  //
  2702  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2703  // API operation DescribeActivations for usage and error information.
  2704  //
  2705  // Returned Error Types:
  2706  //   * InvalidFilter
  2707  //   The filter name isn't valid. Verify the you entered the correct name and
  2708  //   try again.
  2709  //
  2710  //   * InvalidNextToken
  2711  //   The specified token isn't valid.
  2712  //
  2713  //   * InternalServerError
  2714  //   An error occurred on the server side.
  2715  //
  2716  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeActivations
  2717  func (c *SSM) DescribeActivations(input *DescribeActivationsInput) (*DescribeActivationsOutput, error) {
  2718  	req, out := c.DescribeActivationsRequest(input)
  2719  	return out, req.Send()
  2720  }
  2721  
  2722  // DescribeActivationsWithContext is the same as DescribeActivations with the addition of
  2723  // the ability to pass a context and additional request options.
  2724  //
  2725  // See DescribeActivations for details on how to use this API operation.
  2726  //
  2727  // The context must be non-nil and will be used for request cancellation. If
  2728  // the context is nil a panic will occur. In the future the SDK may create
  2729  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2730  // for more information on using Contexts.
  2731  func (c *SSM) DescribeActivationsWithContext(ctx aws.Context, input *DescribeActivationsInput, opts ...request.Option) (*DescribeActivationsOutput, error) {
  2732  	req, out := c.DescribeActivationsRequest(input)
  2733  	req.SetContext(ctx)
  2734  	req.ApplyOptions(opts...)
  2735  	return out, req.Send()
  2736  }
  2737  
  2738  // DescribeActivationsPages iterates over the pages of a DescribeActivations operation,
  2739  // calling the "fn" function with the response data for each page. To stop
  2740  // iterating, return false from the fn function.
  2741  //
  2742  // See DescribeActivations method for more information on how to use this operation.
  2743  //
  2744  // Note: This operation can generate multiple requests to a service.
  2745  //
  2746  //    // Example iterating over at most 3 pages of a DescribeActivations operation.
  2747  //    pageNum := 0
  2748  //    err := client.DescribeActivationsPages(params,
  2749  //        func(page *ssm.DescribeActivationsOutput, lastPage bool) bool {
  2750  //            pageNum++
  2751  //            fmt.Println(page)
  2752  //            return pageNum <= 3
  2753  //        })
  2754  //
  2755  func (c *SSM) DescribeActivationsPages(input *DescribeActivationsInput, fn func(*DescribeActivationsOutput, bool) bool) error {
  2756  	return c.DescribeActivationsPagesWithContext(aws.BackgroundContext(), input, fn)
  2757  }
  2758  
  2759  // DescribeActivationsPagesWithContext same as DescribeActivationsPages except
  2760  // it takes a Context and allows setting request options on the pages.
  2761  //
  2762  // The context must be non-nil and will be used for request cancellation. If
  2763  // the context is nil a panic will occur. In the future the SDK may create
  2764  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2765  // for more information on using Contexts.
  2766  func (c *SSM) DescribeActivationsPagesWithContext(ctx aws.Context, input *DescribeActivationsInput, fn func(*DescribeActivationsOutput, bool) bool, opts ...request.Option) error {
  2767  	p := request.Pagination{
  2768  		NewRequest: func() (*request.Request, error) {
  2769  			var inCpy *DescribeActivationsInput
  2770  			if input != nil {
  2771  				tmp := *input
  2772  				inCpy = &tmp
  2773  			}
  2774  			req, _ := c.DescribeActivationsRequest(inCpy)
  2775  			req.SetContext(ctx)
  2776  			req.ApplyOptions(opts...)
  2777  			return req, nil
  2778  		},
  2779  	}
  2780  
  2781  	for p.Next() {
  2782  		if !fn(p.Page().(*DescribeActivationsOutput), !p.HasNextPage()) {
  2783  			break
  2784  		}
  2785  	}
  2786  
  2787  	return p.Err()
  2788  }
  2789  
  2790  const opDescribeAssociation = "DescribeAssociation"
  2791  
  2792  // DescribeAssociationRequest generates a "aws/request.Request" representing the
  2793  // client's request for the DescribeAssociation operation. The "output" return
  2794  // value will be populated with the request's response once the request completes
  2795  // successfully.
  2796  //
  2797  // Use "Send" method on the returned Request to send the API call to the service.
  2798  // the "output" return value is not valid until after Send returns without error.
  2799  //
  2800  // See DescribeAssociation for more information on using the DescribeAssociation
  2801  // API call, and error handling.
  2802  //
  2803  // This method is useful when you want to inject custom logic or configuration
  2804  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2805  //
  2806  //
  2807  //    // Example sending a request using the DescribeAssociationRequest method.
  2808  //    req, resp := client.DescribeAssociationRequest(params)
  2809  //
  2810  //    err := req.Send()
  2811  //    if err == nil { // resp is now filled
  2812  //        fmt.Println(resp)
  2813  //    }
  2814  //
  2815  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociation
  2816  func (c *SSM) DescribeAssociationRequest(input *DescribeAssociationInput) (req *request.Request, output *DescribeAssociationOutput) {
  2817  	op := &request.Operation{
  2818  		Name:       opDescribeAssociation,
  2819  		HTTPMethod: "POST",
  2820  		HTTPPath:   "/",
  2821  	}
  2822  
  2823  	if input == nil {
  2824  		input = &DescribeAssociationInput{}
  2825  	}
  2826  
  2827  	output = &DescribeAssociationOutput{}
  2828  	req = c.newRequest(op, input, output)
  2829  	return
  2830  }
  2831  
  2832  // DescribeAssociation API operation for Amazon Simple Systems Manager (SSM).
  2833  //
  2834  // Describes the association for the specified target or instance. If you created
  2835  // the association by using the Targets parameter, then you must retrieve the
  2836  // association by using the association ID.
  2837  //
  2838  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2839  // with awserr.Error's Code and Message methods to get detailed information about
  2840  // the error.
  2841  //
  2842  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2843  // API operation DescribeAssociation for usage and error information.
  2844  //
  2845  // Returned Error Types:
  2846  //   * AssociationDoesNotExist
  2847  //   The specified association doesn't exist.
  2848  //
  2849  //   * InvalidAssociationVersion
  2850  //   The version you specified isn't valid. Use ListAssociationVersions to view
  2851  //   all versions of an association according to the association ID. Or, use the
  2852  //   $LATEST parameter to view the latest version of the association.
  2853  //
  2854  //   * InternalServerError
  2855  //   An error occurred on the server side.
  2856  //
  2857  //   * InvalidDocument
  2858  //   The specified SSM document doesn't exist.
  2859  //
  2860  //   * InvalidInstanceId
  2861  //   The following problems can cause this exception:
  2862  //
  2863  //      * You don't have permission to access the instance.
  2864  //
  2865  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
  2866  //      Verify that SSM Agent is running.
  2867  //
  2868  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
  2869  //      Agent.
  2870  //
  2871  //      * The instance isn't in valid state. Valid states are: Running, Pending,
  2872  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
  2873  //
  2874  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociation
  2875  func (c *SSM) DescribeAssociation(input *DescribeAssociationInput) (*DescribeAssociationOutput, error) {
  2876  	req, out := c.DescribeAssociationRequest(input)
  2877  	return out, req.Send()
  2878  }
  2879  
  2880  // DescribeAssociationWithContext is the same as DescribeAssociation with the addition of
  2881  // the ability to pass a context and additional request options.
  2882  //
  2883  // See DescribeAssociation for details on how to use this API operation.
  2884  //
  2885  // The context must be non-nil and will be used for request cancellation. If
  2886  // the context is nil a panic will occur. In the future the SDK may create
  2887  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2888  // for more information on using Contexts.
  2889  func (c *SSM) DescribeAssociationWithContext(ctx aws.Context, input *DescribeAssociationInput, opts ...request.Option) (*DescribeAssociationOutput, error) {
  2890  	req, out := c.DescribeAssociationRequest(input)
  2891  	req.SetContext(ctx)
  2892  	req.ApplyOptions(opts...)
  2893  	return out, req.Send()
  2894  }
  2895  
  2896  const opDescribeAssociationExecutionTargets = "DescribeAssociationExecutionTargets"
  2897  
  2898  // DescribeAssociationExecutionTargetsRequest generates a "aws/request.Request" representing the
  2899  // client's request for the DescribeAssociationExecutionTargets operation. The "output" return
  2900  // value will be populated with the request's response once the request completes
  2901  // successfully.
  2902  //
  2903  // Use "Send" method on the returned Request to send the API call to the service.
  2904  // the "output" return value is not valid until after Send returns without error.
  2905  //
  2906  // See DescribeAssociationExecutionTargets for more information on using the DescribeAssociationExecutionTargets
  2907  // API call, and error handling.
  2908  //
  2909  // This method is useful when you want to inject custom logic or configuration
  2910  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2911  //
  2912  //
  2913  //    // Example sending a request using the DescribeAssociationExecutionTargetsRequest method.
  2914  //    req, resp := client.DescribeAssociationExecutionTargetsRequest(params)
  2915  //
  2916  //    err := req.Send()
  2917  //    if err == nil { // resp is now filled
  2918  //        fmt.Println(resp)
  2919  //    }
  2920  //
  2921  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociationExecutionTargets
  2922  func (c *SSM) DescribeAssociationExecutionTargetsRequest(input *DescribeAssociationExecutionTargetsInput) (req *request.Request, output *DescribeAssociationExecutionTargetsOutput) {
  2923  	op := &request.Operation{
  2924  		Name:       opDescribeAssociationExecutionTargets,
  2925  		HTTPMethod: "POST",
  2926  		HTTPPath:   "/",
  2927  		Paginator: &request.Paginator{
  2928  			InputTokens:     []string{"NextToken"},
  2929  			OutputTokens:    []string{"NextToken"},
  2930  			LimitToken:      "MaxResults",
  2931  			TruncationToken: "",
  2932  		},
  2933  	}
  2934  
  2935  	if input == nil {
  2936  		input = &DescribeAssociationExecutionTargetsInput{}
  2937  	}
  2938  
  2939  	output = &DescribeAssociationExecutionTargetsOutput{}
  2940  	req = c.newRequest(op, input, output)
  2941  	return
  2942  }
  2943  
  2944  // DescribeAssociationExecutionTargets API operation for Amazon Simple Systems Manager (SSM).
  2945  //
  2946  // Views information about a specific execution of a specific association.
  2947  //
  2948  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2949  // with awserr.Error's Code and Message methods to get detailed information about
  2950  // the error.
  2951  //
  2952  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  2953  // API operation DescribeAssociationExecutionTargets for usage and error information.
  2954  //
  2955  // Returned Error Types:
  2956  //   * InternalServerError
  2957  //   An error occurred on the server side.
  2958  //
  2959  //   * AssociationDoesNotExist
  2960  //   The specified association doesn't exist.
  2961  //
  2962  //   * InvalidNextToken
  2963  //   The specified token isn't valid.
  2964  //
  2965  //   * AssociationExecutionDoesNotExist
  2966  //   The specified execution ID doesn't exist. Verify the ID number and try again.
  2967  //
  2968  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociationExecutionTargets
  2969  func (c *SSM) DescribeAssociationExecutionTargets(input *DescribeAssociationExecutionTargetsInput) (*DescribeAssociationExecutionTargetsOutput, error) {
  2970  	req, out := c.DescribeAssociationExecutionTargetsRequest(input)
  2971  	return out, req.Send()
  2972  }
  2973  
  2974  // DescribeAssociationExecutionTargetsWithContext is the same as DescribeAssociationExecutionTargets with the addition of
  2975  // the ability to pass a context and additional request options.
  2976  //
  2977  // See DescribeAssociationExecutionTargets for details on how to use this API operation.
  2978  //
  2979  // The context must be non-nil and will be used for request cancellation. If
  2980  // the context is nil a panic will occur. In the future the SDK may create
  2981  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2982  // for more information on using Contexts.
  2983  func (c *SSM) DescribeAssociationExecutionTargetsWithContext(ctx aws.Context, input *DescribeAssociationExecutionTargetsInput, opts ...request.Option) (*DescribeAssociationExecutionTargetsOutput, error) {
  2984  	req, out := c.DescribeAssociationExecutionTargetsRequest(input)
  2985  	req.SetContext(ctx)
  2986  	req.ApplyOptions(opts...)
  2987  	return out, req.Send()
  2988  }
  2989  
  2990  // DescribeAssociationExecutionTargetsPages iterates over the pages of a DescribeAssociationExecutionTargets operation,
  2991  // calling the "fn" function with the response data for each page. To stop
  2992  // iterating, return false from the fn function.
  2993  //
  2994  // See DescribeAssociationExecutionTargets method for more information on how to use this operation.
  2995  //
  2996  // Note: This operation can generate multiple requests to a service.
  2997  //
  2998  //    // Example iterating over at most 3 pages of a DescribeAssociationExecutionTargets operation.
  2999  //    pageNum := 0
  3000  //    err := client.DescribeAssociationExecutionTargetsPages(params,
  3001  //        func(page *ssm.DescribeAssociationExecutionTargetsOutput, lastPage bool) bool {
  3002  //            pageNum++
  3003  //            fmt.Println(page)
  3004  //            return pageNum <= 3
  3005  //        })
  3006  //
  3007  func (c *SSM) DescribeAssociationExecutionTargetsPages(input *DescribeAssociationExecutionTargetsInput, fn func(*DescribeAssociationExecutionTargetsOutput, bool) bool) error {
  3008  	return c.DescribeAssociationExecutionTargetsPagesWithContext(aws.BackgroundContext(), input, fn)
  3009  }
  3010  
  3011  // DescribeAssociationExecutionTargetsPagesWithContext same as DescribeAssociationExecutionTargetsPages except
  3012  // it takes a Context and allows setting request options on the pages.
  3013  //
  3014  // The context must be non-nil and will be used for request cancellation. If
  3015  // the context is nil a panic will occur. In the future the SDK may create
  3016  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3017  // for more information on using Contexts.
  3018  func (c *SSM) DescribeAssociationExecutionTargetsPagesWithContext(ctx aws.Context, input *DescribeAssociationExecutionTargetsInput, fn func(*DescribeAssociationExecutionTargetsOutput, bool) bool, opts ...request.Option) error {
  3019  	p := request.Pagination{
  3020  		NewRequest: func() (*request.Request, error) {
  3021  			var inCpy *DescribeAssociationExecutionTargetsInput
  3022  			if input != nil {
  3023  				tmp := *input
  3024  				inCpy = &tmp
  3025  			}
  3026  			req, _ := c.DescribeAssociationExecutionTargetsRequest(inCpy)
  3027  			req.SetContext(ctx)
  3028  			req.ApplyOptions(opts...)
  3029  			return req, nil
  3030  		},
  3031  	}
  3032  
  3033  	for p.Next() {
  3034  		if !fn(p.Page().(*DescribeAssociationExecutionTargetsOutput), !p.HasNextPage()) {
  3035  			break
  3036  		}
  3037  	}
  3038  
  3039  	return p.Err()
  3040  }
  3041  
  3042  const opDescribeAssociationExecutions = "DescribeAssociationExecutions"
  3043  
  3044  // DescribeAssociationExecutionsRequest generates a "aws/request.Request" representing the
  3045  // client's request for the DescribeAssociationExecutions operation. The "output" return
  3046  // value will be populated with the request's response once the request completes
  3047  // successfully.
  3048  //
  3049  // Use "Send" method on the returned Request to send the API call to the service.
  3050  // the "output" return value is not valid until after Send returns without error.
  3051  //
  3052  // See DescribeAssociationExecutions for more information on using the DescribeAssociationExecutions
  3053  // API call, and error handling.
  3054  //
  3055  // This method is useful when you want to inject custom logic or configuration
  3056  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3057  //
  3058  //
  3059  //    // Example sending a request using the DescribeAssociationExecutionsRequest method.
  3060  //    req, resp := client.DescribeAssociationExecutionsRequest(params)
  3061  //
  3062  //    err := req.Send()
  3063  //    if err == nil { // resp is now filled
  3064  //        fmt.Println(resp)
  3065  //    }
  3066  //
  3067  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociationExecutions
  3068  func (c *SSM) DescribeAssociationExecutionsRequest(input *DescribeAssociationExecutionsInput) (req *request.Request, output *DescribeAssociationExecutionsOutput) {
  3069  	op := &request.Operation{
  3070  		Name:       opDescribeAssociationExecutions,
  3071  		HTTPMethod: "POST",
  3072  		HTTPPath:   "/",
  3073  		Paginator: &request.Paginator{
  3074  			InputTokens:     []string{"NextToken"},
  3075  			OutputTokens:    []string{"NextToken"},
  3076  			LimitToken:      "MaxResults",
  3077  			TruncationToken: "",
  3078  		},
  3079  	}
  3080  
  3081  	if input == nil {
  3082  		input = &DescribeAssociationExecutionsInput{}
  3083  	}
  3084  
  3085  	output = &DescribeAssociationExecutionsOutput{}
  3086  	req = c.newRequest(op, input, output)
  3087  	return
  3088  }
  3089  
  3090  // DescribeAssociationExecutions API operation for Amazon Simple Systems Manager (SSM).
  3091  //
  3092  // Views all executions for a specific association ID.
  3093  //
  3094  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3095  // with awserr.Error's Code and Message methods to get detailed information about
  3096  // the error.
  3097  //
  3098  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  3099  // API operation DescribeAssociationExecutions for usage and error information.
  3100  //
  3101  // Returned Error Types:
  3102  //   * InternalServerError
  3103  //   An error occurred on the server side.
  3104  //
  3105  //   * AssociationDoesNotExist
  3106  //   The specified association doesn't exist.
  3107  //
  3108  //   * InvalidNextToken
  3109  //   The specified token isn't valid.
  3110  //
  3111  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociationExecutions
  3112  func (c *SSM) DescribeAssociationExecutions(input *DescribeAssociationExecutionsInput) (*DescribeAssociationExecutionsOutput, error) {
  3113  	req, out := c.DescribeAssociationExecutionsRequest(input)
  3114  	return out, req.Send()
  3115  }
  3116  
  3117  // DescribeAssociationExecutionsWithContext is the same as DescribeAssociationExecutions with the addition of
  3118  // the ability to pass a context and additional request options.
  3119  //
  3120  // See DescribeAssociationExecutions for details on how to use this API operation.
  3121  //
  3122  // The context must be non-nil and will be used for request cancellation. If
  3123  // the context is nil a panic will occur. In the future the SDK may create
  3124  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3125  // for more information on using Contexts.
  3126  func (c *SSM) DescribeAssociationExecutionsWithContext(ctx aws.Context, input *DescribeAssociationExecutionsInput, opts ...request.Option) (*DescribeAssociationExecutionsOutput, error) {
  3127  	req, out := c.DescribeAssociationExecutionsRequest(input)
  3128  	req.SetContext(ctx)
  3129  	req.ApplyOptions(opts...)
  3130  	return out, req.Send()
  3131  }
  3132  
  3133  // DescribeAssociationExecutionsPages iterates over the pages of a DescribeAssociationExecutions operation,
  3134  // calling the "fn" function with the response data for each page. To stop
  3135  // iterating, return false from the fn function.
  3136  //
  3137  // See DescribeAssociationExecutions method for more information on how to use this operation.
  3138  //
  3139  // Note: This operation can generate multiple requests to a service.
  3140  //
  3141  //    // Example iterating over at most 3 pages of a DescribeAssociationExecutions operation.
  3142  //    pageNum := 0
  3143  //    err := client.DescribeAssociationExecutionsPages(params,
  3144  //        func(page *ssm.DescribeAssociationExecutionsOutput, lastPage bool) bool {
  3145  //            pageNum++
  3146  //            fmt.Println(page)
  3147  //            return pageNum <= 3
  3148  //        })
  3149  //
  3150  func (c *SSM) DescribeAssociationExecutionsPages(input *DescribeAssociationExecutionsInput, fn func(*DescribeAssociationExecutionsOutput, bool) bool) error {
  3151  	return c.DescribeAssociationExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
  3152  }
  3153  
  3154  // DescribeAssociationExecutionsPagesWithContext same as DescribeAssociationExecutionsPages except
  3155  // it takes a Context and allows setting request options on the pages.
  3156  //
  3157  // The context must be non-nil and will be used for request cancellation. If
  3158  // the context is nil a panic will occur. In the future the SDK may create
  3159  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3160  // for more information on using Contexts.
  3161  func (c *SSM) DescribeAssociationExecutionsPagesWithContext(ctx aws.Context, input *DescribeAssociationExecutionsInput, fn func(*DescribeAssociationExecutionsOutput, bool) bool, opts ...request.Option) error {
  3162  	p := request.Pagination{
  3163  		NewRequest: func() (*request.Request, error) {
  3164  			var inCpy *DescribeAssociationExecutionsInput
  3165  			if input != nil {
  3166  				tmp := *input
  3167  				inCpy = &tmp
  3168  			}
  3169  			req, _ := c.DescribeAssociationExecutionsRequest(inCpy)
  3170  			req.SetContext(ctx)
  3171  			req.ApplyOptions(opts...)
  3172  			return req, nil
  3173  		},
  3174  	}
  3175  
  3176  	for p.Next() {
  3177  		if !fn(p.Page().(*DescribeAssociationExecutionsOutput), !p.HasNextPage()) {
  3178  			break
  3179  		}
  3180  	}
  3181  
  3182  	return p.Err()
  3183  }
  3184  
  3185  const opDescribeAutomationExecutions = "DescribeAutomationExecutions"
  3186  
  3187  // DescribeAutomationExecutionsRequest generates a "aws/request.Request" representing the
  3188  // client's request for the DescribeAutomationExecutions operation. The "output" return
  3189  // value will be populated with the request's response once the request completes
  3190  // successfully.
  3191  //
  3192  // Use "Send" method on the returned Request to send the API call to the service.
  3193  // the "output" return value is not valid until after Send returns without error.
  3194  //
  3195  // See DescribeAutomationExecutions for more information on using the DescribeAutomationExecutions
  3196  // API call, and error handling.
  3197  //
  3198  // This method is useful when you want to inject custom logic or configuration
  3199  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3200  //
  3201  //
  3202  //    // Example sending a request using the DescribeAutomationExecutionsRequest method.
  3203  //    req, resp := client.DescribeAutomationExecutionsRequest(params)
  3204  //
  3205  //    err := req.Send()
  3206  //    if err == nil { // resp is now filled
  3207  //        fmt.Println(resp)
  3208  //    }
  3209  //
  3210  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAutomationExecutions
  3211  func (c *SSM) DescribeAutomationExecutionsRequest(input *DescribeAutomationExecutionsInput) (req *request.Request, output *DescribeAutomationExecutionsOutput) {
  3212  	op := &request.Operation{
  3213  		Name:       opDescribeAutomationExecutions,
  3214  		HTTPMethod: "POST",
  3215  		HTTPPath:   "/",
  3216  		Paginator: &request.Paginator{
  3217  			InputTokens:     []string{"NextToken"},
  3218  			OutputTokens:    []string{"NextToken"},
  3219  			LimitToken:      "MaxResults",
  3220  			TruncationToken: "",
  3221  		},
  3222  	}
  3223  
  3224  	if input == nil {
  3225  		input = &DescribeAutomationExecutionsInput{}
  3226  	}
  3227  
  3228  	output = &DescribeAutomationExecutionsOutput{}
  3229  	req = c.newRequest(op, input, output)
  3230  	return
  3231  }
  3232  
  3233  // DescribeAutomationExecutions API operation for Amazon Simple Systems Manager (SSM).
  3234  //
  3235  // Provides details about all active and terminated Automation executions.
  3236  //
  3237  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3238  // with awserr.Error's Code and Message methods to get detailed information about
  3239  // the error.
  3240  //
  3241  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  3242  // API operation DescribeAutomationExecutions for usage and error information.
  3243  //
  3244  // Returned Error Types:
  3245  //   * InvalidFilterKey
  3246  //   The specified key isn't valid.
  3247  //
  3248  //   * InvalidFilterValue
  3249  //   The filter value isn't valid. Verify the value and try again.
  3250  //
  3251  //   * InvalidNextToken
  3252  //   The specified token isn't valid.
  3253  //
  3254  //   * InternalServerError
  3255  //   An error occurred on the server side.
  3256  //
  3257  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAutomationExecutions
  3258  func (c *SSM) DescribeAutomationExecutions(input *DescribeAutomationExecutionsInput) (*DescribeAutomationExecutionsOutput, error) {
  3259  	req, out := c.DescribeAutomationExecutionsRequest(input)
  3260  	return out, req.Send()
  3261  }
  3262  
  3263  // DescribeAutomationExecutionsWithContext is the same as DescribeAutomationExecutions with the addition of
  3264  // the ability to pass a context and additional request options.
  3265  //
  3266  // See DescribeAutomationExecutions for details on how to use this API operation.
  3267  //
  3268  // The context must be non-nil and will be used for request cancellation. If
  3269  // the context is nil a panic will occur. In the future the SDK may create
  3270  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3271  // for more information on using Contexts.
  3272  func (c *SSM) DescribeAutomationExecutionsWithContext(ctx aws.Context, input *DescribeAutomationExecutionsInput, opts ...request.Option) (*DescribeAutomationExecutionsOutput, error) {
  3273  	req, out := c.DescribeAutomationExecutionsRequest(input)
  3274  	req.SetContext(ctx)
  3275  	req.ApplyOptions(opts...)
  3276  	return out, req.Send()
  3277  }
  3278  
  3279  // DescribeAutomationExecutionsPages iterates over the pages of a DescribeAutomationExecutions operation,
  3280  // calling the "fn" function with the response data for each page. To stop
  3281  // iterating, return false from the fn function.
  3282  //
  3283  // See DescribeAutomationExecutions method for more information on how to use this operation.
  3284  //
  3285  // Note: This operation can generate multiple requests to a service.
  3286  //
  3287  //    // Example iterating over at most 3 pages of a DescribeAutomationExecutions operation.
  3288  //    pageNum := 0
  3289  //    err := client.DescribeAutomationExecutionsPages(params,
  3290  //        func(page *ssm.DescribeAutomationExecutionsOutput, lastPage bool) bool {
  3291  //            pageNum++
  3292  //            fmt.Println(page)
  3293  //            return pageNum <= 3
  3294  //        })
  3295  //
  3296  func (c *SSM) DescribeAutomationExecutionsPages(input *DescribeAutomationExecutionsInput, fn func(*DescribeAutomationExecutionsOutput, bool) bool) error {
  3297  	return c.DescribeAutomationExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
  3298  }
  3299  
  3300  // DescribeAutomationExecutionsPagesWithContext same as DescribeAutomationExecutionsPages except
  3301  // it takes a Context and allows setting request options on the pages.
  3302  //
  3303  // The context must be non-nil and will be used for request cancellation. If
  3304  // the context is nil a panic will occur. In the future the SDK may create
  3305  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3306  // for more information on using Contexts.
  3307  func (c *SSM) DescribeAutomationExecutionsPagesWithContext(ctx aws.Context, input *DescribeAutomationExecutionsInput, fn func(*DescribeAutomationExecutionsOutput, bool) bool, opts ...request.Option) error {
  3308  	p := request.Pagination{
  3309  		NewRequest: func() (*request.Request, error) {
  3310  			var inCpy *DescribeAutomationExecutionsInput
  3311  			if input != nil {
  3312  				tmp := *input
  3313  				inCpy = &tmp
  3314  			}
  3315  			req, _ := c.DescribeAutomationExecutionsRequest(inCpy)
  3316  			req.SetContext(ctx)
  3317  			req.ApplyOptions(opts...)
  3318  			return req, nil
  3319  		},
  3320  	}
  3321  
  3322  	for p.Next() {
  3323  		if !fn(p.Page().(*DescribeAutomationExecutionsOutput), !p.HasNextPage()) {
  3324  			break
  3325  		}
  3326  	}
  3327  
  3328  	return p.Err()
  3329  }
  3330  
  3331  const opDescribeAutomationStepExecutions = "DescribeAutomationStepExecutions"
  3332  
  3333  // DescribeAutomationStepExecutionsRequest generates a "aws/request.Request" representing the
  3334  // client's request for the DescribeAutomationStepExecutions operation. The "output" return
  3335  // value will be populated with the request's response once the request completes
  3336  // successfully.
  3337  //
  3338  // Use "Send" method on the returned Request to send the API call to the service.
  3339  // the "output" return value is not valid until after Send returns without error.
  3340  //
  3341  // See DescribeAutomationStepExecutions for more information on using the DescribeAutomationStepExecutions
  3342  // API call, and error handling.
  3343  //
  3344  // This method is useful when you want to inject custom logic or configuration
  3345  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3346  //
  3347  //
  3348  //    // Example sending a request using the DescribeAutomationStepExecutionsRequest method.
  3349  //    req, resp := client.DescribeAutomationStepExecutionsRequest(params)
  3350  //
  3351  //    err := req.Send()
  3352  //    if err == nil { // resp is now filled
  3353  //        fmt.Println(resp)
  3354  //    }
  3355  //
  3356  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAutomationStepExecutions
  3357  func (c *SSM) DescribeAutomationStepExecutionsRequest(input *DescribeAutomationStepExecutionsInput) (req *request.Request, output *DescribeAutomationStepExecutionsOutput) {
  3358  	op := &request.Operation{
  3359  		Name:       opDescribeAutomationStepExecutions,
  3360  		HTTPMethod: "POST",
  3361  		HTTPPath:   "/",
  3362  		Paginator: &request.Paginator{
  3363  			InputTokens:     []string{"NextToken"},
  3364  			OutputTokens:    []string{"NextToken"},
  3365  			LimitToken:      "MaxResults",
  3366  			TruncationToken: "",
  3367  		},
  3368  	}
  3369  
  3370  	if input == nil {
  3371  		input = &DescribeAutomationStepExecutionsInput{}
  3372  	}
  3373  
  3374  	output = &DescribeAutomationStepExecutionsOutput{}
  3375  	req = c.newRequest(op, input, output)
  3376  	return
  3377  }
  3378  
  3379  // DescribeAutomationStepExecutions API operation for Amazon Simple Systems Manager (SSM).
  3380  //
  3381  // Information about all active and terminated step executions in an Automation
  3382  // workflow.
  3383  //
  3384  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3385  // with awserr.Error's Code and Message methods to get detailed information about
  3386  // the error.
  3387  //
  3388  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  3389  // API operation DescribeAutomationStepExecutions for usage and error information.
  3390  //
  3391  // Returned Error Types:
  3392  //   * AutomationExecutionNotFoundException
  3393  //   There is no automation execution information for the requested automation
  3394  //   execution ID.
  3395  //
  3396  //   * InvalidNextToken
  3397  //   The specified token isn't valid.
  3398  //
  3399  //   * InvalidFilterKey
  3400  //   The specified key isn't valid.
  3401  //
  3402  //   * InvalidFilterValue
  3403  //   The filter value isn't valid. Verify the value and try again.
  3404  //
  3405  //   * InternalServerError
  3406  //   An error occurred on the server side.
  3407  //
  3408  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAutomationStepExecutions
  3409  func (c *SSM) DescribeAutomationStepExecutions(input *DescribeAutomationStepExecutionsInput) (*DescribeAutomationStepExecutionsOutput, error) {
  3410  	req, out := c.DescribeAutomationStepExecutionsRequest(input)
  3411  	return out, req.Send()
  3412  }
  3413  
  3414  // DescribeAutomationStepExecutionsWithContext is the same as DescribeAutomationStepExecutions with the addition of
  3415  // the ability to pass a context and additional request options.
  3416  //
  3417  // See DescribeAutomationStepExecutions for details on how to use this API operation.
  3418  //
  3419  // The context must be non-nil and will be used for request cancellation. If
  3420  // the context is nil a panic will occur. In the future the SDK may create
  3421  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3422  // for more information on using Contexts.
  3423  func (c *SSM) DescribeAutomationStepExecutionsWithContext(ctx aws.Context, input *DescribeAutomationStepExecutionsInput, opts ...request.Option) (*DescribeAutomationStepExecutionsOutput, error) {
  3424  	req, out := c.DescribeAutomationStepExecutionsRequest(input)
  3425  	req.SetContext(ctx)
  3426  	req.ApplyOptions(opts...)
  3427  	return out, req.Send()
  3428  }
  3429  
  3430  // DescribeAutomationStepExecutionsPages iterates over the pages of a DescribeAutomationStepExecutions operation,
  3431  // calling the "fn" function with the response data for each page. To stop
  3432  // iterating, return false from the fn function.
  3433  //
  3434  // See DescribeAutomationStepExecutions method for more information on how to use this operation.
  3435  //
  3436  // Note: This operation can generate multiple requests to a service.
  3437  //
  3438  //    // Example iterating over at most 3 pages of a DescribeAutomationStepExecutions operation.
  3439  //    pageNum := 0
  3440  //    err := client.DescribeAutomationStepExecutionsPages(params,
  3441  //        func(page *ssm.DescribeAutomationStepExecutionsOutput, lastPage bool) bool {
  3442  //            pageNum++
  3443  //            fmt.Println(page)
  3444  //            return pageNum <= 3
  3445  //        })
  3446  //
  3447  func (c *SSM) DescribeAutomationStepExecutionsPages(input *DescribeAutomationStepExecutionsInput, fn func(*DescribeAutomationStepExecutionsOutput, bool) bool) error {
  3448  	return c.DescribeAutomationStepExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
  3449  }
  3450  
  3451  // DescribeAutomationStepExecutionsPagesWithContext same as DescribeAutomationStepExecutionsPages except
  3452  // it takes a Context and allows setting request options on the pages.
  3453  //
  3454  // The context must be non-nil and will be used for request cancellation. If
  3455  // the context is nil a panic will occur. In the future the SDK may create
  3456  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3457  // for more information on using Contexts.
  3458  func (c *SSM) DescribeAutomationStepExecutionsPagesWithContext(ctx aws.Context, input *DescribeAutomationStepExecutionsInput, fn func(*DescribeAutomationStepExecutionsOutput, bool) bool, opts ...request.Option) error {
  3459  	p := request.Pagination{
  3460  		NewRequest: func() (*request.Request, error) {
  3461  			var inCpy *DescribeAutomationStepExecutionsInput
  3462  			if input != nil {
  3463  				tmp := *input
  3464  				inCpy = &tmp
  3465  			}
  3466  			req, _ := c.DescribeAutomationStepExecutionsRequest(inCpy)
  3467  			req.SetContext(ctx)
  3468  			req.ApplyOptions(opts...)
  3469  			return req, nil
  3470  		},
  3471  	}
  3472  
  3473  	for p.Next() {
  3474  		if !fn(p.Page().(*DescribeAutomationStepExecutionsOutput), !p.HasNextPage()) {
  3475  			break
  3476  		}
  3477  	}
  3478  
  3479  	return p.Err()
  3480  }
  3481  
  3482  const opDescribeAvailablePatches = "DescribeAvailablePatches"
  3483  
  3484  // DescribeAvailablePatchesRequest generates a "aws/request.Request" representing the
  3485  // client's request for the DescribeAvailablePatches operation. The "output" return
  3486  // value will be populated with the request's response once the request completes
  3487  // successfully.
  3488  //
  3489  // Use "Send" method on the returned Request to send the API call to the service.
  3490  // the "output" return value is not valid until after Send returns without error.
  3491  //
  3492  // See DescribeAvailablePatches for more information on using the DescribeAvailablePatches
  3493  // API call, and error handling.
  3494  //
  3495  // This method is useful when you want to inject custom logic or configuration
  3496  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3497  //
  3498  //
  3499  //    // Example sending a request using the DescribeAvailablePatchesRequest method.
  3500  //    req, resp := client.DescribeAvailablePatchesRequest(params)
  3501  //
  3502  //    err := req.Send()
  3503  //    if err == nil { // resp is now filled
  3504  //        fmt.Println(resp)
  3505  //    }
  3506  //
  3507  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAvailablePatches
  3508  func (c *SSM) DescribeAvailablePatchesRequest(input *DescribeAvailablePatchesInput) (req *request.Request, output *DescribeAvailablePatchesOutput) {
  3509  	op := &request.Operation{
  3510  		Name:       opDescribeAvailablePatches,
  3511  		HTTPMethod: "POST",
  3512  		HTTPPath:   "/",
  3513  		Paginator: &request.Paginator{
  3514  			InputTokens:     []string{"NextToken"},
  3515  			OutputTokens:    []string{"NextToken"},
  3516  			LimitToken:      "MaxResults",
  3517  			TruncationToken: "",
  3518  		},
  3519  	}
  3520  
  3521  	if input == nil {
  3522  		input = &DescribeAvailablePatchesInput{}
  3523  	}
  3524  
  3525  	output = &DescribeAvailablePatchesOutput{}
  3526  	req = c.newRequest(op, input, output)
  3527  	return
  3528  }
  3529  
  3530  // DescribeAvailablePatches API operation for Amazon Simple Systems Manager (SSM).
  3531  //
  3532  // Lists all patches eligible to be included in a patch baseline.
  3533  //
  3534  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3535  // with awserr.Error's Code and Message methods to get detailed information about
  3536  // the error.
  3537  //
  3538  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  3539  // API operation DescribeAvailablePatches for usage and error information.
  3540  //
  3541  // Returned Error Types:
  3542  //   * InternalServerError
  3543  //   An error occurred on the server side.
  3544  //
  3545  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAvailablePatches
  3546  func (c *SSM) DescribeAvailablePatches(input *DescribeAvailablePatchesInput) (*DescribeAvailablePatchesOutput, error) {
  3547  	req, out := c.DescribeAvailablePatchesRequest(input)
  3548  	return out, req.Send()
  3549  }
  3550  
  3551  // DescribeAvailablePatchesWithContext is the same as DescribeAvailablePatches with the addition of
  3552  // the ability to pass a context and additional request options.
  3553  //
  3554  // See DescribeAvailablePatches for details on how to use this API operation.
  3555  //
  3556  // The context must be non-nil and will be used for request cancellation. If
  3557  // the context is nil a panic will occur. In the future the SDK may create
  3558  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3559  // for more information on using Contexts.
  3560  func (c *SSM) DescribeAvailablePatchesWithContext(ctx aws.Context, input *DescribeAvailablePatchesInput, opts ...request.Option) (*DescribeAvailablePatchesOutput, error) {
  3561  	req, out := c.DescribeAvailablePatchesRequest(input)
  3562  	req.SetContext(ctx)
  3563  	req.ApplyOptions(opts...)
  3564  	return out, req.Send()
  3565  }
  3566  
  3567  // DescribeAvailablePatchesPages iterates over the pages of a DescribeAvailablePatches operation,
  3568  // calling the "fn" function with the response data for each page. To stop
  3569  // iterating, return false from the fn function.
  3570  //
  3571  // See DescribeAvailablePatches method for more information on how to use this operation.
  3572  //
  3573  // Note: This operation can generate multiple requests to a service.
  3574  //
  3575  //    // Example iterating over at most 3 pages of a DescribeAvailablePatches operation.
  3576  //    pageNum := 0
  3577  //    err := client.DescribeAvailablePatchesPages(params,
  3578  //        func(page *ssm.DescribeAvailablePatchesOutput, lastPage bool) bool {
  3579  //            pageNum++
  3580  //            fmt.Println(page)
  3581  //            return pageNum <= 3
  3582  //        })
  3583  //
  3584  func (c *SSM) DescribeAvailablePatchesPages(input *DescribeAvailablePatchesInput, fn func(*DescribeAvailablePatchesOutput, bool) bool) error {
  3585  	return c.DescribeAvailablePatchesPagesWithContext(aws.BackgroundContext(), input, fn)
  3586  }
  3587  
  3588  // DescribeAvailablePatchesPagesWithContext same as DescribeAvailablePatchesPages except
  3589  // it takes a Context and allows setting request options on the pages.
  3590  //
  3591  // The context must be non-nil and will be used for request cancellation. If
  3592  // the context is nil a panic will occur. In the future the SDK may create
  3593  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3594  // for more information on using Contexts.
  3595  func (c *SSM) DescribeAvailablePatchesPagesWithContext(ctx aws.Context, input *DescribeAvailablePatchesInput, fn func(*DescribeAvailablePatchesOutput, bool) bool, opts ...request.Option) error {
  3596  	p := request.Pagination{
  3597  		NewRequest: func() (*request.Request, error) {
  3598  			var inCpy *DescribeAvailablePatchesInput
  3599  			if input != nil {
  3600  				tmp := *input
  3601  				inCpy = &tmp
  3602  			}
  3603  			req, _ := c.DescribeAvailablePatchesRequest(inCpy)
  3604  			req.SetContext(ctx)
  3605  			req.ApplyOptions(opts...)
  3606  			return req, nil
  3607  		},
  3608  	}
  3609  
  3610  	for p.Next() {
  3611  		if !fn(p.Page().(*DescribeAvailablePatchesOutput), !p.HasNextPage()) {
  3612  			break
  3613  		}
  3614  	}
  3615  
  3616  	return p.Err()
  3617  }
  3618  
  3619  const opDescribeDocument = "DescribeDocument"
  3620  
  3621  // DescribeDocumentRequest generates a "aws/request.Request" representing the
  3622  // client's request for the DescribeDocument operation. The "output" return
  3623  // value will be populated with the request's response once the request completes
  3624  // successfully.
  3625  //
  3626  // Use "Send" method on the returned Request to send the API call to the service.
  3627  // the "output" return value is not valid until after Send returns without error.
  3628  //
  3629  // See DescribeDocument for more information on using the DescribeDocument
  3630  // API call, and error handling.
  3631  //
  3632  // This method is useful when you want to inject custom logic or configuration
  3633  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3634  //
  3635  //
  3636  //    // Example sending a request using the DescribeDocumentRequest method.
  3637  //    req, resp := client.DescribeDocumentRequest(params)
  3638  //
  3639  //    err := req.Send()
  3640  //    if err == nil { // resp is now filled
  3641  //        fmt.Println(resp)
  3642  //    }
  3643  //
  3644  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeDocument
  3645  func (c *SSM) DescribeDocumentRequest(input *DescribeDocumentInput) (req *request.Request, output *DescribeDocumentOutput) {
  3646  	op := &request.Operation{
  3647  		Name:       opDescribeDocument,
  3648  		HTTPMethod: "POST",
  3649  		HTTPPath:   "/",
  3650  	}
  3651  
  3652  	if input == nil {
  3653  		input = &DescribeDocumentInput{}
  3654  	}
  3655  
  3656  	output = &DescribeDocumentOutput{}
  3657  	req = c.newRequest(op, input, output)
  3658  	return
  3659  }
  3660  
  3661  // DescribeDocument API operation for Amazon Simple Systems Manager (SSM).
  3662  //
  3663  // Describes the specified Amazon Web Services Systems Manager document (SSM
  3664  // document).
  3665  //
  3666  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3667  // with awserr.Error's Code and Message methods to get detailed information about
  3668  // the error.
  3669  //
  3670  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  3671  // API operation DescribeDocument for usage and error information.
  3672  //
  3673  // Returned Error Types:
  3674  //   * InternalServerError
  3675  //   An error occurred on the server side.
  3676  //
  3677  //   * InvalidDocument
  3678  //   The specified SSM document doesn't exist.
  3679  //
  3680  //   * InvalidDocumentVersion
  3681  //   The document version isn't valid or doesn't exist.
  3682  //
  3683  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeDocument
  3684  func (c *SSM) DescribeDocument(input *DescribeDocumentInput) (*DescribeDocumentOutput, error) {
  3685  	req, out := c.DescribeDocumentRequest(input)
  3686  	return out, req.Send()
  3687  }
  3688  
  3689  // DescribeDocumentWithContext is the same as DescribeDocument with the addition of
  3690  // the ability to pass a context and additional request options.
  3691  //
  3692  // See DescribeDocument for details on how to use this API operation.
  3693  //
  3694  // The context must be non-nil and will be used for request cancellation. If
  3695  // the context is nil a panic will occur. In the future the SDK may create
  3696  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3697  // for more information on using Contexts.
  3698  func (c *SSM) DescribeDocumentWithContext(ctx aws.Context, input *DescribeDocumentInput, opts ...request.Option) (*DescribeDocumentOutput, error) {
  3699  	req, out := c.DescribeDocumentRequest(input)
  3700  	req.SetContext(ctx)
  3701  	req.ApplyOptions(opts...)
  3702  	return out, req.Send()
  3703  }
  3704  
  3705  const opDescribeDocumentPermission = "DescribeDocumentPermission"
  3706  
  3707  // DescribeDocumentPermissionRequest generates a "aws/request.Request" representing the
  3708  // client's request for the DescribeDocumentPermission operation. The "output" return
  3709  // value will be populated with the request's response once the request completes
  3710  // successfully.
  3711  //
  3712  // Use "Send" method on the returned Request to send the API call to the service.
  3713  // the "output" return value is not valid until after Send returns without error.
  3714  //
  3715  // See DescribeDocumentPermission for more information on using the DescribeDocumentPermission
  3716  // API call, and error handling.
  3717  //
  3718  // This method is useful when you want to inject custom logic or configuration
  3719  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3720  //
  3721  //
  3722  //    // Example sending a request using the DescribeDocumentPermissionRequest method.
  3723  //    req, resp := client.DescribeDocumentPermissionRequest(params)
  3724  //
  3725  //    err := req.Send()
  3726  //    if err == nil { // resp is now filled
  3727  //        fmt.Println(resp)
  3728  //    }
  3729  //
  3730  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeDocumentPermission
  3731  func (c *SSM) DescribeDocumentPermissionRequest(input *DescribeDocumentPermissionInput) (req *request.Request, output *DescribeDocumentPermissionOutput) {
  3732  	op := &request.Operation{
  3733  		Name:       opDescribeDocumentPermission,
  3734  		HTTPMethod: "POST",
  3735  		HTTPPath:   "/",
  3736  	}
  3737  
  3738  	if input == nil {
  3739  		input = &DescribeDocumentPermissionInput{}
  3740  	}
  3741  
  3742  	output = &DescribeDocumentPermissionOutput{}
  3743  	req = c.newRequest(op, input, output)
  3744  	return
  3745  }
  3746  
  3747  // DescribeDocumentPermission API operation for Amazon Simple Systems Manager (SSM).
  3748  //
  3749  // Describes the permissions for a Amazon Web Services Systems Manager document
  3750  // (SSM document). If you created the document, you are the owner. If a document
  3751  // is shared, it can either be shared privately (by specifying a user's Amazon
  3752  // Web Services account ID) or publicly (All).
  3753  //
  3754  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3755  // with awserr.Error's Code and Message methods to get detailed information about
  3756  // the error.
  3757  //
  3758  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  3759  // API operation DescribeDocumentPermission for usage and error information.
  3760  //
  3761  // Returned Error Types:
  3762  //   * InternalServerError
  3763  //   An error occurred on the server side.
  3764  //
  3765  //   * InvalidDocument
  3766  //   The specified SSM document doesn't exist.
  3767  //
  3768  //   * InvalidNextToken
  3769  //   The specified token isn't valid.
  3770  //
  3771  //   * InvalidPermissionType
  3772  //   The permission type isn't supported. Share is the only supported permission
  3773  //   type.
  3774  //
  3775  //   * InvalidDocumentOperation
  3776  //   You attempted to delete a document while it is still shared. You must stop
  3777  //   sharing the document before you can delete it.
  3778  //
  3779  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeDocumentPermission
  3780  func (c *SSM) DescribeDocumentPermission(input *DescribeDocumentPermissionInput) (*DescribeDocumentPermissionOutput, error) {
  3781  	req, out := c.DescribeDocumentPermissionRequest(input)
  3782  	return out, req.Send()
  3783  }
  3784  
  3785  // DescribeDocumentPermissionWithContext is the same as DescribeDocumentPermission with the addition of
  3786  // the ability to pass a context and additional request options.
  3787  //
  3788  // See DescribeDocumentPermission for details on how to use this API operation.
  3789  //
  3790  // The context must be non-nil and will be used for request cancellation. If
  3791  // the context is nil a panic will occur. In the future the SDK may create
  3792  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3793  // for more information on using Contexts.
  3794  func (c *SSM) DescribeDocumentPermissionWithContext(ctx aws.Context, input *DescribeDocumentPermissionInput, opts ...request.Option) (*DescribeDocumentPermissionOutput, error) {
  3795  	req, out := c.DescribeDocumentPermissionRequest(input)
  3796  	req.SetContext(ctx)
  3797  	req.ApplyOptions(opts...)
  3798  	return out, req.Send()
  3799  }
  3800  
  3801  const opDescribeEffectiveInstanceAssociations = "DescribeEffectiveInstanceAssociations"
  3802  
  3803  // DescribeEffectiveInstanceAssociationsRequest generates a "aws/request.Request" representing the
  3804  // client's request for the DescribeEffectiveInstanceAssociations operation. The "output" return
  3805  // value will be populated with the request's response once the request completes
  3806  // successfully.
  3807  //
  3808  // Use "Send" method on the returned Request to send the API call to the service.
  3809  // the "output" return value is not valid until after Send returns without error.
  3810  //
  3811  // See DescribeEffectiveInstanceAssociations for more information on using the DescribeEffectiveInstanceAssociations
  3812  // API call, and error handling.
  3813  //
  3814  // This method is useful when you want to inject custom logic or configuration
  3815  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3816  //
  3817  //
  3818  //    // Example sending a request using the DescribeEffectiveInstanceAssociationsRequest method.
  3819  //    req, resp := client.DescribeEffectiveInstanceAssociationsRequest(params)
  3820  //
  3821  //    err := req.Send()
  3822  //    if err == nil { // resp is now filled
  3823  //        fmt.Println(resp)
  3824  //    }
  3825  //
  3826  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeEffectiveInstanceAssociations
  3827  func (c *SSM) DescribeEffectiveInstanceAssociationsRequest(input *DescribeEffectiveInstanceAssociationsInput) (req *request.Request, output *DescribeEffectiveInstanceAssociationsOutput) {
  3828  	op := &request.Operation{
  3829  		Name:       opDescribeEffectiveInstanceAssociations,
  3830  		HTTPMethod: "POST",
  3831  		HTTPPath:   "/",
  3832  		Paginator: &request.Paginator{
  3833  			InputTokens:     []string{"NextToken"},
  3834  			OutputTokens:    []string{"NextToken"},
  3835  			LimitToken:      "MaxResults",
  3836  			TruncationToken: "",
  3837  		},
  3838  	}
  3839  
  3840  	if input == nil {
  3841  		input = &DescribeEffectiveInstanceAssociationsInput{}
  3842  	}
  3843  
  3844  	output = &DescribeEffectiveInstanceAssociationsOutput{}
  3845  	req = c.newRequest(op, input, output)
  3846  	return
  3847  }
  3848  
  3849  // DescribeEffectiveInstanceAssociations API operation for Amazon Simple Systems Manager (SSM).
  3850  //
  3851  // All associations for the instance(s).
  3852  //
  3853  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3854  // with awserr.Error's Code and Message methods to get detailed information about
  3855  // the error.
  3856  //
  3857  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  3858  // API operation DescribeEffectiveInstanceAssociations for usage and error information.
  3859  //
  3860  // Returned Error Types:
  3861  //   * InternalServerError
  3862  //   An error occurred on the server side.
  3863  //
  3864  //   * InvalidInstanceId
  3865  //   The following problems can cause this exception:
  3866  //
  3867  //      * You don't have permission to access the instance.
  3868  //
  3869  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
  3870  //      Verify that SSM Agent is running.
  3871  //
  3872  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
  3873  //      Agent.
  3874  //
  3875  //      * The instance isn't in valid state. Valid states are: Running, Pending,
  3876  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
  3877  //
  3878  //   * InvalidNextToken
  3879  //   The specified token isn't valid.
  3880  //
  3881  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeEffectiveInstanceAssociations
  3882  func (c *SSM) DescribeEffectiveInstanceAssociations(input *DescribeEffectiveInstanceAssociationsInput) (*DescribeEffectiveInstanceAssociationsOutput, error) {
  3883  	req, out := c.DescribeEffectiveInstanceAssociationsRequest(input)
  3884  	return out, req.Send()
  3885  }
  3886  
  3887  // DescribeEffectiveInstanceAssociationsWithContext is the same as DescribeEffectiveInstanceAssociations with the addition of
  3888  // the ability to pass a context and additional request options.
  3889  //
  3890  // See DescribeEffectiveInstanceAssociations for details on how to use this API operation.
  3891  //
  3892  // The context must be non-nil and will be used for request cancellation. If
  3893  // the context is nil a panic will occur. In the future the SDK may create
  3894  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3895  // for more information on using Contexts.
  3896  func (c *SSM) DescribeEffectiveInstanceAssociationsWithContext(ctx aws.Context, input *DescribeEffectiveInstanceAssociationsInput, opts ...request.Option) (*DescribeEffectiveInstanceAssociationsOutput, error) {
  3897  	req, out := c.DescribeEffectiveInstanceAssociationsRequest(input)
  3898  	req.SetContext(ctx)
  3899  	req.ApplyOptions(opts...)
  3900  	return out, req.Send()
  3901  }
  3902  
  3903  // DescribeEffectiveInstanceAssociationsPages iterates over the pages of a DescribeEffectiveInstanceAssociations operation,
  3904  // calling the "fn" function with the response data for each page. To stop
  3905  // iterating, return false from the fn function.
  3906  //
  3907  // See DescribeEffectiveInstanceAssociations method for more information on how to use this operation.
  3908  //
  3909  // Note: This operation can generate multiple requests to a service.
  3910  //
  3911  //    // Example iterating over at most 3 pages of a DescribeEffectiveInstanceAssociations operation.
  3912  //    pageNum := 0
  3913  //    err := client.DescribeEffectiveInstanceAssociationsPages(params,
  3914  //        func(page *ssm.DescribeEffectiveInstanceAssociationsOutput, lastPage bool) bool {
  3915  //            pageNum++
  3916  //            fmt.Println(page)
  3917  //            return pageNum <= 3
  3918  //        })
  3919  //
  3920  func (c *SSM) DescribeEffectiveInstanceAssociationsPages(input *DescribeEffectiveInstanceAssociationsInput, fn func(*DescribeEffectiveInstanceAssociationsOutput, bool) bool) error {
  3921  	return c.DescribeEffectiveInstanceAssociationsPagesWithContext(aws.BackgroundContext(), input, fn)
  3922  }
  3923  
  3924  // DescribeEffectiveInstanceAssociationsPagesWithContext same as DescribeEffectiveInstanceAssociationsPages except
  3925  // it takes a Context and allows setting request options on the pages.
  3926  //
  3927  // The context must be non-nil and will be used for request cancellation. If
  3928  // the context is nil a panic will occur. In the future the SDK may create
  3929  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3930  // for more information on using Contexts.
  3931  func (c *SSM) DescribeEffectiveInstanceAssociationsPagesWithContext(ctx aws.Context, input *DescribeEffectiveInstanceAssociationsInput, fn func(*DescribeEffectiveInstanceAssociationsOutput, bool) bool, opts ...request.Option) error {
  3932  	p := request.Pagination{
  3933  		NewRequest: func() (*request.Request, error) {
  3934  			var inCpy *DescribeEffectiveInstanceAssociationsInput
  3935  			if input != nil {
  3936  				tmp := *input
  3937  				inCpy = &tmp
  3938  			}
  3939  			req, _ := c.DescribeEffectiveInstanceAssociationsRequest(inCpy)
  3940  			req.SetContext(ctx)
  3941  			req.ApplyOptions(opts...)
  3942  			return req, nil
  3943  		},
  3944  	}
  3945  
  3946  	for p.Next() {
  3947  		if !fn(p.Page().(*DescribeEffectiveInstanceAssociationsOutput), !p.HasNextPage()) {
  3948  			break
  3949  		}
  3950  	}
  3951  
  3952  	return p.Err()
  3953  }
  3954  
  3955  const opDescribeEffectivePatchesForPatchBaseline = "DescribeEffectivePatchesForPatchBaseline"
  3956  
  3957  // DescribeEffectivePatchesForPatchBaselineRequest generates a "aws/request.Request" representing the
  3958  // client's request for the DescribeEffectivePatchesForPatchBaseline operation. The "output" return
  3959  // value will be populated with the request's response once the request completes
  3960  // successfully.
  3961  //
  3962  // Use "Send" method on the returned Request to send the API call to the service.
  3963  // the "output" return value is not valid until after Send returns without error.
  3964  //
  3965  // See DescribeEffectivePatchesForPatchBaseline for more information on using the DescribeEffectivePatchesForPatchBaseline
  3966  // API call, and error handling.
  3967  //
  3968  // This method is useful when you want to inject custom logic or configuration
  3969  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3970  //
  3971  //
  3972  //    // Example sending a request using the DescribeEffectivePatchesForPatchBaselineRequest method.
  3973  //    req, resp := client.DescribeEffectivePatchesForPatchBaselineRequest(params)
  3974  //
  3975  //    err := req.Send()
  3976  //    if err == nil { // resp is now filled
  3977  //        fmt.Println(resp)
  3978  //    }
  3979  //
  3980  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeEffectivePatchesForPatchBaseline
  3981  func (c *SSM) DescribeEffectivePatchesForPatchBaselineRequest(input *DescribeEffectivePatchesForPatchBaselineInput) (req *request.Request, output *DescribeEffectivePatchesForPatchBaselineOutput) {
  3982  	op := &request.Operation{
  3983  		Name:       opDescribeEffectivePatchesForPatchBaseline,
  3984  		HTTPMethod: "POST",
  3985  		HTTPPath:   "/",
  3986  		Paginator: &request.Paginator{
  3987  			InputTokens:     []string{"NextToken"},
  3988  			OutputTokens:    []string{"NextToken"},
  3989  			LimitToken:      "MaxResults",
  3990  			TruncationToken: "",
  3991  		},
  3992  	}
  3993  
  3994  	if input == nil {
  3995  		input = &DescribeEffectivePatchesForPatchBaselineInput{}
  3996  	}
  3997  
  3998  	output = &DescribeEffectivePatchesForPatchBaselineOutput{}
  3999  	req = c.newRequest(op, input, output)
  4000  	return
  4001  }
  4002  
  4003  // DescribeEffectivePatchesForPatchBaseline API operation for Amazon Simple Systems Manager (SSM).
  4004  //
  4005  // Retrieves the current effective patches (the patch and the approval state)
  4006  // for the specified patch baseline. Applies to patch baselines for Windows
  4007  // only.
  4008  //
  4009  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4010  // with awserr.Error's Code and Message methods to get detailed information about
  4011  // the error.
  4012  //
  4013  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  4014  // API operation DescribeEffectivePatchesForPatchBaseline for usage and error information.
  4015  //
  4016  // Returned Error Types:
  4017  //   * InvalidResourceId
  4018  //   The resource ID isn't valid. Verify that you entered the correct ID and try
  4019  //   again.
  4020  //
  4021  //   * DoesNotExistException
  4022  //   Error returned when the ID specified for a resource, such as a maintenance
  4023  //   window or patch baseline, doesn't exist.
  4024  //
  4025  //   For information about resource quotas in Amazon Web Services Systems Manager,
  4026  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  4027  //   in the Amazon Web Services General Reference.
  4028  //
  4029  //   * UnsupportedOperatingSystem
  4030  //   The operating systems you specified isn't supported, or the operation isn't
  4031  //   supported for the operating system.
  4032  //
  4033  //   * InternalServerError
  4034  //   An error occurred on the server side.
  4035  //
  4036  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeEffectivePatchesForPatchBaseline
  4037  func (c *SSM) DescribeEffectivePatchesForPatchBaseline(input *DescribeEffectivePatchesForPatchBaselineInput) (*DescribeEffectivePatchesForPatchBaselineOutput, error) {
  4038  	req, out := c.DescribeEffectivePatchesForPatchBaselineRequest(input)
  4039  	return out, req.Send()
  4040  }
  4041  
  4042  // DescribeEffectivePatchesForPatchBaselineWithContext is the same as DescribeEffectivePatchesForPatchBaseline with the addition of
  4043  // the ability to pass a context and additional request options.
  4044  //
  4045  // See DescribeEffectivePatchesForPatchBaseline for details on how to use this API operation.
  4046  //
  4047  // The context must be non-nil and will be used for request cancellation. If
  4048  // the context is nil a panic will occur. In the future the SDK may create
  4049  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4050  // for more information on using Contexts.
  4051  func (c *SSM) DescribeEffectivePatchesForPatchBaselineWithContext(ctx aws.Context, input *DescribeEffectivePatchesForPatchBaselineInput, opts ...request.Option) (*DescribeEffectivePatchesForPatchBaselineOutput, error) {
  4052  	req, out := c.DescribeEffectivePatchesForPatchBaselineRequest(input)
  4053  	req.SetContext(ctx)
  4054  	req.ApplyOptions(opts...)
  4055  	return out, req.Send()
  4056  }
  4057  
  4058  // DescribeEffectivePatchesForPatchBaselinePages iterates over the pages of a DescribeEffectivePatchesForPatchBaseline operation,
  4059  // calling the "fn" function with the response data for each page. To stop
  4060  // iterating, return false from the fn function.
  4061  //
  4062  // See DescribeEffectivePatchesForPatchBaseline method for more information on how to use this operation.
  4063  //
  4064  // Note: This operation can generate multiple requests to a service.
  4065  //
  4066  //    // Example iterating over at most 3 pages of a DescribeEffectivePatchesForPatchBaseline operation.
  4067  //    pageNum := 0
  4068  //    err := client.DescribeEffectivePatchesForPatchBaselinePages(params,
  4069  //        func(page *ssm.DescribeEffectivePatchesForPatchBaselineOutput, lastPage bool) bool {
  4070  //            pageNum++
  4071  //            fmt.Println(page)
  4072  //            return pageNum <= 3
  4073  //        })
  4074  //
  4075  func (c *SSM) DescribeEffectivePatchesForPatchBaselinePages(input *DescribeEffectivePatchesForPatchBaselineInput, fn func(*DescribeEffectivePatchesForPatchBaselineOutput, bool) bool) error {
  4076  	return c.DescribeEffectivePatchesForPatchBaselinePagesWithContext(aws.BackgroundContext(), input, fn)
  4077  }
  4078  
  4079  // DescribeEffectivePatchesForPatchBaselinePagesWithContext same as DescribeEffectivePatchesForPatchBaselinePages except
  4080  // it takes a Context and allows setting request options on the pages.
  4081  //
  4082  // The context must be non-nil and will be used for request cancellation. If
  4083  // the context is nil a panic will occur. In the future the SDK may create
  4084  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4085  // for more information on using Contexts.
  4086  func (c *SSM) DescribeEffectivePatchesForPatchBaselinePagesWithContext(ctx aws.Context, input *DescribeEffectivePatchesForPatchBaselineInput, fn func(*DescribeEffectivePatchesForPatchBaselineOutput, bool) bool, opts ...request.Option) error {
  4087  	p := request.Pagination{
  4088  		NewRequest: func() (*request.Request, error) {
  4089  			var inCpy *DescribeEffectivePatchesForPatchBaselineInput
  4090  			if input != nil {
  4091  				tmp := *input
  4092  				inCpy = &tmp
  4093  			}
  4094  			req, _ := c.DescribeEffectivePatchesForPatchBaselineRequest(inCpy)
  4095  			req.SetContext(ctx)
  4096  			req.ApplyOptions(opts...)
  4097  			return req, nil
  4098  		},
  4099  	}
  4100  
  4101  	for p.Next() {
  4102  		if !fn(p.Page().(*DescribeEffectivePatchesForPatchBaselineOutput), !p.HasNextPage()) {
  4103  			break
  4104  		}
  4105  	}
  4106  
  4107  	return p.Err()
  4108  }
  4109  
  4110  const opDescribeInstanceAssociationsStatus = "DescribeInstanceAssociationsStatus"
  4111  
  4112  // DescribeInstanceAssociationsStatusRequest generates a "aws/request.Request" representing the
  4113  // client's request for the DescribeInstanceAssociationsStatus operation. The "output" return
  4114  // value will be populated with the request's response once the request completes
  4115  // successfully.
  4116  //
  4117  // Use "Send" method on the returned Request to send the API call to the service.
  4118  // the "output" return value is not valid until after Send returns without error.
  4119  //
  4120  // See DescribeInstanceAssociationsStatus for more information on using the DescribeInstanceAssociationsStatus
  4121  // API call, and error handling.
  4122  //
  4123  // This method is useful when you want to inject custom logic or configuration
  4124  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4125  //
  4126  //
  4127  //    // Example sending a request using the DescribeInstanceAssociationsStatusRequest method.
  4128  //    req, resp := client.DescribeInstanceAssociationsStatusRequest(params)
  4129  //
  4130  //    err := req.Send()
  4131  //    if err == nil { // resp is now filled
  4132  //        fmt.Println(resp)
  4133  //    }
  4134  //
  4135  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstanceAssociationsStatus
  4136  func (c *SSM) DescribeInstanceAssociationsStatusRequest(input *DescribeInstanceAssociationsStatusInput) (req *request.Request, output *DescribeInstanceAssociationsStatusOutput) {
  4137  	op := &request.Operation{
  4138  		Name:       opDescribeInstanceAssociationsStatus,
  4139  		HTTPMethod: "POST",
  4140  		HTTPPath:   "/",
  4141  		Paginator: &request.Paginator{
  4142  			InputTokens:     []string{"NextToken"},
  4143  			OutputTokens:    []string{"NextToken"},
  4144  			LimitToken:      "MaxResults",
  4145  			TruncationToken: "",
  4146  		},
  4147  	}
  4148  
  4149  	if input == nil {
  4150  		input = &DescribeInstanceAssociationsStatusInput{}
  4151  	}
  4152  
  4153  	output = &DescribeInstanceAssociationsStatusOutput{}
  4154  	req = c.newRequest(op, input, output)
  4155  	return
  4156  }
  4157  
  4158  // DescribeInstanceAssociationsStatus API operation for Amazon Simple Systems Manager (SSM).
  4159  //
  4160  // The status of the associations for the instance(s).
  4161  //
  4162  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4163  // with awserr.Error's Code and Message methods to get detailed information about
  4164  // the error.
  4165  //
  4166  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  4167  // API operation DescribeInstanceAssociationsStatus for usage and error information.
  4168  //
  4169  // Returned Error Types:
  4170  //   * InternalServerError
  4171  //   An error occurred on the server side.
  4172  //
  4173  //   * InvalidInstanceId
  4174  //   The following problems can cause this exception:
  4175  //
  4176  //      * You don't have permission to access the instance.
  4177  //
  4178  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
  4179  //      Verify that SSM Agent is running.
  4180  //
  4181  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
  4182  //      Agent.
  4183  //
  4184  //      * The instance isn't in valid state. Valid states are: Running, Pending,
  4185  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
  4186  //
  4187  //   * InvalidNextToken
  4188  //   The specified token isn't valid.
  4189  //
  4190  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstanceAssociationsStatus
  4191  func (c *SSM) DescribeInstanceAssociationsStatus(input *DescribeInstanceAssociationsStatusInput) (*DescribeInstanceAssociationsStatusOutput, error) {
  4192  	req, out := c.DescribeInstanceAssociationsStatusRequest(input)
  4193  	return out, req.Send()
  4194  }
  4195  
  4196  // DescribeInstanceAssociationsStatusWithContext is the same as DescribeInstanceAssociationsStatus with the addition of
  4197  // the ability to pass a context and additional request options.
  4198  //
  4199  // See DescribeInstanceAssociationsStatus for details on how to use this API operation.
  4200  //
  4201  // The context must be non-nil and will be used for request cancellation. If
  4202  // the context is nil a panic will occur. In the future the SDK may create
  4203  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4204  // for more information on using Contexts.
  4205  func (c *SSM) DescribeInstanceAssociationsStatusWithContext(ctx aws.Context, input *DescribeInstanceAssociationsStatusInput, opts ...request.Option) (*DescribeInstanceAssociationsStatusOutput, error) {
  4206  	req, out := c.DescribeInstanceAssociationsStatusRequest(input)
  4207  	req.SetContext(ctx)
  4208  	req.ApplyOptions(opts...)
  4209  	return out, req.Send()
  4210  }
  4211  
  4212  // DescribeInstanceAssociationsStatusPages iterates over the pages of a DescribeInstanceAssociationsStatus operation,
  4213  // calling the "fn" function with the response data for each page. To stop
  4214  // iterating, return false from the fn function.
  4215  //
  4216  // See DescribeInstanceAssociationsStatus method for more information on how to use this operation.
  4217  //
  4218  // Note: This operation can generate multiple requests to a service.
  4219  //
  4220  //    // Example iterating over at most 3 pages of a DescribeInstanceAssociationsStatus operation.
  4221  //    pageNum := 0
  4222  //    err := client.DescribeInstanceAssociationsStatusPages(params,
  4223  //        func(page *ssm.DescribeInstanceAssociationsStatusOutput, lastPage bool) bool {
  4224  //            pageNum++
  4225  //            fmt.Println(page)
  4226  //            return pageNum <= 3
  4227  //        })
  4228  //
  4229  func (c *SSM) DescribeInstanceAssociationsStatusPages(input *DescribeInstanceAssociationsStatusInput, fn func(*DescribeInstanceAssociationsStatusOutput, bool) bool) error {
  4230  	return c.DescribeInstanceAssociationsStatusPagesWithContext(aws.BackgroundContext(), input, fn)
  4231  }
  4232  
  4233  // DescribeInstanceAssociationsStatusPagesWithContext same as DescribeInstanceAssociationsStatusPages except
  4234  // it takes a Context and allows setting request options on the pages.
  4235  //
  4236  // The context must be non-nil and will be used for request cancellation. If
  4237  // the context is nil a panic will occur. In the future the SDK may create
  4238  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4239  // for more information on using Contexts.
  4240  func (c *SSM) DescribeInstanceAssociationsStatusPagesWithContext(ctx aws.Context, input *DescribeInstanceAssociationsStatusInput, fn func(*DescribeInstanceAssociationsStatusOutput, bool) bool, opts ...request.Option) error {
  4241  	p := request.Pagination{
  4242  		NewRequest: func() (*request.Request, error) {
  4243  			var inCpy *DescribeInstanceAssociationsStatusInput
  4244  			if input != nil {
  4245  				tmp := *input
  4246  				inCpy = &tmp
  4247  			}
  4248  			req, _ := c.DescribeInstanceAssociationsStatusRequest(inCpy)
  4249  			req.SetContext(ctx)
  4250  			req.ApplyOptions(opts...)
  4251  			return req, nil
  4252  		},
  4253  	}
  4254  
  4255  	for p.Next() {
  4256  		if !fn(p.Page().(*DescribeInstanceAssociationsStatusOutput), !p.HasNextPage()) {
  4257  			break
  4258  		}
  4259  	}
  4260  
  4261  	return p.Err()
  4262  }
  4263  
  4264  const opDescribeInstanceInformation = "DescribeInstanceInformation"
  4265  
  4266  // DescribeInstanceInformationRequest generates a "aws/request.Request" representing the
  4267  // client's request for the DescribeInstanceInformation operation. The "output" return
  4268  // value will be populated with the request's response once the request completes
  4269  // successfully.
  4270  //
  4271  // Use "Send" method on the returned Request to send the API call to the service.
  4272  // the "output" return value is not valid until after Send returns without error.
  4273  //
  4274  // See DescribeInstanceInformation for more information on using the DescribeInstanceInformation
  4275  // API call, and error handling.
  4276  //
  4277  // This method is useful when you want to inject custom logic or configuration
  4278  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4279  //
  4280  //
  4281  //    // Example sending a request using the DescribeInstanceInformationRequest method.
  4282  //    req, resp := client.DescribeInstanceInformationRequest(params)
  4283  //
  4284  //    err := req.Send()
  4285  //    if err == nil { // resp is now filled
  4286  //        fmt.Println(resp)
  4287  //    }
  4288  //
  4289  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstanceInformation
  4290  func (c *SSM) DescribeInstanceInformationRequest(input *DescribeInstanceInformationInput) (req *request.Request, output *DescribeInstanceInformationOutput) {
  4291  	op := &request.Operation{
  4292  		Name:       opDescribeInstanceInformation,
  4293  		HTTPMethod: "POST",
  4294  		HTTPPath:   "/",
  4295  		Paginator: &request.Paginator{
  4296  			InputTokens:     []string{"NextToken"},
  4297  			OutputTokens:    []string{"NextToken"},
  4298  			LimitToken:      "MaxResults",
  4299  			TruncationToken: "",
  4300  		},
  4301  	}
  4302  
  4303  	if input == nil {
  4304  		input = &DescribeInstanceInformationInput{}
  4305  	}
  4306  
  4307  	output = &DescribeInstanceInformationOutput{}
  4308  	req = c.newRequest(op, input, output)
  4309  	return
  4310  }
  4311  
  4312  // DescribeInstanceInformation API operation for Amazon Simple Systems Manager (SSM).
  4313  //
  4314  // Describes one or more of your instances, including information about the
  4315  // operating system platform, the version of SSM Agent installed on the instance,
  4316  // instance status, and so on.
  4317  //
  4318  // If you specify one or more instance IDs, it returns information for those
  4319  // instances. If you don't specify instance IDs, it returns information for
  4320  // all your instances. If you specify an instance ID that isn't valid or an
  4321  // instance that you don't own, you receive an error.
  4322  //
  4323  // The IamRole field for this API operation is the Identity and Access Management
  4324  // (IAM) role assigned to on-premises instances. This call doesn't return the
  4325  // IAM role for EC2 instances.
  4326  //
  4327  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4328  // with awserr.Error's Code and Message methods to get detailed information about
  4329  // the error.
  4330  //
  4331  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  4332  // API operation DescribeInstanceInformation for usage and error information.
  4333  //
  4334  // Returned Error Types:
  4335  //   * InternalServerError
  4336  //   An error occurred on the server side.
  4337  //
  4338  //   * InvalidInstanceId
  4339  //   The following problems can cause this exception:
  4340  //
  4341  //      * You don't have permission to access the instance.
  4342  //
  4343  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
  4344  //      Verify that SSM Agent is running.
  4345  //
  4346  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
  4347  //      Agent.
  4348  //
  4349  //      * The instance isn't in valid state. Valid states are: Running, Pending,
  4350  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
  4351  //
  4352  //   * InvalidNextToken
  4353  //   The specified token isn't valid.
  4354  //
  4355  //   * InvalidInstanceInformationFilterValue
  4356  //   The specified filter value isn't valid.
  4357  //
  4358  //   * InvalidFilterKey
  4359  //   The specified key isn't valid.
  4360  //
  4361  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstanceInformation
  4362  func (c *SSM) DescribeInstanceInformation(input *DescribeInstanceInformationInput) (*DescribeInstanceInformationOutput, error) {
  4363  	req, out := c.DescribeInstanceInformationRequest(input)
  4364  	return out, req.Send()
  4365  }
  4366  
  4367  // DescribeInstanceInformationWithContext is the same as DescribeInstanceInformation with the addition of
  4368  // the ability to pass a context and additional request options.
  4369  //
  4370  // See DescribeInstanceInformation for details on how to use this API operation.
  4371  //
  4372  // The context must be non-nil and will be used for request cancellation. If
  4373  // the context is nil a panic will occur. In the future the SDK may create
  4374  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4375  // for more information on using Contexts.
  4376  func (c *SSM) DescribeInstanceInformationWithContext(ctx aws.Context, input *DescribeInstanceInformationInput, opts ...request.Option) (*DescribeInstanceInformationOutput, error) {
  4377  	req, out := c.DescribeInstanceInformationRequest(input)
  4378  	req.SetContext(ctx)
  4379  	req.ApplyOptions(opts...)
  4380  	return out, req.Send()
  4381  }
  4382  
  4383  // DescribeInstanceInformationPages iterates over the pages of a DescribeInstanceInformation operation,
  4384  // calling the "fn" function with the response data for each page. To stop
  4385  // iterating, return false from the fn function.
  4386  //
  4387  // See DescribeInstanceInformation method for more information on how to use this operation.
  4388  //
  4389  // Note: This operation can generate multiple requests to a service.
  4390  //
  4391  //    // Example iterating over at most 3 pages of a DescribeInstanceInformation operation.
  4392  //    pageNum := 0
  4393  //    err := client.DescribeInstanceInformationPages(params,
  4394  //        func(page *ssm.DescribeInstanceInformationOutput, lastPage bool) bool {
  4395  //            pageNum++
  4396  //            fmt.Println(page)
  4397  //            return pageNum <= 3
  4398  //        })
  4399  //
  4400  func (c *SSM) DescribeInstanceInformationPages(input *DescribeInstanceInformationInput, fn func(*DescribeInstanceInformationOutput, bool) bool) error {
  4401  	return c.DescribeInstanceInformationPagesWithContext(aws.BackgroundContext(), input, fn)
  4402  }
  4403  
  4404  // DescribeInstanceInformationPagesWithContext same as DescribeInstanceInformationPages except
  4405  // it takes a Context and allows setting request options on the pages.
  4406  //
  4407  // The context must be non-nil and will be used for request cancellation. If
  4408  // the context is nil a panic will occur. In the future the SDK may create
  4409  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4410  // for more information on using Contexts.
  4411  func (c *SSM) DescribeInstanceInformationPagesWithContext(ctx aws.Context, input *DescribeInstanceInformationInput, fn func(*DescribeInstanceInformationOutput, bool) bool, opts ...request.Option) error {
  4412  	p := request.Pagination{
  4413  		NewRequest: func() (*request.Request, error) {
  4414  			var inCpy *DescribeInstanceInformationInput
  4415  			if input != nil {
  4416  				tmp := *input
  4417  				inCpy = &tmp
  4418  			}
  4419  			req, _ := c.DescribeInstanceInformationRequest(inCpy)
  4420  			req.SetContext(ctx)
  4421  			req.ApplyOptions(opts...)
  4422  			return req, nil
  4423  		},
  4424  	}
  4425  
  4426  	for p.Next() {
  4427  		if !fn(p.Page().(*DescribeInstanceInformationOutput), !p.HasNextPage()) {
  4428  			break
  4429  		}
  4430  	}
  4431  
  4432  	return p.Err()
  4433  }
  4434  
  4435  const opDescribeInstancePatchStates = "DescribeInstancePatchStates"
  4436  
  4437  // DescribeInstancePatchStatesRequest generates a "aws/request.Request" representing the
  4438  // client's request for the DescribeInstancePatchStates operation. The "output" return
  4439  // value will be populated with the request's response once the request completes
  4440  // successfully.
  4441  //
  4442  // Use "Send" method on the returned Request to send the API call to the service.
  4443  // the "output" return value is not valid until after Send returns without error.
  4444  //
  4445  // See DescribeInstancePatchStates for more information on using the DescribeInstancePatchStates
  4446  // API call, and error handling.
  4447  //
  4448  // This method is useful when you want to inject custom logic or configuration
  4449  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4450  //
  4451  //
  4452  //    // Example sending a request using the DescribeInstancePatchStatesRequest method.
  4453  //    req, resp := client.DescribeInstancePatchStatesRequest(params)
  4454  //
  4455  //    err := req.Send()
  4456  //    if err == nil { // resp is now filled
  4457  //        fmt.Println(resp)
  4458  //    }
  4459  //
  4460  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatchStates
  4461  func (c *SSM) DescribeInstancePatchStatesRequest(input *DescribeInstancePatchStatesInput) (req *request.Request, output *DescribeInstancePatchStatesOutput) {
  4462  	op := &request.Operation{
  4463  		Name:       opDescribeInstancePatchStates,
  4464  		HTTPMethod: "POST",
  4465  		HTTPPath:   "/",
  4466  		Paginator: &request.Paginator{
  4467  			InputTokens:     []string{"NextToken"},
  4468  			OutputTokens:    []string{"NextToken"},
  4469  			LimitToken:      "MaxResults",
  4470  			TruncationToken: "",
  4471  		},
  4472  	}
  4473  
  4474  	if input == nil {
  4475  		input = &DescribeInstancePatchStatesInput{}
  4476  	}
  4477  
  4478  	output = &DescribeInstancePatchStatesOutput{}
  4479  	req = c.newRequest(op, input, output)
  4480  	return
  4481  }
  4482  
  4483  // DescribeInstancePatchStates API operation for Amazon Simple Systems Manager (SSM).
  4484  //
  4485  // Retrieves the high-level patch state of one or more instances.
  4486  //
  4487  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4488  // with awserr.Error's Code and Message methods to get detailed information about
  4489  // the error.
  4490  //
  4491  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  4492  // API operation DescribeInstancePatchStates for usage and error information.
  4493  //
  4494  // Returned Error Types:
  4495  //   * InternalServerError
  4496  //   An error occurred on the server side.
  4497  //
  4498  //   * InvalidNextToken
  4499  //   The specified token isn't valid.
  4500  //
  4501  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatchStates
  4502  func (c *SSM) DescribeInstancePatchStates(input *DescribeInstancePatchStatesInput) (*DescribeInstancePatchStatesOutput, error) {
  4503  	req, out := c.DescribeInstancePatchStatesRequest(input)
  4504  	return out, req.Send()
  4505  }
  4506  
  4507  // DescribeInstancePatchStatesWithContext is the same as DescribeInstancePatchStates with the addition of
  4508  // the ability to pass a context and additional request options.
  4509  //
  4510  // See DescribeInstancePatchStates for details on how to use this API operation.
  4511  //
  4512  // The context must be non-nil and will be used for request cancellation. If
  4513  // the context is nil a panic will occur. In the future the SDK may create
  4514  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4515  // for more information on using Contexts.
  4516  func (c *SSM) DescribeInstancePatchStatesWithContext(ctx aws.Context, input *DescribeInstancePatchStatesInput, opts ...request.Option) (*DescribeInstancePatchStatesOutput, error) {
  4517  	req, out := c.DescribeInstancePatchStatesRequest(input)
  4518  	req.SetContext(ctx)
  4519  	req.ApplyOptions(opts...)
  4520  	return out, req.Send()
  4521  }
  4522  
  4523  // DescribeInstancePatchStatesPages iterates over the pages of a DescribeInstancePatchStates operation,
  4524  // calling the "fn" function with the response data for each page. To stop
  4525  // iterating, return false from the fn function.
  4526  //
  4527  // See DescribeInstancePatchStates method for more information on how to use this operation.
  4528  //
  4529  // Note: This operation can generate multiple requests to a service.
  4530  //
  4531  //    // Example iterating over at most 3 pages of a DescribeInstancePatchStates operation.
  4532  //    pageNum := 0
  4533  //    err := client.DescribeInstancePatchStatesPages(params,
  4534  //        func(page *ssm.DescribeInstancePatchStatesOutput, lastPage bool) bool {
  4535  //            pageNum++
  4536  //            fmt.Println(page)
  4537  //            return pageNum <= 3
  4538  //        })
  4539  //
  4540  func (c *SSM) DescribeInstancePatchStatesPages(input *DescribeInstancePatchStatesInput, fn func(*DescribeInstancePatchStatesOutput, bool) bool) error {
  4541  	return c.DescribeInstancePatchStatesPagesWithContext(aws.BackgroundContext(), input, fn)
  4542  }
  4543  
  4544  // DescribeInstancePatchStatesPagesWithContext same as DescribeInstancePatchStatesPages except
  4545  // it takes a Context and allows setting request options on the pages.
  4546  //
  4547  // The context must be non-nil and will be used for request cancellation. If
  4548  // the context is nil a panic will occur. In the future the SDK may create
  4549  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4550  // for more information on using Contexts.
  4551  func (c *SSM) DescribeInstancePatchStatesPagesWithContext(ctx aws.Context, input *DescribeInstancePatchStatesInput, fn func(*DescribeInstancePatchStatesOutput, bool) bool, opts ...request.Option) error {
  4552  	p := request.Pagination{
  4553  		NewRequest: func() (*request.Request, error) {
  4554  			var inCpy *DescribeInstancePatchStatesInput
  4555  			if input != nil {
  4556  				tmp := *input
  4557  				inCpy = &tmp
  4558  			}
  4559  			req, _ := c.DescribeInstancePatchStatesRequest(inCpy)
  4560  			req.SetContext(ctx)
  4561  			req.ApplyOptions(opts...)
  4562  			return req, nil
  4563  		},
  4564  	}
  4565  
  4566  	for p.Next() {
  4567  		if !fn(p.Page().(*DescribeInstancePatchStatesOutput), !p.HasNextPage()) {
  4568  			break
  4569  		}
  4570  	}
  4571  
  4572  	return p.Err()
  4573  }
  4574  
  4575  const opDescribeInstancePatchStatesForPatchGroup = "DescribeInstancePatchStatesForPatchGroup"
  4576  
  4577  // DescribeInstancePatchStatesForPatchGroupRequest generates a "aws/request.Request" representing the
  4578  // client's request for the DescribeInstancePatchStatesForPatchGroup operation. The "output" return
  4579  // value will be populated with the request's response once the request completes
  4580  // successfully.
  4581  //
  4582  // Use "Send" method on the returned Request to send the API call to the service.
  4583  // the "output" return value is not valid until after Send returns without error.
  4584  //
  4585  // See DescribeInstancePatchStatesForPatchGroup for more information on using the DescribeInstancePatchStatesForPatchGroup
  4586  // API call, and error handling.
  4587  //
  4588  // This method is useful when you want to inject custom logic or configuration
  4589  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4590  //
  4591  //
  4592  //    // Example sending a request using the DescribeInstancePatchStatesForPatchGroupRequest method.
  4593  //    req, resp := client.DescribeInstancePatchStatesForPatchGroupRequest(params)
  4594  //
  4595  //    err := req.Send()
  4596  //    if err == nil { // resp is now filled
  4597  //        fmt.Println(resp)
  4598  //    }
  4599  //
  4600  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatchStatesForPatchGroup
  4601  func (c *SSM) DescribeInstancePatchStatesForPatchGroupRequest(input *DescribeInstancePatchStatesForPatchGroupInput) (req *request.Request, output *DescribeInstancePatchStatesForPatchGroupOutput) {
  4602  	op := &request.Operation{
  4603  		Name:       opDescribeInstancePatchStatesForPatchGroup,
  4604  		HTTPMethod: "POST",
  4605  		HTTPPath:   "/",
  4606  		Paginator: &request.Paginator{
  4607  			InputTokens:     []string{"NextToken"},
  4608  			OutputTokens:    []string{"NextToken"},
  4609  			LimitToken:      "MaxResults",
  4610  			TruncationToken: "",
  4611  		},
  4612  	}
  4613  
  4614  	if input == nil {
  4615  		input = &DescribeInstancePatchStatesForPatchGroupInput{}
  4616  	}
  4617  
  4618  	output = &DescribeInstancePatchStatesForPatchGroupOutput{}
  4619  	req = c.newRequest(op, input, output)
  4620  	return
  4621  }
  4622  
  4623  // DescribeInstancePatchStatesForPatchGroup API operation for Amazon Simple Systems Manager (SSM).
  4624  //
  4625  // Retrieves the high-level patch state for the instances in the specified patch
  4626  // group.
  4627  //
  4628  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4629  // with awserr.Error's Code and Message methods to get detailed information about
  4630  // the error.
  4631  //
  4632  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  4633  // API operation DescribeInstancePatchStatesForPatchGroup for usage and error information.
  4634  //
  4635  // Returned Error Types:
  4636  //   * InternalServerError
  4637  //   An error occurred on the server side.
  4638  //
  4639  //   * InvalidFilter
  4640  //   The filter name isn't valid. Verify the you entered the correct name and
  4641  //   try again.
  4642  //
  4643  //   * InvalidNextToken
  4644  //   The specified token isn't valid.
  4645  //
  4646  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatchStatesForPatchGroup
  4647  func (c *SSM) DescribeInstancePatchStatesForPatchGroup(input *DescribeInstancePatchStatesForPatchGroupInput) (*DescribeInstancePatchStatesForPatchGroupOutput, error) {
  4648  	req, out := c.DescribeInstancePatchStatesForPatchGroupRequest(input)
  4649  	return out, req.Send()
  4650  }
  4651  
  4652  // DescribeInstancePatchStatesForPatchGroupWithContext is the same as DescribeInstancePatchStatesForPatchGroup with the addition of
  4653  // the ability to pass a context and additional request options.
  4654  //
  4655  // See DescribeInstancePatchStatesForPatchGroup for details on how to use this API operation.
  4656  //
  4657  // The context must be non-nil and will be used for request cancellation. If
  4658  // the context is nil a panic will occur. In the future the SDK may create
  4659  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4660  // for more information on using Contexts.
  4661  func (c *SSM) DescribeInstancePatchStatesForPatchGroupWithContext(ctx aws.Context, input *DescribeInstancePatchStatesForPatchGroupInput, opts ...request.Option) (*DescribeInstancePatchStatesForPatchGroupOutput, error) {
  4662  	req, out := c.DescribeInstancePatchStatesForPatchGroupRequest(input)
  4663  	req.SetContext(ctx)
  4664  	req.ApplyOptions(opts...)
  4665  	return out, req.Send()
  4666  }
  4667  
  4668  // DescribeInstancePatchStatesForPatchGroupPages iterates over the pages of a DescribeInstancePatchStatesForPatchGroup operation,
  4669  // calling the "fn" function with the response data for each page. To stop
  4670  // iterating, return false from the fn function.
  4671  //
  4672  // See DescribeInstancePatchStatesForPatchGroup method for more information on how to use this operation.
  4673  //
  4674  // Note: This operation can generate multiple requests to a service.
  4675  //
  4676  //    // Example iterating over at most 3 pages of a DescribeInstancePatchStatesForPatchGroup operation.
  4677  //    pageNum := 0
  4678  //    err := client.DescribeInstancePatchStatesForPatchGroupPages(params,
  4679  //        func(page *ssm.DescribeInstancePatchStatesForPatchGroupOutput, lastPage bool) bool {
  4680  //            pageNum++
  4681  //            fmt.Println(page)
  4682  //            return pageNum <= 3
  4683  //        })
  4684  //
  4685  func (c *SSM) DescribeInstancePatchStatesForPatchGroupPages(input *DescribeInstancePatchStatesForPatchGroupInput, fn func(*DescribeInstancePatchStatesForPatchGroupOutput, bool) bool) error {
  4686  	return c.DescribeInstancePatchStatesForPatchGroupPagesWithContext(aws.BackgroundContext(), input, fn)
  4687  }
  4688  
  4689  // DescribeInstancePatchStatesForPatchGroupPagesWithContext same as DescribeInstancePatchStatesForPatchGroupPages except
  4690  // it takes a Context and allows setting request options on the pages.
  4691  //
  4692  // The context must be non-nil and will be used for request cancellation. If
  4693  // the context is nil a panic will occur. In the future the SDK may create
  4694  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4695  // for more information on using Contexts.
  4696  func (c *SSM) DescribeInstancePatchStatesForPatchGroupPagesWithContext(ctx aws.Context, input *DescribeInstancePatchStatesForPatchGroupInput, fn func(*DescribeInstancePatchStatesForPatchGroupOutput, bool) bool, opts ...request.Option) error {
  4697  	p := request.Pagination{
  4698  		NewRequest: func() (*request.Request, error) {
  4699  			var inCpy *DescribeInstancePatchStatesForPatchGroupInput
  4700  			if input != nil {
  4701  				tmp := *input
  4702  				inCpy = &tmp
  4703  			}
  4704  			req, _ := c.DescribeInstancePatchStatesForPatchGroupRequest(inCpy)
  4705  			req.SetContext(ctx)
  4706  			req.ApplyOptions(opts...)
  4707  			return req, nil
  4708  		},
  4709  	}
  4710  
  4711  	for p.Next() {
  4712  		if !fn(p.Page().(*DescribeInstancePatchStatesForPatchGroupOutput), !p.HasNextPage()) {
  4713  			break
  4714  		}
  4715  	}
  4716  
  4717  	return p.Err()
  4718  }
  4719  
  4720  const opDescribeInstancePatches = "DescribeInstancePatches"
  4721  
  4722  // DescribeInstancePatchesRequest generates a "aws/request.Request" representing the
  4723  // client's request for the DescribeInstancePatches operation. The "output" return
  4724  // value will be populated with the request's response once the request completes
  4725  // successfully.
  4726  //
  4727  // Use "Send" method on the returned Request to send the API call to the service.
  4728  // the "output" return value is not valid until after Send returns without error.
  4729  //
  4730  // See DescribeInstancePatches for more information on using the DescribeInstancePatches
  4731  // API call, and error handling.
  4732  //
  4733  // This method is useful when you want to inject custom logic or configuration
  4734  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4735  //
  4736  //
  4737  //    // Example sending a request using the DescribeInstancePatchesRequest method.
  4738  //    req, resp := client.DescribeInstancePatchesRequest(params)
  4739  //
  4740  //    err := req.Send()
  4741  //    if err == nil { // resp is now filled
  4742  //        fmt.Println(resp)
  4743  //    }
  4744  //
  4745  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatches
  4746  func (c *SSM) DescribeInstancePatchesRequest(input *DescribeInstancePatchesInput) (req *request.Request, output *DescribeInstancePatchesOutput) {
  4747  	op := &request.Operation{
  4748  		Name:       opDescribeInstancePatches,
  4749  		HTTPMethod: "POST",
  4750  		HTTPPath:   "/",
  4751  		Paginator: &request.Paginator{
  4752  			InputTokens:     []string{"NextToken"},
  4753  			OutputTokens:    []string{"NextToken"},
  4754  			LimitToken:      "MaxResults",
  4755  			TruncationToken: "",
  4756  		},
  4757  	}
  4758  
  4759  	if input == nil {
  4760  		input = &DescribeInstancePatchesInput{}
  4761  	}
  4762  
  4763  	output = &DescribeInstancePatchesOutput{}
  4764  	req = c.newRequest(op, input, output)
  4765  	return
  4766  }
  4767  
  4768  // DescribeInstancePatches API operation for Amazon Simple Systems Manager (SSM).
  4769  //
  4770  // Retrieves information about the patches on the specified instance and their
  4771  // state relative to the patch baseline being used for the instance.
  4772  //
  4773  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4774  // with awserr.Error's Code and Message methods to get detailed information about
  4775  // the error.
  4776  //
  4777  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  4778  // API operation DescribeInstancePatches for usage and error information.
  4779  //
  4780  // Returned Error Types:
  4781  //   * InternalServerError
  4782  //   An error occurred on the server side.
  4783  //
  4784  //   * InvalidInstanceId
  4785  //   The following problems can cause this exception:
  4786  //
  4787  //      * You don't have permission to access the instance.
  4788  //
  4789  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
  4790  //      Verify that SSM Agent is running.
  4791  //
  4792  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
  4793  //      Agent.
  4794  //
  4795  //      * The instance isn't in valid state. Valid states are: Running, Pending,
  4796  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
  4797  //
  4798  //   * InvalidFilter
  4799  //   The filter name isn't valid. Verify the you entered the correct name and
  4800  //   try again.
  4801  //
  4802  //   * InvalidNextToken
  4803  //   The specified token isn't valid.
  4804  //
  4805  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatches
  4806  func (c *SSM) DescribeInstancePatches(input *DescribeInstancePatchesInput) (*DescribeInstancePatchesOutput, error) {
  4807  	req, out := c.DescribeInstancePatchesRequest(input)
  4808  	return out, req.Send()
  4809  }
  4810  
  4811  // DescribeInstancePatchesWithContext is the same as DescribeInstancePatches with the addition of
  4812  // the ability to pass a context and additional request options.
  4813  //
  4814  // See DescribeInstancePatches for details on how to use this API operation.
  4815  //
  4816  // The context must be non-nil and will be used for request cancellation. If
  4817  // the context is nil a panic will occur. In the future the SDK may create
  4818  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4819  // for more information on using Contexts.
  4820  func (c *SSM) DescribeInstancePatchesWithContext(ctx aws.Context, input *DescribeInstancePatchesInput, opts ...request.Option) (*DescribeInstancePatchesOutput, error) {
  4821  	req, out := c.DescribeInstancePatchesRequest(input)
  4822  	req.SetContext(ctx)
  4823  	req.ApplyOptions(opts...)
  4824  	return out, req.Send()
  4825  }
  4826  
  4827  // DescribeInstancePatchesPages iterates over the pages of a DescribeInstancePatches operation,
  4828  // calling the "fn" function with the response data for each page. To stop
  4829  // iterating, return false from the fn function.
  4830  //
  4831  // See DescribeInstancePatches method for more information on how to use this operation.
  4832  //
  4833  // Note: This operation can generate multiple requests to a service.
  4834  //
  4835  //    // Example iterating over at most 3 pages of a DescribeInstancePatches operation.
  4836  //    pageNum := 0
  4837  //    err := client.DescribeInstancePatchesPages(params,
  4838  //        func(page *ssm.DescribeInstancePatchesOutput, lastPage bool) bool {
  4839  //            pageNum++
  4840  //            fmt.Println(page)
  4841  //            return pageNum <= 3
  4842  //        })
  4843  //
  4844  func (c *SSM) DescribeInstancePatchesPages(input *DescribeInstancePatchesInput, fn func(*DescribeInstancePatchesOutput, bool) bool) error {
  4845  	return c.DescribeInstancePatchesPagesWithContext(aws.BackgroundContext(), input, fn)
  4846  }
  4847  
  4848  // DescribeInstancePatchesPagesWithContext same as DescribeInstancePatchesPages except
  4849  // it takes a Context and allows setting request options on the pages.
  4850  //
  4851  // The context must be non-nil and will be used for request cancellation. If
  4852  // the context is nil a panic will occur. In the future the SDK may create
  4853  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4854  // for more information on using Contexts.
  4855  func (c *SSM) DescribeInstancePatchesPagesWithContext(ctx aws.Context, input *DescribeInstancePatchesInput, fn func(*DescribeInstancePatchesOutput, bool) bool, opts ...request.Option) error {
  4856  	p := request.Pagination{
  4857  		NewRequest: func() (*request.Request, error) {
  4858  			var inCpy *DescribeInstancePatchesInput
  4859  			if input != nil {
  4860  				tmp := *input
  4861  				inCpy = &tmp
  4862  			}
  4863  			req, _ := c.DescribeInstancePatchesRequest(inCpy)
  4864  			req.SetContext(ctx)
  4865  			req.ApplyOptions(opts...)
  4866  			return req, nil
  4867  		},
  4868  	}
  4869  
  4870  	for p.Next() {
  4871  		if !fn(p.Page().(*DescribeInstancePatchesOutput), !p.HasNextPage()) {
  4872  			break
  4873  		}
  4874  	}
  4875  
  4876  	return p.Err()
  4877  }
  4878  
  4879  const opDescribeInventoryDeletions = "DescribeInventoryDeletions"
  4880  
  4881  // DescribeInventoryDeletionsRequest generates a "aws/request.Request" representing the
  4882  // client's request for the DescribeInventoryDeletions operation. The "output" return
  4883  // value will be populated with the request's response once the request completes
  4884  // successfully.
  4885  //
  4886  // Use "Send" method on the returned Request to send the API call to the service.
  4887  // the "output" return value is not valid until after Send returns without error.
  4888  //
  4889  // See DescribeInventoryDeletions for more information on using the DescribeInventoryDeletions
  4890  // API call, and error handling.
  4891  //
  4892  // This method is useful when you want to inject custom logic or configuration
  4893  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4894  //
  4895  //
  4896  //    // Example sending a request using the DescribeInventoryDeletionsRequest method.
  4897  //    req, resp := client.DescribeInventoryDeletionsRequest(params)
  4898  //
  4899  //    err := req.Send()
  4900  //    if err == nil { // resp is now filled
  4901  //        fmt.Println(resp)
  4902  //    }
  4903  //
  4904  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInventoryDeletions
  4905  func (c *SSM) DescribeInventoryDeletionsRequest(input *DescribeInventoryDeletionsInput) (req *request.Request, output *DescribeInventoryDeletionsOutput) {
  4906  	op := &request.Operation{
  4907  		Name:       opDescribeInventoryDeletions,
  4908  		HTTPMethod: "POST",
  4909  		HTTPPath:   "/",
  4910  		Paginator: &request.Paginator{
  4911  			InputTokens:     []string{"NextToken"},
  4912  			OutputTokens:    []string{"NextToken"},
  4913  			LimitToken:      "MaxResults",
  4914  			TruncationToken: "",
  4915  		},
  4916  	}
  4917  
  4918  	if input == nil {
  4919  		input = &DescribeInventoryDeletionsInput{}
  4920  	}
  4921  
  4922  	output = &DescribeInventoryDeletionsOutput{}
  4923  	req = c.newRequest(op, input, output)
  4924  	return
  4925  }
  4926  
  4927  // DescribeInventoryDeletions API operation for Amazon Simple Systems Manager (SSM).
  4928  //
  4929  // Describes a specific delete inventory operation.
  4930  //
  4931  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4932  // with awserr.Error's Code and Message methods to get detailed information about
  4933  // the error.
  4934  //
  4935  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  4936  // API operation DescribeInventoryDeletions for usage and error information.
  4937  //
  4938  // Returned Error Types:
  4939  //   * InternalServerError
  4940  //   An error occurred on the server side.
  4941  //
  4942  //   * InvalidDeletionIdException
  4943  //   The ID specified for the delete operation doesn't exist or isn't valid. Verify
  4944  //   the ID and try again.
  4945  //
  4946  //   * InvalidNextToken
  4947  //   The specified token isn't valid.
  4948  //
  4949  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInventoryDeletions
  4950  func (c *SSM) DescribeInventoryDeletions(input *DescribeInventoryDeletionsInput) (*DescribeInventoryDeletionsOutput, error) {
  4951  	req, out := c.DescribeInventoryDeletionsRequest(input)
  4952  	return out, req.Send()
  4953  }
  4954  
  4955  // DescribeInventoryDeletionsWithContext is the same as DescribeInventoryDeletions with the addition of
  4956  // the ability to pass a context and additional request options.
  4957  //
  4958  // See DescribeInventoryDeletions for details on how to use this API operation.
  4959  //
  4960  // The context must be non-nil and will be used for request cancellation. If
  4961  // the context is nil a panic will occur. In the future the SDK may create
  4962  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4963  // for more information on using Contexts.
  4964  func (c *SSM) DescribeInventoryDeletionsWithContext(ctx aws.Context, input *DescribeInventoryDeletionsInput, opts ...request.Option) (*DescribeInventoryDeletionsOutput, error) {
  4965  	req, out := c.DescribeInventoryDeletionsRequest(input)
  4966  	req.SetContext(ctx)
  4967  	req.ApplyOptions(opts...)
  4968  	return out, req.Send()
  4969  }
  4970  
  4971  // DescribeInventoryDeletionsPages iterates over the pages of a DescribeInventoryDeletions operation,
  4972  // calling the "fn" function with the response data for each page. To stop
  4973  // iterating, return false from the fn function.
  4974  //
  4975  // See DescribeInventoryDeletions method for more information on how to use this operation.
  4976  //
  4977  // Note: This operation can generate multiple requests to a service.
  4978  //
  4979  //    // Example iterating over at most 3 pages of a DescribeInventoryDeletions operation.
  4980  //    pageNum := 0
  4981  //    err := client.DescribeInventoryDeletionsPages(params,
  4982  //        func(page *ssm.DescribeInventoryDeletionsOutput, lastPage bool) bool {
  4983  //            pageNum++
  4984  //            fmt.Println(page)
  4985  //            return pageNum <= 3
  4986  //        })
  4987  //
  4988  func (c *SSM) DescribeInventoryDeletionsPages(input *DescribeInventoryDeletionsInput, fn func(*DescribeInventoryDeletionsOutput, bool) bool) error {
  4989  	return c.DescribeInventoryDeletionsPagesWithContext(aws.BackgroundContext(), input, fn)
  4990  }
  4991  
  4992  // DescribeInventoryDeletionsPagesWithContext same as DescribeInventoryDeletionsPages except
  4993  // it takes a Context and allows setting request options on the pages.
  4994  //
  4995  // The context must be non-nil and will be used for request cancellation. If
  4996  // the context is nil a panic will occur. In the future the SDK may create
  4997  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4998  // for more information on using Contexts.
  4999  func (c *SSM) DescribeInventoryDeletionsPagesWithContext(ctx aws.Context, input *DescribeInventoryDeletionsInput, fn func(*DescribeInventoryDeletionsOutput, bool) bool, opts ...request.Option) error {
  5000  	p := request.Pagination{
  5001  		NewRequest: func() (*request.Request, error) {
  5002  			var inCpy *DescribeInventoryDeletionsInput
  5003  			if input != nil {
  5004  				tmp := *input
  5005  				inCpy = &tmp
  5006  			}
  5007  			req, _ := c.DescribeInventoryDeletionsRequest(inCpy)
  5008  			req.SetContext(ctx)
  5009  			req.ApplyOptions(opts...)
  5010  			return req, nil
  5011  		},
  5012  	}
  5013  
  5014  	for p.Next() {
  5015  		if !fn(p.Page().(*DescribeInventoryDeletionsOutput), !p.HasNextPage()) {
  5016  			break
  5017  		}
  5018  	}
  5019  
  5020  	return p.Err()
  5021  }
  5022  
  5023  const opDescribeMaintenanceWindowExecutionTaskInvocations = "DescribeMaintenanceWindowExecutionTaskInvocations"
  5024  
  5025  // DescribeMaintenanceWindowExecutionTaskInvocationsRequest generates a "aws/request.Request" representing the
  5026  // client's request for the DescribeMaintenanceWindowExecutionTaskInvocations operation. The "output" return
  5027  // value will be populated with the request's response once the request completes
  5028  // successfully.
  5029  //
  5030  // Use "Send" method on the returned Request to send the API call to the service.
  5031  // the "output" return value is not valid until after Send returns without error.
  5032  //
  5033  // See DescribeMaintenanceWindowExecutionTaskInvocations for more information on using the DescribeMaintenanceWindowExecutionTaskInvocations
  5034  // API call, and error handling.
  5035  //
  5036  // This method is useful when you want to inject custom logic or configuration
  5037  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5038  //
  5039  //
  5040  //    // Example sending a request using the DescribeMaintenanceWindowExecutionTaskInvocationsRequest method.
  5041  //    req, resp := client.DescribeMaintenanceWindowExecutionTaskInvocationsRequest(params)
  5042  //
  5043  //    err := req.Send()
  5044  //    if err == nil { // resp is now filled
  5045  //        fmt.Println(resp)
  5046  //    }
  5047  //
  5048  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutionTaskInvocations
  5049  func (c *SSM) DescribeMaintenanceWindowExecutionTaskInvocationsRequest(input *DescribeMaintenanceWindowExecutionTaskInvocationsInput) (req *request.Request, output *DescribeMaintenanceWindowExecutionTaskInvocationsOutput) {
  5050  	op := &request.Operation{
  5051  		Name:       opDescribeMaintenanceWindowExecutionTaskInvocations,
  5052  		HTTPMethod: "POST",
  5053  		HTTPPath:   "/",
  5054  		Paginator: &request.Paginator{
  5055  			InputTokens:     []string{"NextToken"},
  5056  			OutputTokens:    []string{"NextToken"},
  5057  			LimitToken:      "MaxResults",
  5058  			TruncationToken: "",
  5059  		},
  5060  	}
  5061  
  5062  	if input == nil {
  5063  		input = &DescribeMaintenanceWindowExecutionTaskInvocationsInput{}
  5064  	}
  5065  
  5066  	output = &DescribeMaintenanceWindowExecutionTaskInvocationsOutput{}
  5067  	req = c.newRequest(op, input, output)
  5068  	return
  5069  }
  5070  
  5071  // DescribeMaintenanceWindowExecutionTaskInvocations API operation for Amazon Simple Systems Manager (SSM).
  5072  //
  5073  // Retrieves the individual task executions (one per target) for a particular
  5074  // task run as part of a maintenance window execution.
  5075  //
  5076  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5077  // with awserr.Error's Code and Message methods to get detailed information about
  5078  // the error.
  5079  //
  5080  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  5081  // API operation DescribeMaintenanceWindowExecutionTaskInvocations for usage and error information.
  5082  //
  5083  // Returned Error Types:
  5084  //   * DoesNotExistException
  5085  //   Error returned when the ID specified for a resource, such as a maintenance
  5086  //   window or patch baseline, doesn't exist.
  5087  //
  5088  //   For information about resource quotas in Amazon Web Services Systems Manager,
  5089  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  5090  //   in the Amazon Web Services General Reference.
  5091  //
  5092  //   * InternalServerError
  5093  //   An error occurred on the server side.
  5094  //
  5095  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutionTaskInvocations
  5096  func (c *SSM) DescribeMaintenanceWindowExecutionTaskInvocations(input *DescribeMaintenanceWindowExecutionTaskInvocationsInput) (*DescribeMaintenanceWindowExecutionTaskInvocationsOutput, error) {
  5097  	req, out := c.DescribeMaintenanceWindowExecutionTaskInvocationsRequest(input)
  5098  	return out, req.Send()
  5099  }
  5100  
  5101  // DescribeMaintenanceWindowExecutionTaskInvocationsWithContext is the same as DescribeMaintenanceWindowExecutionTaskInvocations with the addition of
  5102  // the ability to pass a context and additional request options.
  5103  //
  5104  // See DescribeMaintenanceWindowExecutionTaskInvocations for details on how to use this API operation.
  5105  //
  5106  // The context must be non-nil and will be used for request cancellation. If
  5107  // the context is nil a panic will occur. In the future the SDK may create
  5108  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5109  // for more information on using Contexts.
  5110  func (c *SSM) DescribeMaintenanceWindowExecutionTaskInvocationsWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionTaskInvocationsInput, opts ...request.Option) (*DescribeMaintenanceWindowExecutionTaskInvocationsOutput, error) {
  5111  	req, out := c.DescribeMaintenanceWindowExecutionTaskInvocationsRequest(input)
  5112  	req.SetContext(ctx)
  5113  	req.ApplyOptions(opts...)
  5114  	return out, req.Send()
  5115  }
  5116  
  5117  // DescribeMaintenanceWindowExecutionTaskInvocationsPages iterates over the pages of a DescribeMaintenanceWindowExecutionTaskInvocations operation,
  5118  // calling the "fn" function with the response data for each page. To stop
  5119  // iterating, return false from the fn function.
  5120  //
  5121  // See DescribeMaintenanceWindowExecutionTaskInvocations method for more information on how to use this operation.
  5122  //
  5123  // Note: This operation can generate multiple requests to a service.
  5124  //
  5125  //    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowExecutionTaskInvocations operation.
  5126  //    pageNum := 0
  5127  //    err := client.DescribeMaintenanceWindowExecutionTaskInvocationsPages(params,
  5128  //        func(page *ssm.DescribeMaintenanceWindowExecutionTaskInvocationsOutput, lastPage bool) bool {
  5129  //            pageNum++
  5130  //            fmt.Println(page)
  5131  //            return pageNum <= 3
  5132  //        })
  5133  //
  5134  func (c *SSM) DescribeMaintenanceWindowExecutionTaskInvocationsPages(input *DescribeMaintenanceWindowExecutionTaskInvocationsInput, fn func(*DescribeMaintenanceWindowExecutionTaskInvocationsOutput, bool) bool) error {
  5135  	return c.DescribeMaintenanceWindowExecutionTaskInvocationsPagesWithContext(aws.BackgroundContext(), input, fn)
  5136  }
  5137  
  5138  // DescribeMaintenanceWindowExecutionTaskInvocationsPagesWithContext same as DescribeMaintenanceWindowExecutionTaskInvocationsPages except
  5139  // it takes a Context and allows setting request options on the pages.
  5140  //
  5141  // The context must be non-nil and will be used for request cancellation. If
  5142  // the context is nil a panic will occur. In the future the SDK may create
  5143  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5144  // for more information on using Contexts.
  5145  func (c *SSM) DescribeMaintenanceWindowExecutionTaskInvocationsPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionTaskInvocationsInput, fn func(*DescribeMaintenanceWindowExecutionTaskInvocationsOutput, bool) bool, opts ...request.Option) error {
  5146  	p := request.Pagination{
  5147  		NewRequest: func() (*request.Request, error) {
  5148  			var inCpy *DescribeMaintenanceWindowExecutionTaskInvocationsInput
  5149  			if input != nil {
  5150  				tmp := *input
  5151  				inCpy = &tmp
  5152  			}
  5153  			req, _ := c.DescribeMaintenanceWindowExecutionTaskInvocationsRequest(inCpy)
  5154  			req.SetContext(ctx)
  5155  			req.ApplyOptions(opts...)
  5156  			return req, nil
  5157  		},
  5158  	}
  5159  
  5160  	for p.Next() {
  5161  		if !fn(p.Page().(*DescribeMaintenanceWindowExecutionTaskInvocationsOutput), !p.HasNextPage()) {
  5162  			break
  5163  		}
  5164  	}
  5165  
  5166  	return p.Err()
  5167  }
  5168  
  5169  const opDescribeMaintenanceWindowExecutionTasks = "DescribeMaintenanceWindowExecutionTasks"
  5170  
  5171  // DescribeMaintenanceWindowExecutionTasksRequest generates a "aws/request.Request" representing the
  5172  // client's request for the DescribeMaintenanceWindowExecutionTasks operation. The "output" return
  5173  // value will be populated with the request's response once the request completes
  5174  // successfully.
  5175  //
  5176  // Use "Send" method on the returned Request to send the API call to the service.
  5177  // the "output" return value is not valid until after Send returns without error.
  5178  //
  5179  // See DescribeMaintenanceWindowExecutionTasks for more information on using the DescribeMaintenanceWindowExecutionTasks
  5180  // API call, and error handling.
  5181  //
  5182  // This method is useful when you want to inject custom logic or configuration
  5183  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5184  //
  5185  //
  5186  //    // Example sending a request using the DescribeMaintenanceWindowExecutionTasksRequest method.
  5187  //    req, resp := client.DescribeMaintenanceWindowExecutionTasksRequest(params)
  5188  //
  5189  //    err := req.Send()
  5190  //    if err == nil { // resp is now filled
  5191  //        fmt.Println(resp)
  5192  //    }
  5193  //
  5194  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutionTasks
  5195  func (c *SSM) DescribeMaintenanceWindowExecutionTasksRequest(input *DescribeMaintenanceWindowExecutionTasksInput) (req *request.Request, output *DescribeMaintenanceWindowExecutionTasksOutput) {
  5196  	op := &request.Operation{
  5197  		Name:       opDescribeMaintenanceWindowExecutionTasks,
  5198  		HTTPMethod: "POST",
  5199  		HTTPPath:   "/",
  5200  		Paginator: &request.Paginator{
  5201  			InputTokens:     []string{"NextToken"},
  5202  			OutputTokens:    []string{"NextToken"},
  5203  			LimitToken:      "MaxResults",
  5204  			TruncationToken: "",
  5205  		},
  5206  	}
  5207  
  5208  	if input == nil {
  5209  		input = &DescribeMaintenanceWindowExecutionTasksInput{}
  5210  	}
  5211  
  5212  	output = &DescribeMaintenanceWindowExecutionTasksOutput{}
  5213  	req = c.newRequest(op, input, output)
  5214  	return
  5215  }
  5216  
  5217  // DescribeMaintenanceWindowExecutionTasks API operation for Amazon Simple Systems Manager (SSM).
  5218  //
  5219  // For a given maintenance window execution, lists the tasks that were run.
  5220  //
  5221  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5222  // with awserr.Error's Code and Message methods to get detailed information about
  5223  // the error.
  5224  //
  5225  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  5226  // API operation DescribeMaintenanceWindowExecutionTasks for usage and error information.
  5227  //
  5228  // Returned Error Types:
  5229  //   * DoesNotExistException
  5230  //   Error returned when the ID specified for a resource, such as a maintenance
  5231  //   window or patch baseline, doesn't exist.
  5232  //
  5233  //   For information about resource quotas in Amazon Web Services Systems Manager,
  5234  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  5235  //   in the Amazon Web Services General Reference.
  5236  //
  5237  //   * InternalServerError
  5238  //   An error occurred on the server side.
  5239  //
  5240  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutionTasks
  5241  func (c *SSM) DescribeMaintenanceWindowExecutionTasks(input *DescribeMaintenanceWindowExecutionTasksInput) (*DescribeMaintenanceWindowExecutionTasksOutput, error) {
  5242  	req, out := c.DescribeMaintenanceWindowExecutionTasksRequest(input)
  5243  	return out, req.Send()
  5244  }
  5245  
  5246  // DescribeMaintenanceWindowExecutionTasksWithContext is the same as DescribeMaintenanceWindowExecutionTasks with the addition of
  5247  // the ability to pass a context and additional request options.
  5248  //
  5249  // See DescribeMaintenanceWindowExecutionTasks for details on how to use this API operation.
  5250  //
  5251  // The context must be non-nil and will be used for request cancellation. If
  5252  // the context is nil a panic will occur. In the future the SDK may create
  5253  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5254  // for more information on using Contexts.
  5255  func (c *SSM) DescribeMaintenanceWindowExecutionTasksWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionTasksInput, opts ...request.Option) (*DescribeMaintenanceWindowExecutionTasksOutput, error) {
  5256  	req, out := c.DescribeMaintenanceWindowExecutionTasksRequest(input)
  5257  	req.SetContext(ctx)
  5258  	req.ApplyOptions(opts...)
  5259  	return out, req.Send()
  5260  }
  5261  
  5262  // DescribeMaintenanceWindowExecutionTasksPages iterates over the pages of a DescribeMaintenanceWindowExecutionTasks operation,
  5263  // calling the "fn" function with the response data for each page. To stop
  5264  // iterating, return false from the fn function.
  5265  //
  5266  // See DescribeMaintenanceWindowExecutionTasks method for more information on how to use this operation.
  5267  //
  5268  // Note: This operation can generate multiple requests to a service.
  5269  //
  5270  //    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowExecutionTasks operation.
  5271  //    pageNum := 0
  5272  //    err := client.DescribeMaintenanceWindowExecutionTasksPages(params,
  5273  //        func(page *ssm.DescribeMaintenanceWindowExecutionTasksOutput, lastPage bool) bool {
  5274  //            pageNum++
  5275  //            fmt.Println(page)
  5276  //            return pageNum <= 3
  5277  //        })
  5278  //
  5279  func (c *SSM) DescribeMaintenanceWindowExecutionTasksPages(input *DescribeMaintenanceWindowExecutionTasksInput, fn func(*DescribeMaintenanceWindowExecutionTasksOutput, bool) bool) error {
  5280  	return c.DescribeMaintenanceWindowExecutionTasksPagesWithContext(aws.BackgroundContext(), input, fn)
  5281  }
  5282  
  5283  // DescribeMaintenanceWindowExecutionTasksPagesWithContext same as DescribeMaintenanceWindowExecutionTasksPages except
  5284  // it takes a Context and allows setting request options on the pages.
  5285  //
  5286  // The context must be non-nil and will be used for request cancellation. If
  5287  // the context is nil a panic will occur. In the future the SDK may create
  5288  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5289  // for more information on using Contexts.
  5290  func (c *SSM) DescribeMaintenanceWindowExecutionTasksPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionTasksInput, fn func(*DescribeMaintenanceWindowExecutionTasksOutput, bool) bool, opts ...request.Option) error {
  5291  	p := request.Pagination{
  5292  		NewRequest: func() (*request.Request, error) {
  5293  			var inCpy *DescribeMaintenanceWindowExecutionTasksInput
  5294  			if input != nil {
  5295  				tmp := *input
  5296  				inCpy = &tmp
  5297  			}
  5298  			req, _ := c.DescribeMaintenanceWindowExecutionTasksRequest(inCpy)
  5299  			req.SetContext(ctx)
  5300  			req.ApplyOptions(opts...)
  5301  			return req, nil
  5302  		},
  5303  	}
  5304  
  5305  	for p.Next() {
  5306  		if !fn(p.Page().(*DescribeMaintenanceWindowExecutionTasksOutput), !p.HasNextPage()) {
  5307  			break
  5308  		}
  5309  	}
  5310  
  5311  	return p.Err()
  5312  }
  5313  
  5314  const opDescribeMaintenanceWindowExecutions = "DescribeMaintenanceWindowExecutions"
  5315  
  5316  // DescribeMaintenanceWindowExecutionsRequest generates a "aws/request.Request" representing the
  5317  // client's request for the DescribeMaintenanceWindowExecutions operation. The "output" return
  5318  // value will be populated with the request's response once the request completes
  5319  // successfully.
  5320  //
  5321  // Use "Send" method on the returned Request to send the API call to the service.
  5322  // the "output" return value is not valid until after Send returns without error.
  5323  //
  5324  // See DescribeMaintenanceWindowExecutions for more information on using the DescribeMaintenanceWindowExecutions
  5325  // API call, and error handling.
  5326  //
  5327  // This method is useful when you want to inject custom logic or configuration
  5328  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5329  //
  5330  //
  5331  //    // Example sending a request using the DescribeMaintenanceWindowExecutionsRequest method.
  5332  //    req, resp := client.DescribeMaintenanceWindowExecutionsRequest(params)
  5333  //
  5334  //    err := req.Send()
  5335  //    if err == nil { // resp is now filled
  5336  //        fmt.Println(resp)
  5337  //    }
  5338  //
  5339  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutions
  5340  func (c *SSM) DescribeMaintenanceWindowExecutionsRequest(input *DescribeMaintenanceWindowExecutionsInput) (req *request.Request, output *DescribeMaintenanceWindowExecutionsOutput) {
  5341  	op := &request.Operation{
  5342  		Name:       opDescribeMaintenanceWindowExecutions,
  5343  		HTTPMethod: "POST",
  5344  		HTTPPath:   "/",
  5345  		Paginator: &request.Paginator{
  5346  			InputTokens:     []string{"NextToken"},
  5347  			OutputTokens:    []string{"NextToken"},
  5348  			LimitToken:      "MaxResults",
  5349  			TruncationToken: "",
  5350  		},
  5351  	}
  5352  
  5353  	if input == nil {
  5354  		input = &DescribeMaintenanceWindowExecutionsInput{}
  5355  	}
  5356  
  5357  	output = &DescribeMaintenanceWindowExecutionsOutput{}
  5358  	req = c.newRequest(op, input, output)
  5359  	return
  5360  }
  5361  
  5362  // DescribeMaintenanceWindowExecutions API operation for Amazon Simple Systems Manager (SSM).
  5363  //
  5364  // Lists the executions of a maintenance window. This includes information about
  5365  // when the maintenance window was scheduled to be active, and information about
  5366  // tasks registered and run with the maintenance window.
  5367  //
  5368  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5369  // with awserr.Error's Code and Message methods to get detailed information about
  5370  // the error.
  5371  //
  5372  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  5373  // API operation DescribeMaintenanceWindowExecutions for usage and error information.
  5374  //
  5375  // Returned Error Types:
  5376  //   * InternalServerError
  5377  //   An error occurred on the server side.
  5378  //
  5379  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutions
  5380  func (c *SSM) DescribeMaintenanceWindowExecutions(input *DescribeMaintenanceWindowExecutionsInput) (*DescribeMaintenanceWindowExecutionsOutput, error) {
  5381  	req, out := c.DescribeMaintenanceWindowExecutionsRequest(input)
  5382  	return out, req.Send()
  5383  }
  5384  
  5385  // DescribeMaintenanceWindowExecutionsWithContext is the same as DescribeMaintenanceWindowExecutions with the addition of
  5386  // the ability to pass a context and additional request options.
  5387  //
  5388  // See DescribeMaintenanceWindowExecutions for details on how to use this API operation.
  5389  //
  5390  // The context must be non-nil and will be used for request cancellation. If
  5391  // the context is nil a panic will occur. In the future the SDK may create
  5392  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5393  // for more information on using Contexts.
  5394  func (c *SSM) DescribeMaintenanceWindowExecutionsWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionsInput, opts ...request.Option) (*DescribeMaintenanceWindowExecutionsOutput, error) {
  5395  	req, out := c.DescribeMaintenanceWindowExecutionsRequest(input)
  5396  	req.SetContext(ctx)
  5397  	req.ApplyOptions(opts...)
  5398  	return out, req.Send()
  5399  }
  5400  
  5401  // DescribeMaintenanceWindowExecutionsPages iterates over the pages of a DescribeMaintenanceWindowExecutions operation,
  5402  // calling the "fn" function with the response data for each page. To stop
  5403  // iterating, return false from the fn function.
  5404  //
  5405  // See DescribeMaintenanceWindowExecutions method for more information on how to use this operation.
  5406  //
  5407  // Note: This operation can generate multiple requests to a service.
  5408  //
  5409  //    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowExecutions operation.
  5410  //    pageNum := 0
  5411  //    err := client.DescribeMaintenanceWindowExecutionsPages(params,
  5412  //        func(page *ssm.DescribeMaintenanceWindowExecutionsOutput, lastPage bool) bool {
  5413  //            pageNum++
  5414  //            fmt.Println(page)
  5415  //            return pageNum <= 3
  5416  //        })
  5417  //
  5418  func (c *SSM) DescribeMaintenanceWindowExecutionsPages(input *DescribeMaintenanceWindowExecutionsInput, fn func(*DescribeMaintenanceWindowExecutionsOutput, bool) bool) error {
  5419  	return c.DescribeMaintenanceWindowExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
  5420  }
  5421  
  5422  // DescribeMaintenanceWindowExecutionsPagesWithContext same as DescribeMaintenanceWindowExecutionsPages except
  5423  // it takes a Context and allows setting request options on the pages.
  5424  //
  5425  // The context must be non-nil and will be used for request cancellation. If
  5426  // the context is nil a panic will occur. In the future the SDK may create
  5427  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5428  // for more information on using Contexts.
  5429  func (c *SSM) DescribeMaintenanceWindowExecutionsPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionsInput, fn func(*DescribeMaintenanceWindowExecutionsOutput, bool) bool, opts ...request.Option) error {
  5430  	p := request.Pagination{
  5431  		NewRequest: func() (*request.Request, error) {
  5432  			var inCpy *DescribeMaintenanceWindowExecutionsInput
  5433  			if input != nil {
  5434  				tmp := *input
  5435  				inCpy = &tmp
  5436  			}
  5437  			req, _ := c.DescribeMaintenanceWindowExecutionsRequest(inCpy)
  5438  			req.SetContext(ctx)
  5439  			req.ApplyOptions(opts...)
  5440  			return req, nil
  5441  		},
  5442  	}
  5443  
  5444  	for p.Next() {
  5445  		if !fn(p.Page().(*DescribeMaintenanceWindowExecutionsOutput), !p.HasNextPage()) {
  5446  			break
  5447  		}
  5448  	}
  5449  
  5450  	return p.Err()
  5451  }
  5452  
  5453  const opDescribeMaintenanceWindowSchedule = "DescribeMaintenanceWindowSchedule"
  5454  
  5455  // DescribeMaintenanceWindowScheduleRequest generates a "aws/request.Request" representing the
  5456  // client's request for the DescribeMaintenanceWindowSchedule operation. The "output" return
  5457  // value will be populated with the request's response once the request completes
  5458  // successfully.
  5459  //
  5460  // Use "Send" method on the returned Request to send the API call to the service.
  5461  // the "output" return value is not valid until after Send returns without error.
  5462  //
  5463  // See DescribeMaintenanceWindowSchedule for more information on using the DescribeMaintenanceWindowSchedule
  5464  // API call, and error handling.
  5465  //
  5466  // This method is useful when you want to inject custom logic or configuration
  5467  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5468  //
  5469  //
  5470  //    // Example sending a request using the DescribeMaintenanceWindowScheduleRequest method.
  5471  //    req, resp := client.DescribeMaintenanceWindowScheduleRequest(params)
  5472  //
  5473  //    err := req.Send()
  5474  //    if err == nil { // resp is now filled
  5475  //        fmt.Println(resp)
  5476  //    }
  5477  //
  5478  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowSchedule
  5479  func (c *SSM) DescribeMaintenanceWindowScheduleRequest(input *DescribeMaintenanceWindowScheduleInput) (req *request.Request, output *DescribeMaintenanceWindowScheduleOutput) {
  5480  	op := &request.Operation{
  5481  		Name:       opDescribeMaintenanceWindowSchedule,
  5482  		HTTPMethod: "POST",
  5483  		HTTPPath:   "/",
  5484  		Paginator: &request.Paginator{
  5485  			InputTokens:     []string{"NextToken"},
  5486  			OutputTokens:    []string{"NextToken"},
  5487  			LimitToken:      "MaxResults",
  5488  			TruncationToken: "",
  5489  		},
  5490  	}
  5491  
  5492  	if input == nil {
  5493  		input = &DescribeMaintenanceWindowScheduleInput{}
  5494  	}
  5495  
  5496  	output = &DescribeMaintenanceWindowScheduleOutput{}
  5497  	req = c.newRequest(op, input, output)
  5498  	return
  5499  }
  5500  
  5501  // DescribeMaintenanceWindowSchedule API operation for Amazon Simple Systems Manager (SSM).
  5502  //
  5503  // Retrieves information about upcoming executions of a maintenance window.
  5504  //
  5505  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5506  // with awserr.Error's Code and Message methods to get detailed information about
  5507  // the error.
  5508  //
  5509  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  5510  // API operation DescribeMaintenanceWindowSchedule for usage and error information.
  5511  //
  5512  // Returned Error Types:
  5513  //   * InternalServerError
  5514  //   An error occurred on the server side.
  5515  //
  5516  //   * DoesNotExistException
  5517  //   Error returned when the ID specified for a resource, such as a maintenance
  5518  //   window or patch baseline, doesn't exist.
  5519  //
  5520  //   For information about resource quotas in Amazon Web Services Systems Manager,
  5521  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  5522  //   in the Amazon Web Services General Reference.
  5523  //
  5524  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowSchedule
  5525  func (c *SSM) DescribeMaintenanceWindowSchedule(input *DescribeMaintenanceWindowScheduleInput) (*DescribeMaintenanceWindowScheduleOutput, error) {
  5526  	req, out := c.DescribeMaintenanceWindowScheduleRequest(input)
  5527  	return out, req.Send()
  5528  }
  5529  
  5530  // DescribeMaintenanceWindowScheduleWithContext is the same as DescribeMaintenanceWindowSchedule with the addition of
  5531  // the ability to pass a context and additional request options.
  5532  //
  5533  // See DescribeMaintenanceWindowSchedule for details on how to use this API operation.
  5534  //
  5535  // The context must be non-nil and will be used for request cancellation. If
  5536  // the context is nil a panic will occur. In the future the SDK may create
  5537  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5538  // for more information on using Contexts.
  5539  func (c *SSM) DescribeMaintenanceWindowScheduleWithContext(ctx aws.Context, input *DescribeMaintenanceWindowScheduleInput, opts ...request.Option) (*DescribeMaintenanceWindowScheduleOutput, error) {
  5540  	req, out := c.DescribeMaintenanceWindowScheduleRequest(input)
  5541  	req.SetContext(ctx)
  5542  	req.ApplyOptions(opts...)
  5543  	return out, req.Send()
  5544  }
  5545  
  5546  // DescribeMaintenanceWindowSchedulePages iterates over the pages of a DescribeMaintenanceWindowSchedule operation,
  5547  // calling the "fn" function with the response data for each page. To stop
  5548  // iterating, return false from the fn function.
  5549  //
  5550  // See DescribeMaintenanceWindowSchedule method for more information on how to use this operation.
  5551  //
  5552  // Note: This operation can generate multiple requests to a service.
  5553  //
  5554  //    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowSchedule operation.
  5555  //    pageNum := 0
  5556  //    err := client.DescribeMaintenanceWindowSchedulePages(params,
  5557  //        func(page *ssm.DescribeMaintenanceWindowScheduleOutput, lastPage bool) bool {
  5558  //            pageNum++
  5559  //            fmt.Println(page)
  5560  //            return pageNum <= 3
  5561  //        })
  5562  //
  5563  func (c *SSM) DescribeMaintenanceWindowSchedulePages(input *DescribeMaintenanceWindowScheduleInput, fn func(*DescribeMaintenanceWindowScheduleOutput, bool) bool) error {
  5564  	return c.DescribeMaintenanceWindowSchedulePagesWithContext(aws.BackgroundContext(), input, fn)
  5565  }
  5566  
  5567  // DescribeMaintenanceWindowSchedulePagesWithContext same as DescribeMaintenanceWindowSchedulePages except
  5568  // it takes a Context and allows setting request options on the pages.
  5569  //
  5570  // The context must be non-nil and will be used for request cancellation. If
  5571  // the context is nil a panic will occur. In the future the SDK may create
  5572  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5573  // for more information on using Contexts.
  5574  func (c *SSM) DescribeMaintenanceWindowSchedulePagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowScheduleInput, fn func(*DescribeMaintenanceWindowScheduleOutput, bool) bool, opts ...request.Option) error {
  5575  	p := request.Pagination{
  5576  		NewRequest: func() (*request.Request, error) {
  5577  			var inCpy *DescribeMaintenanceWindowScheduleInput
  5578  			if input != nil {
  5579  				tmp := *input
  5580  				inCpy = &tmp
  5581  			}
  5582  			req, _ := c.DescribeMaintenanceWindowScheduleRequest(inCpy)
  5583  			req.SetContext(ctx)
  5584  			req.ApplyOptions(opts...)
  5585  			return req, nil
  5586  		},
  5587  	}
  5588  
  5589  	for p.Next() {
  5590  		if !fn(p.Page().(*DescribeMaintenanceWindowScheduleOutput), !p.HasNextPage()) {
  5591  			break
  5592  		}
  5593  	}
  5594  
  5595  	return p.Err()
  5596  }
  5597  
  5598  const opDescribeMaintenanceWindowTargets = "DescribeMaintenanceWindowTargets"
  5599  
  5600  // DescribeMaintenanceWindowTargetsRequest generates a "aws/request.Request" representing the
  5601  // client's request for the DescribeMaintenanceWindowTargets operation. The "output" return
  5602  // value will be populated with the request's response once the request completes
  5603  // successfully.
  5604  //
  5605  // Use "Send" method on the returned Request to send the API call to the service.
  5606  // the "output" return value is not valid until after Send returns without error.
  5607  //
  5608  // See DescribeMaintenanceWindowTargets for more information on using the DescribeMaintenanceWindowTargets
  5609  // API call, and error handling.
  5610  //
  5611  // This method is useful when you want to inject custom logic or configuration
  5612  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5613  //
  5614  //
  5615  //    // Example sending a request using the DescribeMaintenanceWindowTargetsRequest method.
  5616  //    req, resp := client.DescribeMaintenanceWindowTargetsRequest(params)
  5617  //
  5618  //    err := req.Send()
  5619  //    if err == nil { // resp is now filled
  5620  //        fmt.Println(resp)
  5621  //    }
  5622  //
  5623  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowTargets
  5624  func (c *SSM) DescribeMaintenanceWindowTargetsRequest(input *DescribeMaintenanceWindowTargetsInput) (req *request.Request, output *DescribeMaintenanceWindowTargetsOutput) {
  5625  	op := &request.Operation{
  5626  		Name:       opDescribeMaintenanceWindowTargets,
  5627  		HTTPMethod: "POST",
  5628  		HTTPPath:   "/",
  5629  		Paginator: &request.Paginator{
  5630  			InputTokens:     []string{"NextToken"},
  5631  			OutputTokens:    []string{"NextToken"},
  5632  			LimitToken:      "MaxResults",
  5633  			TruncationToken: "",
  5634  		},
  5635  	}
  5636  
  5637  	if input == nil {
  5638  		input = &DescribeMaintenanceWindowTargetsInput{}
  5639  	}
  5640  
  5641  	output = &DescribeMaintenanceWindowTargetsOutput{}
  5642  	req = c.newRequest(op, input, output)
  5643  	return
  5644  }
  5645  
  5646  // DescribeMaintenanceWindowTargets API operation for Amazon Simple Systems Manager (SSM).
  5647  //
  5648  // Lists the targets registered with the maintenance window.
  5649  //
  5650  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5651  // with awserr.Error's Code and Message methods to get detailed information about
  5652  // the error.
  5653  //
  5654  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  5655  // API operation DescribeMaintenanceWindowTargets for usage and error information.
  5656  //
  5657  // Returned Error Types:
  5658  //   * DoesNotExistException
  5659  //   Error returned when the ID specified for a resource, such as a maintenance
  5660  //   window or patch baseline, doesn't exist.
  5661  //
  5662  //   For information about resource quotas in Amazon Web Services Systems Manager,
  5663  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  5664  //   in the Amazon Web Services General Reference.
  5665  //
  5666  //   * InternalServerError
  5667  //   An error occurred on the server side.
  5668  //
  5669  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowTargets
  5670  func (c *SSM) DescribeMaintenanceWindowTargets(input *DescribeMaintenanceWindowTargetsInput) (*DescribeMaintenanceWindowTargetsOutput, error) {
  5671  	req, out := c.DescribeMaintenanceWindowTargetsRequest(input)
  5672  	return out, req.Send()
  5673  }
  5674  
  5675  // DescribeMaintenanceWindowTargetsWithContext is the same as DescribeMaintenanceWindowTargets with the addition of
  5676  // the ability to pass a context and additional request options.
  5677  //
  5678  // See DescribeMaintenanceWindowTargets for details on how to use this API operation.
  5679  //
  5680  // The context must be non-nil and will be used for request cancellation. If
  5681  // the context is nil a panic will occur. In the future the SDK may create
  5682  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5683  // for more information on using Contexts.
  5684  func (c *SSM) DescribeMaintenanceWindowTargetsWithContext(ctx aws.Context, input *DescribeMaintenanceWindowTargetsInput, opts ...request.Option) (*DescribeMaintenanceWindowTargetsOutput, error) {
  5685  	req, out := c.DescribeMaintenanceWindowTargetsRequest(input)
  5686  	req.SetContext(ctx)
  5687  	req.ApplyOptions(opts...)
  5688  	return out, req.Send()
  5689  }
  5690  
  5691  // DescribeMaintenanceWindowTargetsPages iterates over the pages of a DescribeMaintenanceWindowTargets operation,
  5692  // calling the "fn" function with the response data for each page. To stop
  5693  // iterating, return false from the fn function.
  5694  //
  5695  // See DescribeMaintenanceWindowTargets method for more information on how to use this operation.
  5696  //
  5697  // Note: This operation can generate multiple requests to a service.
  5698  //
  5699  //    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowTargets operation.
  5700  //    pageNum := 0
  5701  //    err := client.DescribeMaintenanceWindowTargetsPages(params,
  5702  //        func(page *ssm.DescribeMaintenanceWindowTargetsOutput, lastPage bool) bool {
  5703  //            pageNum++
  5704  //            fmt.Println(page)
  5705  //            return pageNum <= 3
  5706  //        })
  5707  //
  5708  func (c *SSM) DescribeMaintenanceWindowTargetsPages(input *DescribeMaintenanceWindowTargetsInput, fn func(*DescribeMaintenanceWindowTargetsOutput, bool) bool) error {
  5709  	return c.DescribeMaintenanceWindowTargetsPagesWithContext(aws.BackgroundContext(), input, fn)
  5710  }
  5711  
  5712  // DescribeMaintenanceWindowTargetsPagesWithContext same as DescribeMaintenanceWindowTargetsPages except
  5713  // it takes a Context and allows setting request options on the pages.
  5714  //
  5715  // The context must be non-nil and will be used for request cancellation. If
  5716  // the context is nil a panic will occur. In the future the SDK may create
  5717  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5718  // for more information on using Contexts.
  5719  func (c *SSM) DescribeMaintenanceWindowTargetsPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowTargetsInput, fn func(*DescribeMaintenanceWindowTargetsOutput, bool) bool, opts ...request.Option) error {
  5720  	p := request.Pagination{
  5721  		NewRequest: func() (*request.Request, error) {
  5722  			var inCpy *DescribeMaintenanceWindowTargetsInput
  5723  			if input != nil {
  5724  				tmp := *input
  5725  				inCpy = &tmp
  5726  			}
  5727  			req, _ := c.DescribeMaintenanceWindowTargetsRequest(inCpy)
  5728  			req.SetContext(ctx)
  5729  			req.ApplyOptions(opts...)
  5730  			return req, nil
  5731  		},
  5732  	}
  5733  
  5734  	for p.Next() {
  5735  		if !fn(p.Page().(*DescribeMaintenanceWindowTargetsOutput), !p.HasNextPage()) {
  5736  			break
  5737  		}
  5738  	}
  5739  
  5740  	return p.Err()
  5741  }
  5742  
  5743  const opDescribeMaintenanceWindowTasks = "DescribeMaintenanceWindowTasks"
  5744  
  5745  // DescribeMaintenanceWindowTasksRequest generates a "aws/request.Request" representing the
  5746  // client's request for the DescribeMaintenanceWindowTasks operation. The "output" return
  5747  // value will be populated with the request's response once the request completes
  5748  // successfully.
  5749  //
  5750  // Use "Send" method on the returned Request to send the API call to the service.
  5751  // the "output" return value is not valid until after Send returns without error.
  5752  //
  5753  // See DescribeMaintenanceWindowTasks for more information on using the DescribeMaintenanceWindowTasks
  5754  // API call, and error handling.
  5755  //
  5756  // This method is useful when you want to inject custom logic or configuration
  5757  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5758  //
  5759  //
  5760  //    // Example sending a request using the DescribeMaintenanceWindowTasksRequest method.
  5761  //    req, resp := client.DescribeMaintenanceWindowTasksRequest(params)
  5762  //
  5763  //    err := req.Send()
  5764  //    if err == nil { // resp is now filled
  5765  //        fmt.Println(resp)
  5766  //    }
  5767  //
  5768  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowTasks
  5769  func (c *SSM) DescribeMaintenanceWindowTasksRequest(input *DescribeMaintenanceWindowTasksInput) (req *request.Request, output *DescribeMaintenanceWindowTasksOutput) {
  5770  	op := &request.Operation{
  5771  		Name:       opDescribeMaintenanceWindowTasks,
  5772  		HTTPMethod: "POST",
  5773  		HTTPPath:   "/",
  5774  		Paginator: &request.Paginator{
  5775  			InputTokens:     []string{"NextToken"},
  5776  			OutputTokens:    []string{"NextToken"},
  5777  			LimitToken:      "MaxResults",
  5778  			TruncationToken: "",
  5779  		},
  5780  	}
  5781  
  5782  	if input == nil {
  5783  		input = &DescribeMaintenanceWindowTasksInput{}
  5784  	}
  5785  
  5786  	output = &DescribeMaintenanceWindowTasksOutput{}
  5787  	req = c.newRequest(op, input, output)
  5788  	return
  5789  }
  5790  
  5791  // DescribeMaintenanceWindowTasks API operation for Amazon Simple Systems Manager (SSM).
  5792  //
  5793  // Lists the tasks in a maintenance window.
  5794  //
  5795  // For maintenance window tasks without a specified target, you can't supply
  5796  // values for --max-errors and --max-concurrency. Instead, the system inserts
  5797  // a placeholder value of 1, which may be reported in the response to this command.
  5798  // These values don't affect the running of your task and can be ignored.
  5799  //
  5800  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5801  // with awserr.Error's Code and Message methods to get detailed information about
  5802  // the error.
  5803  //
  5804  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  5805  // API operation DescribeMaintenanceWindowTasks for usage and error information.
  5806  //
  5807  // Returned Error Types:
  5808  //   * DoesNotExistException
  5809  //   Error returned when the ID specified for a resource, such as a maintenance
  5810  //   window or patch baseline, doesn't exist.
  5811  //
  5812  //   For information about resource quotas in Amazon Web Services Systems Manager,
  5813  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  5814  //   in the Amazon Web Services General Reference.
  5815  //
  5816  //   * InternalServerError
  5817  //   An error occurred on the server side.
  5818  //
  5819  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowTasks
  5820  func (c *SSM) DescribeMaintenanceWindowTasks(input *DescribeMaintenanceWindowTasksInput) (*DescribeMaintenanceWindowTasksOutput, error) {
  5821  	req, out := c.DescribeMaintenanceWindowTasksRequest(input)
  5822  	return out, req.Send()
  5823  }
  5824  
  5825  // DescribeMaintenanceWindowTasksWithContext is the same as DescribeMaintenanceWindowTasks with the addition of
  5826  // the ability to pass a context and additional request options.
  5827  //
  5828  // See DescribeMaintenanceWindowTasks for details on how to use this API operation.
  5829  //
  5830  // The context must be non-nil and will be used for request cancellation. If
  5831  // the context is nil a panic will occur. In the future the SDK may create
  5832  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5833  // for more information on using Contexts.
  5834  func (c *SSM) DescribeMaintenanceWindowTasksWithContext(ctx aws.Context, input *DescribeMaintenanceWindowTasksInput, opts ...request.Option) (*DescribeMaintenanceWindowTasksOutput, error) {
  5835  	req, out := c.DescribeMaintenanceWindowTasksRequest(input)
  5836  	req.SetContext(ctx)
  5837  	req.ApplyOptions(opts...)
  5838  	return out, req.Send()
  5839  }
  5840  
  5841  // DescribeMaintenanceWindowTasksPages iterates over the pages of a DescribeMaintenanceWindowTasks operation,
  5842  // calling the "fn" function with the response data for each page. To stop
  5843  // iterating, return false from the fn function.
  5844  //
  5845  // See DescribeMaintenanceWindowTasks method for more information on how to use this operation.
  5846  //
  5847  // Note: This operation can generate multiple requests to a service.
  5848  //
  5849  //    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowTasks operation.
  5850  //    pageNum := 0
  5851  //    err := client.DescribeMaintenanceWindowTasksPages(params,
  5852  //        func(page *ssm.DescribeMaintenanceWindowTasksOutput, lastPage bool) bool {
  5853  //            pageNum++
  5854  //            fmt.Println(page)
  5855  //            return pageNum <= 3
  5856  //        })
  5857  //
  5858  func (c *SSM) DescribeMaintenanceWindowTasksPages(input *DescribeMaintenanceWindowTasksInput, fn func(*DescribeMaintenanceWindowTasksOutput, bool) bool) error {
  5859  	return c.DescribeMaintenanceWindowTasksPagesWithContext(aws.BackgroundContext(), input, fn)
  5860  }
  5861  
  5862  // DescribeMaintenanceWindowTasksPagesWithContext same as DescribeMaintenanceWindowTasksPages except
  5863  // it takes a Context and allows setting request options on the pages.
  5864  //
  5865  // The context must be non-nil and will be used for request cancellation. If
  5866  // the context is nil a panic will occur. In the future the SDK may create
  5867  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5868  // for more information on using Contexts.
  5869  func (c *SSM) DescribeMaintenanceWindowTasksPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowTasksInput, fn func(*DescribeMaintenanceWindowTasksOutput, bool) bool, opts ...request.Option) error {
  5870  	p := request.Pagination{
  5871  		NewRequest: func() (*request.Request, error) {
  5872  			var inCpy *DescribeMaintenanceWindowTasksInput
  5873  			if input != nil {
  5874  				tmp := *input
  5875  				inCpy = &tmp
  5876  			}
  5877  			req, _ := c.DescribeMaintenanceWindowTasksRequest(inCpy)
  5878  			req.SetContext(ctx)
  5879  			req.ApplyOptions(opts...)
  5880  			return req, nil
  5881  		},
  5882  	}
  5883  
  5884  	for p.Next() {
  5885  		if !fn(p.Page().(*DescribeMaintenanceWindowTasksOutput), !p.HasNextPage()) {
  5886  			break
  5887  		}
  5888  	}
  5889  
  5890  	return p.Err()
  5891  }
  5892  
  5893  const opDescribeMaintenanceWindows = "DescribeMaintenanceWindows"
  5894  
  5895  // DescribeMaintenanceWindowsRequest generates a "aws/request.Request" representing the
  5896  // client's request for the DescribeMaintenanceWindows operation. The "output" return
  5897  // value will be populated with the request's response once the request completes
  5898  // successfully.
  5899  //
  5900  // Use "Send" method on the returned Request to send the API call to the service.
  5901  // the "output" return value is not valid until after Send returns without error.
  5902  //
  5903  // See DescribeMaintenanceWindows for more information on using the DescribeMaintenanceWindows
  5904  // API call, and error handling.
  5905  //
  5906  // This method is useful when you want to inject custom logic or configuration
  5907  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5908  //
  5909  //
  5910  //    // Example sending a request using the DescribeMaintenanceWindowsRequest method.
  5911  //    req, resp := client.DescribeMaintenanceWindowsRequest(params)
  5912  //
  5913  //    err := req.Send()
  5914  //    if err == nil { // resp is now filled
  5915  //        fmt.Println(resp)
  5916  //    }
  5917  //
  5918  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindows
  5919  func (c *SSM) DescribeMaintenanceWindowsRequest(input *DescribeMaintenanceWindowsInput) (req *request.Request, output *DescribeMaintenanceWindowsOutput) {
  5920  	op := &request.Operation{
  5921  		Name:       opDescribeMaintenanceWindows,
  5922  		HTTPMethod: "POST",
  5923  		HTTPPath:   "/",
  5924  		Paginator: &request.Paginator{
  5925  			InputTokens:     []string{"NextToken"},
  5926  			OutputTokens:    []string{"NextToken"},
  5927  			LimitToken:      "MaxResults",
  5928  			TruncationToken: "",
  5929  		},
  5930  	}
  5931  
  5932  	if input == nil {
  5933  		input = &DescribeMaintenanceWindowsInput{}
  5934  	}
  5935  
  5936  	output = &DescribeMaintenanceWindowsOutput{}
  5937  	req = c.newRequest(op, input, output)
  5938  	return
  5939  }
  5940  
  5941  // DescribeMaintenanceWindows API operation for Amazon Simple Systems Manager (SSM).
  5942  //
  5943  // Retrieves the maintenance windows in an Amazon Web Services account.
  5944  //
  5945  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5946  // with awserr.Error's Code and Message methods to get detailed information about
  5947  // the error.
  5948  //
  5949  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  5950  // API operation DescribeMaintenanceWindows for usage and error information.
  5951  //
  5952  // Returned Error Types:
  5953  //   * InternalServerError
  5954  //   An error occurred on the server side.
  5955  //
  5956  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindows
  5957  func (c *SSM) DescribeMaintenanceWindows(input *DescribeMaintenanceWindowsInput) (*DescribeMaintenanceWindowsOutput, error) {
  5958  	req, out := c.DescribeMaintenanceWindowsRequest(input)
  5959  	return out, req.Send()
  5960  }
  5961  
  5962  // DescribeMaintenanceWindowsWithContext is the same as DescribeMaintenanceWindows with the addition of
  5963  // the ability to pass a context and additional request options.
  5964  //
  5965  // See DescribeMaintenanceWindows for details on how to use this API operation.
  5966  //
  5967  // The context must be non-nil and will be used for request cancellation. If
  5968  // the context is nil a panic will occur. In the future the SDK may create
  5969  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5970  // for more information on using Contexts.
  5971  func (c *SSM) DescribeMaintenanceWindowsWithContext(ctx aws.Context, input *DescribeMaintenanceWindowsInput, opts ...request.Option) (*DescribeMaintenanceWindowsOutput, error) {
  5972  	req, out := c.DescribeMaintenanceWindowsRequest(input)
  5973  	req.SetContext(ctx)
  5974  	req.ApplyOptions(opts...)
  5975  	return out, req.Send()
  5976  }
  5977  
  5978  // DescribeMaintenanceWindowsPages iterates over the pages of a DescribeMaintenanceWindows operation,
  5979  // calling the "fn" function with the response data for each page. To stop
  5980  // iterating, return false from the fn function.
  5981  //
  5982  // See DescribeMaintenanceWindows method for more information on how to use this operation.
  5983  //
  5984  // Note: This operation can generate multiple requests to a service.
  5985  //
  5986  //    // Example iterating over at most 3 pages of a DescribeMaintenanceWindows operation.
  5987  //    pageNum := 0
  5988  //    err := client.DescribeMaintenanceWindowsPages(params,
  5989  //        func(page *ssm.DescribeMaintenanceWindowsOutput, lastPage bool) bool {
  5990  //            pageNum++
  5991  //            fmt.Println(page)
  5992  //            return pageNum <= 3
  5993  //        })
  5994  //
  5995  func (c *SSM) DescribeMaintenanceWindowsPages(input *DescribeMaintenanceWindowsInput, fn func(*DescribeMaintenanceWindowsOutput, bool) bool) error {
  5996  	return c.DescribeMaintenanceWindowsPagesWithContext(aws.BackgroundContext(), input, fn)
  5997  }
  5998  
  5999  // DescribeMaintenanceWindowsPagesWithContext same as DescribeMaintenanceWindowsPages except
  6000  // it takes a Context and allows setting request options on the pages.
  6001  //
  6002  // The context must be non-nil and will be used for request cancellation. If
  6003  // the context is nil a panic will occur. In the future the SDK may create
  6004  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6005  // for more information on using Contexts.
  6006  func (c *SSM) DescribeMaintenanceWindowsPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowsInput, fn func(*DescribeMaintenanceWindowsOutput, bool) bool, opts ...request.Option) error {
  6007  	p := request.Pagination{
  6008  		NewRequest: func() (*request.Request, error) {
  6009  			var inCpy *DescribeMaintenanceWindowsInput
  6010  			if input != nil {
  6011  				tmp := *input
  6012  				inCpy = &tmp
  6013  			}
  6014  			req, _ := c.DescribeMaintenanceWindowsRequest(inCpy)
  6015  			req.SetContext(ctx)
  6016  			req.ApplyOptions(opts...)
  6017  			return req, nil
  6018  		},
  6019  	}
  6020  
  6021  	for p.Next() {
  6022  		if !fn(p.Page().(*DescribeMaintenanceWindowsOutput), !p.HasNextPage()) {
  6023  			break
  6024  		}
  6025  	}
  6026  
  6027  	return p.Err()
  6028  }
  6029  
  6030  const opDescribeMaintenanceWindowsForTarget = "DescribeMaintenanceWindowsForTarget"
  6031  
  6032  // DescribeMaintenanceWindowsForTargetRequest generates a "aws/request.Request" representing the
  6033  // client's request for the DescribeMaintenanceWindowsForTarget operation. The "output" return
  6034  // value will be populated with the request's response once the request completes
  6035  // successfully.
  6036  //
  6037  // Use "Send" method on the returned Request to send the API call to the service.
  6038  // the "output" return value is not valid until after Send returns without error.
  6039  //
  6040  // See DescribeMaintenanceWindowsForTarget for more information on using the DescribeMaintenanceWindowsForTarget
  6041  // API call, and error handling.
  6042  //
  6043  // This method is useful when you want to inject custom logic or configuration
  6044  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6045  //
  6046  //
  6047  //    // Example sending a request using the DescribeMaintenanceWindowsForTargetRequest method.
  6048  //    req, resp := client.DescribeMaintenanceWindowsForTargetRequest(params)
  6049  //
  6050  //    err := req.Send()
  6051  //    if err == nil { // resp is now filled
  6052  //        fmt.Println(resp)
  6053  //    }
  6054  //
  6055  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowsForTarget
  6056  func (c *SSM) DescribeMaintenanceWindowsForTargetRequest(input *DescribeMaintenanceWindowsForTargetInput) (req *request.Request, output *DescribeMaintenanceWindowsForTargetOutput) {
  6057  	op := &request.Operation{
  6058  		Name:       opDescribeMaintenanceWindowsForTarget,
  6059  		HTTPMethod: "POST",
  6060  		HTTPPath:   "/",
  6061  		Paginator: &request.Paginator{
  6062  			InputTokens:     []string{"NextToken"},
  6063  			OutputTokens:    []string{"NextToken"},
  6064  			LimitToken:      "MaxResults",
  6065  			TruncationToken: "",
  6066  		},
  6067  	}
  6068  
  6069  	if input == nil {
  6070  		input = &DescribeMaintenanceWindowsForTargetInput{}
  6071  	}
  6072  
  6073  	output = &DescribeMaintenanceWindowsForTargetOutput{}
  6074  	req = c.newRequest(op, input, output)
  6075  	return
  6076  }
  6077  
  6078  // DescribeMaintenanceWindowsForTarget API operation for Amazon Simple Systems Manager (SSM).
  6079  //
  6080  // Retrieves information about the maintenance window targets or tasks that
  6081  // an instance is associated with.
  6082  //
  6083  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6084  // with awserr.Error's Code and Message methods to get detailed information about
  6085  // the error.
  6086  //
  6087  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  6088  // API operation DescribeMaintenanceWindowsForTarget for usage and error information.
  6089  //
  6090  // Returned Error Types:
  6091  //   * InternalServerError
  6092  //   An error occurred on the server side.
  6093  //
  6094  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowsForTarget
  6095  func (c *SSM) DescribeMaintenanceWindowsForTarget(input *DescribeMaintenanceWindowsForTargetInput) (*DescribeMaintenanceWindowsForTargetOutput, error) {
  6096  	req, out := c.DescribeMaintenanceWindowsForTargetRequest(input)
  6097  	return out, req.Send()
  6098  }
  6099  
  6100  // DescribeMaintenanceWindowsForTargetWithContext is the same as DescribeMaintenanceWindowsForTarget with the addition of
  6101  // the ability to pass a context and additional request options.
  6102  //
  6103  // See DescribeMaintenanceWindowsForTarget for details on how to use this API operation.
  6104  //
  6105  // The context must be non-nil and will be used for request cancellation. If
  6106  // the context is nil a panic will occur. In the future the SDK may create
  6107  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6108  // for more information on using Contexts.
  6109  func (c *SSM) DescribeMaintenanceWindowsForTargetWithContext(ctx aws.Context, input *DescribeMaintenanceWindowsForTargetInput, opts ...request.Option) (*DescribeMaintenanceWindowsForTargetOutput, error) {
  6110  	req, out := c.DescribeMaintenanceWindowsForTargetRequest(input)
  6111  	req.SetContext(ctx)
  6112  	req.ApplyOptions(opts...)
  6113  	return out, req.Send()
  6114  }
  6115  
  6116  // DescribeMaintenanceWindowsForTargetPages iterates over the pages of a DescribeMaintenanceWindowsForTarget operation,
  6117  // calling the "fn" function with the response data for each page. To stop
  6118  // iterating, return false from the fn function.
  6119  //
  6120  // See DescribeMaintenanceWindowsForTarget method for more information on how to use this operation.
  6121  //
  6122  // Note: This operation can generate multiple requests to a service.
  6123  //
  6124  //    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowsForTarget operation.
  6125  //    pageNum := 0
  6126  //    err := client.DescribeMaintenanceWindowsForTargetPages(params,
  6127  //        func(page *ssm.DescribeMaintenanceWindowsForTargetOutput, lastPage bool) bool {
  6128  //            pageNum++
  6129  //            fmt.Println(page)
  6130  //            return pageNum <= 3
  6131  //        })
  6132  //
  6133  func (c *SSM) DescribeMaintenanceWindowsForTargetPages(input *DescribeMaintenanceWindowsForTargetInput, fn func(*DescribeMaintenanceWindowsForTargetOutput, bool) bool) error {
  6134  	return c.DescribeMaintenanceWindowsForTargetPagesWithContext(aws.BackgroundContext(), input, fn)
  6135  }
  6136  
  6137  // DescribeMaintenanceWindowsForTargetPagesWithContext same as DescribeMaintenanceWindowsForTargetPages except
  6138  // it takes a Context and allows setting request options on the pages.
  6139  //
  6140  // The context must be non-nil and will be used for request cancellation. If
  6141  // the context is nil a panic will occur. In the future the SDK may create
  6142  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6143  // for more information on using Contexts.
  6144  func (c *SSM) DescribeMaintenanceWindowsForTargetPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowsForTargetInput, fn func(*DescribeMaintenanceWindowsForTargetOutput, bool) bool, opts ...request.Option) error {
  6145  	p := request.Pagination{
  6146  		NewRequest: func() (*request.Request, error) {
  6147  			var inCpy *DescribeMaintenanceWindowsForTargetInput
  6148  			if input != nil {
  6149  				tmp := *input
  6150  				inCpy = &tmp
  6151  			}
  6152  			req, _ := c.DescribeMaintenanceWindowsForTargetRequest(inCpy)
  6153  			req.SetContext(ctx)
  6154  			req.ApplyOptions(opts...)
  6155  			return req, nil
  6156  		},
  6157  	}
  6158  
  6159  	for p.Next() {
  6160  		if !fn(p.Page().(*DescribeMaintenanceWindowsForTargetOutput), !p.HasNextPage()) {
  6161  			break
  6162  		}
  6163  	}
  6164  
  6165  	return p.Err()
  6166  }
  6167  
  6168  const opDescribeOpsItems = "DescribeOpsItems"
  6169  
  6170  // DescribeOpsItemsRequest generates a "aws/request.Request" representing the
  6171  // client's request for the DescribeOpsItems operation. The "output" return
  6172  // value will be populated with the request's response once the request completes
  6173  // successfully.
  6174  //
  6175  // Use "Send" method on the returned Request to send the API call to the service.
  6176  // the "output" return value is not valid until after Send returns without error.
  6177  //
  6178  // See DescribeOpsItems for more information on using the DescribeOpsItems
  6179  // API call, and error handling.
  6180  //
  6181  // This method is useful when you want to inject custom logic or configuration
  6182  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6183  //
  6184  //
  6185  //    // Example sending a request using the DescribeOpsItemsRequest method.
  6186  //    req, resp := client.DescribeOpsItemsRequest(params)
  6187  //
  6188  //    err := req.Send()
  6189  //    if err == nil { // resp is now filled
  6190  //        fmt.Println(resp)
  6191  //    }
  6192  //
  6193  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeOpsItems
  6194  func (c *SSM) DescribeOpsItemsRequest(input *DescribeOpsItemsInput) (req *request.Request, output *DescribeOpsItemsOutput) {
  6195  	op := &request.Operation{
  6196  		Name:       opDescribeOpsItems,
  6197  		HTTPMethod: "POST",
  6198  		HTTPPath:   "/",
  6199  		Paginator: &request.Paginator{
  6200  			InputTokens:     []string{"NextToken"},
  6201  			OutputTokens:    []string{"NextToken"},
  6202  			LimitToken:      "MaxResults",
  6203  			TruncationToken: "",
  6204  		},
  6205  	}
  6206  
  6207  	if input == nil {
  6208  		input = &DescribeOpsItemsInput{}
  6209  	}
  6210  
  6211  	output = &DescribeOpsItemsOutput{}
  6212  	req = c.newRequest(op, input, output)
  6213  	return
  6214  }
  6215  
  6216  // DescribeOpsItems API operation for Amazon Simple Systems Manager (SSM).
  6217  //
  6218  // Query a set of OpsItems. You must have permission in Identity and Access
  6219  // Management (IAM) to query a list of OpsItems. For more information, see Getting
  6220  // started with OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-getting-started.html)
  6221  // in the Amazon Web Services Systems Manager User Guide.
  6222  //
  6223  // Operations engineers and IT professionals use Amazon Web Services Systems
  6224  // Manager OpsCenter to view, investigate, and remediate operational issues
  6225  // impacting the performance and health of their Amazon Web Services resources.
  6226  // For more information, see OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html)
  6227  // in the Amazon Web Services Systems Manager User Guide.
  6228  //
  6229  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6230  // with awserr.Error's Code and Message methods to get detailed information about
  6231  // the error.
  6232  //
  6233  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  6234  // API operation DescribeOpsItems for usage and error information.
  6235  //
  6236  // Returned Error Types:
  6237  //   * InternalServerError
  6238  //   An error occurred on the server side.
  6239  //
  6240  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeOpsItems
  6241  func (c *SSM) DescribeOpsItems(input *DescribeOpsItemsInput) (*DescribeOpsItemsOutput, error) {
  6242  	req, out := c.DescribeOpsItemsRequest(input)
  6243  	return out, req.Send()
  6244  }
  6245  
  6246  // DescribeOpsItemsWithContext is the same as DescribeOpsItems with the addition of
  6247  // the ability to pass a context and additional request options.
  6248  //
  6249  // See DescribeOpsItems for details on how to use this API operation.
  6250  //
  6251  // The context must be non-nil and will be used for request cancellation. If
  6252  // the context is nil a panic will occur. In the future the SDK may create
  6253  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6254  // for more information on using Contexts.
  6255  func (c *SSM) DescribeOpsItemsWithContext(ctx aws.Context, input *DescribeOpsItemsInput, opts ...request.Option) (*DescribeOpsItemsOutput, error) {
  6256  	req, out := c.DescribeOpsItemsRequest(input)
  6257  	req.SetContext(ctx)
  6258  	req.ApplyOptions(opts...)
  6259  	return out, req.Send()
  6260  }
  6261  
  6262  // DescribeOpsItemsPages iterates over the pages of a DescribeOpsItems operation,
  6263  // calling the "fn" function with the response data for each page. To stop
  6264  // iterating, return false from the fn function.
  6265  //
  6266  // See DescribeOpsItems method for more information on how to use this operation.
  6267  //
  6268  // Note: This operation can generate multiple requests to a service.
  6269  //
  6270  //    // Example iterating over at most 3 pages of a DescribeOpsItems operation.
  6271  //    pageNum := 0
  6272  //    err := client.DescribeOpsItemsPages(params,
  6273  //        func(page *ssm.DescribeOpsItemsOutput, lastPage bool) bool {
  6274  //            pageNum++
  6275  //            fmt.Println(page)
  6276  //            return pageNum <= 3
  6277  //        })
  6278  //
  6279  func (c *SSM) DescribeOpsItemsPages(input *DescribeOpsItemsInput, fn func(*DescribeOpsItemsOutput, bool) bool) error {
  6280  	return c.DescribeOpsItemsPagesWithContext(aws.BackgroundContext(), input, fn)
  6281  }
  6282  
  6283  // DescribeOpsItemsPagesWithContext same as DescribeOpsItemsPages except
  6284  // it takes a Context and allows setting request options on the pages.
  6285  //
  6286  // The context must be non-nil and will be used for request cancellation. If
  6287  // the context is nil a panic will occur. In the future the SDK may create
  6288  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6289  // for more information on using Contexts.
  6290  func (c *SSM) DescribeOpsItemsPagesWithContext(ctx aws.Context, input *DescribeOpsItemsInput, fn func(*DescribeOpsItemsOutput, bool) bool, opts ...request.Option) error {
  6291  	p := request.Pagination{
  6292  		NewRequest: func() (*request.Request, error) {
  6293  			var inCpy *DescribeOpsItemsInput
  6294  			if input != nil {
  6295  				tmp := *input
  6296  				inCpy = &tmp
  6297  			}
  6298  			req, _ := c.DescribeOpsItemsRequest(inCpy)
  6299  			req.SetContext(ctx)
  6300  			req.ApplyOptions(opts...)
  6301  			return req, nil
  6302  		},
  6303  	}
  6304  
  6305  	for p.Next() {
  6306  		if !fn(p.Page().(*DescribeOpsItemsOutput), !p.HasNextPage()) {
  6307  			break
  6308  		}
  6309  	}
  6310  
  6311  	return p.Err()
  6312  }
  6313  
  6314  const opDescribeParameters = "DescribeParameters"
  6315  
  6316  // DescribeParametersRequest generates a "aws/request.Request" representing the
  6317  // client's request for the DescribeParameters operation. The "output" return
  6318  // value will be populated with the request's response once the request completes
  6319  // successfully.
  6320  //
  6321  // Use "Send" method on the returned Request to send the API call to the service.
  6322  // the "output" return value is not valid until after Send returns without error.
  6323  //
  6324  // See DescribeParameters for more information on using the DescribeParameters
  6325  // API call, and error handling.
  6326  //
  6327  // This method is useful when you want to inject custom logic or configuration
  6328  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6329  //
  6330  //
  6331  //    // Example sending a request using the DescribeParametersRequest method.
  6332  //    req, resp := client.DescribeParametersRequest(params)
  6333  //
  6334  //    err := req.Send()
  6335  //    if err == nil { // resp is now filled
  6336  //        fmt.Println(resp)
  6337  //    }
  6338  //
  6339  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeParameters
  6340  func (c *SSM) DescribeParametersRequest(input *DescribeParametersInput) (req *request.Request, output *DescribeParametersOutput) {
  6341  	op := &request.Operation{
  6342  		Name:       opDescribeParameters,
  6343  		HTTPMethod: "POST",
  6344  		HTTPPath:   "/",
  6345  		Paginator: &request.Paginator{
  6346  			InputTokens:     []string{"NextToken"},
  6347  			OutputTokens:    []string{"NextToken"},
  6348  			LimitToken:      "MaxResults",
  6349  			TruncationToken: "",
  6350  		},
  6351  	}
  6352  
  6353  	if input == nil {
  6354  		input = &DescribeParametersInput{}
  6355  	}
  6356  
  6357  	output = &DescribeParametersOutput{}
  6358  	req = c.newRequest(op, input, output)
  6359  	return
  6360  }
  6361  
  6362  // DescribeParameters API operation for Amazon Simple Systems Manager (SSM).
  6363  //
  6364  // Get information about a parameter.
  6365  //
  6366  // Request results are returned on a best-effort basis. If you specify MaxResults
  6367  // in the request, the response includes information up to the limit specified.
  6368  // The number of items returned, however, can be between zero and the value
  6369  // of MaxResults. If the service reaches an internal limit while processing
  6370  // the results, it stops the operation and returns the matching values up to
  6371  // that point and a NextToken. You can specify the NextToken in a subsequent
  6372  // call to get the next set of results.
  6373  //
  6374  // If you change the KMS key alias for the KMS key used to encrypt a parameter,
  6375  // then you must also update the key alias the parameter uses to reference KMS.
  6376  // Otherwise, DescribeParameters retrieves whatever the original key alias was
  6377  // referencing.
  6378  //
  6379  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6380  // with awserr.Error's Code and Message methods to get detailed information about
  6381  // the error.
  6382  //
  6383  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  6384  // API operation DescribeParameters for usage and error information.
  6385  //
  6386  // Returned Error Types:
  6387  //   * InternalServerError
  6388  //   An error occurred on the server side.
  6389  //
  6390  //   * InvalidFilterKey
  6391  //   The specified key isn't valid.
  6392  //
  6393  //   * InvalidFilterOption
  6394  //   The specified filter option isn't valid. Valid options are Equals and BeginsWith.
  6395  //   For Path filter, valid options are Recursive and OneLevel.
  6396  //
  6397  //   * InvalidFilterValue
  6398  //   The filter value isn't valid. Verify the value and try again.
  6399  //
  6400  //   * InvalidNextToken
  6401  //   The specified token isn't valid.
  6402  //
  6403  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeParameters
  6404  func (c *SSM) DescribeParameters(input *DescribeParametersInput) (*DescribeParametersOutput, error) {
  6405  	req, out := c.DescribeParametersRequest(input)
  6406  	return out, req.Send()
  6407  }
  6408  
  6409  // DescribeParametersWithContext is the same as DescribeParameters with the addition of
  6410  // the ability to pass a context and additional request options.
  6411  //
  6412  // See DescribeParameters for details on how to use this API operation.
  6413  //
  6414  // The context must be non-nil and will be used for request cancellation. If
  6415  // the context is nil a panic will occur. In the future the SDK may create
  6416  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6417  // for more information on using Contexts.
  6418  func (c *SSM) DescribeParametersWithContext(ctx aws.Context, input *DescribeParametersInput, opts ...request.Option) (*DescribeParametersOutput, error) {
  6419  	req, out := c.DescribeParametersRequest(input)
  6420  	req.SetContext(ctx)
  6421  	req.ApplyOptions(opts...)
  6422  	return out, req.Send()
  6423  }
  6424  
  6425  // DescribeParametersPages iterates over the pages of a DescribeParameters operation,
  6426  // calling the "fn" function with the response data for each page. To stop
  6427  // iterating, return false from the fn function.
  6428  //
  6429  // See DescribeParameters method for more information on how to use this operation.
  6430  //
  6431  // Note: This operation can generate multiple requests to a service.
  6432  //
  6433  //    // Example iterating over at most 3 pages of a DescribeParameters operation.
  6434  //    pageNum := 0
  6435  //    err := client.DescribeParametersPages(params,
  6436  //        func(page *ssm.DescribeParametersOutput, lastPage bool) bool {
  6437  //            pageNum++
  6438  //            fmt.Println(page)
  6439  //            return pageNum <= 3
  6440  //        })
  6441  //
  6442  func (c *SSM) DescribeParametersPages(input *DescribeParametersInput, fn func(*DescribeParametersOutput, bool) bool) error {
  6443  	return c.DescribeParametersPagesWithContext(aws.BackgroundContext(), input, fn)
  6444  }
  6445  
  6446  // DescribeParametersPagesWithContext same as DescribeParametersPages except
  6447  // it takes a Context and allows setting request options on the pages.
  6448  //
  6449  // The context must be non-nil and will be used for request cancellation. If
  6450  // the context is nil a panic will occur. In the future the SDK may create
  6451  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6452  // for more information on using Contexts.
  6453  func (c *SSM) DescribeParametersPagesWithContext(ctx aws.Context, input *DescribeParametersInput, fn func(*DescribeParametersOutput, bool) bool, opts ...request.Option) error {
  6454  	p := request.Pagination{
  6455  		NewRequest: func() (*request.Request, error) {
  6456  			var inCpy *DescribeParametersInput
  6457  			if input != nil {
  6458  				tmp := *input
  6459  				inCpy = &tmp
  6460  			}
  6461  			req, _ := c.DescribeParametersRequest(inCpy)
  6462  			req.SetContext(ctx)
  6463  			req.ApplyOptions(opts...)
  6464  			return req, nil
  6465  		},
  6466  	}
  6467  
  6468  	for p.Next() {
  6469  		if !fn(p.Page().(*DescribeParametersOutput), !p.HasNextPage()) {
  6470  			break
  6471  		}
  6472  	}
  6473  
  6474  	return p.Err()
  6475  }
  6476  
  6477  const opDescribePatchBaselines = "DescribePatchBaselines"
  6478  
  6479  // DescribePatchBaselinesRequest generates a "aws/request.Request" representing the
  6480  // client's request for the DescribePatchBaselines operation. The "output" return
  6481  // value will be populated with the request's response once the request completes
  6482  // successfully.
  6483  //
  6484  // Use "Send" method on the returned Request to send the API call to the service.
  6485  // the "output" return value is not valid until after Send returns without error.
  6486  //
  6487  // See DescribePatchBaselines for more information on using the DescribePatchBaselines
  6488  // API call, and error handling.
  6489  //
  6490  // This method is useful when you want to inject custom logic or configuration
  6491  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6492  //
  6493  //
  6494  //    // Example sending a request using the DescribePatchBaselinesRequest method.
  6495  //    req, resp := client.DescribePatchBaselinesRequest(params)
  6496  //
  6497  //    err := req.Send()
  6498  //    if err == nil { // resp is now filled
  6499  //        fmt.Println(resp)
  6500  //    }
  6501  //
  6502  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchBaselines
  6503  func (c *SSM) DescribePatchBaselinesRequest(input *DescribePatchBaselinesInput) (req *request.Request, output *DescribePatchBaselinesOutput) {
  6504  	op := &request.Operation{
  6505  		Name:       opDescribePatchBaselines,
  6506  		HTTPMethod: "POST",
  6507  		HTTPPath:   "/",
  6508  		Paginator: &request.Paginator{
  6509  			InputTokens:     []string{"NextToken"},
  6510  			OutputTokens:    []string{"NextToken"},
  6511  			LimitToken:      "MaxResults",
  6512  			TruncationToken: "",
  6513  		},
  6514  	}
  6515  
  6516  	if input == nil {
  6517  		input = &DescribePatchBaselinesInput{}
  6518  	}
  6519  
  6520  	output = &DescribePatchBaselinesOutput{}
  6521  	req = c.newRequest(op, input, output)
  6522  	return
  6523  }
  6524  
  6525  // DescribePatchBaselines API operation for Amazon Simple Systems Manager (SSM).
  6526  //
  6527  // Lists the patch baselines in your Amazon Web Services account.
  6528  //
  6529  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6530  // with awserr.Error's Code and Message methods to get detailed information about
  6531  // the error.
  6532  //
  6533  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  6534  // API operation DescribePatchBaselines for usage and error information.
  6535  //
  6536  // Returned Error Types:
  6537  //   * InternalServerError
  6538  //   An error occurred on the server side.
  6539  //
  6540  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchBaselines
  6541  func (c *SSM) DescribePatchBaselines(input *DescribePatchBaselinesInput) (*DescribePatchBaselinesOutput, error) {
  6542  	req, out := c.DescribePatchBaselinesRequest(input)
  6543  	return out, req.Send()
  6544  }
  6545  
  6546  // DescribePatchBaselinesWithContext is the same as DescribePatchBaselines with the addition of
  6547  // the ability to pass a context and additional request options.
  6548  //
  6549  // See DescribePatchBaselines for details on how to use this API operation.
  6550  //
  6551  // The context must be non-nil and will be used for request cancellation. If
  6552  // the context is nil a panic will occur. In the future the SDK may create
  6553  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6554  // for more information on using Contexts.
  6555  func (c *SSM) DescribePatchBaselinesWithContext(ctx aws.Context, input *DescribePatchBaselinesInput, opts ...request.Option) (*DescribePatchBaselinesOutput, error) {
  6556  	req, out := c.DescribePatchBaselinesRequest(input)
  6557  	req.SetContext(ctx)
  6558  	req.ApplyOptions(opts...)
  6559  	return out, req.Send()
  6560  }
  6561  
  6562  // DescribePatchBaselinesPages iterates over the pages of a DescribePatchBaselines operation,
  6563  // calling the "fn" function with the response data for each page. To stop
  6564  // iterating, return false from the fn function.
  6565  //
  6566  // See DescribePatchBaselines method for more information on how to use this operation.
  6567  //
  6568  // Note: This operation can generate multiple requests to a service.
  6569  //
  6570  //    // Example iterating over at most 3 pages of a DescribePatchBaselines operation.
  6571  //    pageNum := 0
  6572  //    err := client.DescribePatchBaselinesPages(params,
  6573  //        func(page *ssm.DescribePatchBaselinesOutput, lastPage bool) bool {
  6574  //            pageNum++
  6575  //            fmt.Println(page)
  6576  //            return pageNum <= 3
  6577  //        })
  6578  //
  6579  func (c *SSM) DescribePatchBaselinesPages(input *DescribePatchBaselinesInput, fn func(*DescribePatchBaselinesOutput, bool) bool) error {
  6580  	return c.DescribePatchBaselinesPagesWithContext(aws.BackgroundContext(), input, fn)
  6581  }
  6582  
  6583  // DescribePatchBaselinesPagesWithContext same as DescribePatchBaselinesPages except
  6584  // it takes a Context and allows setting request options on the pages.
  6585  //
  6586  // The context must be non-nil and will be used for request cancellation. If
  6587  // the context is nil a panic will occur. In the future the SDK may create
  6588  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6589  // for more information on using Contexts.
  6590  func (c *SSM) DescribePatchBaselinesPagesWithContext(ctx aws.Context, input *DescribePatchBaselinesInput, fn func(*DescribePatchBaselinesOutput, bool) bool, opts ...request.Option) error {
  6591  	p := request.Pagination{
  6592  		NewRequest: func() (*request.Request, error) {
  6593  			var inCpy *DescribePatchBaselinesInput
  6594  			if input != nil {
  6595  				tmp := *input
  6596  				inCpy = &tmp
  6597  			}
  6598  			req, _ := c.DescribePatchBaselinesRequest(inCpy)
  6599  			req.SetContext(ctx)
  6600  			req.ApplyOptions(opts...)
  6601  			return req, nil
  6602  		},
  6603  	}
  6604  
  6605  	for p.Next() {
  6606  		if !fn(p.Page().(*DescribePatchBaselinesOutput), !p.HasNextPage()) {
  6607  			break
  6608  		}
  6609  	}
  6610  
  6611  	return p.Err()
  6612  }
  6613  
  6614  const opDescribePatchGroupState = "DescribePatchGroupState"
  6615  
  6616  // DescribePatchGroupStateRequest generates a "aws/request.Request" representing the
  6617  // client's request for the DescribePatchGroupState operation. The "output" return
  6618  // value will be populated with the request's response once the request completes
  6619  // successfully.
  6620  //
  6621  // Use "Send" method on the returned Request to send the API call to the service.
  6622  // the "output" return value is not valid until after Send returns without error.
  6623  //
  6624  // See DescribePatchGroupState for more information on using the DescribePatchGroupState
  6625  // API call, and error handling.
  6626  //
  6627  // This method is useful when you want to inject custom logic or configuration
  6628  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6629  //
  6630  //
  6631  //    // Example sending a request using the DescribePatchGroupStateRequest method.
  6632  //    req, resp := client.DescribePatchGroupStateRequest(params)
  6633  //
  6634  //    err := req.Send()
  6635  //    if err == nil { // resp is now filled
  6636  //        fmt.Println(resp)
  6637  //    }
  6638  //
  6639  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchGroupState
  6640  func (c *SSM) DescribePatchGroupStateRequest(input *DescribePatchGroupStateInput) (req *request.Request, output *DescribePatchGroupStateOutput) {
  6641  	op := &request.Operation{
  6642  		Name:       opDescribePatchGroupState,
  6643  		HTTPMethod: "POST",
  6644  		HTTPPath:   "/",
  6645  	}
  6646  
  6647  	if input == nil {
  6648  		input = &DescribePatchGroupStateInput{}
  6649  	}
  6650  
  6651  	output = &DescribePatchGroupStateOutput{}
  6652  	req = c.newRequest(op, input, output)
  6653  	return
  6654  }
  6655  
  6656  // DescribePatchGroupState API operation for Amazon Simple Systems Manager (SSM).
  6657  //
  6658  // Returns high-level aggregated patch compliance state information for a patch
  6659  // group.
  6660  //
  6661  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6662  // with awserr.Error's Code and Message methods to get detailed information about
  6663  // the error.
  6664  //
  6665  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  6666  // API operation DescribePatchGroupState for usage and error information.
  6667  //
  6668  // Returned Error Types:
  6669  //   * InternalServerError
  6670  //   An error occurred on the server side.
  6671  //
  6672  //   * InvalidNextToken
  6673  //   The specified token isn't valid.
  6674  //
  6675  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchGroupState
  6676  func (c *SSM) DescribePatchGroupState(input *DescribePatchGroupStateInput) (*DescribePatchGroupStateOutput, error) {
  6677  	req, out := c.DescribePatchGroupStateRequest(input)
  6678  	return out, req.Send()
  6679  }
  6680  
  6681  // DescribePatchGroupStateWithContext is the same as DescribePatchGroupState with the addition of
  6682  // the ability to pass a context and additional request options.
  6683  //
  6684  // See DescribePatchGroupState for details on how to use this API operation.
  6685  //
  6686  // The context must be non-nil and will be used for request cancellation. If
  6687  // the context is nil a panic will occur. In the future the SDK may create
  6688  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6689  // for more information on using Contexts.
  6690  func (c *SSM) DescribePatchGroupStateWithContext(ctx aws.Context, input *DescribePatchGroupStateInput, opts ...request.Option) (*DescribePatchGroupStateOutput, error) {
  6691  	req, out := c.DescribePatchGroupStateRequest(input)
  6692  	req.SetContext(ctx)
  6693  	req.ApplyOptions(opts...)
  6694  	return out, req.Send()
  6695  }
  6696  
  6697  const opDescribePatchGroups = "DescribePatchGroups"
  6698  
  6699  // DescribePatchGroupsRequest generates a "aws/request.Request" representing the
  6700  // client's request for the DescribePatchGroups operation. The "output" return
  6701  // value will be populated with the request's response once the request completes
  6702  // successfully.
  6703  //
  6704  // Use "Send" method on the returned Request to send the API call to the service.
  6705  // the "output" return value is not valid until after Send returns without error.
  6706  //
  6707  // See DescribePatchGroups for more information on using the DescribePatchGroups
  6708  // API call, and error handling.
  6709  //
  6710  // This method is useful when you want to inject custom logic or configuration
  6711  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6712  //
  6713  //
  6714  //    // Example sending a request using the DescribePatchGroupsRequest method.
  6715  //    req, resp := client.DescribePatchGroupsRequest(params)
  6716  //
  6717  //    err := req.Send()
  6718  //    if err == nil { // resp is now filled
  6719  //        fmt.Println(resp)
  6720  //    }
  6721  //
  6722  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchGroups
  6723  func (c *SSM) DescribePatchGroupsRequest(input *DescribePatchGroupsInput) (req *request.Request, output *DescribePatchGroupsOutput) {
  6724  	op := &request.Operation{
  6725  		Name:       opDescribePatchGroups,
  6726  		HTTPMethod: "POST",
  6727  		HTTPPath:   "/",
  6728  		Paginator: &request.Paginator{
  6729  			InputTokens:     []string{"NextToken"},
  6730  			OutputTokens:    []string{"NextToken"},
  6731  			LimitToken:      "MaxResults",
  6732  			TruncationToken: "",
  6733  		},
  6734  	}
  6735  
  6736  	if input == nil {
  6737  		input = &DescribePatchGroupsInput{}
  6738  	}
  6739  
  6740  	output = &DescribePatchGroupsOutput{}
  6741  	req = c.newRequest(op, input, output)
  6742  	return
  6743  }
  6744  
  6745  // DescribePatchGroups API operation for Amazon Simple Systems Manager (SSM).
  6746  //
  6747  // Lists all patch groups that have been registered with patch baselines.
  6748  //
  6749  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6750  // with awserr.Error's Code and Message methods to get detailed information about
  6751  // the error.
  6752  //
  6753  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  6754  // API operation DescribePatchGroups for usage and error information.
  6755  //
  6756  // Returned Error Types:
  6757  //   * InternalServerError
  6758  //   An error occurred on the server side.
  6759  //
  6760  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchGroups
  6761  func (c *SSM) DescribePatchGroups(input *DescribePatchGroupsInput) (*DescribePatchGroupsOutput, error) {
  6762  	req, out := c.DescribePatchGroupsRequest(input)
  6763  	return out, req.Send()
  6764  }
  6765  
  6766  // DescribePatchGroupsWithContext is the same as DescribePatchGroups with the addition of
  6767  // the ability to pass a context and additional request options.
  6768  //
  6769  // See DescribePatchGroups for details on how to use this API operation.
  6770  //
  6771  // The context must be non-nil and will be used for request cancellation. If
  6772  // the context is nil a panic will occur. In the future the SDK may create
  6773  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6774  // for more information on using Contexts.
  6775  func (c *SSM) DescribePatchGroupsWithContext(ctx aws.Context, input *DescribePatchGroupsInput, opts ...request.Option) (*DescribePatchGroupsOutput, error) {
  6776  	req, out := c.DescribePatchGroupsRequest(input)
  6777  	req.SetContext(ctx)
  6778  	req.ApplyOptions(opts...)
  6779  	return out, req.Send()
  6780  }
  6781  
  6782  // DescribePatchGroupsPages iterates over the pages of a DescribePatchGroups operation,
  6783  // calling the "fn" function with the response data for each page. To stop
  6784  // iterating, return false from the fn function.
  6785  //
  6786  // See DescribePatchGroups method for more information on how to use this operation.
  6787  //
  6788  // Note: This operation can generate multiple requests to a service.
  6789  //
  6790  //    // Example iterating over at most 3 pages of a DescribePatchGroups operation.
  6791  //    pageNum := 0
  6792  //    err := client.DescribePatchGroupsPages(params,
  6793  //        func(page *ssm.DescribePatchGroupsOutput, lastPage bool) bool {
  6794  //            pageNum++
  6795  //            fmt.Println(page)
  6796  //            return pageNum <= 3
  6797  //        })
  6798  //
  6799  func (c *SSM) DescribePatchGroupsPages(input *DescribePatchGroupsInput, fn func(*DescribePatchGroupsOutput, bool) bool) error {
  6800  	return c.DescribePatchGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
  6801  }
  6802  
  6803  // DescribePatchGroupsPagesWithContext same as DescribePatchGroupsPages except
  6804  // it takes a Context and allows setting request options on the pages.
  6805  //
  6806  // The context must be non-nil and will be used for request cancellation. If
  6807  // the context is nil a panic will occur. In the future the SDK may create
  6808  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6809  // for more information on using Contexts.
  6810  func (c *SSM) DescribePatchGroupsPagesWithContext(ctx aws.Context, input *DescribePatchGroupsInput, fn func(*DescribePatchGroupsOutput, bool) bool, opts ...request.Option) error {
  6811  	p := request.Pagination{
  6812  		NewRequest: func() (*request.Request, error) {
  6813  			var inCpy *DescribePatchGroupsInput
  6814  			if input != nil {
  6815  				tmp := *input
  6816  				inCpy = &tmp
  6817  			}
  6818  			req, _ := c.DescribePatchGroupsRequest(inCpy)
  6819  			req.SetContext(ctx)
  6820  			req.ApplyOptions(opts...)
  6821  			return req, nil
  6822  		},
  6823  	}
  6824  
  6825  	for p.Next() {
  6826  		if !fn(p.Page().(*DescribePatchGroupsOutput), !p.HasNextPage()) {
  6827  			break
  6828  		}
  6829  	}
  6830  
  6831  	return p.Err()
  6832  }
  6833  
  6834  const opDescribePatchProperties = "DescribePatchProperties"
  6835  
  6836  // DescribePatchPropertiesRequest generates a "aws/request.Request" representing the
  6837  // client's request for the DescribePatchProperties operation. The "output" return
  6838  // value will be populated with the request's response once the request completes
  6839  // successfully.
  6840  //
  6841  // Use "Send" method on the returned Request to send the API call to the service.
  6842  // the "output" return value is not valid until after Send returns without error.
  6843  //
  6844  // See DescribePatchProperties for more information on using the DescribePatchProperties
  6845  // API call, and error handling.
  6846  //
  6847  // This method is useful when you want to inject custom logic or configuration
  6848  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6849  //
  6850  //
  6851  //    // Example sending a request using the DescribePatchPropertiesRequest method.
  6852  //    req, resp := client.DescribePatchPropertiesRequest(params)
  6853  //
  6854  //    err := req.Send()
  6855  //    if err == nil { // resp is now filled
  6856  //        fmt.Println(resp)
  6857  //    }
  6858  //
  6859  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchProperties
  6860  func (c *SSM) DescribePatchPropertiesRequest(input *DescribePatchPropertiesInput) (req *request.Request, output *DescribePatchPropertiesOutput) {
  6861  	op := &request.Operation{
  6862  		Name:       opDescribePatchProperties,
  6863  		HTTPMethod: "POST",
  6864  		HTTPPath:   "/",
  6865  		Paginator: &request.Paginator{
  6866  			InputTokens:     []string{"NextToken"},
  6867  			OutputTokens:    []string{"NextToken"},
  6868  			LimitToken:      "MaxResults",
  6869  			TruncationToken: "",
  6870  		},
  6871  	}
  6872  
  6873  	if input == nil {
  6874  		input = &DescribePatchPropertiesInput{}
  6875  	}
  6876  
  6877  	output = &DescribePatchPropertiesOutput{}
  6878  	req = c.newRequest(op, input, output)
  6879  	return
  6880  }
  6881  
  6882  // DescribePatchProperties API operation for Amazon Simple Systems Manager (SSM).
  6883  //
  6884  // Lists the properties of available patches organized by product, product family,
  6885  // classification, severity, and other properties of available patches. You
  6886  // can use the reported properties in the filters you specify in requests for
  6887  // operations such as CreatePatchBaseline, UpdatePatchBaseline, DescribeAvailablePatches,
  6888  // and DescribePatchBaselines.
  6889  //
  6890  // The following section lists the properties that can be used in filters for
  6891  // each major operating system type:
  6892  //
  6893  // AMAZON_LINUX
  6894  //
  6895  // Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
  6896  //
  6897  // AMAZON_LINUX_2
  6898  //
  6899  // Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
  6900  //
  6901  // CENTOS
  6902  //
  6903  // Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
  6904  //
  6905  // DEBIAN
  6906  //
  6907  // Valid properties: PRODUCT | PRIORITY
  6908  //
  6909  // MACOS
  6910  //
  6911  // Valid properties: PRODUCT | CLASSIFICATION
  6912  //
  6913  // ORACLE_LINUX
  6914  //
  6915  // Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
  6916  //
  6917  // REDHAT_ENTERPRISE_LINUX
  6918  //
  6919  // Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
  6920  //
  6921  // SUSE
  6922  //
  6923  // Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
  6924  //
  6925  // UBUNTU
  6926  //
  6927  // Valid properties: PRODUCT | PRIORITY
  6928  //
  6929  // WINDOWS
  6930  //
  6931  // Valid properties: PRODUCT | PRODUCT_FAMILY | CLASSIFICATION | MSRC_SEVERITY
  6932  //
  6933  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6934  // with awserr.Error's Code and Message methods to get detailed information about
  6935  // the error.
  6936  //
  6937  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  6938  // API operation DescribePatchProperties for usage and error information.
  6939  //
  6940  // Returned Error Types:
  6941  //   * InternalServerError
  6942  //   An error occurred on the server side.
  6943  //
  6944  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchProperties
  6945  func (c *SSM) DescribePatchProperties(input *DescribePatchPropertiesInput) (*DescribePatchPropertiesOutput, error) {
  6946  	req, out := c.DescribePatchPropertiesRequest(input)
  6947  	return out, req.Send()
  6948  }
  6949  
  6950  // DescribePatchPropertiesWithContext is the same as DescribePatchProperties with the addition of
  6951  // the ability to pass a context and additional request options.
  6952  //
  6953  // See DescribePatchProperties for details on how to use this API operation.
  6954  //
  6955  // The context must be non-nil and will be used for request cancellation. If
  6956  // the context is nil a panic will occur. In the future the SDK may create
  6957  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6958  // for more information on using Contexts.
  6959  func (c *SSM) DescribePatchPropertiesWithContext(ctx aws.Context, input *DescribePatchPropertiesInput, opts ...request.Option) (*DescribePatchPropertiesOutput, error) {
  6960  	req, out := c.DescribePatchPropertiesRequest(input)
  6961  	req.SetContext(ctx)
  6962  	req.ApplyOptions(opts...)
  6963  	return out, req.Send()
  6964  }
  6965  
  6966  // DescribePatchPropertiesPages iterates over the pages of a DescribePatchProperties operation,
  6967  // calling the "fn" function with the response data for each page. To stop
  6968  // iterating, return false from the fn function.
  6969  //
  6970  // See DescribePatchProperties method for more information on how to use this operation.
  6971  //
  6972  // Note: This operation can generate multiple requests to a service.
  6973  //
  6974  //    // Example iterating over at most 3 pages of a DescribePatchProperties operation.
  6975  //    pageNum := 0
  6976  //    err := client.DescribePatchPropertiesPages(params,
  6977  //        func(page *ssm.DescribePatchPropertiesOutput, lastPage bool) bool {
  6978  //            pageNum++
  6979  //            fmt.Println(page)
  6980  //            return pageNum <= 3
  6981  //        })
  6982  //
  6983  func (c *SSM) DescribePatchPropertiesPages(input *DescribePatchPropertiesInput, fn func(*DescribePatchPropertiesOutput, bool) bool) error {
  6984  	return c.DescribePatchPropertiesPagesWithContext(aws.BackgroundContext(), input, fn)
  6985  }
  6986  
  6987  // DescribePatchPropertiesPagesWithContext same as DescribePatchPropertiesPages except
  6988  // it takes a Context and allows setting request options on the pages.
  6989  //
  6990  // The context must be non-nil and will be used for request cancellation. If
  6991  // the context is nil a panic will occur. In the future the SDK may create
  6992  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6993  // for more information on using Contexts.
  6994  func (c *SSM) DescribePatchPropertiesPagesWithContext(ctx aws.Context, input *DescribePatchPropertiesInput, fn func(*DescribePatchPropertiesOutput, bool) bool, opts ...request.Option) error {
  6995  	p := request.Pagination{
  6996  		NewRequest: func() (*request.Request, error) {
  6997  			var inCpy *DescribePatchPropertiesInput
  6998  			if input != nil {
  6999  				tmp := *input
  7000  				inCpy = &tmp
  7001  			}
  7002  			req, _ := c.DescribePatchPropertiesRequest(inCpy)
  7003  			req.SetContext(ctx)
  7004  			req.ApplyOptions(opts...)
  7005  			return req, nil
  7006  		},
  7007  	}
  7008  
  7009  	for p.Next() {
  7010  		if !fn(p.Page().(*DescribePatchPropertiesOutput), !p.HasNextPage()) {
  7011  			break
  7012  		}
  7013  	}
  7014  
  7015  	return p.Err()
  7016  }
  7017  
  7018  const opDescribeSessions = "DescribeSessions"
  7019  
  7020  // DescribeSessionsRequest generates a "aws/request.Request" representing the
  7021  // client's request for the DescribeSessions operation. The "output" return
  7022  // value will be populated with the request's response once the request completes
  7023  // successfully.
  7024  //
  7025  // Use "Send" method on the returned Request to send the API call to the service.
  7026  // the "output" return value is not valid until after Send returns without error.
  7027  //
  7028  // See DescribeSessions for more information on using the DescribeSessions
  7029  // API call, and error handling.
  7030  //
  7031  // This method is useful when you want to inject custom logic or configuration
  7032  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7033  //
  7034  //
  7035  //    // Example sending a request using the DescribeSessionsRequest method.
  7036  //    req, resp := client.DescribeSessionsRequest(params)
  7037  //
  7038  //    err := req.Send()
  7039  //    if err == nil { // resp is now filled
  7040  //        fmt.Println(resp)
  7041  //    }
  7042  //
  7043  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeSessions
  7044  func (c *SSM) DescribeSessionsRequest(input *DescribeSessionsInput) (req *request.Request, output *DescribeSessionsOutput) {
  7045  	op := &request.Operation{
  7046  		Name:       opDescribeSessions,
  7047  		HTTPMethod: "POST",
  7048  		HTTPPath:   "/",
  7049  		Paginator: &request.Paginator{
  7050  			InputTokens:     []string{"NextToken"},
  7051  			OutputTokens:    []string{"NextToken"},
  7052  			LimitToken:      "MaxResults",
  7053  			TruncationToken: "",
  7054  		},
  7055  	}
  7056  
  7057  	if input == nil {
  7058  		input = &DescribeSessionsInput{}
  7059  	}
  7060  
  7061  	output = &DescribeSessionsOutput{}
  7062  	req = c.newRequest(op, input, output)
  7063  	return
  7064  }
  7065  
  7066  // DescribeSessions API operation for Amazon Simple Systems Manager (SSM).
  7067  //
  7068  // Retrieves a list of all active sessions (both connected and disconnected)
  7069  // or terminated sessions from the past 30 days.
  7070  //
  7071  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7072  // with awserr.Error's Code and Message methods to get detailed information about
  7073  // the error.
  7074  //
  7075  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  7076  // API operation DescribeSessions for usage and error information.
  7077  //
  7078  // Returned Error Types:
  7079  //   * InternalServerError
  7080  //   An error occurred on the server side.
  7081  //
  7082  //   * InvalidFilterKey
  7083  //   The specified key isn't valid.
  7084  //
  7085  //   * InvalidNextToken
  7086  //   The specified token isn't valid.
  7087  //
  7088  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeSessions
  7089  func (c *SSM) DescribeSessions(input *DescribeSessionsInput) (*DescribeSessionsOutput, error) {
  7090  	req, out := c.DescribeSessionsRequest(input)
  7091  	return out, req.Send()
  7092  }
  7093  
  7094  // DescribeSessionsWithContext is the same as DescribeSessions with the addition of
  7095  // the ability to pass a context and additional request options.
  7096  //
  7097  // See DescribeSessions for details on how to use this API operation.
  7098  //
  7099  // The context must be non-nil and will be used for request cancellation. If
  7100  // the context is nil a panic will occur. In the future the SDK may create
  7101  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7102  // for more information on using Contexts.
  7103  func (c *SSM) DescribeSessionsWithContext(ctx aws.Context, input *DescribeSessionsInput, opts ...request.Option) (*DescribeSessionsOutput, error) {
  7104  	req, out := c.DescribeSessionsRequest(input)
  7105  	req.SetContext(ctx)
  7106  	req.ApplyOptions(opts...)
  7107  	return out, req.Send()
  7108  }
  7109  
  7110  // DescribeSessionsPages iterates over the pages of a DescribeSessions operation,
  7111  // calling the "fn" function with the response data for each page. To stop
  7112  // iterating, return false from the fn function.
  7113  //
  7114  // See DescribeSessions method for more information on how to use this operation.
  7115  //
  7116  // Note: This operation can generate multiple requests to a service.
  7117  //
  7118  //    // Example iterating over at most 3 pages of a DescribeSessions operation.
  7119  //    pageNum := 0
  7120  //    err := client.DescribeSessionsPages(params,
  7121  //        func(page *ssm.DescribeSessionsOutput, lastPage bool) bool {
  7122  //            pageNum++
  7123  //            fmt.Println(page)
  7124  //            return pageNum <= 3
  7125  //        })
  7126  //
  7127  func (c *SSM) DescribeSessionsPages(input *DescribeSessionsInput, fn func(*DescribeSessionsOutput, bool) bool) error {
  7128  	return c.DescribeSessionsPagesWithContext(aws.BackgroundContext(), input, fn)
  7129  }
  7130  
  7131  // DescribeSessionsPagesWithContext same as DescribeSessionsPages except
  7132  // it takes a Context and allows setting request options on the pages.
  7133  //
  7134  // The context must be non-nil and will be used for request cancellation. If
  7135  // the context is nil a panic will occur. In the future the SDK may create
  7136  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7137  // for more information on using Contexts.
  7138  func (c *SSM) DescribeSessionsPagesWithContext(ctx aws.Context, input *DescribeSessionsInput, fn func(*DescribeSessionsOutput, bool) bool, opts ...request.Option) error {
  7139  	p := request.Pagination{
  7140  		NewRequest: func() (*request.Request, error) {
  7141  			var inCpy *DescribeSessionsInput
  7142  			if input != nil {
  7143  				tmp := *input
  7144  				inCpy = &tmp
  7145  			}
  7146  			req, _ := c.DescribeSessionsRequest(inCpy)
  7147  			req.SetContext(ctx)
  7148  			req.ApplyOptions(opts...)
  7149  			return req, nil
  7150  		},
  7151  	}
  7152  
  7153  	for p.Next() {
  7154  		if !fn(p.Page().(*DescribeSessionsOutput), !p.HasNextPage()) {
  7155  			break
  7156  		}
  7157  	}
  7158  
  7159  	return p.Err()
  7160  }
  7161  
  7162  const opDisassociateOpsItemRelatedItem = "DisassociateOpsItemRelatedItem"
  7163  
  7164  // DisassociateOpsItemRelatedItemRequest generates a "aws/request.Request" representing the
  7165  // client's request for the DisassociateOpsItemRelatedItem operation. The "output" return
  7166  // value will be populated with the request's response once the request completes
  7167  // successfully.
  7168  //
  7169  // Use "Send" method on the returned Request to send the API call to the service.
  7170  // the "output" return value is not valid until after Send returns without error.
  7171  //
  7172  // See DisassociateOpsItemRelatedItem for more information on using the DisassociateOpsItemRelatedItem
  7173  // API call, and error handling.
  7174  //
  7175  // This method is useful when you want to inject custom logic or configuration
  7176  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7177  //
  7178  //
  7179  //    // Example sending a request using the DisassociateOpsItemRelatedItemRequest method.
  7180  //    req, resp := client.DisassociateOpsItemRelatedItemRequest(params)
  7181  //
  7182  //    err := req.Send()
  7183  //    if err == nil { // resp is now filled
  7184  //        fmt.Println(resp)
  7185  //    }
  7186  //
  7187  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DisassociateOpsItemRelatedItem
  7188  func (c *SSM) DisassociateOpsItemRelatedItemRequest(input *DisassociateOpsItemRelatedItemInput) (req *request.Request, output *DisassociateOpsItemRelatedItemOutput) {
  7189  	op := &request.Operation{
  7190  		Name:       opDisassociateOpsItemRelatedItem,
  7191  		HTTPMethod: "POST",
  7192  		HTTPPath:   "/",
  7193  	}
  7194  
  7195  	if input == nil {
  7196  		input = &DisassociateOpsItemRelatedItemInput{}
  7197  	}
  7198  
  7199  	output = &DisassociateOpsItemRelatedItemOutput{}
  7200  	req = c.newRequest(op, input, output)
  7201  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  7202  	return
  7203  }
  7204  
  7205  // DisassociateOpsItemRelatedItem API operation for Amazon Simple Systems Manager (SSM).
  7206  //
  7207  // Deletes the association between an OpsItem and a related item. For example,
  7208  // this API operation can delete an Incident Manager incident from an OpsItem.
  7209  // Incident Manager is a capability of Amazon Web Services Systems Manager.
  7210  //
  7211  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7212  // with awserr.Error's Code and Message methods to get detailed information about
  7213  // the error.
  7214  //
  7215  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  7216  // API operation DisassociateOpsItemRelatedItem for usage and error information.
  7217  //
  7218  // Returned Error Types:
  7219  //   * InternalServerError
  7220  //   An error occurred on the server side.
  7221  //
  7222  //   * OpsItemRelatedItemAssociationNotFoundException
  7223  //   The association wasn't found using the parameters you specified in the call.
  7224  //   Verify the information and try again.
  7225  //
  7226  //   * OpsItemNotFoundException
  7227  //   The specified OpsItem ID doesn't exist. Verify the ID and try again.
  7228  //
  7229  //   * OpsItemInvalidParameterException
  7230  //   A specified parameter argument isn't valid. Verify the available arguments
  7231  //   and try again.
  7232  //
  7233  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DisassociateOpsItemRelatedItem
  7234  func (c *SSM) DisassociateOpsItemRelatedItem(input *DisassociateOpsItemRelatedItemInput) (*DisassociateOpsItemRelatedItemOutput, error) {
  7235  	req, out := c.DisassociateOpsItemRelatedItemRequest(input)
  7236  	return out, req.Send()
  7237  }
  7238  
  7239  // DisassociateOpsItemRelatedItemWithContext is the same as DisassociateOpsItemRelatedItem with the addition of
  7240  // the ability to pass a context and additional request options.
  7241  //
  7242  // See DisassociateOpsItemRelatedItem for details on how to use this API operation.
  7243  //
  7244  // The context must be non-nil and will be used for request cancellation. If
  7245  // the context is nil a panic will occur. In the future the SDK may create
  7246  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7247  // for more information on using Contexts.
  7248  func (c *SSM) DisassociateOpsItemRelatedItemWithContext(ctx aws.Context, input *DisassociateOpsItemRelatedItemInput, opts ...request.Option) (*DisassociateOpsItemRelatedItemOutput, error) {
  7249  	req, out := c.DisassociateOpsItemRelatedItemRequest(input)
  7250  	req.SetContext(ctx)
  7251  	req.ApplyOptions(opts...)
  7252  	return out, req.Send()
  7253  }
  7254  
  7255  const opGetAutomationExecution = "GetAutomationExecution"
  7256  
  7257  // GetAutomationExecutionRequest generates a "aws/request.Request" representing the
  7258  // client's request for the GetAutomationExecution operation. The "output" return
  7259  // value will be populated with the request's response once the request completes
  7260  // successfully.
  7261  //
  7262  // Use "Send" method on the returned Request to send the API call to the service.
  7263  // the "output" return value is not valid until after Send returns without error.
  7264  //
  7265  // See GetAutomationExecution for more information on using the GetAutomationExecution
  7266  // API call, and error handling.
  7267  //
  7268  // This method is useful when you want to inject custom logic or configuration
  7269  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7270  //
  7271  //
  7272  //    // Example sending a request using the GetAutomationExecutionRequest method.
  7273  //    req, resp := client.GetAutomationExecutionRequest(params)
  7274  //
  7275  //    err := req.Send()
  7276  //    if err == nil { // resp is now filled
  7277  //        fmt.Println(resp)
  7278  //    }
  7279  //
  7280  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetAutomationExecution
  7281  func (c *SSM) GetAutomationExecutionRequest(input *GetAutomationExecutionInput) (req *request.Request, output *GetAutomationExecutionOutput) {
  7282  	op := &request.Operation{
  7283  		Name:       opGetAutomationExecution,
  7284  		HTTPMethod: "POST",
  7285  		HTTPPath:   "/",
  7286  	}
  7287  
  7288  	if input == nil {
  7289  		input = &GetAutomationExecutionInput{}
  7290  	}
  7291  
  7292  	output = &GetAutomationExecutionOutput{}
  7293  	req = c.newRequest(op, input, output)
  7294  	return
  7295  }
  7296  
  7297  // GetAutomationExecution API operation for Amazon Simple Systems Manager (SSM).
  7298  //
  7299  // Get detailed information about a particular Automation execution.
  7300  //
  7301  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7302  // with awserr.Error's Code and Message methods to get detailed information about
  7303  // the error.
  7304  //
  7305  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  7306  // API operation GetAutomationExecution for usage and error information.
  7307  //
  7308  // Returned Error Types:
  7309  //   * AutomationExecutionNotFoundException
  7310  //   There is no automation execution information for the requested automation
  7311  //   execution ID.
  7312  //
  7313  //   * InternalServerError
  7314  //   An error occurred on the server side.
  7315  //
  7316  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetAutomationExecution
  7317  func (c *SSM) GetAutomationExecution(input *GetAutomationExecutionInput) (*GetAutomationExecutionOutput, error) {
  7318  	req, out := c.GetAutomationExecutionRequest(input)
  7319  	return out, req.Send()
  7320  }
  7321  
  7322  // GetAutomationExecutionWithContext is the same as GetAutomationExecution with the addition of
  7323  // the ability to pass a context and additional request options.
  7324  //
  7325  // See GetAutomationExecution for details on how to use this API operation.
  7326  //
  7327  // The context must be non-nil and will be used for request cancellation. If
  7328  // the context is nil a panic will occur. In the future the SDK may create
  7329  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7330  // for more information on using Contexts.
  7331  func (c *SSM) GetAutomationExecutionWithContext(ctx aws.Context, input *GetAutomationExecutionInput, opts ...request.Option) (*GetAutomationExecutionOutput, error) {
  7332  	req, out := c.GetAutomationExecutionRequest(input)
  7333  	req.SetContext(ctx)
  7334  	req.ApplyOptions(opts...)
  7335  	return out, req.Send()
  7336  }
  7337  
  7338  const opGetCalendarState = "GetCalendarState"
  7339  
  7340  // GetCalendarStateRequest generates a "aws/request.Request" representing the
  7341  // client's request for the GetCalendarState operation. The "output" return
  7342  // value will be populated with the request's response once the request completes
  7343  // successfully.
  7344  //
  7345  // Use "Send" method on the returned Request to send the API call to the service.
  7346  // the "output" return value is not valid until after Send returns without error.
  7347  //
  7348  // See GetCalendarState for more information on using the GetCalendarState
  7349  // API call, and error handling.
  7350  //
  7351  // This method is useful when you want to inject custom logic or configuration
  7352  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7353  //
  7354  //
  7355  //    // Example sending a request using the GetCalendarStateRequest method.
  7356  //    req, resp := client.GetCalendarStateRequest(params)
  7357  //
  7358  //    err := req.Send()
  7359  //    if err == nil { // resp is now filled
  7360  //        fmt.Println(resp)
  7361  //    }
  7362  //
  7363  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetCalendarState
  7364  func (c *SSM) GetCalendarStateRequest(input *GetCalendarStateInput) (req *request.Request, output *GetCalendarStateOutput) {
  7365  	op := &request.Operation{
  7366  		Name:       opGetCalendarState,
  7367  		HTTPMethod: "POST",
  7368  		HTTPPath:   "/",
  7369  	}
  7370  
  7371  	if input == nil {
  7372  		input = &GetCalendarStateInput{}
  7373  	}
  7374  
  7375  	output = &GetCalendarStateOutput{}
  7376  	req = c.newRequest(op, input, output)
  7377  	return
  7378  }
  7379  
  7380  // GetCalendarState API operation for Amazon Simple Systems Manager (SSM).
  7381  //
  7382  // Gets the state of a Amazon Web Services Systems Manager change calendar at
  7383  // the current time or a specified time. If you specify a time, GetCalendarState
  7384  // returns the state of the calendar at that specific time, and returns the
  7385  // next time that the change calendar state will transition. If you don't specify
  7386  // a time, GetCalendarState uses the current time. Change Calendar entries have
  7387  // two possible states: OPEN or CLOSED.
  7388  //
  7389  // If you specify more than one calendar in a request, the command returns the
  7390  // status of OPEN only if all calendars in the request are open. If one or more
  7391  // calendars in the request are closed, the status returned is CLOSED.
  7392  //
  7393  // For more information about Change Calendar, a capability of Amazon Web Services
  7394  // Systems Manager, see Amazon Web Services Systems Manager Change Calendar
  7395  // (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar.html)
  7396  // in the Amazon Web Services Systems Manager User Guide.
  7397  //
  7398  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7399  // with awserr.Error's Code and Message methods to get detailed information about
  7400  // the error.
  7401  //
  7402  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  7403  // API operation GetCalendarState for usage and error information.
  7404  //
  7405  // Returned Error Types:
  7406  //   * InternalServerError
  7407  //   An error occurred on the server side.
  7408  //
  7409  //   * InvalidDocument
  7410  //   The specified SSM document doesn't exist.
  7411  //
  7412  //   * InvalidDocumentType
  7413  //   The SSM document type isn't valid. Valid document types are described in
  7414  //   the DocumentType property.
  7415  //
  7416  //   * UnsupportedCalendarException
  7417  //   The calendar entry contained in the specified SSM document isn't supported.
  7418  //
  7419  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetCalendarState
  7420  func (c *SSM) GetCalendarState(input *GetCalendarStateInput) (*GetCalendarStateOutput, error) {
  7421  	req, out := c.GetCalendarStateRequest(input)
  7422  	return out, req.Send()
  7423  }
  7424  
  7425  // GetCalendarStateWithContext is the same as GetCalendarState with the addition of
  7426  // the ability to pass a context and additional request options.
  7427  //
  7428  // See GetCalendarState for details on how to use this API operation.
  7429  //
  7430  // The context must be non-nil and will be used for request cancellation. If
  7431  // the context is nil a panic will occur. In the future the SDK may create
  7432  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7433  // for more information on using Contexts.
  7434  func (c *SSM) GetCalendarStateWithContext(ctx aws.Context, input *GetCalendarStateInput, opts ...request.Option) (*GetCalendarStateOutput, error) {
  7435  	req, out := c.GetCalendarStateRequest(input)
  7436  	req.SetContext(ctx)
  7437  	req.ApplyOptions(opts...)
  7438  	return out, req.Send()
  7439  }
  7440  
  7441  const opGetCommandInvocation = "GetCommandInvocation"
  7442  
  7443  // GetCommandInvocationRequest generates a "aws/request.Request" representing the
  7444  // client's request for the GetCommandInvocation operation. The "output" return
  7445  // value will be populated with the request's response once the request completes
  7446  // successfully.
  7447  //
  7448  // Use "Send" method on the returned Request to send the API call to the service.
  7449  // the "output" return value is not valid until after Send returns without error.
  7450  //
  7451  // See GetCommandInvocation for more information on using the GetCommandInvocation
  7452  // API call, and error handling.
  7453  //
  7454  // This method is useful when you want to inject custom logic or configuration
  7455  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7456  //
  7457  //
  7458  //    // Example sending a request using the GetCommandInvocationRequest method.
  7459  //    req, resp := client.GetCommandInvocationRequest(params)
  7460  //
  7461  //    err := req.Send()
  7462  //    if err == nil { // resp is now filled
  7463  //        fmt.Println(resp)
  7464  //    }
  7465  //
  7466  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetCommandInvocation
  7467  func (c *SSM) GetCommandInvocationRequest(input *GetCommandInvocationInput) (req *request.Request, output *GetCommandInvocationOutput) {
  7468  	op := &request.Operation{
  7469  		Name:       opGetCommandInvocation,
  7470  		HTTPMethod: "POST",
  7471  		HTTPPath:   "/",
  7472  	}
  7473  
  7474  	if input == nil {
  7475  		input = &GetCommandInvocationInput{}
  7476  	}
  7477  
  7478  	output = &GetCommandInvocationOutput{}
  7479  	req = c.newRequest(op, input, output)
  7480  	return
  7481  }
  7482  
  7483  // GetCommandInvocation API operation for Amazon Simple Systems Manager (SSM).
  7484  //
  7485  // Returns detailed information about command execution for an invocation or
  7486  // plugin.
  7487  //
  7488  // GetCommandInvocation only gives the execution status of a plugin in a document.
  7489  // To get the command execution status on a specific instance, use ListCommandInvocations.
  7490  // To get the command execution status across instances, use ListCommands.
  7491  //
  7492  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7493  // with awserr.Error's Code and Message methods to get detailed information about
  7494  // the error.
  7495  //
  7496  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  7497  // API operation GetCommandInvocation for usage and error information.
  7498  //
  7499  // Returned Error Types:
  7500  //   * InternalServerError
  7501  //   An error occurred on the server side.
  7502  //
  7503  //   * InvalidCommandId
  7504  //   The specified command ID isn't valid. Verify the ID and try again.
  7505  //
  7506  //   * InvalidInstanceId
  7507  //   The following problems can cause this exception:
  7508  //
  7509  //      * You don't have permission to access the instance.
  7510  //
  7511  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
  7512  //      Verify that SSM Agent is running.
  7513  //
  7514  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
  7515  //      Agent.
  7516  //
  7517  //      * The instance isn't in valid state. Valid states are: Running, Pending,
  7518  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
  7519  //
  7520  //   * InvalidPluginName
  7521  //   The plugin name isn't valid.
  7522  //
  7523  //   * InvocationDoesNotExist
  7524  //   The command ID and instance ID you specified didn't match any invocations.
  7525  //   Verify the command ID and the instance ID and try again.
  7526  //
  7527  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetCommandInvocation
  7528  func (c *SSM) GetCommandInvocation(input *GetCommandInvocationInput) (*GetCommandInvocationOutput, error) {
  7529  	req, out := c.GetCommandInvocationRequest(input)
  7530  	return out, req.Send()
  7531  }
  7532  
  7533  // GetCommandInvocationWithContext is the same as GetCommandInvocation with the addition of
  7534  // the ability to pass a context and additional request options.
  7535  //
  7536  // See GetCommandInvocation for details on how to use this API operation.
  7537  //
  7538  // The context must be non-nil and will be used for request cancellation. If
  7539  // the context is nil a panic will occur. In the future the SDK may create
  7540  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7541  // for more information on using Contexts.
  7542  func (c *SSM) GetCommandInvocationWithContext(ctx aws.Context, input *GetCommandInvocationInput, opts ...request.Option) (*GetCommandInvocationOutput, error) {
  7543  	req, out := c.GetCommandInvocationRequest(input)
  7544  	req.SetContext(ctx)
  7545  	req.ApplyOptions(opts...)
  7546  	return out, req.Send()
  7547  }
  7548  
  7549  const opGetConnectionStatus = "GetConnectionStatus"
  7550  
  7551  // GetConnectionStatusRequest generates a "aws/request.Request" representing the
  7552  // client's request for the GetConnectionStatus operation. The "output" return
  7553  // value will be populated with the request's response once the request completes
  7554  // successfully.
  7555  //
  7556  // Use "Send" method on the returned Request to send the API call to the service.
  7557  // the "output" return value is not valid until after Send returns without error.
  7558  //
  7559  // See GetConnectionStatus for more information on using the GetConnectionStatus
  7560  // API call, and error handling.
  7561  //
  7562  // This method is useful when you want to inject custom logic or configuration
  7563  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7564  //
  7565  //
  7566  //    // Example sending a request using the GetConnectionStatusRequest method.
  7567  //    req, resp := client.GetConnectionStatusRequest(params)
  7568  //
  7569  //    err := req.Send()
  7570  //    if err == nil { // resp is now filled
  7571  //        fmt.Println(resp)
  7572  //    }
  7573  //
  7574  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetConnectionStatus
  7575  func (c *SSM) GetConnectionStatusRequest(input *GetConnectionStatusInput) (req *request.Request, output *GetConnectionStatusOutput) {
  7576  	op := &request.Operation{
  7577  		Name:       opGetConnectionStatus,
  7578  		HTTPMethod: "POST",
  7579  		HTTPPath:   "/",
  7580  	}
  7581  
  7582  	if input == nil {
  7583  		input = &GetConnectionStatusInput{}
  7584  	}
  7585  
  7586  	output = &GetConnectionStatusOutput{}
  7587  	req = c.newRequest(op, input, output)
  7588  	return
  7589  }
  7590  
  7591  // GetConnectionStatus API operation for Amazon Simple Systems Manager (SSM).
  7592  //
  7593  // Retrieves the Session Manager connection status for an instance to determine
  7594  // whether it is running and ready to receive Session Manager connections.
  7595  //
  7596  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7597  // with awserr.Error's Code and Message methods to get detailed information about
  7598  // the error.
  7599  //
  7600  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  7601  // API operation GetConnectionStatus for usage and error information.
  7602  //
  7603  // Returned Error Types:
  7604  //   * InternalServerError
  7605  //   An error occurred on the server side.
  7606  //
  7607  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetConnectionStatus
  7608  func (c *SSM) GetConnectionStatus(input *GetConnectionStatusInput) (*GetConnectionStatusOutput, error) {
  7609  	req, out := c.GetConnectionStatusRequest(input)
  7610  	return out, req.Send()
  7611  }
  7612  
  7613  // GetConnectionStatusWithContext is the same as GetConnectionStatus with the addition of
  7614  // the ability to pass a context and additional request options.
  7615  //
  7616  // See GetConnectionStatus for details on how to use this API operation.
  7617  //
  7618  // The context must be non-nil and will be used for request cancellation. If
  7619  // the context is nil a panic will occur. In the future the SDK may create
  7620  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7621  // for more information on using Contexts.
  7622  func (c *SSM) GetConnectionStatusWithContext(ctx aws.Context, input *GetConnectionStatusInput, opts ...request.Option) (*GetConnectionStatusOutput, error) {
  7623  	req, out := c.GetConnectionStatusRequest(input)
  7624  	req.SetContext(ctx)
  7625  	req.ApplyOptions(opts...)
  7626  	return out, req.Send()
  7627  }
  7628  
  7629  const opGetDefaultPatchBaseline = "GetDefaultPatchBaseline"
  7630  
  7631  // GetDefaultPatchBaselineRequest generates a "aws/request.Request" representing the
  7632  // client's request for the GetDefaultPatchBaseline operation. The "output" return
  7633  // value will be populated with the request's response once the request completes
  7634  // successfully.
  7635  //
  7636  // Use "Send" method on the returned Request to send the API call to the service.
  7637  // the "output" return value is not valid until after Send returns without error.
  7638  //
  7639  // See GetDefaultPatchBaseline for more information on using the GetDefaultPatchBaseline
  7640  // API call, and error handling.
  7641  //
  7642  // This method is useful when you want to inject custom logic or configuration
  7643  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7644  //
  7645  //
  7646  //    // Example sending a request using the GetDefaultPatchBaselineRequest method.
  7647  //    req, resp := client.GetDefaultPatchBaselineRequest(params)
  7648  //
  7649  //    err := req.Send()
  7650  //    if err == nil { // resp is now filled
  7651  //        fmt.Println(resp)
  7652  //    }
  7653  //
  7654  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDefaultPatchBaseline
  7655  func (c *SSM) GetDefaultPatchBaselineRequest(input *GetDefaultPatchBaselineInput) (req *request.Request, output *GetDefaultPatchBaselineOutput) {
  7656  	op := &request.Operation{
  7657  		Name:       opGetDefaultPatchBaseline,
  7658  		HTTPMethod: "POST",
  7659  		HTTPPath:   "/",
  7660  	}
  7661  
  7662  	if input == nil {
  7663  		input = &GetDefaultPatchBaselineInput{}
  7664  	}
  7665  
  7666  	output = &GetDefaultPatchBaselineOutput{}
  7667  	req = c.newRequest(op, input, output)
  7668  	return
  7669  }
  7670  
  7671  // GetDefaultPatchBaseline API operation for Amazon Simple Systems Manager (SSM).
  7672  //
  7673  // Retrieves the default patch baseline. Amazon Web Services Systems Manager
  7674  // supports creating multiple default patch baselines. For example, you can
  7675  // create a default patch baseline for each operating system.
  7676  //
  7677  // If you don't specify an operating system value, the default patch baseline
  7678  // for Windows is returned.
  7679  //
  7680  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7681  // with awserr.Error's Code and Message methods to get detailed information about
  7682  // the error.
  7683  //
  7684  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  7685  // API operation GetDefaultPatchBaseline for usage and error information.
  7686  //
  7687  // Returned Error Types:
  7688  //   * InternalServerError
  7689  //   An error occurred on the server side.
  7690  //
  7691  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDefaultPatchBaseline
  7692  func (c *SSM) GetDefaultPatchBaseline(input *GetDefaultPatchBaselineInput) (*GetDefaultPatchBaselineOutput, error) {
  7693  	req, out := c.GetDefaultPatchBaselineRequest(input)
  7694  	return out, req.Send()
  7695  }
  7696  
  7697  // GetDefaultPatchBaselineWithContext is the same as GetDefaultPatchBaseline with the addition of
  7698  // the ability to pass a context and additional request options.
  7699  //
  7700  // See GetDefaultPatchBaseline for details on how to use this API operation.
  7701  //
  7702  // The context must be non-nil and will be used for request cancellation. If
  7703  // the context is nil a panic will occur. In the future the SDK may create
  7704  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7705  // for more information on using Contexts.
  7706  func (c *SSM) GetDefaultPatchBaselineWithContext(ctx aws.Context, input *GetDefaultPatchBaselineInput, opts ...request.Option) (*GetDefaultPatchBaselineOutput, error) {
  7707  	req, out := c.GetDefaultPatchBaselineRequest(input)
  7708  	req.SetContext(ctx)
  7709  	req.ApplyOptions(opts...)
  7710  	return out, req.Send()
  7711  }
  7712  
  7713  const opGetDeployablePatchSnapshotForInstance = "GetDeployablePatchSnapshotForInstance"
  7714  
  7715  // GetDeployablePatchSnapshotForInstanceRequest generates a "aws/request.Request" representing the
  7716  // client's request for the GetDeployablePatchSnapshotForInstance operation. The "output" return
  7717  // value will be populated with the request's response once the request completes
  7718  // successfully.
  7719  //
  7720  // Use "Send" method on the returned Request to send the API call to the service.
  7721  // the "output" return value is not valid until after Send returns without error.
  7722  //
  7723  // See GetDeployablePatchSnapshotForInstance for more information on using the GetDeployablePatchSnapshotForInstance
  7724  // API call, and error handling.
  7725  //
  7726  // This method is useful when you want to inject custom logic or configuration
  7727  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7728  //
  7729  //
  7730  //    // Example sending a request using the GetDeployablePatchSnapshotForInstanceRequest method.
  7731  //    req, resp := client.GetDeployablePatchSnapshotForInstanceRequest(params)
  7732  //
  7733  //    err := req.Send()
  7734  //    if err == nil { // resp is now filled
  7735  //        fmt.Println(resp)
  7736  //    }
  7737  //
  7738  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDeployablePatchSnapshotForInstance
  7739  func (c *SSM) GetDeployablePatchSnapshotForInstanceRequest(input *GetDeployablePatchSnapshotForInstanceInput) (req *request.Request, output *GetDeployablePatchSnapshotForInstanceOutput) {
  7740  	op := &request.Operation{
  7741  		Name:       opGetDeployablePatchSnapshotForInstance,
  7742  		HTTPMethod: "POST",
  7743  		HTTPPath:   "/",
  7744  	}
  7745  
  7746  	if input == nil {
  7747  		input = &GetDeployablePatchSnapshotForInstanceInput{}
  7748  	}
  7749  
  7750  	output = &GetDeployablePatchSnapshotForInstanceOutput{}
  7751  	req = c.newRequest(op, input, output)
  7752  	return
  7753  }
  7754  
  7755  // GetDeployablePatchSnapshotForInstance API operation for Amazon Simple Systems Manager (SSM).
  7756  //
  7757  // Retrieves the current snapshot for the patch baseline the instance uses.
  7758  // This API is primarily used by the AWS-RunPatchBaseline Systems Manager document
  7759  // (SSM document).
  7760  //
  7761  // If you run the command locally, such as with the Command Line Interface (CLI),
  7762  // the system attempts to use your local Amazon Web Services credentials and
  7763  // the operation fails. To avoid this, you can run the command in the Amazon
  7764  // Web Services Systems Manager console. Use Run Command, a capability of Amazon
  7765  // Web Services Systems Manager, with an SSM document that enables you to target
  7766  // an instance with a script or command. For example, run the command using
  7767  // the AWS-RunShellScript document or the AWS-RunPowerShellScript document.
  7768  //
  7769  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7770  // with awserr.Error's Code and Message methods to get detailed information about
  7771  // the error.
  7772  //
  7773  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  7774  // API operation GetDeployablePatchSnapshotForInstance for usage and error information.
  7775  //
  7776  // Returned Error Types:
  7777  //   * InternalServerError
  7778  //   An error occurred on the server side.
  7779  //
  7780  //   * UnsupportedOperatingSystem
  7781  //   The operating systems you specified isn't supported, or the operation isn't
  7782  //   supported for the operating system.
  7783  //
  7784  //   * UnsupportedFeatureRequiredException
  7785  //   Patching for applications released by Microsoft is only available on EC2
  7786  //   instances and advanced instances. To patch applications released by Microsoft
  7787  //   on on-premises servers and VMs, you must enable advanced instances. For more
  7788  //   information, see Enabling the advanced-instances tier (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances-advanced.html)
  7789  //   in the Amazon Web Services Systems Manager User Guide.
  7790  //
  7791  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDeployablePatchSnapshotForInstance
  7792  func (c *SSM) GetDeployablePatchSnapshotForInstance(input *GetDeployablePatchSnapshotForInstanceInput) (*GetDeployablePatchSnapshotForInstanceOutput, error) {
  7793  	req, out := c.GetDeployablePatchSnapshotForInstanceRequest(input)
  7794  	return out, req.Send()
  7795  }
  7796  
  7797  // GetDeployablePatchSnapshotForInstanceWithContext is the same as GetDeployablePatchSnapshotForInstance with the addition of
  7798  // the ability to pass a context and additional request options.
  7799  //
  7800  // See GetDeployablePatchSnapshotForInstance for details on how to use this API operation.
  7801  //
  7802  // The context must be non-nil and will be used for request cancellation. If
  7803  // the context is nil a panic will occur. In the future the SDK may create
  7804  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7805  // for more information on using Contexts.
  7806  func (c *SSM) GetDeployablePatchSnapshotForInstanceWithContext(ctx aws.Context, input *GetDeployablePatchSnapshotForInstanceInput, opts ...request.Option) (*GetDeployablePatchSnapshotForInstanceOutput, error) {
  7807  	req, out := c.GetDeployablePatchSnapshotForInstanceRequest(input)
  7808  	req.SetContext(ctx)
  7809  	req.ApplyOptions(opts...)
  7810  	return out, req.Send()
  7811  }
  7812  
  7813  const opGetDocument = "GetDocument"
  7814  
  7815  // GetDocumentRequest generates a "aws/request.Request" representing the
  7816  // client's request for the GetDocument operation. The "output" return
  7817  // value will be populated with the request's response once the request completes
  7818  // successfully.
  7819  //
  7820  // Use "Send" method on the returned Request to send the API call to the service.
  7821  // the "output" return value is not valid until after Send returns without error.
  7822  //
  7823  // See GetDocument for more information on using the GetDocument
  7824  // API call, and error handling.
  7825  //
  7826  // This method is useful when you want to inject custom logic or configuration
  7827  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7828  //
  7829  //
  7830  //    // Example sending a request using the GetDocumentRequest method.
  7831  //    req, resp := client.GetDocumentRequest(params)
  7832  //
  7833  //    err := req.Send()
  7834  //    if err == nil { // resp is now filled
  7835  //        fmt.Println(resp)
  7836  //    }
  7837  //
  7838  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDocument
  7839  func (c *SSM) GetDocumentRequest(input *GetDocumentInput) (req *request.Request, output *GetDocumentOutput) {
  7840  	op := &request.Operation{
  7841  		Name:       opGetDocument,
  7842  		HTTPMethod: "POST",
  7843  		HTTPPath:   "/",
  7844  	}
  7845  
  7846  	if input == nil {
  7847  		input = &GetDocumentInput{}
  7848  	}
  7849  
  7850  	output = &GetDocumentOutput{}
  7851  	req = c.newRequest(op, input, output)
  7852  	return
  7853  }
  7854  
  7855  // GetDocument API operation for Amazon Simple Systems Manager (SSM).
  7856  //
  7857  // Gets the contents of the specified Amazon Web Services Systems Manager document
  7858  // (SSM document).
  7859  //
  7860  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7861  // with awserr.Error's Code and Message methods to get detailed information about
  7862  // the error.
  7863  //
  7864  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  7865  // API operation GetDocument for usage and error information.
  7866  //
  7867  // Returned Error Types:
  7868  //   * InternalServerError
  7869  //   An error occurred on the server side.
  7870  //
  7871  //   * InvalidDocument
  7872  //   The specified SSM document doesn't exist.
  7873  //
  7874  //   * InvalidDocumentVersion
  7875  //   The document version isn't valid or doesn't exist.
  7876  //
  7877  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDocument
  7878  func (c *SSM) GetDocument(input *GetDocumentInput) (*GetDocumentOutput, error) {
  7879  	req, out := c.GetDocumentRequest(input)
  7880  	return out, req.Send()
  7881  }
  7882  
  7883  // GetDocumentWithContext is the same as GetDocument with the addition of
  7884  // the ability to pass a context and additional request options.
  7885  //
  7886  // See GetDocument for details on how to use this API operation.
  7887  //
  7888  // The context must be non-nil and will be used for request cancellation. If
  7889  // the context is nil a panic will occur. In the future the SDK may create
  7890  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7891  // for more information on using Contexts.
  7892  func (c *SSM) GetDocumentWithContext(ctx aws.Context, input *GetDocumentInput, opts ...request.Option) (*GetDocumentOutput, error) {
  7893  	req, out := c.GetDocumentRequest(input)
  7894  	req.SetContext(ctx)
  7895  	req.ApplyOptions(opts...)
  7896  	return out, req.Send()
  7897  }
  7898  
  7899  const opGetInventory = "GetInventory"
  7900  
  7901  // GetInventoryRequest generates a "aws/request.Request" representing the
  7902  // client's request for the GetInventory operation. The "output" return
  7903  // value will be populated with the request's response once the request completes
  7904  // successfully.
  7905  //
  7906  // Use "Send" method on the returned Request to send the API call to the service.
  7907  // the "output" return value is not valid until after Send returns without error.
  7908  //
  7909  // See GetInventory for more information on using the GetInventory
  7910  // API call, and error handling.
  7911  //
  7912  // This method is useful when you want to inject custom logic or configuration
  7913  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7914  //
  7915  //
  7916  //    // Example sending a request using the GetInventoryRequest method.
  7917  //    req, resp := client.GetInventoryRequest(params)
  7918  //
  7919  //    err := req.Send()
  7920  //    if err == nil { // resp is now filled
  7921  //        fmt.Println(resp)
  7922  //    }
  7923  //
  7924  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetInventory
  7925  func (c *SSM) GetInventoryRequest(input *GetInventoryInput) (req *request.Request, output *GetInventoryOutput) {
  7926  	op := &request.Operation{
  7927  		Name:       opGetInventory,
  7928  		HTTPMethod: "POST",
  7929  		HTTPPath:   "/",
  7930  		Paginator: &request.Paginator{
  7931  			InputTokens:     []string{"NextToken"},
  7932  			OutputTokens:    []string{"NextToken"},
  7933  			LimitToken:      "MaxResults",
  7934  			TruncationToken: "",
  7935  		},
  7936  	}
  7937  
  7938  	if input == nil {
  7939  		input = &GetInventoryInput{}
  7940  	}
  7941  
  7942  	output = &GetInventoryOutput{}
  7943  	req = c.newRequest(op, input, output)
  7944  	return
  7945  }
  7946  
  7947  // GetInventory API operation for Amazon Simple Systems Manager (SSM).
  7948  //
  7949  // Query inventory information. This includes instance status, such as Stopped
  7950  // or Terminated.
  7951  //
  7952  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7953  // with awserr.Error's Code and Message methods to get detailed information about
  7954  // the error.
  7955  //
  7956  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  7957  // API operation GetInventory for usage and error information.
  7958  //
  7959  // Returned Error Types:
  7960  //   * InternalServerError
  7961  //   An error occurred on the server side.
  7962  //
  7963  //   * InvalidFilter
  7964  //   The filter name isn't valid. Verify the you entered the correct name and
  7965  //   try again.
  7966  //
  7967  //   * InvalidInventoryGroupException
  7968  //   The specified inventory group isn't valid.
  7969  //
  7970  //   * InvalidNextToken
  7971  //   The specified token isn't valid.
  7972  //
  7973  //   * InvalidTypeNameException
  7974  //   The parameter type name isn't valid.
  7975  //
  7976  //   * InvalidAggregatorException
  7977  //   The specified aggregator isn't valid for inventory groups. Verify that the
  7978  //   aggregator uses a valid inventory type such as AWS:Application or AWS:InstanceInformation.
  7979  //
  7980  //   * InvalidResultAttributeException
  7981  //   The specified inventory item result attribute isn't valid.
  7982  //
  7983  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetInventory
  7984  func (c *SSM) GetInventory(input *GetInventoryInput) (*GetInventoryOutput, error) {
  7985  	req, out := c.GetInventoryRequest(input)
  7986  	return out, req.Send()
  7987  }
  7988  
  7989  // GetInventoryWithContext is the same as GetInventory with the addition of
  7990  // the ability to pass a context and additional request options.
  7991  //
  7992  // See GetInventory for details on how to use this API operation.
  7993  //
  7994  // The context must be non-nil and will be used for request cancellation. If
  7995  // the context is nil a panic will occur. In the future the SDK may create
  7996  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7997  // for more information on using Contexts.
  7998  func (c *SSM) GetInventoryWithContext(ctx aws.Context, input *GetInventoryInput, opts ...request.Option) (*GetInventoryOutput, error) {
  7999  	req, out := c.GetInventoryRequest(input)
  8000  	req.SetContext(ctx)
  8001  	req.ApplyOptions(opts...)
  8002  	return out, req.Send()
  8003  }
  8004  
  8005  // GetInventoryPages iterates over the pages of a GetInventory operation,
  8006  // calling the "fn" function with the response data for each page. To stop
  8007  // iterating, return false from the fn function.
  8008  //
  8009  // See GetInventory method for more information on how to use this operation.
  8010  //
  8011  // Note: This operation can generate multiple requests to a service.
  8012  //
  8013  //    // Example iterating over at most 3 pages of a GetInventory operation.
  8014  //    pageNum := 0
  8015  //    err := client.GetInventoryPages(params,
  8016  //        func(page *ssm.GetInventoryOutput, lastPage bool) bool {
  8017  //            pageNum++
  8018  //            fmt.Println(page)
  8019  //            return pageNum <= 3
  8020  //        })
  8021  //
  8022  func (c *SSM) GetInventoryPages(input *GetInventoryInput, fn func(*GetInventoryOutput, bool) bool) error {
  8023  	return c.GetInventoryPagesWithContext(aws.BackgroundContext(), input, fn)
  8024  }
  8025  
  8026  // GetInventoryPagesWithContext same as GetInventoryPages except
  8027  // it takes a Context and allows setting request options on the pages.
  8028  //
  8029  // The context must be non-nil and will be used for request cancellation. If
  8030  // the context is nil a panic will occur. In the future the SDK may create
  8031  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8032  // for more information on using Contexts.
  8033  func (c *SSM) GetInventoryPagesWithContext(ctx aws.Context, input *GetInventoryInput, fn func(*GetInventoryOutput, bool) bool, opts ...request.Option) error {
  8034  	p := request.Pagination{
  8035  		NewRequest: func() (*request.Request, error) {
  8036  			var inCpy *GetInventoryInput
  8037  			if input != nil {
  8038  				tmp := *input
  8039  				inCpy = &tmp
  8040  			}
  8041  			req, _ := c.GetInventoryRequest(inCpy)
  8042  			req.SetContext(ctx)
  8043  			req.ApplyOptions(opts...)
  8044  			return req, nil
  8045  		},
  8046  	}
  8047  
  8048  	for p.Next() {
  8049  		if !fn(p.Page().(*GetInventoryOutput), !p.HasNextPage()) {
  8050  			break
  8051  		}
  8052  	}
  8053  
  8054  	return p.Err()
  8055  }
  8056  
  8057  const opGetInventorySchema = "GetInventorySchema"
  8058  
  8059  // GetInventorySchemaRequest generates a "aws/request.Request" representing the
  8060  // client's request for the GetInventorySchema operation. The "output" return
  8061  // value will be populated with the request's response once the request completes
  8062  // successfully.
  8063  //
  8064  // Use "Send" method on the returned Request to send the API call to the service.
  8065  // the "output" return value is not valid until after Send returns without error.
  8066  //
  8067  // See GetInventorySchema for more information on using the GetInventorySchema
  8068  // API call, and error handling.
  8069  //
  8070  // This method is useful when you want to inject custom logic or configuration
  8071  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8072  //
  8073  //
  8074  //    // Example sending a request using the GetInventorySchemaRequest method.
  8075  //    req, resp := client.GetInventorySchemaRequest(params)
  8076  //
  8077  //    err := req.Send()
  8078  //    if err == nil { // resp is now filled
  8079  //        fmt.Println(resp)
  8080  //    }
  8081  //
  8082  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetInventorySchema
  8083  func (c *SSM) GetInventorySchemaRequest(input *GetInventorySchemaInput) (req *request.Request, output *GetInventorySchemaOutput) {
  8084  	op := &request.Operation{
  8085  		Name:       opGetInventorySchema,
  8086  		HTTPMethod: "POST",
  8087  		HTTPPath:   "/",
  8088  		Paginator: &request.Paginator{
  8089  			InputTokens:     []string{"NextToken"},
  8090  			OutputTokens:    []string{"NextToken"},
  8091  			LimitToken:      "MaxResults",
  8092  			TruncationToken: "",
  8093  		},
  8094  	}
  8095  
  8096  	if input == nil {
  8097  		input = &GetInventorySchemaInput{}
  8098  	}
  8099  
  8100  	output = &GetInventorySchemaOutput{}
  8101  	req = c.newRequest(op, input, output)
  8102  	return
  8103  }
  8104  
  8105  // GetInventorySchema API operation for Amazon Simple Systems Manager (SSM).
  8106  //
  8107  // Return a list of inventory type names for the account, or return a list of
  8108  // attribute names for a specific Inventory item type.
  8109  //
  8110  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8111  // with awserr.Error's Code and Message methods to get detailed information about
  8112  // the error.
  8113  //
  8114  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  8115  // API operation GetInventorySchema for usage and error information.
  8116  //
  8117  // Returned Error Types:
  8118  //   * InternalServerError
  8119  //   An error occurred on the server side.
  8120  //
  8121  //   * InvalidTypeNameException
  8122  //   The parameter type name isn't valid.
  8123  //
  8124  //   * InvalidNextToken
  8125  //   The specified token isn't valid.
  8126  //
  8127  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetInventorySchema
  8128  func (c *SSM) GetInventorySchema(input *GetInventorySchemaInput) (*GetInventorySchemaOutput, error) {
  8129  	req, out := c.GetInventorySchemaRequest(input)
  8130  	return out, req.Send()
  8131  }
  8132  
  8133  // GetInventorySchemaWithContext is the same as GetInventorySchema with the addition of
  8134  // the ability to pass a context and additional request options.
  8135  //
  8136  // See GetInventorySchema for details on how to use this API operation.
  8137  //
  8138  // The context must be non-nil and will be used for request cancellation. If
  8139  // the context is nil a panic will occur. In the future the SDK may create
  8140  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8141  // for more information on using Contexts.
  8142  func (c *SSM) GetInventorySchemaWithContext(ctx aws.Context, input *GetInventorySchemaInput, opts ...request.Option) (*GetInventorySchemaOutput, error) {
  8143  	req, out := c.GetInventorySchemaRequest(input)
  8144  	req.SetContext(ctx)
  8145  	req.ApplyOptions(opts...)
  8146  	return out, req.Send()
  8147  }
  8148  
  8149  // GetInventorySchemaPages iterates over the pages of a GetInventorySchema operation,
  8150  // calling the "fn" function with the response data for each page. To stop
  8151  // iterating, return false from the fn function.
  8152  //
  8153  // See GetInventorySchema method for more information on how to use this operation.
  8154  //
  8155  // Note: This operation can generate multiple requests to a service.
  8156  //
  8157  //    // Example iterating over at most 3 pages of a GetInventorySchema operation.
  8158  //    pageNum := 0
  8159  //    err := client.GetInventorySchemaPages(params,
  8160  //        func(page *ssm.GetInventorySchemaOutput, lastPage bool) bool {
  8161  //            pageNum++
  8162  //            fmt.Println(page)
  8163  //            return pageNum <= 3
  8164  //        })
  8165  //
  8166  func (c *SSM) GetInventorySchemaPages(input *GetInventorySchemaInput, fn func(*GetInventorySchemaOutput, bool) bool) error {
  8167  	return c.GetInventorySchemaPagesWithContext(aws.BackgroundContext(), input, fn)
  8168  }
  8169  
  8170  // GetInventorySchemaPagesWithContext same as GetInventorySchemaPages except
  8171  // it takes a Context and allows setting request options on the pages.
  8172  //
  8173  // The context must be non-nil and will be used for request cancellation. If
  8174  // the context is nil a panic will occur. In the future the SDK may create
  8175  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8176  // for more information on using Contexts.
  8177  func (c *SSM) GetInventorySchemaPagesWithContext(ctx aws.Context, input *GetInventorySchemaInput, fn func(*GetInventorySchemaOutput, bool) bool, opts ...request.Option) error {
  8178  	p := request.Pagination{
  8179  		NewRequest: func() (*request.Request, error) {
  8180  			var inCpy *GetInventorySchemaInput
  8181  			if input != nil {
  8182  				tmp := *input
  8183  				inCpy = &tmp
  8184  			}
  8185  			req, _ := c.GetInventorySchemaRequest(inCpy)
  8186  			req.SetContext(ctx)
  8187  			req.ApplyOptions(opts...)
  8188  			return req, nil
  8189  		},
  8190  	}
  8191  
  8192  	for p.Next() {
  8193  		if !fn(p.Page().(*GetInventorySchemaOutput), !p.HasNextPage()) {
  8194  			break
  8195  		}
  8196  	}
  8197  
  8198  	return p.Err()
  8199  }
  8200  
  8201  const opGetMaintenanceWindow = "GetMaintenanceWindow"
  8202  
  8203  // GetMaintenanceWindowRequest generates a "aws/request.Request" representing the
  8204  // client's request for the GetMaintenanceWindow operation. The "output" return
  8205  // value will be populated with the request's response once the request completes
  8206  // successfully.
  8207  //
  8208  // Use "Send" method on the returned Request to send the API call to the service.
  8209  // the "output" return value is not valid until after Send returns without error.
  8210  //
  8211  // See GetMaintenanceWindow for more information on using the GetMaintenanceWindow
  8212  // API call, and error handling.
  8213  //
  8214  // This method is useful when you want to inject custom logic or configuration
  8215  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8216  //
  8217  //
  8218  //    // Example sending a request using the GetMaintenanceWindowRequest method.
  8219  //    req, resp := client.GetMaintenanceWindowRequest(params)
  8220  //
  8221  //    err := req.Send()
  8222  //    if err == nil { // resp is now filled
  8223  //        fmt.Println(resp)
  8224  //    }
  8225  //
  8226  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindow
  8227  func (c *SSM) GetMaintenanceWindowRequest(input *GetMaintenanceWindowInput) (req *request.Request, output *GetMaintenanceWindowOutput) {
  8228  	op := &request.Operation{
  8229  		Name:       opGetMaintenanceWindow,
  8230  		HTTPMethod: "POST",
  8231  		HTTPPath:   "/",
  8232  	}
  8233  
  8234  	if input == nil {
  8235  		input = &GetMaintenanceWindowInput{}
  8236  	}
  8237  
  8238  	output = &GetMaintenanceWindowOutput{}
  8239  	req = c.newRequest(op, input, output)
  8240  	return
  8241  }
  8242  
  8243  // GetMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
  8244  //
  8245  // Retrieves a maintenance window.
  8246  //
  8247  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8248  // with awserr.Error's Code and Message methods to get detailed information about
  8249  // the error.
  8250  //
  8251  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  8252  // API operation GetMaintenanceWindow for usage and error information.
  8253  //
  8254  // Returned Error Types:
  8255  //   * DoesNotExistException
  8256  //   Error returned when the ID specified for a resource, such as a maintenance
  8257  //   window or patch baseline, doesn't exist.
  8258  //
  8259  //   For information about resource quotas in Amazon Web Services Systems Manager,
  8260  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  8261  //   in the Amazon Web Services General Reference.
  8262  //
  8263  //   * InternalServerError
  8264  //   An error occurred on the server side.
  8265  //
  8266  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindow
  8267  func (c *SSM) GetMaintenanceWindow(input *GetMaintenanceWindowInput) (*GetMaintenanceWindowOutput, error) {
  8268  	req, out := c.GetMaintenanceWindowRequest(input)
  8269  	return out, req.Send()
  8270  }
  8271  
  8272  // GetMaintenanceWindowWithContext is the same as GetMaintenanceWindow with the addition of
  8273  // the ability to pass a context and additional request options.
  8274  //
  8275  // See GetMaintenanceWindow for details on how to use this API operation.
  8276  //
  8277  // The context must be non-nil and will be used for request cancellation. If
  8278  // the context is nil a panic will occur. In the future the SDK may create
  8279  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8280  // for more information on using Contexts.
  8281  func (c *SSM) GetMaintenanceWindowWithContext(ctx aws.Context, input *GetMaintenanceWindowInput, opts ...request.Option) (*GetMaintenanceWindowOutput, error) {
  8282  	req, out := c.GetMaintenanceWindowRequest(input)
  8283  	req.SetContext(ctx)
  8284  	req.ApplyOptions(opts...)
  8285  	return out, req.Send()
  8286  }
  8287  
  8288  const opGetMaintenanceWindowExecution = "GetMaintenanceWindowExecution"
  8289  
  8290  // GetMaintenanceWindowExecutionRequest generates a "aws/request.Request" representing the
  8291  // client's request for the GetMaintenanceWindowExecution operation. The "output" return
  8292  // value will be populated with the request's response once the request completes
  8293  // successfully.
  8294  //
  8295  // Use "Send" method on the returned Request to send the API call to the service.
  8296  // the "output" return value is not valid until after Send returns without error.
  8297  //
  8298  // See GetMaintenanceWindowExecution for more information on using the GetMaintenanceWindowExecution
  8299  // API call, and error handling.
  8300  //
  8301  // This method is useful when you want to inject custom logic or configuration
  8302  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8303  //
  8304  //
  8305  //    // Example sending a request using the GetMaintenanceWindowExecutionRequest method.
  8306  //    req, resp := client.GetMaintenanceWindowExecutionRequest(params)
  8307  //
  8308  //    err := req.Send()
  8309  //    if err == nil { // resp is now filled
  8310  //        fmt.Println(resp)
  8311  //    }
  8312  //
  8313  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecution
  8314  func (c *SSM) GetMaintenanceWindowExecutionRequest(input *GetMaintenanceWindowExecutionInput) (req *request.Request, output *GetMaintenanceWindowExecutionOutput) {
  8315  	op := &request.Operation{
  8316  		Name:       opGetMaintenanceWindowExecution,
  8317  		HTTPMethod: "POST",
  8318  		HTTPPath:   "/",
  8319  	}
  8320  
  8321  	if input == nil {
  8322  		input = &GetMaintenanceWindowExecutionInput{}
  8323  	}
  8324  
  8325  	output = &GetMaintenanceWindowExecutionOutput{}
  8326  	req = c.newRequest(op, input, output)
  8327  	return
  8328  }
  8329  
  8330  // GetMaintenanceWindowExecution API operation for Amazon Simple Systems Manager (SSM).
  8331  //
  8332  // Retrieves details about a specific a maintenance window execution.
  8333  //
  8334  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8335  // with awserr.Error's Code and Message methods to get detailed information about
  8336  // the error.
  8337  //
  8338  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  8339  // API operation GetMaintenanceWindowExecution for usage and error information.
  8340  //
  8341  // Returned Error Types:
  8342  //   * DoesNotExistException
  8343  //   Error returned when the ID specified for a resource, such as a maintenance
  8344  //   window or patch baseline, doesn't exist.
  8345  //
  8346  //   For information about resource quotas in Amazon Web Services Systems Manager,
  8347  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  8348  //   in the Amazon Web Services General Reference.
  8349  //
  8350  //   * InternalServerError
  8351  //   An error occurred on the server side.
  8352  //
  8353  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecution
  8354  func (c *SSM) GetMaintenanceWindowExecution(input *GetMaintenanceWindowExecutionInput) (*GetMaintenanceWindowExecutionOutput, error) {
  8355  	req, out := c.GetMaintenanceWindowExecutionRequest(input)
  8356  	return out, req.Send()
  8357  }
  8358  
  8359  // GetMaintenanceWindowExecutionWithContext is the same as GetMaintenanceWindowExecution with the addition of
  8360  // the ability to pass a context and additional request options.
  8361  //
  8362  // See GetMaintenanceWindowExecution for details on how to use this API operation.
  8363  //
  8364  // The context must be non-nil and will be used for request cancellation. If
  8365  // the context is nil a panic will occur. In the future the SDK may create
  8366  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8367  // for more information on using Contexts.
  8368  func (c *SSM) GetMaintenanceWindowExecutionWithContext(ctx aws.Context, input *GetMaintenanceWindowExecutionInput, opts ...request.Option) (*GetMaintenanceWindowExecutionOutput, error) {
  8369  	req, out := c.GetMaintenanceWindowExecutionRequest(input)
  8370  	req.SetContext(ctx)
  8371  	req.ApplyOptions(opts...)
  8372  	return out, req.Send()
  8373  }
  8374  
  8375  const opGetMaintenanceWindowExecutionTask = "GetMaintenanceWindowExecutionTask"
  8376  
  8377  // GetMaintenanceWindowExecutionTaskRequest generates a "aws/request.Request" representing the
  8378  // client's request for the GetMaintenanceWindowExecutionTask operation. The "output" return
  8379  // value will be populated with the request's response once the request completes
  8380  // successfully.
  8381  //
  8382  // Use "Send" method on the returned Request to send the API call to the service.
  8383  // the "output" return value is not valid until after Send returns without error.
  8384  //
  8385  // See GetMaintenanceWindowExecutionTask for more information on using the GetMaintenanceWindowExecutionTask
  8386  // API call, and error handling.
  8387  //
  8388  // This method is useful when you want to inject custom logic or configuration
  8389  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8390  //
  8391  //
  8392  //    // Example sending a request using the GetMaintenanceWindowExecutionTaskRequest method.
  8393  //    req, resp := client.GetMaintenanceWindowExecutionTaskRequest(params)
  8394  //
  8395  //    err := req.Send()
  8396  //    if err == nil { // resp is now filled
  8397  //        fmt.Println(resp)
  8398  //    }
  8399  //
  8400  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecutionTask
  8401  func (c *SSM) GetMaintenanceWindowExecutionTaskRequest(input *GetMaintenanceWindowExecutionTaskInput) (req *request.Request, output *GetMaintenanceWindowExecutionTaskOutput) {
  8402  	op := &request.Operation{
  8403  		Name:       opGetMaintenanceWindowExecutionTask,
  8404  		HTTPMethod: "POST",
  8405  		HTTPPath:   "/",
  8406  	}
  8407  
  8408  	if input == nil {
  8409  		input = &GetMaintenanceWindowExecutionTaskInput{}
  8410  	}
  8411  
  8412  	output = &GetMaintenanceWindowExecutionTaskOutput{}
  8413  	req = c.newRequest(op, input, output)
  8414  	return
  8415  }
  8416  
  8417  // GetMaintenanceWindowExecutionTask API operation for Amazon Simple Systems Manager (SSM).
  8418  //
  8419  // Retrieves the details about a specific task run as part of a maintenance
  8420  // window execution.
  8421  //
  8422  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8423  // with awserr.Error's Code and Message methods to get detailed information about
  8424  // the error.
  8425  //
  8426  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  8427  // API operation GetMaintenanceWindowExecutionTask for usage and error information.
  8428  //
  8429  // Returned Error Types:
  8430  //   * DoesNotExistException
  8431  //   Error returned when the ID specified for a resource, such as a maintenance
  8432  //   window or patch baseline, doesn't exist.
  8433  //
  8434  //   For information about resource quotas in Amazon Web Services Systems Manager,
  8435  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  8436  //   in the Amazon Web Services General Reference.
  8437  //
  8438  //   * InternalServerError
  8439  //   An error occurred on the server side.
  8440  //
  8441  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecutionTask
  8442  func (c *SSM) GetMaintenanceWindowExecutionTask(input *GetMaintenanceWindowExecutionTaskInput) (*GetMaintenanceWindowExecutionTaskOutput, error) {
  8443  	req, out := c.GetMaintenanceWindowExecutionTaskRequest(input)
  8444  	return out, req.Send()
  8445  }
  8446  
  8447  // GetMaintenanceWindowExecutionTaskWithContext is the same as GetMaintenanceWindowExecutionTask with the addition of
  8448  // the ability to pass a context and additional request options.
  8449  //
  8450  // See GetMaintenanceWindowExecutionTask for details on how to use this API operation.
  8451  //
  8452  // The context must be non-nil and will be used for request cancellation. If
  8453  // the context is nil a panic will occur. In the future the SDK may create
  8454  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8455  // for more information on using Contexts.
  8456  func (c *SSM) GetMaintenanceWindowExecutionTaskWithContext(ctx aws.Context, input *GetMaintenanceWindowExecutionTaskInput, opts ...request.Option) (*GetMaintenanceWindowExecutionTaskOutput, error) {
  8457  	req, out := c.GetMaintenanceWindowExecutionTaskRequest(input)
  8458  	req.SetContext(ctx)
  8459  	req.ApplyOptions(opts...)
  8460  	return out, req.Send()
  8461  }
  8462  
  8463  const opGetMaintenanceWindowExecutionTaskInvocation = "GetMaintenanceWindowExecutionTaskInvocation"
  8464  
  8465  // GetMaintenanceWindowExecutionTaskInvocationRequest generates a "aws/request.Request" representing the
  8466  // client's request for the GetMaintenanceWindowExecutionTaskInvocation operation. The "output" return
  8467  // value will be populated with the request's response once the request completes
  8468  // successfully.
  8469  //
  8470  // Use "Send" method on the returned Request to send the API call to the service.
  8471  // the "output" return value is not valid until after Send returns without error.
  8472  //
  8473  // See GetMaintenanceWindowExecutionTaskInvocation for more information on using the GetMaintenanceWindowExecutionTaskInvocation
  8474  // API call, and error handling.
  8475  //
  8476  // This method is useful when you want to inject custom logic or configuration
  8477  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8478  //
  8479  //
  8480  //    // Example sending a request using the GetMaintenanceWindowExecutionTaskInvocationRequest method.
  8481  //    req, resp := client.GetMaintenanceWindowExecutionTaskInvocationRequest(params)
  8482  //
  8483  //    err := req.Send()
  8484  //    if err == nil { // resp is now filled
  8485  //        fmt.Println(resp)
  8486  //    }
  8487  //
  8488  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecutionTaskInvocation
  8489  func (c *SSM) GetMaintenanceWindowExecutionTaskInvocationRequest(input *GetMaintenanceWindowExecutionTaskInvocationInput) (req *request.Request, output *GetMaintenanceWindowExecutionTaskInvocationOutput) {
  8490  	op := &request.Operation{
  8491  		Name:       opGetMaintenanceWindowExecutionTaskInvocation,
  8492  		HTTPMethod: "POST",
  8493  		HTTPPath:   "/",
  8494  	}
  8495  
  8496  	if input == nil {
  8497  		input = &GetMaintenanceWindowExecutionTaskInvocationInput{}
  8498  	}
  8499  
  8500  	output = &GetMaintenanceWindowExecutionTaskInvocationOutput{}
  8501  	req = c.newRequest(op, input, output)
  8502  	return
  8503  }
  8504  
  8505  // GetMaintenanceWindowExecutionTaskInvocation API operation for Amazon Simple Systems Manager (SSM).
  8506  //
  8507  // Retrieves information about a specific task running on a specific target.
  8508  //
  8509  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8510  // with awserr.Error's Code and Message methods to get detailed information about
  8511  // the error.
  8512  //
  8513  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  8514  // API operation GetMaintenanceWindowExecutionTaskInvocation for usage and error information.
  8515  //
  8516  // Returned Error Types:
  8517  //   * DoesNotExistException
  8518  //   Error returned when the ID specified for a resource, such as a maintenance
  8519  //   window or patch baseline, doesn't exist.
  8520  //
  8521  //   For information about resource quotas in Amazon Web Services Systems Manager,
  8522  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  8523  //   in the Amazon Web Services General Reference.
  8524  //
  8525  //   * InternalServerError
  8526  //   An error occurred on the server side.
  8527  //
  8528  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecutionTaskInvocation
  8529  func (c *SSM) GetMaintenanceWindowExecutionTaskInvocation(input *GetMaintenanceWindowExecutionTaskInvocationInput) (*GetMaintenanceWindowExecutionTaskInvocationOutput, error) {
  8530  	req, out := c.GetMaintenanceWindowExecutionTaskInvocationRequest(input)
  8531  	return out, req.Send()
  8532  }
  8533  
  8534  // GetMaintenanceWindowExecutionTaskInvocationWithContext is the same as GetMaintenanceWindowExecutionTaskInvocation with the addition of
  8535  // the ability to pass a context and additional request options.
  8536  //
  8537  // See GetMaintenanceWindowExecutionTaskInvocation for details on how to use this API operation.
  8538  //
  8539  // The context must be non-nil and will be used for request cancellation. If
  8540  // the context is nil a panic will occur. In the future the SDK may create
  8541  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8542  // for more information on using Contexts.
  8543  func (c *SSM) GetMaintenanceWindowExecutionTaskInvocationWithContext(ctx aws.Context, input *GetMaintenanceWindowExecutionTaskInvocationInput, opts ...request.Option) (*GetMaintenanceWindowExecutionTaskInvocationOutput, error) {
  8544  	req, out := c.GetMaintenanceWindowExecutionTaskInvocationRequest(input)
  8545  	req.SetContext(ctx)
  8546  	req.ApplyOptions(opts...)
  8547  	return out, req.Send()
  8548  }
  8549  
  8550  const opGetMaintenanceWindowTask = "GetMaintenanceWindowTask"
  8551  
  8552  // GetMaintenanceWindowTaskRequest generates a "aws/request.Request" representing the
  8553  // client's request for the GetMaintenanceWindowTask operation. The "output" return
  8554  // value will be populated with the request's response once the request completes
  8555  // successfully.
  8556  //
  8557  // Use "Send" method on the returned Request to send the API call to the service.
  8558  // the "output" return value is not valid until after Send returns without error.
  8559  //
  8560  // See GetMaintenanceWindowTask for more information on using the GetMaintenanceWindowTask
  8561  // API call, and error handling.
  8562  //
  8563  // This method is useful when you want to inject custom logic or configuration
  8564  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8565  //
  8566  //
  8567  //    // Example sending a request using the GetMaintenanceWindowTaskRequest method.
  8568  //    req, resp := client.GetMaintenanceWindowTaskRequest(params)
  8569  //
  8570  //    err := req.Send()
  8571  //    if err == nil { // resp is now filled
  8572  //        fmt.Println(resp)
  8573  //    }
  8574  //
  8575  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowTask
  8576  func (c *SSM) GetMaintenanceWindowTaskRequest(input *GetMaintenanceWindowTaskInput) (req *request.Request, output *GetMaintenanceWindowTaskOutput) {
  8577  	op := &request.Operation{
  8578  		Name:       opGetMaintenanceWindowTask,
  8579  		HTTPMethod: "POST",
  8580  		HTTPPath:   "/",
  8581  	}
  8582  
  8583  	if input == nil {
  8584  		input = &GetMaintenanceWindowTaskInput{}
  8585  	}
  8586  
  8587  	output = &GetMaintenanceWindowTaskOutput{}
  8588  	req = c.newRequest(op, input, output)
  8589  	return
  8590  }
  8591  
  8592  // GetMaintenanceWindowTask API operation for Amazon Simple Systems Manager (SSM).
  8593  //
  8594  // Lists the tasks in a maintenance window.
  8595  //
  8596  // For maintenance window tasks without a specified target, you can't supply
  8597  // values for --max-errors and --max-concurrency. Instead, the system inserts
  8598  // a placeholder value of 1, which may be reported in the response to this command.
  8599  // These values don't affect the running of your task and can be ignored.
  8600  //
  8601  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8602  // with awserr.Error's Code and Message methods to get detailed information about
  8603  // the error.
  8604  //
  8605  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  8606  // API operation GetMaintenanceWindowTask for usage and error information.
  8607  //
  8608  // Returned Error Types:
  8609  //   * DoesNotExistException
  8610  //   Error returned when the ID specified for a resource, such as a maintenance
  8611  //   window or patch baseline, doesn't exist.
  8612  //
  8613  //   For information about resource quotas in Amazon Web Services Systems Manager,
  8614  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  8615  //   in the Amazon Web Services General Reference.
  8616  //
  8617  //   * InternalServerError
  8618  //   An error occurred on the server side.
  8619  //
  8620  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowTask
  8621  func (c *SSM) GetMaintenanceWindowTask(input *GetMaintenanceWindowTaskInput) (*GetMaintenanceWindowTaskOutput, error) {
  8622  	req, out := c.GetMaintenanceWindowTaskRequest(input)
  8623  	return out, req.Send()
  8624  }
  8625  
  8626  // GetMaintenanceWindowTaskWithContext is the same as GetMaintenanceWindowTask with the addition of
  8627  // the ability to pass a context and additional request options.
  8628  //
  8629  // See GetMaintenanceWindowTask for details on how to use this API operation.
  8630  //
  8631  // The context must be non-nil and will be used for request cancellation. If
  8632  // the context is nil a panic will occur. In the future the SDK may create
  8633  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8634  // for more information on using Contexts.
  8635  func (c *SSM) GetMaintenanceWindowTaskWithContext(ctx aws.Context, input *GetMaintenanceWindowTaskInput, opts ...request.Option) (*GetMaintenanceWindowTaskOutput, error) {
  8636  	req, out := c.GetMaintenanceWindowTaskRequest(input)
  8637  	req.SetContext(ctx)
  8638  	req.ApplyOptions(opts...)
  8639  	return out, req.Send()
  8640  }
  8641  
  8642  const opGetOpsItem = "GetOpsItem"
  8643  
  8644  // GetOpsItemRequest generates a "aws/request.Request" representing the
  8645  // client's request for the GetOpsItem operation. The "output" return
  8646  // value will be populated with the request's response once the request completes
  8647  // successfully.
  8648  //
  8649  // Use "Send" method on the returned Request to send the API call to the service.
  8650  // the "output" return value is not valid until after Send returns without error.
  8651  //
  8652  // See GetOpsItem for more information on using the GetOpsItem
  8653  // API call, and error handling.
  8654  //
  8655  // This method is useful when you want to inject custom logic or configuration
  8656  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8657  //
  8658  //
  8659  //    // Example sending a request using the GetOpsItemRequest method.
  8660  //    req, resp := client.GetOpsItemRequest(params)
  8661  //
  8662  //    err := req.Send()
  8663  //    if err == nil { // resp is now filled
  8664  //        fmt.Println(resp)
  8665  //    }
  8666  //
  8667  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsItem
  8668  func (c *SSM) GetOpsItemRequest(input *GetOpsItemInput) (req *request.Request, output *GetOpsItemOutput) {
  8669  	op := &request.Operation{
  8670  		Name:       opGetOpsItem,
  8671  		HTTPMethod: "POST",
  8672  		HTTPPath:   "/",
  8673  	}
  8674  
  8675  	if input == nil {
  8676  		input = &GetOpsItemInput{}
  8677  	}
  8678  
  8679  	output = &GetOpsItemOutput{}
  8680  	req = c.newRequest(op, input, output)
  8681  	return
  8682  }
  8683  
  8684  // GetOpsItem API operation for Amazon Simple Systems Manager (SSM).
  8685  //
  8686  // Get information about an OpsItem by using the ID. You must have permission
  8687  // in Identity and Access Management (IAM) to view information about an OpsItem.
  8688  // For more information, see Getting started with OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-getting-started.html)
  8689  // in the Amazon Web Services Systems Manager User Guide.
  8690  //
  8691  // Operations engineers and IT professionals use Amazon Web Services Systems
  8692  // Manager OpsCenter to view, investigate, and remediate operational issues
  8693  // impacting the performance and health of their Amazon Web Services resources.
  8694  // For more information, see OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html)
  8695  // in the Amazon Web Services Systems Manager User Guide.
  8696  //
  8697  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8698  // with awserr.Error's Code and Message methods to get detailed information about
  8699  // the error.
  8700  //
  8701  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  8702  // API operation GetOpsItem for usage and error information.
  8703  //
  8704  // Returned Error Types:
  8705  //   * InternalServerError
  8706  //   An error occurred on the server side.
  8707  //
  8708  //   * OpsItemNotFoundException
  8709  //   The specified OpsItem ID doesn't exist. Verify the ID and try again.
  8710  //
  8711  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsItem
  8712  func (c *SSM) GetOpsItem(input *GetOpsItemInput) (*GetOpsItemOutput, error) {
  8713  	req, out := c.GetOpsItemRequest(input)
  8714  	return out, req.Send()
  8715  }
  8716  
  8717  // GetOpsItemWithContext is the same as GetOpsItem with the addition of
  8718  // the ability to pass a context and additional request options.
  8719  //
  8720  // See GetOpsItem for details on how to use this API operation.
  8721  //
  8722  // The context must be non-nil and will be used for request cancellation. If
  8723  // the context is nil a panic will occur. In the future the SDK may create
  8724  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8725  // for more information on using Contexts.
  8726  func (c *SSM) GetOpsItemWithContext(ctx aws.Context, input *GetOpsItemInput, opts ...request.Option) (*GetOpsItemOutput, error) {
  8727  	req, out := c.GetOpsItemRequest(input)
  8728  	req.SetContext(ctx)
  8729  	req.ApplyOptions(opts...)
  8730  	return out, req.Send()
  8731  }
  8732  
  8733  const opGetOpsMetadata = "GetOpsMetadata"
  8734  
  8735  // GetOpsMetadataRequest generates a "aws/request.Request" representing the
  8736  // client's request for the GetOpsMetadata operation. The "output" return
  8737  // value will be populated with the request's response once the request completes
  8738  // successfully.
  8739  //
  8740  // Use "Send" method on the returned Request to send the API call to the service.
  8741  // the "output" return value is not valid until after Send returns without error.
  8742  //
  8743  // See GetOpsMetadata for more information on using the GetOpsMetadata
  8744  // API call, and error handling.
  8745  //
  8746  // This method is useful when you want to inject custom logic or configuration
  8747  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8748  //
  8749  //
  8750  //    // Example sending a request using the GetOpsMetadataRequest method.
  8751  //    req, resp := client.GetOpsMetadataRequest(params)
  8752  //
  8753  //    err := req.Send()
  8754  //    if err == nil { // resp is now filled
  8755  //        fmt.Println(resp)
  8756  //    }
  8757  //
  8758  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsMetadata
  8759  func (c *SSM) GetOpsMetadataRequest(input *GetOpsMetadataInput) (req *request.Request, output *GetOpsMetadataOutput) {
  8760  	op := &request.Operation{
  8761  		Name:       opGetOpsMetadata,
  8762  		HTTPMethod: "POST",
  8763  		HTTPPath:   "/",
  8764  	}
  8765  
  8766  	if input == nil {
  8767  		input = &GetOpsMetadataInput{}
  8768  	}
  8769  
  8770  	output = &GetOpsMetadataOutput{}
  8771  	req = c.newRequest(op, input, output)
  8772  	return
  8773  }
  8774  
  8775  // GetOpsMetadata API operation for Amazon Simple Systems Manager (SSM).
  8776  //
  8777  // View operational metadata related to an application in Application Manager.
  8778  //
  8779  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8780  // with awserr.Error's Code and Message methods to get detailed information about
  8781  // the error.
  8782  //
  8783  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  8784  // API operation GetOpsMetadata for usage and error information.
  8785  //
  8786  // Returned Error Types:
  8787  //   * OpsMetadataNotFoundException
  8788  //   The OpsMetadata object doesn't exist.
  8789  //
  8790  //   * OpsMetadataInvalidArgumentException
  8791  //   One of the arguments passed is invalid.
  8792  //
  8793  //   * InternalServerError
  8794  //   An error occurred on the server side.
  8795  //
  8796  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsMetadata
  8797  func (c *SSM) GetOpsMetadata(input *GetOpsMetadataInput) (*GetOpsMetadataOutput, error) {
  8798  	req, out := c.GetOpsMetadataRequest(input)
  8799  	return out, req.Send()
  8800  }
  8801  
  8802  // GetOpsMetadataWithContext is the same as GetOpsMetadata with the addition of
  8803  // the ability to pass a context and additional request options.
  8804  //
  8805  // See GetOpsMetadata for details on how to use this API operation.
  8806  //
  8807  // The context must be non-nil and will be used for request cancellation. If
  8808  // the context is nil a panic will occur. In the future the SDK may create
  8809  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8810  // for more information on using Contexts.
  8811  func (c *SSM) GetOpsMetadataWithContext(ctx aws.Context, input *GetOpsMetadataInput, opts ...request.Option) (*GetOpsMetadataOutput, error) {
  8812  	req, out := c.GetOpsMetadataRequest(input)
  8813  	req.SetContext(ctx)
  8814  	req.ApplyOptions(opts...)
  8815  	return out, req.Send()
  8816  }
  8817  
  8818  const opGetOpsSummary = "GetOpsSummary"
  8819  
  8820  // GetOpsSummaryRequest generates a "aws/request.Request" representing the
  8821  // client's request for the GetOpsSummary operation. The "output" return
  8822  // value will be populated with the request's response once the request completes
  8823  // successfully.
  8824  //
  8825  // Use "Send" method on the returned Request to send the API call to the service.
  8826  // the "output" return value is not valid until after Send returns without error.
  8827  //
  8828  // See GetOpsSummary for more information on using the GetOpsSummary
  8829  // API call, and error handling.
  8830  //
  8831  // This method is useful when you want to inject custom logic or configuration
  8832  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8833  //
  8834  //
  8835  //    // Example sending a request using the GetOpsSummaryRequest method.
  8836  //    req, resp := client.GetOpsSummaryRequest(params)
  8837  //
  8838  //    err := req.Send()
  8839  //    if err == nil { // resp is now filled
  8840  //        fmt.Println(resp)
  8841  //    }
  8842  //
  8843  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsSummary
  8844  func (c *SSM) GetOpsSummaryRequest(input *GetOpsSummaryInput) (req *request.Request, output *GetOpsSummaryOutput) {
  8845  	op := &request.Operation{
  8846  		Name:       opGetOpsSummary,
  8847  		HTTPMethod: "POST",
  8848  		HTTPPath:   "/",
  8849  		Paginator: &request.Paginator{
  8850  			InputTokens:     []string{"NextToken"},
  8851  			OutputTokens:    []string{"NextToken"},
  8852  			LimitToken:      "MaxResults",
  8853  			TruncationToken: "",
  8854  		},
  8855  	}
  8856  
  8857  	if input == nil {
  8858  		input = &GetOpsSummaryInput{}
  8859  	}
  8860  
  8861  	output = &GetOpsSummaryOutput{}
  8862  	req = c.newRequest(op, input, output)
  8863  	return
  8864  }
  8865  
  8866  // GetOpsSummary API operation for Amazon Simple Systems Manager (SSM).
  8867  //
  8868  // View a summary of operations metadata (OpsData) based on specified filters
  8869  // and aggregators. OpsData can include information about Amazon Web Services
  8870  // Systems Manager OpsCenter operational workitems (OpsItems) as well as information
  8871  // about any Amazon Web Services resource or service configured to report OpsData
  8872  // to Amazon Web Services Systems Manager Explorer.
  8873  //
  8874  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8875  // with awserr.Error's Code and Message methods to get detailed information about
  8876  // the error.
  8877  //
  8878  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  8879  // API operation GetOpsSummary for usage and error information.
  8880  //
  8881  // Returned Error Types:
  8882  //   * InternalServerError
  8883  //   An error occurred on the server side.
  8884  //
  8885  //   * ResourceDataSyncNotFoundException
  8886  //   The specified sync name wasn't found.
  8887  //
  8888  //   * InvalidFilter
  8889  //   The filter name isn't valid. Verify the you entered the correct name and
  8890  //   try again.
  8891  //
  8892  //   * InvalidNextToken
  8893  //   The specified token isn't valid.
  8894  //
  8895  //   * InvalidTypeNameException
  8896  //   The parameter type name isn't valid.
  8897  //
  8898  //   * InvalidAggregatorException
  8899  //   The specified aggregator isn't valid for inventory groups. Verify that the
  8900  //   aggregator uses a valid inventory type such as AWS:Application or AWS:InstanceInformation.
  8901  //
  8902  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsSummary
  8903  func (c *SSM) GetOpsSummary(input *GetOpsSummaryInput) (*GetOpsSummaryOutput, error) {
  8904  	req, out := c.GetOpsSummaryRequest(input)
  8905  	return out, req.Send()
  8906  }
  8907  
  8908  // GetOpsSummaryWithContext is the same as GetOpsSummary with the addition of
  8909  // the ability to pass a context and additional request options.
  8910  //
  8911  // See GetOpsSummary for details on how to use this API operation.
  8912  //
  8913  // The context must be non-nil and will be used for request cancellation. If
  8914  // the context is nil a panic will occur. In the future the SDK may create
  8915  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8916  // for more information on using Contexts.
  8917  func (c *SSM) GetOpsSummaryWithContext(ctx aws.Context, input *GetOpsSummaryInput, opts ...request.Option) (*GetOpsSummaryOutput, error) {
  8918  	req, out := c.GetOpsSummaryRequest(input)
  8919  	req.SetContext(ctx)
  8920  	req.ApplyOptions(opts...)
  8921  	return out, req.Send()
  8922  }
  8923  
  8924  // GetOpsSummaryPages iterates over the pages of a GetOpsSummary operation,
  8925  // calling the "fn" function with the response data for each page. To stop
  8926  // iterating, return false from the fn function.
  8927  //
  8928  // See GetOpsSummary method for more information on how to use this operation.
  8929  //
  8930  // Note: This operation can generate multiple requests to a service.
  8931  //
  8932  //    // Example iterating over at most 3 pages of a GetOpsSummary operation.
  8933  //    pageNum := 0
  8934  //    err := client.GetOpsSummaryPages(params,
  8935  //        func(page *ssm.GetOpsSummaryOutput, lastPage bool) bool {
  8936  //            pageNum++
  8937  //            fmt.Println(page)
  8938  //            return pageNum <= 3
  8939  //        })
  8940  //
  8941  func (c *SSM) GetOpsSummaryPages(input *GetOpsSummaryInput, fn func(*GetOpsSummaryOutput, bool) bool) error {
  8942  	return c.GetOpsSummaryPagesWithContext(aws.BackgroundContext(), input, fn)
  8943  }
  8944  
  8945  // GetOpsSummaryPagesWithContext same as GetOpsSummaryPages except
  8946  // it takes a Context and allows setting request options on the pages.
  8947  //
  8948  // The context must be non-nil and will be used for request cancellation. If
  8949  // the context is nil a panic will occur. In the future the SDK may create
  8950  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8951  // for more information on using Contexts.
  8952  func (c *SSM) GetOpsSummaryPagesWithContext(ctx aws.Context, input *GetOpsSummaryInput, fn func(*GetOpsSummaryOutput, bool) bool, opts ...request.Option) error {
  8953  	p := request.Pagination{
  8954  		NewRequest: func() (*request.Request, error) {
  8955  			var inCpy *GetOpsSummaryInput
  8956  			if input != nil {
  8957  				tmp := *input
  8958  				inCpy = &tmp
  8959  			}
  8960  			req, _ := c.GetOpsSummaryRequest(inCpy)
  8961  			req.SetContext(ctx)
  8962  			req.ApplyOptions(opts...)
  8963  			return req, nil
  8964  		},
  8965  	}
  8966  
  8967  	for p.Next() {
  8968  		if !fn(p.Page().(*GetOpsSummaryOutput), !p.HasNextPage()) {
  8969  			break
  8970  		}
  8971  	}
  8972  
  8973  	return p.Err()
  8974  }
  8975  
  8976  const opGetParameter = "GetParameter"
  8977  
  8978  // GetParameterRequest generates a "aws/request.Request" representing the
  8979  // client's request for the GetParameter operation. The "output" return
  8980  // value will be populated with the request's response once the request completes
  8981  // successfully.
  8982  //
  8983  // Use "Send" method on the returned Request to send the API call to the service.
  8984  // the "output" return value is not valid until after Send returns without error.
  8985  //
  8986  // See GetParameter for more information on using the GetParameter
  8987  // API call, and error handling.
  8988  //
  8989  // This method is useful when you want to inject custom logic or configuration
  8990  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8991  //
  8992  //
  8993  //    // Example sending a request using the GetParameterRequest method.
  8994  //    req, resp := client.GetParameterRequest(params)
  8995  //
  8996  //    err := req.Send()
  8997  //    if err == nil { // resp is now filled
  8998  //        fmt.Println(resp)
  8999  //    }
  9000  //
  9001  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameter
  9002  func (c *SSM) GetParameterRequest(input *GetParameterInput) (req *request.Request, output *GetParameterOutput) {
  9003  	op := &request.Operation{
  9004  		Name:       opGetParameter,
  9005  		HTTPMethod: "POST",
  9006  		HTTPPath:   "/",
  9007  	}
  9008  
  9009  	if input == nil {
  9010  		input = &GetParameterInput{}
  9011  	}
  9012  
  9013  	output = &GetParameterOutput{}
  9014  	req = c.newRequest(op, input, output)
  9015  	return
  9016  }
  9017  
  9018  // GetParameter API operation for Amazon Simple Systems Manager (SSM).
  9019  //
  9020  // Get information about a single parameter by specifying the parameter name.
  9021  //
  9022  // To get information about more than one parameter at a time, use the GetParameters
  9023  // operation.
  9024  //
  9025  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9026  // with awserr.Error's Code and Message methods to get detailed information about
  9027  // the error.
  9028  //
  9029  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  9030  // API operation GetParameter for usage and error information.
  9031  //
  9032  // Returned Error Types:
  9033  //   * InternalServerError
  9034  //   An error occurred on the server side.
  9035  //
  9036  //   * InvalidKeyId
  9037  //   The query key ID isn't valid.
  9038  //
  9039  //   * ParameterNotFound
  9040  //   The parameter couldn't be found. Verify the name and try again.
  9041  //
  9042  //   * ParameterVersionNotFound
  9043  //   The specified parameter version wasn't found. Verify the parameter name and
  9044  //   version, and try again.
  9045  //
  9046  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameter
  9047  func (c *SSM) GetParameter(input *GetParameterInput) (*GetParameterOutput, error) {
  9048  	req, out := c.GetParameterRequest(input)
  9049  	return out, req.Send()
  9050  }
  9051  
  9052  // GetParameterWithContext is the same as GetParameter with the addition of
  9053  // the ability to pass a context and additional request options.
  9054  //
  9055  // See GetParameter for details on how to use this API operation.
  9056  //
  9057  // The context must be non-nil and will be used for request cancellation. If
  9058  // the context is nil a panic will occur. In the future the SDK may create
  9059  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9060  // for more information on using Contexts.
  9061  func (c *SSM) GetParameterWithContext(ctx aws.Context, input *GetParameterInput, opts ...request.Option) (*GetParameterOutput, error) {
  9062  	req, out := c.GetParameterRequest(input)
  9063  	req.SetContext(ctx)
  9064  	req.ApplyOptions(opts...)
  9065  	return out, req.Send()
  9066  }
  9067  
  9068  const opGetParameterHistory = "GetParameterHistory"
  9069  
  9070  // GetParameterHistoryRequest generates a "aws/request.Request" representing the
  9071  // client's request for the GetParameterHistory operation. The "output" return
  9072  // value will be populated with the request's response once the request completes
  9073  // successfully.
  9074  //
  9075  // Use "Send" method on the returned Request to send the API call to the service.
  9076  // the "output" return value is not valid until after Send returns without error.
  9077  //
  9078  // See GetParameterHistory for more information on using the GetParameterHistory
  9079  // API call, and error handling.
  9080  //
  9081  // This method is useful when you want to inject custom logic or configuration
  9082  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9083  //
  9084  //
  9085  //    // Example sending a request using the GetParameterHistoryRequest method.
  9086  //    req, resp := client.GetParameterHistoryRequest(params)
  9087  //
  9088  //    err := req.Send()
  9089  //    if err == nil { // resp is now filled
  9090  //        fmt.Println(resp)
  9091  //    }
  9092  //
  9093  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameterHistory
  9094  func (c *SSM) GetParameterHistoryRequest(input *GetParameterHistoryInput) (req *request.Request, output *GetParameterHistoryOutput) {
  9095  	op := &request.Operation{
  9096  		Name:       opGetParameterHistory,
  9097  		HTTPMethod: "POST",
  9098  		HTTPPath:   "/",
  9099  		Paginator: &request.Paginator{
  9100  			InputTokens:     []string{"NextToken"},
  9101  			OutputTokens:    []string{"NextToken"},
  9102  			LimitToken:      "MaxResults",
  9103  			TruncationToken: "",
  9104  		},
  9105  	}
  9106  
  9107  	if input == nil {
  9108  		input = &GetParameterHistoryInput{}
  9109  	}
  9110  
  9111  	output = &GetParameterHistoryOutput{}
  9112  	req = c.newRequest(op, input, output)
  9113  	return
  9114  }
  9115  
  9116  // GetParameterHistory API operation for Amazon Simple Systems Manager (SSM).
  9117  //
  9118  // Retrieves the history of all changes to a parameter.
  9119  //
  9120  // If you change the KMS key alias for the KMS key used to encrypt a parameter,
  9121  // then you must also update the key alias the parameter uses to reference KMS.
  9122  // Otherwise, GetParameterHistory retrieves whatever the original key alias
  9123  // was referencing.
  9124  //
  9125  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9126  // with awserr.Error's Code and Message methods to get detailed information about
  9127  // the error.
  9128  //
  9129  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  9130  // API operation GetParameterHistory for usage and error information.
  9131  //
  9132  // Returned Error Types:
  9133  //   * InternalServerError
  9134  //   An error occurred on the server side.
  9135  //
  9136  //   * ParameterNotFound
  9137  //   The parameter couldn't be found. Verify the name and try again.
  9138  //
  9139  //   * InvalidNextToken
  9140  //   The specified token isn't valid.
  9141  //
  9142  //   * InvalidKeyId
  9143  //   The query key ID isn't valid.
  9144  //
  9145  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameterHistory
  9146  func (c *SSM) GetParameterHistory(input *GetParameterHistoryInput) (*GetParameterHistoryOutput, error) {
  9147  	req, out := c.GetParameterHistoryRequest(input)
  9148  	return out, req.Send()
  9149  }
  9150  
  9151  // GetParameterHistoryWithContext is the same as GetParameterHistory with the addition of
  9152  // the ability to pass a context and additional request options.
  9153  //
  9154  // See GetParameterHistory for details on how to use this API operation.
  9155  //
  9156  // The context must be non-nil and will be used for request cancellation. If
  9157  // the context is nil a panic will occur. In the future the SDK may create
  9158  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9159  // for more information on using Contexts.
  9160  func (c *SSM) GetParameterHistoryWithContext(ctx aws.Context, input *GetParameterHistoryInput, opts ...request.Option) (*GetParameterHistoryOutput, error) {
  9161  	req, out := c.GetParameterHistoryRequest(input)
  9162  	req.SetContext(ctx)
  9163  	req.ApplyOptions(opts...)
  9164  	return out, req.Send()
  9165  }
  9166  
  9167  // GetParameterHistoryPages iterates over the pages of a GetParameterHistory operation,
  9168  // calling the "fn" function with the response data for each page. To stop
  9169  // iterating, return false from the fn function.
  9170  //
  9171  // See GetParameterHistory method for more information on how to use this operation.
  9172  //
  9173  // Note: This operation can generate multiple requests to a service.
  9174  //
  9175  //    // Example iterating over at most 3 pages of a GetParameterHistory operation.
  9176  //    pageNum := 0
  9177  //    err := client.GetParameterHistoryPages(params,
  9178  //        func(page *ssm.GetParameterHistoryOutput, lastPage bool) bool {
  9179  //            pageNum++
  9180  //            fmt.Println(page)
  9181  //            return pageNum <= 3
  9182  //        })
  9183  //
  9184  func (c *SSM) GetParameterHistoryPages(input *GetParameterHistoryInput, fn func(*GetParameterHistoryOutput, bool) bool) error {
  9185  	return c.GetParameterHistoryPagesWithContext(aws.BackgroundContext(), input, fn)
  9186  }
  9187  
  9188  // GetParameterHistoryPagesWithContext same as GetParameterHistoryPages except
  9189  // it takes a Context and allows setting request options on the pages.
  9190  //
  9191  // The context must be non-nil and will be used for request cancellation. If
  9192  // the context is nil a panic will occur. In the future the SDK may create
  9193  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9194  // for more information on using Contexts.
  9195  func (c *SSM) GetParameterHistoryPagesWithContext(ctx aws.Context, input *GetParameterHistoryInput, fn func(*GetParameterHistoryOutput, bool) bool, opts ...request.Option) error {
  9196  	p := request.Pagination{
  9197  		NewRequest: func() (*request.Request, error) {
  9198  			var inCpy *GetParameterHistoryInput
  9199  			if input != nil {
  9200  				tmp := *input
  9201  				inCpy = &tmp
  9202  			}
  9203  			req, _ := c.GetParameterHistoryRequest(inCpy)
  9204  			req.SetContext(ctx)
  9205  			req.ApplyOptions(opts...)
  9206  			return req, nil
  9207  		},
  9208  	}
  9209  
  9210  	for p.Next() {
  9211  		if !fn(p.Page().(*GetParameterHistoryOutput), !p.HasNextPage()) {
  9212  			break
  9213  		}
  9214  	}
  9215  
  9216  	return p.Err()
  9217  }
  9218  
  9219  const opGetParameters = "GetParameters"
  9220  
  9221  // GetParametersRequest generates a "aws/request.Request" representing the
  9222  // client's request for the GetParameters operation. The "output" return
  9223  // value will be populated with the request's response once the request completes
  9224  // successfully.
  9225  //
  9226  // Use "Send" method on the returned Request to send the API call to the service.
  9227  // the "output" return value is not valid until after Send returns without error.
  9228  //
  9229  // See GetParameters for more information on using the GetParameters
  9230  // API call, and error handling.
  9231  //
  9232  // This method is useful when you want to inject custom logic or configuration
  9233  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9234  //
  9235  //
  9236  //    // Example sending a request using the GetParametersRequest method.
  9237  //    req, resp := client.GetParametersRequest(params)
  9238  //
  9239  //    err := req.Send()
  9240  //    if err == nil { // resp is now filled
  9241  //        fmt.Println(resp)
  9242  //    }
  9243  //
  9244  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameters
  9245  func (c *SSM) GetParametersRequest(input *GetParametersInput) (req *request.Request, output *GetParametersOutput) {
  9246  	op := &request.Operation{
  9247  		Name:       opGetParameters,
  9248  		HTTPMethod: "POST",
  9249  		HTTPPath:   "/",
  9250  	}
  9251  
  9252  	if input == nil {
  9253  		input = &GetParametersInput{}
  9254  	}
  9255  
  9256  	output = &GetParametersOutput{}
  9257  	req = c.newRequest(op, input, output)
  9258  	return
  9259  }
  9260  
  9261  // GetParameters API operation for Amazon Simple Systems Manager (SSM).
  9262  //
  9263  // Get information about one or more parameters by specifying multiple parameter
  9264  // names.
  9265  //
  9266  // To get information about a single parameter, you can use the GetParameter
  9267  // operation instead.
  9268  //
  9269  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9270  // with awserr.Error's Code and Message methods to get detailed information about
  9271  // the error.
  9272  //
  9273  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  9274  // API operation GetParameters for usage and error information.
  9275  //
  9276  // Returned Error Types:
  9277  //   * InvalidKeyId
  9278  //   The query key ID isn't valid.
  9279  //
  9280  //   * InternalServerError
  9281  //   An error occurred on the server side.
  9282  //
  9283  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameters
  9284  func (c *SSM) GetParameters(input *GetParametersInput) (*GetParametersOutput, error) {
  9285  	req, out := c.GetParametersRequest(input)
  9286  	return out, req.Send()
  9287  }
  9288  
  9289  // GetParametersWithContext is the same as GetParameters with the addition of
  9290  // the ability to pass a context and additional request options.
  9291  //
  9292  // See GetParameters for details on how to use this API operation.
  9293  //
  9294  // The context must be non-nil and will be used for request cancellation. If
  9295  // the context is nil a panic will occur. In the future the SDK may create
  9296  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9297  // for more information on using Contexts.
  9298  func (c *SSM) GetParametersWithContext(ctx aws.Context, input *GetParametersInput, opts ...request.Option) (*GetParametersOutput, error) {
  9299  	req, out := c.GetParametersRequest(input)
  9300  	req.SetContext(ctx)
  9301  	req.ApplyOptions(opts...)
  9302  	return out, req.Send()
  9303  }
  9304  
  9305  const opGetParametersByPath = "GetParametersByPath"
  9306  
  9307  // GetParametersByPathRequest generates a "aws/request.Request" representing the
  9308  // client's request for the GetParametersByPath operation. The "output" return
  9309  // value will be populated with the request's response once the request completes
  9310  // successfully.
  9311  //
  9312  // Use "Send" method on the returned Request to send the API call to the service.
  9313  // the "output" return value is not valid until after Send returns without error.
  9314  //
  9315  // See GetParametersByPath for more information on using the GetParametersByPath
  9316  // API call, and error handling.
  9317  //
  9318  // This method is useful when you want to inject custom logic or configuration
  9319  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9320  //
  9321  //
  9322  //    // Example sending a request using the GetParametersByPathRequest method.
  9323  //    req, resp := client.GetParametersByPathRequest(params)
  9324  //
  9325  //    err := req.Send()
  9326  //    if err == nil { // resp is now filled
  9327  //        fmt.Println(resp)
  9328  //    }
  9329  //
  9330  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParametersByPath
  9331  func (c *SSM) GetParametersByPathRequest(input *GetParametersByPathInput) (req *request.Request, output *GetParametersByPathOutput) {
  9332  	op := &request.Operation{
  9333  		Name:       opGetParametersByPath,
  9334  		HTTPMethod: "POST",
  9335  		HTTPPath:   "/",
  9336  		Paginator: &request.Paginator{
  9337  			InputTokens:     []string{"NextToken"},
  9338  			OutputTokens:    []string{"NextToken"},
  9339  			LimitToken:      "MaxResults",
  9340  			TruncationToken: "",
  9341  		},
  9342  	}
  9343  
  9344  	if input == nil {
  9345  		input = &GetParametersByPathInput{}
  9346  	}
  9347  
  9348  	output = &GetParametersByPathOutput{}
  9349  	req = c.newRequest(op, input, output)
  9350  	return
  9351  }
  9352  
  9353  // GetParametersByPath API operation for Amazon Simple Systems Manager (SSM).
  9354  //
  9355  // Retrieve information about one or more parameters in a specific hierarchy.
  9356  //
  9357  // Request results are returned on a best-effort basis. If you specify MaxResults
  9358  // in the request, the response includes information up to the limit specified.
  9359  // The number of items returned, however, can be between zero and the value
  9360  // of MaxResults. If the service reaches an internal limit while processing
  9361  // the results, it stops the operation and returns the matching values up to
  9362  // that point and a NextToken. You can specify the NextToken in a subsequent
  9363  // call to get the next set of results.
  9364  //
  9365  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9366  // with awserr.Error's Code and Message methods to get detailed information about
  9367  // the error.
  9368  //
  9369  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  9370  // API operation GetParametersByPath for usage and error information.
  9371  //
  9372  // Returned Error Types:
  9373  //   * InternalServerError
  9374  //   An error occurred on the server side.
  9375  //
  9376  //   * InvalidFilterKey
  9377  //   The specified key isn't valid.
  9378  //
  9379  //   * InvalidFilterOption
  9380  //   The specified filter option isn't valid. Valid options are Equals and BeginsWith.
  9381  //   For Path filter, valid options are Recursive and OneLevel.
  9382  //
  9383  //   * InvalidFilterValue
  9384  //   The filter value isn't valid. Verify the value and try again.
  9385  //
  9386  //   * InvalidKeyId
  9387  //   The query key ID isn't valid.
  9388  //
  9389  //   * InvalidNextToken
  9390  //   The specified token isn't valid.
  9391  //
  9392  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParametersByPath
  9393  func (c *SSM) GetParametersByPath(input *GetParametersByPathInput) (*GetParametersByPathOutput, error) {
  9394  	req, out := c.GetParametersByPathRequest(input)
  9395  	return out, req.Send()
  9396  }
  9397  
  9398  // GetParametersByPathWithContext is the same as GetParametersByPath with the addition of
  9399  // the ability to pass a context and additional request options.
  9400  //
  9401  // See GetParametersByPath for details on how to use this API operation.
  9402  //
  9403  // The context must be non-nil and will be used for request cancellation. If
  9404  // the context is nil a panic will occur. In the future the SDK may create
  9405  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9406  // for more information on using Contexts.
  9407  func (c *SSM) GetParametersByPathWithContext(ctx aws.Context, input *GetParametersByPathInput, opts ...request.Option) (*GetParametersByPathOutput, error) {
  9408  	req, out := c.GetParametersByPathRequest(input)
  9409  	req.SetContext(ctx)
  9410  	req.ApplyOptions(opts...)
  9411  	return out, req.Send()
  9412  }
  9413  
  9414  // GetParametersByPathPages iterates over the pages of a GetParametersByPath operation,
  9415  // calling the "fn" function with the response data for each page. To stop
  9416  // iterating, return false from the fn function.
  9417  //
  9418  // See GetParametersByPath method for more information on how to use this operation.
  9419  //
  9420  // Note: This operation can generate multiple requests to a service.
  9421  //
  9422  //    // Example iterating over at most 3 pages of a GetParametersByPath operation.
  9423  //    pageNum := 0
  9424  //    err := client.GetParametersByPathPages(params,
  9425  //        func(page *ssm.GetParametersByPathOutput, lastPage bool) bool {
  9426  //            pageNum++
  9427  //            fmt.Println(page)
  9428  //            return pageNum <= 3
  9429  //        })
  9430  //
  9431  func (c *SSM) GetParametersByPathPages(input *GetParametersByPathInput, fn func(*GetParametersByPathOutput, bool) bool) error {
  9432  	return c.GetParametersByPathPagesWithContext(aws.BackgroundContext(), input, fn)
  9433  }
  9434  
  9435  // GetParametersByPathPagesWithContext same as GetParametersByPathPages except
  9436  // it takes a Context and allows setting request options on the pages.
  9437  //
  9438  // The context must be non-nil and will be used for request cancellation. If
  9439  // the context is nil a panic will occur. In the future the SDK may create
  9440  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9441  // for more information on using Contexts.
  9442  func (c *SSM) GetParametersByPathPagesWithContext(ctx aws.Context, input *GetParametersByPathInput, fn func(*GetParametersByPathOutput, bool) bool, opts ...request.Option) error {
  9443  	p := request.Pagination{
  9444  		NewRequest: func() (*request.Request, error) {
  9445  			var inCpy *GetParametersByPathInput
  9446  			if input != nil {
  9447  				tmp := *input
  9448  				inCpy = &tmp
  9449  			}
  9450  			req, _ := c.GetParametersByPathRequest(inCpy)
  9451  			req.SetContext(ctx)
  9452  			req.ApplyOptions(opts...)
  9453  			return req, nil
  9454  		},
  9455  	}
  9456  
  9457  	for p.Next() {
  9458  		if !fn(p.Page().(*GetParametersByPathOutput), !p.HasNextPage()) {
  9459  			break
  9460  		}
  9461  	}
  9462  
  9463  	return p.Err()
  9464  }
  9465  
  9466  const opGetPatchBaseline = "GetPatchBaseline"
  9467  
  9468  // GetPatchBaselineRequest generates a "aws/request.Request" representing the
  9469  // client's request for the GetPatchBaseline operation. The "output" return
  9470  // value will be populated with the request's response once the request completes
  9471  // successfully.
  9472  //
  9473  // Use "Send" method on the returned Request to send the API call to the service.
  9474  // the "output" return value is not valid until after Send returns without error.
  9475  //
  9476  // See GetPatchBaseline for more information on using the GetPatchBaseline
  9477  // API call, and error handling.
  9478  //
  9479  // This method is useful when you want to inject custom logic or configuration
  9480  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9481  //
  9482  //
  9483  //    // Example sending a request using the GetPatchBaselineRequest method.
  9484  //    req, resp := client.GetPatchBaselineRequest(params)
  9485  //
  9486  //    err := req.Send()
  9487  //    if err == nil { // resp is now filled
  9488  //        fmt.Println(resp)
  9489  //    }
  9490  //
  9491  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetPatchBaseline
  9492  func (c *SSM) GetPatchBaselineRequest(input *GetPatchBaselineInput) (req *request.Request, output *GetPatchBaselineOutput) {
  9493  	op := &request.Operation{
  9494  		Name:       opGetPatchBaseline,
  9495  		HTTPMethod: "POST",
  9496  		HTTPPath:   "/",
  9497  	}
  9498  
  9499  	if input == nil {
  9500  		input = &GetPatchBaselineInput{}
  9501  	}
  9502  
  9503  	output = &GetPatchBaselineOutput{}
  9504  	req = c.newRequest(op, input, output)
  9505  	return
  9506  }
  9507  
  9508  // GetPatchBaseline API operation for Amazon Simple Systems Manager (SSM).
  9509  //
  9510  // Retrieves information about a patch baseline.
  9511  //
  9512  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9513  // with awserr.Error's Code and Message methods to get detailed information about
  9514  // the error.
  9515  //
  9516  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  9517  // API operation GetPatchBaseline for usage and error information.
  9518  //
  9519  // Returned Error Types:
  9520  //   * DoesNotExistException
  9521  //   Error returned when the ID specified for a resource, such as a maintenance
  9522  //   window or patch baseline, doesn't exist.
  9523  //
  9524  //   For information about resource quotas in Amazon Web Services Systems Manager,
  9525  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
  9526  //   in the Amazon Web Services General Reference.
  9527  //
  9528  //   * InvalidResourceId
  9529  //   The resource ID isn't valid. Verify that you entered the correct ID and try
  9530  //   again.
  9531  //
  9532  //   * InternalServerError
  9533  //   An error occurred on the server side.
  9534  //
  9535  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetPatchBaseline
  9536  func (c *SSM) GetPatchBaseline(input *GetPatchBaselineInput) (*GetPatchBaselineOutput, error) {
  9537  	req, out := c.GetPatchBaselineRequest(input)
  9538  	return out, req.Send()
  9539  }
  9540  
  9541  // GetPatchBaselineWithContext is the same as GetPatchBaseline with the addition of
  9542  // the ability to pass a context and additional request options.
  9543  //
  9544  // See GetPatchBaseline for details on how to use this API operation.
  9545  //
  9546  // The context must be non-nil and will be used for request cancellation. If
  9547  // the context is nil a panic will occur. In the future the SDK may create
  9548  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9549  // for more information on using Contexts.
  9550  func (c *SSM) GetPatchBaselineWithContext(ctx aws.Context, input *GetPatchBaselineInput, opts ...request.Option) (*GetPatchBaselineOutput, error) {
  9551  	req, out := c.GetPatchBaselineRequest(input)
  9552  	req.SetContext(ctx)
  9553  	req.ApplyOptions(opts...)
  9554  	return out, req.Send()
  9555  }
  9556  
  9557  const opGetPatchBaselineForPatchGroup = "GetPatchBaselineForPatchGroup"
  9558  
  9559  // GetPatchBaselineForPatchGroupRequest generates a "aws/request.Request" representing the
  9560  // client's request for the GetPatchBaselineForPatchGroup operation. The "output" return
  9561  // value will be populated with the request's response once the request completes
  9562  // successfully.
  9563  //
  9564  // Use "Send" method on the returned Request to send the API call to the service.
  9565  // the "output" return value is not valid until after Send returns without error.
  9566  //
  9567  // See GetPatchBaselineForPatchGroup for more information on using the GetPatchBaselineForPatchGroup
  9568  // API call, and error handling.
  9569  //
  9570  // This method is useful when you want to inject custom logic or configuration
  9571  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9572  //
  9573  //
  9574  //    // Example sending a request using the GetPatchBaselineForPatchGroupRequest method.
  9575  //    req, resp := client.GetPatchBaselineForPatchGroupRequest(params)
  9576  //
  9577  //    err := req.Send()
  9578  //    if err == nil { // resp is now filled
  9579  //        fmt.Println(resp)
  9580  //    }
  9581  //
  9582  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetPatchBaselineForPatchGroup
  9583  func (c *SSM) GetPatchBaselineForPatchGroupRequest(input *GetPatchBaselineForPatchGroupInput) (req *request.Request, output *GetPatchBaselineForPatchGroupOutput) {
  9584  	op := &request.Operation{
  9585  		Name:       opGetPatchBaselineForPatchGroup,
  9586  		HTTPMethod: "POST",
  9587  		HTTPPath:   "/",
  9588  	}
  9589  
  9590  	if input == nil {
  9591  		input = &GetPatchBaselineForPatchGroupInput{}
  9592  	}
  9593  
  9594  	output = &GetPatchBaselineForPatchGroupOutput{}
  9595  	req = c.newRequest(op, input, output)
  9596  	return
  9597  }
  9598  
  9599  // GetPatchBaselineForPatchGroup API operation for Amazon Simple Systems Manager (SSM).
  9600  //
  9601  // Retrieves the patch baseline that should be used for the specified patch
  9602  // group.
  9603  //
  9604  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9605  // with awserr.Error's Code and Message methods to get detailed information about
  9606  // the error.
  9607  //
  9608  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  9609  // API operation GetPatchBaselineForPatchGroup for usage and error information.
  9610  //
  9611  // Returned Error Types:
  9612  //   * InternalServerError
  9613  //   An error occurred on the server side.
  9614  //
  9615  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetPatchBaselineForPatchGroup
  9616  func (c *SSM) GetPatchBaselineForPatchGroup(input *GetPatchBaselineForPatchGroupInput) (*GetPatchBaselineForPatchGroupOutput, error) {
  9617  	req, out := c.GetPatchBaselineForPatchGroupRequest(input)
  9618  	return out, req.Send()
  9619  }
  9620  
  9621  // GetPatchBaselineForPatchGroupWithContext is the same as GetPatchBaselineForPatchGroup with the addition of
  9622  // the ability to pass a context and additional request options.
  9623  //
  9624  // See GetPatchBaselineForPatchGroup for details on how to use this API operation.
  9625  //
  9626  // The context must be non-nil and will be used for request cancellation. If
  9627  // the context is nil a panic will occur. In the future the SDK may create
  9628  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9629  // for more information on using Contexts.
  9630  func (c *SSM) GetPatchBaselineForPatchGroupWithContext(ctx aws.Context, input *GetPatchBaselineForPatchGroupInput, opts ...request.Option) (*GetPatchBaselineForPatchGroupOutput, error) {
  9631  	req, out := c.GetPatchBaselineForPatchGroupRequest(input)
  9632  	req.SetContext(ctx)
  9633  	req.ApplyOptions(opts...)
  9634  	return out, req.Send()
  9635  }
  9636  
  9637  const opGetServiceSetting = "GetServiceSetting"
  9638  
  9639  // GetServiceSettingRequest generates a "aws/request.Request" representing the
  9640  // client's request for the GetServiceSetting operation. The "output" return
  9641  // value will be populated with the request's response once the request completes
  9642  // successfully.
  9643  //
  9644  // Use "Send" method on the returned Request to send the API call to the service.
  9645  // the "output" return value is not valid until after Send returns without error.
  9646  //
  9647  // See GetServiceSetting for more information on using the GetServiceSetting
  9648  // API call, and error handling.
  9649  //
  9650  // This method is useful when you want to inject custom logic or configuration
  9651  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9652  //
  9653  //
  9654  //    // Example sending a request using the GetServiceSettingRequest method.
  9655  //    req, resp := client.GetServiceSettingRequest(params)
  9656  //
  9657  //    err := req.Send()
  9658  //    if err == nil { // resp is now filled
  9659  //        fmt.Println(resp)
  9660  //    }
  9661  //
  9662  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetServiceSetting
  9663  func (c *SSM) GetServiceSettingRequest(input *GetServiceSettingInput) (req *request.Request, output *GetServiceSettingOutput) {
  9664  	op := &request.Operation{
  9665  		Name:       opGetServiceSetting,
  9666  		HTTPMethod: "POST",
  9667  		HTTPPath:   "/",
  9668  	}
  9669  
  9670  	if input == nil {
  9671  		input = &GetServiceSettingInput{}
  9672  	}
  9673  
  9674  	output = &GetServiceSettingOutput{}
  9675  	req = c.newRequest(op, input, output)
  9676  	return
  9677  }
  9678  
  9679  // GetServiceSetting API operation for Amazon Simple Systems Manager (SSM).
  9680  //
  9681  // ServiceSetting is an account-level setting for an Amazon Web Services service.
  9682  // This setting defines how a user interacts with or uses a service or a feature
  9683  // of a service. For example, if an Amazon Web Services service charges money
  9684  // to the account based on feature or service usage, then the Amazon Web Services
  9685  // service team might create a default setting of false. This means the user
  9686  // can't use this feature unless they change the setting to true and intentionally
  9687  // opt in for a paid feature.
  9688  //
  9689  // Services map a SettingId object to a setting value. Amazon Web Services services
  9690  // teams define the default value for a SettingId. You can't create a new SettingId,
  9691  // but you can overwrite the default value if you have the ssm:UpdateServiceSetting
  9692  // permission for the setting. Use the UpdateServiceSetting API operation to
  9693  // change the default setting. Or use the ResetServiceSetting to change the
  9694  // value back to the original value defined by the Amazon Web Services service
  9695  // team.
  9696  //
  9697  // Query the current service setting for the Amazon Web Services account.
  9698  //
  9699  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9700  // with awserr.Error's Code and Message methods to get detailed information about
  9701  // the error.
  9702  //
  9703  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  9704  // API operation GetServiceSetting for usage and error information.
  9705  //
  9706  // Returned Error Types:
  9707  //   * InternalServerError
  9708  //   An error occurred on the server side.
  9709  //
  9710  //   * ServiceSettingNotFound
  9711  //   The specified service setting wasn't found. Either the service name or the
  9712  //   setting hasn't been provisioned by the Amazon Web Services service team.
  9713  //
  9714  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetServiceSetting
  9715  func (c *SSM) GetServiceSetting(input *GetServiceSettingInput) (*GetServiceSettingOutput, error) {
  9716  	req, out := c.GetServiceSettingRequest(input)
  9717  	return out, req.Send()
  9718  }
  9719  
  9720  // GetServiceSettingWithContext is the same as GetServiceSetting with the addition of
  9721  // the ability to pass a context and additional request options.
  9722  //
  9723  // See GetServiceSetting for details on how to use this API operation.
  9724  //
  9725  // The context must be non-nil and will be used for request cancellation. If
  9726  // the context is nil a panic will occur. In the future the SDK may create
  9727  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9728  // for more information on using Contexts.
  9729  func (c *SSM) GetServiceSettingWithContext(ctx aws.Context, input *GetServiceSettingInput, opts ...request.Option) (*GetServiceSettingOutput, error) {
  9730  	req, out := c.GetServiceSettingRequest(input)
  9731  	req.SetContext(ctx)
  9732  	req.ApplyOptions(opts...)
  9733  	return out, req.Send()
  9734  }
  9735  
  9736  const opLabelParameterVersion = "LabelParameterVersion"
  9737  
  9738  // LabelParameterVersionRequest generates a "aws/request.Request" representing the
  9739  // client's request for the LabelParameterVersion operation. The "output" return
  9740  // value will be populated with the request's response once the request completes
  9741  // successfully.
  9742  //
  9743  // Use "Send" method on the returned Request to send the API call to the service.
  9744  // the "output" return value is not valid until after Send returns without error.
  9745  //
  9746  // See LabelParameterVersion for more information on using the LabelParameterVersion
  9747  // API call, and error handling.
  9748  //
  9749  // This method is useful when you want to inject custom logic or configuration
  9750  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9751  //
  9752  //
  9753  //    // Example sending a request using the LabelParameterVersionRequest method.
  9754  //    req, resp := client.LabelParameterVersionRequest(params)
  9755  //
  9756  //    err := req.Send()
  9757  //    if err == nil { // resp is now filled
  9758  //        fmt.Println(resp)
  9759  //    }
  9760  //
  9761  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/LabelParameterVersion
  9762  func (c *SSM) LabelParameterVersionRequest(input *LabelParameterVersionInput) (req *request.Request, output *LabelParameterVersionOutput) {
  9763  	op := &request.Operation{
  9764  		Name:       opLabelParameterVersion,
  9765  		HTTPMethod: "POST",
  9766  		HTTPPath:   "/",
  9767  	}
  9768  
  9769  	if input == nil {
  9770  		input = &LabelParameterVersionInput{}
  9771  	}
  9772  
  9773  	output = &LabelParameterVersionOutput{}
  9774  	req = c.newRequest(op, input, output)
  9775  	return
  9776  }
  9777  
  9778  // LabelParameterVersion API operation for Amazon Simple Systems Manager (SSM).
  9779  //
  9780  // A parameter label is a user-defined alias to help you manage different versions
  9781  // of a parameter. When you modify a parameter, Amazon Web Services Systems
  9782  // Manager automatically saves a new version and increments the version number
  9783  // by one. A label can help you remember the purpose of a parameter when there
  9784  // are multiple versions.
  9785  //
  9786  // Parameter labels have the following requirements and restrictions.
  9787  //
  9788  //    * A version of a parameter can have a maximum of 10 labels.
  9789  //
  9790  //    * You can't attach the same label to different versions of the same parameter.
  9791  //    For example, if version 1 has the label Production, then you can't attach
  9792  //    Production to version 2.
  9793  //
  9794  //    * You can move a label from one version of a parameter to another.
  9795  //
  9796  //    * You can't create a label when you create a new parameter. You must attach
  9797  //    a label to a specific version of a parameter.
  9798  //
  9799  //    * If you no longer want to use a parameter label, then you can either
  9800  //    delete it or move it to a different version of a parameter.
  9801  //
  9802  //    * A label can have a maximum of 100 characters.
  9803  //
  9804  //    * Labels can contain letters (case sensitive), numbers, periods (.), hyphens
  9805  //    (-), or underscores (_).
  9806  //
  9807  //    * Labels can't begin with a number, "aws" or "ssm" (not case sensitive).
  9808  //    If a label fails to meet these requirements, then the label isn't associated
  9809  //    with a parameter and the system displays it in the list of InvalidLabels.
  9810  //
  9811  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9812  // with awserr.Error's Code and Message methods to get detailed information about
  9813  // the error.
  9814  //
  9815  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  9816  // API operation LabelParameterVersion for usage and error information.
  9817  //
  9818  // Returned Error Types:
  9819  //   * InternalServerError
  9820  //   An error occurred on the server side.
  9821  //
  9822  //   * TooManyUpdates
  9823  //   There are concurrent updates for a resource that supports one update at a
  9824  //   time.
  9825  //
  9826  //   * ParameterNotFound
  9827  //   The parameter couldn't be found. Verify the name and try again.
  9828  //
  9829  //   * ParameterVersionNotFound
  9830  //   The specified parameter version wasn't found. Verify the parameter name and
  9831  //   version, and try again.
  9832  //
  9833  //   * ParameterVersionLabelLimitExceeded
  9834  //   A parameter version can have a maximum of ten labels.
  9835  //
  9836  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/LabelParameterVersion
  9837  func (c *SSM) LabelParameterVersion(input *LabelParameterVersionInput) (*LabelParameterVersionOutput, error) {
  9838  	req, out := c.LabelParameterVersionRequest(input)
  9839  	return out, req.Send()
  9840  }
  9841  
  9842  // LabelParameterVersionWithContext is the same as LabelParameterVersion with the addition of
  9843  // the ability to pass a context and additional request options.
  9844  //
  9845  // See LabelParameterVersion for details on how to use this API operation.
  9846  //
  9847  // The context must be non-nil and will be used for request cancellation. If
  9848  // the context is nil a panic will occur. In the future the SDK may create
  9849  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9850  // for more information on using Contexts.
  9851  func (c *SSM) LabelParameterVersionWithContext(ctx aws.Context, input *LabelParameterVersionInput, opts ...request.Option) (*LabelParameterVersionOutput, error) {
  9852  	req, out := c.LabelParameterVersionRequest(input)
  9853  	req.SetContext(ctx)
  9854  	req.ApplyOptions(opts...)
  9855  	return out, req.Send()
  9856  }
  9857  
  9858  const opListAssociationVersions = "ListAssociationVersions"
  9859  
  9860  // ListAssociationVersionsRequest generates a "aws/request.Request" representing the
  9861  // client's request for the ListAssociationVersions operation. The "output" return
  9862  // value will be populated with the request's response once the request completes
  9863  // successfully.
  9864  //
  9865  // Use "Send" method on the returned Request to send the API call to the service.
  9866  // the "output" return value is not valid until after Send returns without error.
  9867  //
  9868  // See ListAssociationVersions for more information on using the ListAssociationVersions
  9869  // API call, and error handling.
  9870  //
  9871  // This method is useful when you want to inject custom logic or configuration
  9872  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9873  //
  9874  //
  9875  //    // Example sending a request using the ListAssociationVersionsRequest method.
  9876  //    req, resp := client.ListAssociationVersionsRequest(params)
  9877  //
  9878  //    err := req.Send()
  9879  //    if err == nil { // resp is now filled
  9880  //        fmt.Println(resp)
  9881  //    }
  9882  //
  9883  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListAssociationVersions
  9884  func (c *SSM) ListAssociationVersionsRequest(input *ListAssociationVersionsInput) (req *request.Request, output *ListAssociationVersionsOutput) {
  9885  	op := &request.Operation{
  9886  		Name:       opListAssociationVersions,
  9887  		HTTPMethod: "POST",
  9888  		HTTPPath:   "/",
  9889  		Paginator: &request.Paginator{
  9890  			InputTokens:     []string{"NextToken"},
  9891  			OutputTokens:    []string{"NextToken"},
  9892  			LimitToken:      "MaxResults",
  9893  			TruncationToken: "",
  9894  		},
  9895  	}
  9896  
  9897  	if input == nil {
  9898  		input = &ListAssociationVersionsInput{}
  9899  	}
  9900  
  9901  	output = &ListAssociationVersionsOutput{}
  9902  	req = c.newRequest(op, input, output)
  9903  	return
  9904  }
  9905  
  9906  // ListAssociationVersions API operation for Amazon Simple Systems Manager (SSM).
  9907  //
  9908  // Retrieves all versions of an association for a specific association ID.
  9909  //
  9910  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9911  // with awserr.Error's Code and Message methods to get detailed information about
  9912  // the error.
  9913  //
  9914  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
  9915  // API operation ListAssociationVersions for usage and error information.
  9916  //
  9917  // Returned Error Types:
  9918  //   * InternalServerError
  9919  //   An error occurred on the server side.
  9920  //
  9921  //   * InvalidNextToken
  9922  //   The specified token isn't valid.
  9923  //
  9924  //   * AssociationDoesNotExist
  9925  //   The specified association doesn't exist.
  9926  //
  9927  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListAssociationVersions
  9928  func (c *SSM) ListAssociationVersions(input *ListAssociationVersionsInput) (*ListAssociationVersionsOutput, error) {
  9929  	req, out := c.ListAssociationVersionsRequest(input)
  9930  	return out, req.Send()
  9931  }
  9932  
  9933  // ListAssociationVersionsWithContext is the same as ListAssociationVersions with the addition of
  9934  // the ability to pass a context and additional request options.
  9935  //
  9936  // See ListAssociationVersions for details on how to use this API operation.
  9937  //
  9938  // The context must be non-nil and will be used for request cancellation. If
  9939  // the context is nil a panic will occur. In the future the SDK may create
  9940  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9941  // for more information on using Contexts.
  9942  func (c *SSM) ListAssociationVersionsWithContext(ctx aws.Context, input *ListAssociationVersionsInput, opts ...request.Option) (*ListAssociationVersionsOutput, error) {
  9943  	req, out := c.ListAssociationVersionsRequest(input)
  9944  	req.SetContext(ctx)
  9945  	req.ApplyOptions(opts...)
  9946  	return out, req.Send()
  9947  }
  9948  
  9949  // ListAssociationVersionsPages iterates over the pages of a ListAssociationVersions operation,
  9950  // calling the "fn" function with the response data for each page. To stop
  9951  // iterating, return false from the fn function.
  9952  //
  9953  // See ListAssociationVersions method for more information on how to use this operation.
  9954  //
  9955  // Note: This operation can generate multiple requests to a service.
  9956  //
  9957  //    // Example iterating over at most 3 pages of a ListAssociationVersions operation.
  9958  //    pageNum := 0
  9959  //    err := client.ListAssociationVersionsPages(params,
  9960  //        func(page *ssm.ListAssociationVersionsOutput, lastPage bool) bool {
  9961  //            pageNum++
  9962  //            fmt.Println(page)
  9963  //            return pageNum <= 3
  9964  //        })
  9965  //
  9966  func (c *SSM) ListAssociationVersionsPages(input *ListAssociationVersionsInput, fn func(*ListAssociationVersionsOutput, bool) bool) error {
  9967  	return c.ListAssociationVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
  9968  }
  9969  
  9970  // ListAssociationVersionsPagesWithContext same as ListAssociationVersionsPages except
  9971  // it takes a Context and allows setting request options on the pages.
  9972  //
  9973  // The context must be non-nil and will be used for request cancellation. If
  9974  // the context is nil a panic will occur. In the future the SDK may create
  9975  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9976  // for more information on using Contexts.
  9977  func (c *SSM) ListAssociationVersionsPagesWithContext(ctx aws.Context, input *ListAssociationVersionsInput, fn func(*ListAssociationVersionsOutput, bool) bool, opts ...request.Option) error {
  9978  	p := request.Pagination{
  9979  		NewRequest: func() (*request.Request, error) {
  9980  			var inCpy *ListAssociationVersionsInput
  9981  			if input != nil {
  9982  				tmp := *input
  9983  				inCpy = &tmp
  9984  			}
  9985  			req, _ := c.ListAssociationVersionsRequest(inCpy)
  9986  			req.SetContext(ctx)
  9987  			req.ApplyOptions(opts...)
  9988  			return req, nil
  9989  		},
  9990  	}
  9991  
  9992  	for p.Next() {
  9993  		if !fn(p.Page().(*ListAssociationVersionsOutput), !p.HasNextPage()) {
  9994  			break
  9995  		}
  9996  	}
  9997  
  9998  	return p.Err()
  9999  }
 10000  
 10001  const opListAssociations = "ListAssociations"
 10002  
 10003  // ListAssociationsRequest generates a "aws/request.Request" representing the
 10004  // client's request for the ListAssociations operation. The "output" return
 10005  // value will be populated with the request's response once the request completes
 10006  // successfully.
 10007  //
 10008  // Use "Send" method on the returned Request to send the API call to the service.
 10009  // the "output" return value is not valid until after Send returns without error.
 10010  //
 10011  // See ListAssociations for more information on using the ListAssociations
 10012  // API call, and error handling.
 10013  //
 10014  // This method is useful when you want to inject custom logic or configuration
 10015  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 10016  //
 10017  //
 10018  //    // Example sending a request using the ListAssociationsRequest method.
 10019  //    req, resp := client.ListAssociationsRequest(params)
 10020  //
 10021  //    err := req.Send()
 10022  //    if err == nil { // resp is now filled
 10023  //        fmt.Println(resp)
 10024  //    }
 10025  //
 10026  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListAssociations
 10027  func (c *SSM) ListAssociationsRequest(input *ListAssociationsInput) (req *request.Request, output *ListAssociationsOutput) {
 10028  	op := &request.Operation{
 10029  		Name:       opListAssociations,
 10030  		HTTPMethod: "POST",
 10031  		HTTPPath:   "/",
 10032  		Paginator: &request.Paginator{
 10033  			InputTokens:     []string{"NextToken"},
 10034  			OutputTokens:    []string{"NextToken"},
 10035  			LimitToken:      "MaxResults",
 10036  			TruncationToken: "",
 10037  		},
 10038  	}
 10039  
 10040  	if input == nil {
 10041  		input = &ListAssociationsInput{}
 10042  	}
 10043  
 10044  	output = &ListAssociationsOutput{}
 10045  	req = c.newRequest(op, input, output)
 10046  	return
 10047  }
 10048  
 10049  // ListAssociations API operation for Amazon Simple Systems Manager (SSM).
 10050  //
 10051  // Returns all State Manager associations in the current Amazon Web Services
 10052  // account and Amazon Web Services Region. You can limit the results to a specific
 10053  // State Manager association document or instance by specifying a filter. State
 10054  // Manager is a capability of Amazon Web Services Systems Manager.
 10055  //
 10056  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 10057  // with awserr.Error's Code and Message methods to get detailed information about
 10058  // the error.
 10059  //
 10060  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 10061  // API operation ListAssociations for usage and error information.
 10062  //
 10063  // Returned Error Types:
 10064  //   * InternalServerError
 10065  //   An error occurred on the server side.
 10066  //
 10067  //   * InvalidNextToken
 10068  //   The specified token isn't valid.
 10069  //
 10070  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListAssociations
 10071  func (c *SSM) ListAssociations(input *ListAssociationsInput) (*ListAssociationsOutput, error) {
 10072  	req, out := c.ListAssociationsRequest(input)
 10073  	return out, req.Send()
 10074  }
 10075  
 10076  // ListAssociationsWithContext is the same as ListAssociations with the addition of
 10077  // the ability to pass a context and additional request options.
 10078  //
 10079  // See ListAssociations for details on how to use this API operation.
 10080  //
 10081  // The context must be non-nil and will be used for request cancellation. If
 10082  // the context is nil a panic will occur. In the future the SDK may create
 10083  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10084  // for more information on using Contexts.
 10085  func (c *SSM) ListAssociationsWithContext(ctx aws.Context, input *ListAssociationsInput, opts ...request.Option) (*ListAssociationsOutput, error) {
 10086  	req, out := c.ListAssociationsRequest(input)
 10087  	req.SetContext(ctx)
 10088  	req.ApplyOptions(opts...)
 10089  	return out, req.Send()
 10090  }
 10091  
 10092  // ListAssociationsPages iterates over the pages of a ListAssociations operation,
 10093  // calling the "fn" function with the response data for each page. To stop
 10094  // iterating, return false from the fn function.
 10095  //
 10096  // See ListAssociations method for more information on how to use this operation.
 10097  //
 10098  // Note: This operation can generate multiple requests to a service.
 10099  //
 10100  //    // Example iterating over at most 3 pages of a ListAssociations operation.
 10101  //    pageNum := 0
 10102  //    err := client.ListAssociationsPages(params,
 10103  //        func(page *ssm.ListAssociationsOutput, lastPage bool) bool {
 10104  //            pageNum++
 10105  //            fmt.Println(page)
 10106  //            return pageNum <= 3
 10107  //        })
 10108  //
 10109  func (c *SSM) ListAssociationsPages(input *ListAssociationsInput, fn func(*ListAssociationsOutput, bool) bool) error {
 10110  	return c.ListAssociationsPagesWithContext(aws.BackgroundContext(), input, fn)
 10111  }
 10112  
 10113  // ListAssociationsPagesWithContext same as ListAssociationsPages except
 10114  // it takes a Context and allows setting request options on the pages.
 10115  //
 10116  // The context must be non-nil and will be used for request cancellation. If
 10117  // the context is nil a panic will occur. In the future the SDK may create
 10118  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10119  // for more information on using Contexts.
 10120  func (c *SSM) ListAssociationsPagesWithContext(ctx aws.Context, input *ListAssociationsInput, fn func(*ListAssociationsOutput, bool) bool, opts ...request.Option) error {
 10121  	p := request.Pagination{
 10122  		NewRequest: func() (*request.Request, error) {
 10123  			var inCpy *ListAssociationsInput
 10124  			if input != nil {
 10125  				tmp := *input
 10126  				inCpy = &tmp
 10127  			}
 10128  			req, _ := c.ListAssociationsRequest(inCpy)
 10129  			req.SetContext(ctx)
 10130  			req.ApplyOptions(opts...)
 10131  			return req, nil
 10132  		},
 10133  	}
 10134  
 10135  	for p.Next() {
 10136  		if !fn(p.Page().(*ListAssociationsOutput), !p.HasNextPage()) {
 10137  			break
 10138  		}
 10139  	}
 10140  
 10141  	return p.Err()
 10142  }
 10143  
 10144  const opListCommandInvocations = "ListCommandInvocations"
 10145  
 10146  // ListCommandInvocationsRequest generates a "aws/request.Request" representing the
 10147  // client's request for the ListCommandInvocations operation. The "output" return
 10148  // value will be populated with the request's response once the request completes
 10149  // successfully.
 10150  //
 10151  // Use "Send" method on the returned Request to send the API call to the service.
 10152  // the "output" return value is not valid until after Send returns without error.
 10153  //
 10154  // See ListCommandInvocations for more information on using the ListCommandInvocations
 10155  // API call, and error handling.
 10156  //
 10157  // This method is useful when you want to inject custom logic or configuration
 10158  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 10159  //
 10160  //
 10161  //    // Example sending a request using the ListCommandInvocationsRequest method.
 10162  //    req, resp := client.ListCommandInvocationsRequest(params)
 10163  //
 10164  //    err := req.Send()
 10165  //    if err == nil { // resp is now filled
 10166  //        fmt.Println(resp)
 10167  //    }
 10168  //
 10169  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListCommandInvocations
 10170  func (c *SSM) ListCommandInvocationsRequest(input *ListCommandInvocationsInput) (req *request.Request, output *ListCommandInvocationsOutput) {
 10171  	op := &request.Operation{
 10172  		Name:       opListCommandInvocations,
 10173  		HTTPMethod: "POST",
 10174  		HTTPPath:   "/",
 10175  		Paginator: &request.Paginator{
 10176  			InputTokens:     []string{"NextToken"},
 10177  			OutputTokens:    []string{"NextToken"},
 10178  			LimitToken:      "MaxResults",
 10179  			TruncationToken: "",
 10180  		},
 10181  	}
 10182  
 10183  	if input == nil {
 10184  		input = &ListCommandInvocationsInput{}
 10185  	}
 10186  
 10187  	output = &ListCommandInvocationsOutput{}
 10188  	req = c.newRequest(op, input, output)
 10189  	return
 10190  }
 10191  
 10192  // ListCommandInvocations API operation for Amazon Simple Systems Manager (SSM).
 10193  //
 10194  // An invocation is copy of a command sent to a specific instance. A command
 10195  // can apply to one or more instances. A command invocation applies to one instance.
 10196  // For example, if a user runs SendCommand against three instances, then a command
 10197  // invocation is created for each requested instance ID. ListCommandInvocations
 10198  // provide status about command execution.
 10199  //
 10200  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 10201  // with awserr.Error's Code and Message methods to get detailed information about
 10202  // the error.
 10203  //
 10204  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 10205  // API operation ListCommandInvocations for usage and error information.
 10206  //
 10207  // Returned Error Types:
 10208  //   * InternalServerError
 10209  //   An error occurred on the server side.
 10210  //
 10211  //   * InvalidCommandId
 10212  //   The specified command ID isn't valid. Verify the ID and try again.
 10213  //
 10214  //   * InvalidInstanceId
 10215  //   The following problems can cause this exception:
 10216  //
 10217  //      * You don't have permission to access the instance.
 10218  //
 10219  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
 10220  //      Verify that SSM Agent is running.
 10221  //
 10222  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
 10223  //      Agent.
 10224  //
 10225  //      * The instance isn't in valid state. Valid states are: Running, Pending,
 10226  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
 10227  //
 10228  //   * InvalidFilterKey
 10229  //   The specified key isn't valid.
 10230  //
 10231  //   * InvalidNextToken
 10232  //   The specified token isn't valid.
 10233  //
 10234  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListCommandInvocations
 10235  func (c *SSM) ListCommandInvocations(input *ListCommandInvocationsInput) (*ListCommandInvocationsOutput, error) {
 10236  	req, out := c.ListCommandInvocationsRequest(input)
 10237  	return out, req.Send()
 10238  }
 10239  
 10240  // ListCommandInvocationsWithContext is the same as ListCommandInvocations with the addition of
 10241  // the ability to pass a context and additional request options.
 10242  //
 10243  // See ListCommandInvocations for details on how to use this API operation.
 10244  //
 10245  // The context must be non-nil and will be used for request cancellation. If
 10246  // the context is nil a panic will occur. In the future the SDK may create
 10247  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10248  // for more information on using Contexts.
 10249  func (c *SSM) ListCommandInvocationsWithContext(ctx aws.Context, input *ListCommandInvocationsInput, opts ...request.Option) (*ListCommandInvocationsOutput, error) {
 10250  	req, out := c.ListCommandInvocationsRequest(input)
 10251  	req.SetContext(ctx)
 10252  	req.ApplyOptions(opts...)
 10253  	return out, req.Send()
 10254  }
 10255  
 10256  // ListCommandInvocationsPages iterates over the pages of a ListCommandInvocations operation,
 10257  // calling the "fn" function with the response data for each page. To stop
 10258  // iterating, return false from the fn function.
 10259  //
 10260  // See ListCommandInvocations method for more information on how to use this operation.
 10261  //
 10262  // Note: This operation can generate multiple requests to a service.
 10263  //
 10264  //    // Example iterating over at most 3 pages of a ListCommandInvocations operation.
 10265  //    pageNum := 0
 10266  //    err := client.ListCommandInvocationsPages(params,
 10267  //        func(page *ssm.ListCommandInvocationsOutput, lastPage bool) bool {
 10268  //            pageNum++
 10269  //            fmt.Println(page)
 10270  //            return pageNum <= 3
 10271  //        })
 10272  //
 10273  func (c *SSM) ListCommandInvocationsPages(input *ListCommandInvocationsInput, fn func(*ListCommandInvocationsOutput, bool) bool) error {
 10274  	return c.ListCommandInvocationsPagesWithContext(aws.BackgroundContext(), input, fn)
 10275  }
 10276  
 10277  // ListCommandInvocationsPagesWithContext same as ListCommandInvocationsPages except
 10278  // it takes a Context and allows setting request options on the pages.
 10279  //
 10280  // The context must be non-nil and will be used for request cancellation. If
 10281  // the context is nil a panic will occur. In the future the SDK may create
 10282  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10283  // for more information on using Contexts.
 10284  func (c *SSM) ListCommandInvocationsPagesWithContext(ctx aws.Context, input *ListCommandInvocationsInput, fn func(*ListCommandInvocationsOutput, bool) bool, opts ...request.Option) error {
 10285  	p := request.Pagination{
 10286  		NewRequest: func() (*request.Request, error) {
 10287  			var inCpy *ListCommandInvocationsInput
 10288  			if input != nil {
 10289  				tmp := *input
 10290  				inCpy = &tmp
 10291  			}
 10292  			req, _ := c.ListCommandInvocationsRequest(inCpy)
 10293  			req.SetContext(ctx)
 10294  			req.ApplyOptions(opts...)
 10295  			return req, nil
 10296  		},
 10297  	}
 10298  
 10299  	for p.Next() {
 10300  		if !fn(p.Page().(*ListCommandInvocationsOutput), !p.HasNextPage()) {
 10301  			break
 10302  		}
 10303  	}
 10304  
 10305  	return p.Err()
 10306  }
 10307  
 10308  const opListCommands = "ListCommands"
 10309  
 10310  // ListCommandsRequest generates a "aws/request.Request" representing the
 10311  // client's request for the ListCommands operation. The "output" return
 10312  // value will be populated with the request's response once the request completes
 10313  // successfully.
 10314  //
 10315  // Use "Send" method on the returned Request to send the API call to the service.
 10316  // the "output" return value is not valid until after Send returns without error.
 10317  //
 10318  // See ListCommands for more information on using the ListCommands
 10319  // API call, and error handling.
 10320  //
 10321  // This method is useful when you want to inject custom logic or configuration
 10322  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 10323  //
 10324  //
 10325  //    // Example sending a request using the ListCommandsRequest method.
 10326  //    req, resp := client.ListCommandsRequest(params)
 10327  //
 10328  //    err := req.Send()
 10329  //    if err == nil { // resp is now filled
 10330  //        fmt.Println(resp)
 10331  //    }
 10332  //
 10333  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListCommands
 10334  func (c *SSM) ListCommandsRequest(input *ListCommandsInput) (req *request.Request, output *ListCommandsOutput) {
 10335  	op := &request.Operation{
 10336  		Name:       opListCommands,
 10337  		HTTPMethod: "POST",
 10338  		HTTPPath:   "/",
 10339  		Paginator: &request.Paginator{
 10340  			InputTokens:     []string{"NextToken"},
 10341  			OutputTokens:    []string{"NextToken"},
 10342  			LimitToken:      "MaxResults",
 10343  			TruncationToken: "",
 10344  		},
 10345  	}
 10346  
 10347  	if input == nil {
 10348  		input = &ListCommandsInput{}
 10349  	}
 10350  
 10351  	output = &ListCommandsOutput{}
 10352  	req = c.newRequest(op, input, output)
 10353  	return
 10354  }
 10355  
 10356  // ListCommands API operation for Amazon Simple Systems Manager (SSM).
 10357  //
 10358  // Lists the commands requested by users of the Amazon Web Services account.
 10359  //
 10360  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 10361  // with awserr.Error's Code and Message methods to get detailed information about
 10362  // the error.
 10363  //
 10364  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 10365  // API operation ListCommands for usage and error information.
 10366  //
 10367  // Returned Error Types:
 10368  //   * InternalServerError
 10369  //   An error occurred on the server side.
 10370  //
 10371  //   * InvalidCommandId
 10372  //   The specified command ID isn't valid. Verify the ID and try again.
 10373  //
 10374  //   * InvalidInstanceId
 10375  //   The following problems can cause this exception:
 10376  //
 10377  //      * You don't have permission to access the instance.
 10378  //
 10379  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
 10380  //      Verify that SSM Agent is running.
 10381  //
 10382  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
 10383  //      Agent.
 10384  //
 10385  //      * The instance isn't in valid state. Valid states are: Running, Pending,
 10386  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
 10387  //
 10388  //   * InvalidFilterKey
 10389  //   The specified key isn't valid.
 10390  //
 10391  //   * InvalidNextToken
 10392  //   The specified token isn't valid.
 10393  //
 10394  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListCommands
 10395  func (c *SSM) ListCommands(input *ListCommandsInput) (*ListCommandsOutput, error) {
 10396  	req, out := c.ListCommandsRequest(input)
 10397  	return out, req.Send()
 10398  }
 10399  
 10400  // ListCommandsWithContext is the same as ListCommands with the addition of
 10401  // the ability to pass a context and additional request options.
 10402  //
 10403  // See ListCommands for details on how to use this API operation.
 10404  //
 10405  // The context must be non-nil and will be used for request cancellation. If
 10406  // the context is nil a panic will occur. In the future the SDK may create
 10407  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10408  // for more information on using Contexts.
 10409  func (c *SSM) ListCommandsWithContext(ctx aws.Context, input *ListCommandsInput, opts ...request.Option) (*ListCommandsOutput, error) {
 10410  	req, out := c.ListCommandsRequest(input)
 10411  	req.SetContext(ctx)
 10412  	req.ApplyOptions(opts...)
 10413  	return out, req.Send()
 10414  }
 10415  
 10416  // ListCommandsPages iterates over the pages of a ListCommands operation,
 10417  // calling the "fn" function with the response data for each page. To stop
 10418  // iterating, return false from the fn function.
 10419  //
 10420  // See ListCommands method for more information on how to use this operation.
 10421  //
 10422  // Note: This operation can generate multiple requests to a service.
 10423  //
 10424  //    // Example iterating over at most 3 pages of a ListCommands operation.
 10425  //    pageNum := 0
 10426  //    err := client.ListCommandsPages(params,
 10427  //        func(page *ssm.ListCommandsOutput, lastPage bool) bool {
 10428  //            pageNum++
 10429  //            fmt.Println(page)
 10430  //            return pageNum <= 3
 10431  //        })
 10432  //
 10433  func (c *SSM) ListCommandsPages(input *ListCommandsInput, fn func(*ListCommandsOutput, bool) bool) error {
 10434  	return c.ListCommandsPagesWithContext(aws.BackgroundContext(), input, fn)
 10435  }
 10436  
 10437  // ListCommandsPagesWithContext same as ListCommandsPages except
 10438  // it takes a Context and allows setting request options on the pages.
 10439  //
 10440  // The context must be non-nil and will be used for request cancellation. If
 10441  // the context is nil a panic will occur. In the future the SDK may create
 10442  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10443  // for more information on using Contexts.
 10444  func (c *SSM) ListCommandsPagesWithContext(ctx aws.Context, input *ListCommandsInput, fn func(*ListCommandsOutput, bool) bool, opts ...request.Option) error {
 10445  	p := request.Pagination{
 10446  		NewRequest: func() (*request.Request, error) {
 10447  			var inCpy *ListCommandsInput
 10448  			if input != nil {
 10449  				tmp := *input
 10450  				inCpy = &tmp
 10451  			}
 10452  			req, _ := c.ListCommandsRequest(inCpy)
 10453  			req.SetContext(ctx)
 10454  			req.ApplyOptions(opts...)
 10455  			return req, nil
 10456  		},
 10457  	}
 10458  
 10459  	for p.Next() {
 10460  		if !fn(p.Page().(*ListCommandsOutput), !p.HasNextPage()) {
 10461  			break
 10462  		}
 10463  	}
 10464  
 10465  	return p.Err()
 10466  }
 10467  
 10468  const opListComplianceItems = "ListComplianceItems"
 10469  
 10470  // ListComplianceItemsRequest generates a "aws/request.Request" representing the
 10471  // client's request for the ListComplianceItems operation. The "output" return
 10472  // value will be populated with the request's response once the request completes
 10473  // successfully.
 10474  //
 10475  // Use "Send" method on the returned Request to send the API call to the service.
 10476  // the "output" return value is not valid until after Send returns without error.
 10477  //
 10478  // See ListComplianceItems for more information on using the ListComplianceItems
 10479  // API call, and error handling.
 10480  //
 10481  // This method is useful when you want to inject custom logic or configuration
 10482  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 10483  //
 10484  //
 10485  //    // Example sending a request using the ListComplianceItemsRequest method.
 10486  //    req, resp := client.ListComplianceItemsRequest(params)
 10487  //
 10488  //    err := req.Send()
 10489  //    if err == nil { // resp is now filled
 10490  //        fmt.Println(resp)
 10491  //    }
 10492  //
 10493  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListComplianceItems
 10494  func (c *SSM) ListComplianceItemsRequest(input *ListComplianceItemsInput) (req *request.Request, output *ListComplianceItemsOutput) {
 10495  	op := &request.Operation{
 10496  		Name:       opListComplianceItems,
 10497  		HTTPMethod: "POST",
 10498  		HTTPPath:   "/",
 10499  		Paginator: &request.Paginator{
 10500  			InputTokens:     []string{"NextToken"},
 10501  			OutputTokens:    []string{"NextToken"},
 10502  			LimitToken:      "MaxResults",
 10503  			TruncationToken: "",
 10504  		},
 10505  	}
 10506  
 10507  	if input == nil {
 10508  		input = &ListComplianceItemsInput{}
 10509  	}
 10510  
 10511  	output = &ListComplianceItemsOutput{}
 10512  	req = c.newRequest(op, input, output)
 10513  	return
 10514  }
 10515  
 10516  // ListComplianceItems API operation for Amazon Simple Systems Manager (SSM).
 10517  //
 10518  // For a specified resource ID, this API operation returns a list of compliance
 10519  // statuses for different resource types. Currently, you can only specify one
 10520  // resource ID per call. List results depend on the criteria specified in the
 10521  // filter.
 10522  //
 10523  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 10524  // with awserr.Error's Code and Message methods to get detailed information about
 10525  // the error.
 10526  //
 10527  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 10528  // API operation ListComplianceItems for usage and error information.
 10529  //
 10530  // Returned Error Types:
 10531  //   * InvalidResourceType
 10532  //   The resource type isn't valid. For example, if you are attempting to tag
 10533  //   an instance, the instance must be a registered, managed instance.
 10534  //
 10535  //   * InvalidResourceId
 10536  //   The resource ID isn't valid. Verify that you entered the correct ID and try
 10537  //   again.
 10538  //
 10539  //   * InternalServerError
 10540  //   An error occurred on the server side.
 10541  //
 10542  //   * InvalidFilter
 10543  //   The filter name isn't valid. Verify the you entered the correct name and
 10544  //   try again.
 10545  //
 10546  //   * InvalidNextToken
 10547  //   The specified token isn't valid.
 10548  //
 10549  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListComplianceItems
 10550  func (c *SSM) ListComplianceItems(input *ListComplianceItemsInput) (*ListComplianceItemsOutput, error) {
 10551  	req, out := c.ListComplianceItemsRequest(input)
 10552  	return out, req.Send()
 10553  }
 10554  
 10555  // ListComplianceItemsWithContext is the same as ListComplianceItems with the addition of
 10556  // the ability to pass a context and additional request options.
 10557  //
 10558  // See ListComplianceItems for details on how to use this API operation.
 10559  //
 10560  // The context must be non-nil and will be used for request cancellation. If
 10561  // the context is nil a panic will occur. In the future the SDK may create
 10562  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10563  // for more information on using Contexts.
 10564  func (c *SSM) ListComplianceItemsWithContext(ctx aws.Context, input *ListComplianceItemsInput, opts ...request.Option) (*ListComplianceItemsOutput, error) {
 10565  	req, out := c.ListComplianceItemsRequest(input)
 10566  	req.SetContext(ctx)
 10567  	req.ApplyOptions(opts...)
 10568  	return out, req.Send()
 10569  }
 10570  
 10571  // ListComplianceItemsPages iterates over the pages of a ListComplianceItems operation,
 10572  // calling the "fn" function with the response data for each page. To stop
 10573  // iterating, return false from the fn function.
 10574  //
 10575  // See ListComplianceItems method for more information on how to use this operation.
 10576  //
 10577  // Note: This operation can generate multiple requests to a service.
 10578  //
 10579  //    // Example iterating over at most 3 pages of a ListComplianceItems operation.
 10580  //    pageNum := 0
 10581  //    err := client.ListComplianceItemsPages(params,
 10582  //        func(page *ssm.ListComplianceItemsOutput, lastPage bool) bool {
 10583  //            pageNum++
 10584  //            fmt.Println(page)
 10585  //            return pageNum <= 3
 10586  //        })
 10587  //
 10588  func (c *SSM) ListComplianceItemsPages(input *ListComplianceItemsInput, fn func(*ListComplianceItemsOutput, bool) bool) error {
 10589  	return c.ListComplianceItemsPagesWithContext(aws.BackgroundContext(), input, fn)
 10590  }
 10591  
 10592  // ListComplianceItemsPagesWithContext same as ListComplianceItemsPages except
 10593  // it takes a Context and allows setting request options on the pages.
 10594  //
 10595  // The context must be non-nil and will be used for request cancellation. If
 10596  // the context is nil a panic will occur. In the future the SDK may create
 10597  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10598  // for more information on using Contexts.
 10599  func (c *SSM) ListComplianceItemsPagesWithContext(ctx aws.Context, input *ListComplianceItemsInput, fn func(*ListComplianceItemsOutput, bool) bool, opts ...request.Option) error {
 10600  	p := request.Pagination{
 10601  		NewRequest: func() (*request.Request, error) {
 10602  			var inCpy *ListComplianceItemsInput
 10603  			if input != nil {
 10604  				tmp := *input
 10605  				inCpy = &tmp
 10606  			}
 10607  			req, _ := c.ListComplianceItemsRequest(inCpy)
 10608  			req.SetContext(ctx)
 10609  			req.ApplyOptions(opts...)
 10610  			return req, nil
 10611  		},
 10612  	}
 10613  
 10614  	for p.Next() {
 10615  		if !fn(p.Page().(*ListComplianceItemsOutput), !p.HasNextPage()) {
 10616  			break
 10617  		}
 10618  	}
 10619  
 10620  	return p.Err()
 10621  }
 10622  
 10623  const opListComplianceSummaries = "ListComplianceSummaries"
 10624  
 10625  // ListComplianceSummariesRequest generates a "aws/request.Request" representing the
 10626  // client's request for the ListComplianceSummaries operation. The "output" return
 10627  // value will be populated with the request's response once the request completes
 10628  // successfully.
 10629  //
 10630  // Use "Send" method on the returned Request to send the API call to the service.
 10631  // the "output" return value is not valid until after Send returns without error.
 10632  //
 10633  // See ListComplianceSummaries for more information on using the ListComplianceSummaries
 10634  // API call, and error handling.
 10635  //
 10636  // This method is useful when you want to inject custom logic or configuration
 10637  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 10638  //
 10639  //
 10640  //    // Example sending a request using the ListComplianceSummariesRequest method.
 10641  //    req, resp := client.ListComplianceSummariesRequest(params)
 10642  //
 10643  //    err := req.Send()
 10644  //    if err == nil { // resp is now filled
 10645  //        fmt.Println(resp)
 10646  //    }
 10647  //
 10648  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListComplianceSummaries
 10649  func (c *SSM) ListComplianceSummariesRequest(input *ListComplianceSummariesInput) (req *request.Request, output *ListComplianceSummariesOutput) {
 10650  	op := &request.Operation{
 10651  		Name:       opListComplianceSummaries,
 10652  		HTTPMethod: "POST",
 10653  		HTTPPath:   "/",
 10654  		Paginator: &request.Paginator{
 10655  			InputTokens:     []string{"NextToken"},
 10656  			OutputTokens:    []string{"NextToken"},
 10657  			LimitToken:      "MaxResults",
 10658  			TruncationToken: "",
 10659  		},
 10660  	}
 10661  
 10662  	if input == nil {
 10663  		input = &ListComplianceSummariesInput{}
 10664  	}
 10665  
 10666  	output = &ListComplianceSummariesOutput{}
 10667  	req = c.newRequest(op, input, output)
 10668  	return
 10669  }
 10670  
 10671  // ListComplianceSummaries API operation for Amazon Simple Systems Manager (SSM).
 10672  //
 10673  // Returns a summary count of compliant and non-compliant resources for a compliance
 10674  // type. For example, this call can return State Manager associations, patches,
 10675  // or custom compliance types according to the filter criteria that you specify.
 10676  //
 10677  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 10678  // with awserr.Error's Code and Message methods to get detailed information about
 10679  // the error.
 10680  //
 10681  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 10682  // API operation ListComplianceSummaries for usage and error information.
 10683  //
 10684  // Returned Error Types:
 10685  //   * InvalidFilter
 10686  //   The filter name isn't valid. Verify the you entered the correct name and
 10687  //   try again.
 10688  //
 10689  //   * InvalidNextToken
 10690  //   The specified token isn't valid.
 10691  //
 10692  //   * InternalServerError
 10693  //   An error occurred on the server side.
 10694  //
 10695  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListComplianceSummaries
 10696  func (c *SSM) ListComplianceSummaries(input *ListComplianceSummariesInput) (*ListComplianceSummariesOutput, error) {
 10697  	req, out := c.ListComplianceSummariesRequest(input)
 10698  	return out, req.Send()
 10699  }
 10700  
 10701  // ListComplianceSummariesWithContext is the same as ListComplianceSummaries with the addition of
 10702  // the ability to pass a context and additional request options.
 10703  //
 10704  // See ListComplianceSummaries for details on how to use this API operation.
 10705  //
 10706  // The context must be non-nil and will be used for request cancellation. If
 10707  // the context is nil a panic will occur. In the future the SDK may create
 10708  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10709  // for more information on using Contexts.
 10710  func (c *SSM) ListComplianceSummariesWithContext(ctx aws.Context, input *ListComplianceSummariesInput, opts ...request.Option) (*ListComplianceSummariesOutput, error) {
 10711  	req, out := c.ListComplianceSummariesRequest(input)
 10712  	req.SetContext(ctx)
 10713  	req.ApplyOptions(opts...)
 10714  	return out, req.Send()
 10715  }
 10716  
 10717  // ListComplianceSummariesPages iterates over the pages of a ListComplianceSummaries operation,
 10718  // calling the "fn" function with the response data for each page. To stop
 10719  // iterating, return false from the fn function.
 10720  //
 10721  // See ListComplianceSummaries method for more information on how to use this operation.
 10722  //
 10723  // Note: This operation can generate multiple requests to a service.
 10724  //
 10725  //    // Example iterating over at most 3 pages of a ListComplianceSummaries operation.
 10726  //    pageNum := 0
 10727  //    err := client.ListComplianceSummariesPages(params,
 10728  //        func(page *ssm.ListComplianceSummariesOutput, lastPage bool) bool {
 10729  //            pageNum++
 10730  //            fmt.Println(page)
 10731  //            return pageNum <= 3
 10732  //        })
 10733  //
 10734  func (c *SSM) ListComplianceSummariesPages(input *ListComplianceSummariesInput, fn func(*ListComplianceSummariesOutput, bool) bool) error {
 10735  	return c.ListComplianceSummariesPagesWithContext(aws.BackgroundContext(), input, fn)
 10736  }
 10737  
 10738  // ListComplianceSummariesPagesWithContext same as ListComplianceSummariesPages except
 10739  // it takes a Context and allows setting request options on the pages.
 10740  //
 10741  // The context must be non-nil and will be used for request cancellation. If
 10742  // the context is nil a panic will occur. In the future the SDK may create
 10743  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10744  // for more information on using Contexts.
 10745  func (c *SSM) ListComplianceSummariesPagesWithContext(ctx aws.Context, input *ListComplianceSummariesInput, fn func(*ListComplianceSummariesOutput, bool) bool, opts ...request.Option) error {
 10746  	p := request.Pagination{
 10747  		NewRequest: func() (*request.Request, error) {
 10748  			var inCpy *ListComplianceSummariesInput
 10749  			if input != nil {
 10750  				tmp := *input
 10751  				inCpy = &tmp
 10752  			}
 10753  			req, _ := c.ListComplianceSummariesRequest(inCpy)
 10754  			req.SetContext(ctx)
 10755  			req.ApplyOptions(opts...)
 10756  			return req, nil
 10757  		},
 10758  	}
 10759  
 10760  	for p.Next() {
 10761  		if !fn(p.Page().(*ListComplianceSummariesOutput), !p.HasNextPage()) {
 10762  			break
 10763  		}
 10764  	}
 10765  
 10766  	return p.Err()
 10767  }
 10768  
 10769  const opListDocumentMetadataHistory = "ListDocumentMetadataHistory"
 10770  
 10771  // ListDocumentMetadataHistoryRequest generates a "aws/request.Request" representing the
 10772  // client's request for the ListDocumentMetadataHistory operation. The "output" return
 10773  // value will be populated with the request's response once the request completes
 10774  // successfully.
 10775  //
 10776  // Use "Send" method on the returned Request to send the API call to the service.
 10777  // the "output" return value is not valid until after Send returns without error.
 10778  //
 10779  // See ListDocumentMetadataHistory for more information on using the ListDocumentMetadataHistory
 10780  // API call, and error handling.
 10781  //
 10782  // This method is useful when you want to inject custom logic or configuration
 10783  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 10784  //
 10785  //
 10786  //    // Example sending a request using the ListDocumentMetadataHistoryRequest method.
 10787  //    req, resp := client.ListDocumentMetadataHistoryRequest(params)
 10788  //
 10789  //    err := req.Send()
 10790  //    if err == nil { // resp is now filled
 10791  //        fmt.Println(resp)
 10792  //    }
 10793  //
 10794  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocumentMetadataHistory
 10795  func (c *SSM) ListDocumentMetadataHistoryRequest(input *ListDocumentMetadataHistoryInput) (req *request.Request, output *ListDocumentMetadataHistoryOutput) {
 10796  	op := &request.Operation{
 10797  		Name:       opListDocumentMetadataHistory,
 10798  		HTTPMethod: "POST",
 10799  		HTTPPath:   "/",
 10800  	}
 10801  
 10802  	if input == nil {
 10803  		input = &ListDocumentMetadataHistoryInput{}
 10804  	}
 10805  
 10806  	output = &ListDocumentMetadataHistoryOutput{}
 10807  	req = c.newRequest(op, input, output)
 10808  	return
 10809  }
 10810  
 10811  // ListDocumentMetadataHistory API operation for Amazon Simple Systems Manager (SSM).
 10812  //
 10813  // Information about approval reviews for a version of a change template in
 10814  // Change Manager.
 10815  //
 10816  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 10817  // with awserr.Error's Code and Message methods to get detailed information about
 10818  // the error.
 10819  //
 10820  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 10821  // API operation ListDocumentMetadataHistory for usage and error information.
 10822  //
 10823  // Returned Error Types:
 10824  //   * InternalServerError
 10825  //   An error occurred on the server side.
 10826  //
 10827  //   * InvalidDocument
 10828  //   The specified SSM document doesn't exist.
 10829  //
 10830  //   * InvalidDocumentVersion
 10831  //   The document version isn't valid or doesn't exist.
 10832  //
 10833  //   * InvalidNextToken
 10834  //   The specified token isn't valid.
 10835  //
 10836  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocumentMetadataHistory
 10837  func (c *SSM) ListDocumentMetadataHistory(input *ListDocumentMetadataHistoryInput) (*ListDocumentMetadataHistoryOutput, error) {
 10838  	req, out := c.ListDocumentMetadataHistoryRequest(input)
 10839  	return out, req.Send()
 10840  }
 10841  
 10842  // ListDocumentMetadataHistoryWithContext is the same as ListDocumentMetadataHistory with the addition of
 10843  // the ability to pass a context and additional request options.
 10844  //
 10845  // See ListDocumentMetadataHistory for details on how to use this API operation.
 10846  //
 10847  // The context must be non-nil and will be used for request cancellation. If
 10848  // the context is nil a panic will occur. In the future the SDK may create
 10849  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10850  // for more information on using Contexts.
 10851  func (c *SSM) ListDocumentMetadataHistoryWithContext(ctx aws.Context, input *ListDocumentMetadataHistoryInput, opts ...request.Option) (*ListDocumentMetadataHistoryOutput, error) {
 10852  	req, out := c.ListDocumentMetadataHistoryRequest(input)
 10853  	req.SetContext(ctx)
 10854  	req.ApplyOptions(opts...)
 10855  	return out, req.Send()
 10856  }
 10857  
 10858  const opListDocumentVersions = "ListDocumentVersions"
 10859  
 10860  // ListDocumentVersionsRequest generates a "aws/request.Request" representing the
 10861  // client's request for the ListDocumentVersions operation. The "output" return
 10862  // value will be populated with the request's response once the request completes
 10863  // successfully.
 10864  //
 10865  // Use "Send" method on the returned Request to send the API call to the service.
 10866  // the "output" return value is not valid until after Send returns without error.
 10867  //
 10868  // See ListDocumentVersions for more information on using the ListDocumentVersions
 10869  // API call, and error handling.
 10870  //
 10871  // This method is useful when you want to inject custom logic or configuration
 10872  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 10873  //
 10874  //
 10875  //    // Example sending a request using the ListDocumentVersionsRequest method.
 10876  //    req, resp := client.ListDocumentVersionsRequest(params)
 10877  //
 10878  //    err := req.Send()
 10879  //    if err == nil { // resp is now filled
 10880  //        fmt.Println(resp)
 10881  //    }
 10882  //
 10883  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocumentVersions
 10884  func (c *SSM) ListDocumentVersionsRequest(input *ListDocumentVersionsInput) (req *request.Request, output *ListDocumentVersionsOutput) {
 10885  	op := &request.Operation{
 10886  		Name:       opListDocumentVersions,
 10887  		HTTPMethod: "POST",
 10888  		HTTPPath:   "/",
 10889  		Paginator: &request.Paginator{
 10890  			InputTokens:     []string{"NextToken"},
 10891  			OutputTokens:    []string{"NextToken"},
 10892  			LimitToken:      "MaxResults",
 10893  			TruncationToken: "",
 10894  		},
 10895  	}
 10896  
 10897  	if input == nil {
 10898  		input = &ListDocumentVersionsInput{}
 10899  	}
 10900  
 10901  	output = &ListDocumentVersionsOutput{}
 10902  	req = c.newRequest(op, input, output)
 10903  	return
 10904  }
 10905  
 10906  // ListDocumentVersions API operation for Amazon Simple Systems Manager (SSM).
 10907  //
 10908  // List all versions for a document.
 10909  //
 10910  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 10911  // with awserr.Error's Code and Message methods to get detailed information about
 10912  // the error.
 10913  //
 10914  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 10915  // API operation ListDocumentVersions for usage and error information.
 10916  //
 10917  // Returned Error Types:
 10918  //   * InternalServerError
 10919  //   An error occurred on the server side.
 10920  //
 10921  //   * InvalidNextToken
 10922  //   The specified token isn't valid.
 10923  //
 10924  //   * InvalidDocument
 10925  //   The specified SSM document doesn't exist.
 10926  //
 10927  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocumentVersions
 10928  func (c *SSM) ListDocumentVersions(input *ListDocumentVersionsInput) (*ListDocumentVersionsOutput, error) {
 10929  	req, out := c.ListDocumentVersionsRequest(input)
 10930  	return out, req.Send()
 10931  }
 10932  
 10933  // ListDocumentVersionsWithContext is the same as ListDocumentVersions with the addition of
 10934  // the ability to pass a context and additional request options.
 10935  //
 10936  // See ListDocumentVersions for details on how to use this API operation.
 10937  //
 10938  // The context must be non-nil and will be used for request cancellation. If
 10939  // the context is nil a panic will occur. In the future the SDK may create
 10940  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10941  // for more information on using Contexts.
 10942  func (c *SSM) ListDocumentVersionsWithContext(ctx aws.Context, input *ListDocumentVersionsInput, opts ...request.Option) (*ListDocumentVersionsOutput, error) {
 10943  	req, out := c.ListDocumentVersionsRequest(input)
 10944  	req.SetContext(ctx)
 10945  	req.ApplyOptions(opts...)
 10946  	return out, req.Send()
 10947  }
 10948  
 10949  // ListDocumentVersionsPages iterates over the pages of a ListDocumentVersions operation,
 10950  // calling the "fn" function with the response data for each page. To stop
 10951  // iterating, return false from the fn function.
 10952  //
 10953  // See ListDocumentVersions method for more information on how to use this operation.
 10954  //
 10955  // Note: This operation can generate multiple requests to a service.
 10956  //
 10957  //    // Example iterating over at most 3 pages of a ListDocumentVersions operation.
 10958  //    pageNum := 0
 10959  //    err := client.ListDocumentVersionsPages(params,
 10960  //        func(page *ssm.ListDocumentVersionsOutput, lastPage bool) bool {
 10961  //            pageNum++
 10962  //            fmt.Println(page)
 10963  //            return pageNum <= 3
 10964  //        })
 10965  //
 10966  func (c *SSM) ListDocumentVersionsPages(input *ListDocumentVersionsInput, fn func(*ListDocumentVersionsOutput, bool) bool) error {
 10967  	return c.ListDocumentVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
 10968  }
 10969  
 10970  // ListDocumentVersionsPagesWithContext same as ListDocumentVersionsPages except
 10971  // it takes a Context and allows setting request options on the pages.
 10972  //
 10973  // The context must be non-nil and will be used for request cancellation. If
 10974  // the context is nil a panic will occur. In the future the SDK may create
 10975  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 10976  // for more information on using Contexts.
 10977  func (c *SSM) ListDocumentVersionsPagesWithContext(ctx aws.Context, input *ListDocumentVersionsInput, fn func(*ListDocumentVersionsOutput, bool) bool, opts ...request.Option) error {
 10978  	p := request.Pagination{
 10979  		NewRequest: func() (*request.Request, error) {
 10980  			var inCpy *ListDocumentVersionsInput
 10981  			if input != nil {
 10982  				tmp := *input
 10983  				inCpy = &tmp
 10984  			}
 10985  			req, _ := c.ListDocumentVersionsRequest(inCpy)
 10986  			req.SetContext(ctx)
 10987  			req.ApplyOptions(opts...)
 10988  			return req, nil
 10989  		},
 10990  	}
 10991  
 10992  	for p.Next() {
 10993  		if !fn(p.Page().(*ListDocumentVersionsOutput), !p.HasNextPage()) {
 10994  			break
 10995  		}
 10996  	}
 10997  
 10998  	return p.Err()
 10999  }
 11000  
 11001  const opListDocuments = "ListDocuments"
 11002  
 11003  // ListDocumentsRequest generates a "aws/request.Request" representing the
 11004  // client's request for the ListDocuments operation. The "output" return
 11005  // value will be populated with the request's response once the request completes
 11006  // successfully.
 11007  //
 11008  // Use "Send" method on the returned Request to send the API call to the service.
 11009  // the "output" return value is not valid until after Send returns without error.
 11010  //
 11011  // See ListDocuments for more information on using the ListDocuments
 11012  // API call, and error handling.
 11013  //
 11014  // This method is useful when you want to inject custom logic or configuration
 11015  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 11016  //
 11017  //
 11018  //    // Example sending a request using the ListDocumentsRequest method.
 11019  //    req, resp := client.ListDocumentsRequest(params)
 11020  //
 11021  //    err := req.Send()
 11022  //    if err == nil { // resp is now filled
 11023  //        fmt.Println(resp)
 11024  //    }
 11025  //
 11026  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocuments
 11027  func (c *SSM) ListDocumentsRequest(input *ListDocumentsInput) (req *request.Request, output *ListDocumentsOutput) {
 11028  	op := &request.Operation{
 11029  		Name:       opListDocuments,
 11030  		HTTPMethod: "POST",
 11031  		HTTPPath:   "/",
 11032  		Paginator: &request.Paginator{
 11033  			InputTokens:     []string{"NextToken"},
 11034  			OutputTokens:    []string{"NextToken"},
 11035  			LimitToken:      "MaxResults",
 11036  			TruncationToken: "",
 11037  		},
 11038  	}
 11039  
 11040  	if input == nil {
 11041  		input = &ListDocumentsInput{}
 11042  	}
 11043  
 11044  	output = &ListDocumentsOutput{}
 11045  	req = c.newRequest(op, input, output)
 11046  	return
 11047  }
 11048  
 11049  // ListDocuments API operation for Amazon Simple Systems Manager (SSM).
 11050  //
 11051  // Returns all Systems Manager (SSM) documents in the current Amazon Web Services
 11052  // account and Amazon Web Services Region. You can limit the results of this
 11053  // request by using a filter.
 11054  //
 11055  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 11056  // with awserr.Error's Code and Message methods to get detailed information about
 11057  // the error.
 11058  //
 11059  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 11060  // API operation ListDocuments for usage and error information.
 11061  //
 11062  // Returned Error Types:
 11063  //   * InternalServerError
 11064  //   An error occurred on the server side.
 11065  //
 11066  //   * InvalidNextToken
 11067  //   The specified token isn't valid.
 11068  //
 11069  //   * InvalidFilterKey
 11070  //   The specified key isn't valid.
 11071  //
 11072  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocuments
 11073  func (c *SSM) ListDocuments(input *ListDocumentsInput) (*ListDocumentsOutput, error) {
 11074  	req, out := c.ListDocumentsRequest(input)
 11075  	return out, req.Send()
 11076  }
 11077  
 11078  // ListDocumentsWithContext is the same as ListDocuments with the addition of
 11079  // the ability to pass a context and additional request options.
 11080  //
 11081  // See ListDocuments for details on how to use this API operation.
 11082  //
 11083  // The context must be non-nil and will be used for request cancellation. If
 11084  // the context is nil a panic will occur. In the future the SDK may create
 11085  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11086  // for more information on using Contexts.
 11087  func (c *SSM) ListDocumentsWithContext(ctx aws.Context, input *ListDocumentsInput, opts ...request.Option) (*ListDocumentsOutput, error) {
 11088  	req, out := c.ListDocumentsRequest(input)
 11089  	req.SetContext(ctx)
 11090  	req.ApplyOptions(opts...)
 11091  	return out, req.Send()
 11092  }
 11093  
 11094  // ListDocumentsPages iterates over the pages of a ListDocuments operation,
 11095  // calling the "fn" function with the response data for each page. To stop
 11096  // iterating, return false from the fn function.
 11097  //
 11098  // See ListDocuments method for more information on how to use this operation.
 11099  //
 11100  // Note: This operation can generate multiple requests to a service.
 11101  //
 11102  //    // Example iterating over at most 3 pages of a ListDocuments operation.
 11103  //    pageNum := 0
 11104  //    err := client.ListDocumentsPages(params,
 11105  //        func(page *ssm.ListDocumentsOutput, lastPage bool) bool {
 11106  //            pageNum++
 11107  //            fmt.Println(page)
 11108  //            return pageNum <= 3
 11109  //        })
 11110  //
 11111  func (c *SSM) ListDocumentsPages(input *ListDocumentsInput, fn func(*ListDocumentsOutput, bool) bool) error {
 11112  	return c.ListDocumentsPagesWithContext(aws.BackgroundContext(), input, fn)
 11113  }
 11114  
 11115  // ListDocumentsPagesWithContext same as ListDocumentsPages except
 11116  // it takes a Context and allows setting request options on the pages.
 11117  //
 11118  // The context must be non-nil and will be used for request cancellation. If
 11119  // the context is nil a panic will occur. In the future the SDK may create
 11120  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11121  // for more information on using Contexts.
 11122  func (c *SSM) ListDocumentsPagesWithContext(ctx aws.Context, input *ListDocumentsInput, fn func(*ListDocumentsOutput, bool) bool, opts ...request.Option) error {
 11123  	p := request.Pagination{
 11124  		NewRequest: func() (*request.Request, error) {
 11125  			var inCpy *ListDocumentsInput
 11126  			if input != nil {
 11127  				tmp := *input
 11128  				inCpy = &tmp
 11129  			}
 11130  			req, _ := c.ListDocumentsRequest(inCpy)
 11131  			req.SetContext(ctx)
 11132  			req.ApplyOptions(opts...)
 11133  			return req, nil
 11134  		},
 11135  	}
 11136  
 11137  	for p.Next() {
 11138  		if !fn(p.Page().(*ListDocumentsOutput), !p.HasNextPage()) {
 11139  			break
 11140  		}
 11141  	}
 11142  
 11143  	return p.Err()
 11144  }
 11145  
 11146  const opListInventoryEntries = "ListInventoryEntries"
 11147  
 11148  // ListInventoryEntriesRequest generates a "aws/request.Request" representing the
 11149  // client's request for the ListInventoryEntries operation. The "output" return
 11150  // value will be populated with the request's response once the request completes
 11151  // successfully.
 11152  //
 11153  // Use "Send" method on the returned Request to send the API call to the service.
 11154  // the "output" return value is not valid until after Send returns without error.
 11155  //
 11156  // See ListInventoryEntries for more information on using the ListInventoryEntries
 11157  // API call, and error handling.
 11158  //
 11159  // This method is useful when you want to inject custom logic or configuration
 11160  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 11161  //
 11162  //
 11163  //    // Example sending a request using the ListInventoryEntriesRequest method.
 11164  //    req, resp := client.ListInventoryEntriesRequest(params)
 11165  //
 11166  //    err := req.Send()
 11167  //    if err == nil { // resp is now filled
 11168  //        fmt.Println(resp)
 11169  //    }
 11170  //
 11171  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListInventoryEntries
 11172  func (c *SSM) ListInventoryEntriesRequest(input *ListInventoryEntriesInput) (req *request.Request, output *ListInventoryEntriesOutput) {
 11173  	op := &request.Operation{
 11174  		Name:       opListInventoryEntries,
 11175  		HTTPMethod: "POST",
 11176  		HTTPPath:   "/",
 11177  	}
 11178  
 11179  	if input == nil {
 11180  		input = &ListInventoryEntriesInput{}
 11181  	}
 11182  
 11183  	output = &ListInventoryEntriesOutput{}
 11184  	req = c.newRequest(op, input, output)
 11185  	return
 11186  }
 11187  
 11188  // ListInventoryEntries API operation for Amazon Simple Systems Manager (SSM).
 11189  //
 11190  // A list of inventory items returned by the request.
 11191  //
 11192  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 11193  // with awserr.Error's Code and Message methods to get detailed information about
 11194  // the error.
 11195  //
 11196  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 11197  // API operation ListInventoryEntries for usage and error information.
 11198  //
 11199  // Returned Error Types:
 11200  //   * InternalServerError
 11201  //   An error occurred on the server side.
 11202  //
 11203  //   * InvalidInstanceId
 11204  //   The following problems can cause this exception:
 11205  //
 11206  //      * You don't have permission to access the instance.
 11207  //
 11208  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
 11209  //      Verify that SSM Agent is running.
 11210  //
 11211  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
 11212  //      Agent.
 11213  //
 11214  //      * The instance isn't in valid state. Valid states are: Running, Pending,
 11215  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
 11216  //
 11217  //   * InvalidTypeNameException
 11218  //   The parameter type name isn't valid.
 11219  //
 11220  //   * InvalidFilter
 11221  //   The filter name isn't valid. Verify the you entered the correct name and
 11222  //   try again.
 11223  //
 11224  //   * InvalidNextToken
 11225  //   The specified token isn't valid.
 11226  //
 11227  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListInventoryEntries
 11228  func (c *SSM) ListInventoryEntries(input *ListInventoryEntriesInput) (*ListInventoryEntriesOutput, error) {
 11229  	req, out := c.ListInventoryEntriesRequest(input)
 11230  	return out, req.Send()
 11231  }
 11232  
 11233  // ListInventoryEntriesWithContext is the same as ListInventoryEntries with the addition of
 11234  // the ability to pass a context and additional request options.
 11235  //
 11236  // See ListInventoryEntries for details on how to use this API operation.
 11237  //
 11238  // The context must be non-nil and will be used for request cancellation. If
 11239  // the context is nil a panic will occur. In the future the SDK may create
 11240  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11241  // for more information on using Contexts.
 11242  func (c *SSM) ListInventoryEntriesWithContext(ctx aws.Context, input *ListInventoryEntriesInput, opts ...request.Option) (*ListInventoryEntriesOutput, error) {
 11243  	req, out := c.ListInventoryEntriesRequest(input)
 11244  	req.SetContext(ctx)
 11245  	req.ApplyOptions(opts...)
 11246  	return out, req.Send()
 11247  }
 11248  
 11249  const opListOpsItemEvents = "ListOpsItemEvents"
 11250  
 11251  // ListOpsItemEventsRequest generates a "aws/request.Request" representing the
 11252  // client's request for the ListOpsItemEvents operation. The "output" return
 11253  // value will be populated with the request's response once the request completes
 11254  // successfully.
 11255  //
 11256  // Use "Send" method on the returned Request to send the API call to the service.
 11257  // the "output" return value is not valid until after Send returns without error.
 11258  //
 11259  // See ListOpsItemEvents for more information on using the ListOpsItemEvents
 11260  // API call, and error handling.
 11261  //
 11262  // This method is useful when you want to inject custom logic or configuration
 11263  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 11264  //
 11265  //
 11266  //    // Example sending a request using the ListOpsItemEventsRequest method.
 11267  //    req, resp := client.ListOpsItemEventsRequest(params)
 11268  //
 11269  //    err := req.Send()
 11270  //    if err == nil { // resp is now filled
 11271  //        fmt.Println(resp)
 11272  //    }
 11273  //
 11274  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsItemEvents
 11275  func (c *SSM) ListOpsItemEventsRequest(input *ListOpsItemEventsInput) (req *request.Request, output *ListOpsItemEventsOutput) {
 11276  	op := &request.Operation{
 11277  		Name:       opListOpsItemEvents,
 11278  		HTTPMethod: "POST",
 11279  		HTTPPath:   "/",
 11280  		Paginator: &request.Paginator{
 11281  			InputTokens:     []string{"NextToken"},
 11282  			OutputTokens:    []string{"NextToken"},
 11283  			LimitToken:      "MaxResults",
 11284  			TruncationToken: "",
 11285  		},
 11286  	}
 11287  
 11288  	if input == nil {
 11289  		input = &ListOpsItemEventsInput{}
 11290  	}
 11291  
 11292  	output = &ListOpsItemEventsOutput{}
 11293  	req = c.newRequest(op, input, output)
 11294  	return
 11295  }
 11296  
 11297  // ListOpsItemEvents API operation for Amazon Simple Systems Manager (SSM).
 11298  //
 11299  // Returns a list of all OpsItem events in the current Amazon Web Services Region
 11300  // and Amazon Web Services account. You can limit the results to events associated
 11301  // with specific OpsItems by specifying a filter.
 11302  //
 11303  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 11304  // with awserr.Error's Code and Message methods to get detailed information about
 11305  // the error.
 11306  //
 11307  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 11308  // API operation ListOpsItemEvents for usage and error information.
 11309  //
 11310  // Returned Error Types:
 11311  //   * InternalServerError
 11312  //   An error occurred on the server side.
 11313  //
 11314  //   * OpsItemNotFoundException
 11315  //   The specified OpsItem ID doesn't exist. Verify the ID and try again.
 11316  //
 11317  //   * OpsItemLimitExceededException
 11318  //   The request caused OpsItems to exceed one or more quotas. For information
 11319  //   about OpsItem quotas, see What are the resource limits for OpsCenter? (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-learn-more.html#OpsCenter-learn-more-limits).
 11320  //
 11321  //   * OpsItemInvalidParameterException
 11322  //   A specified parameter argument isn't valid. Verify the available arguments
 11323  //   and try again.
 11324  //
 11325  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsItemEvents
 11326  func (c *SSM) ListOpsItemEvents(input *ListOpsItemEventsInput) (*ListOpsItemEventsOutput, error) {
 11327  	req, out := c.ListOpsItemEventsRequest(input)
 11328  	return out, req.Send()
 11329  }
 11330  
 11331  // ListOpsItemEventsWithContext is the same as ListOpsItemEvents with the addition of
 11332  // the ability to pass a context and additional request options.
 11333  //
 11334  // See ListOpsItemEvents for details on how to use this API operation.
 11335  //
 11336  // The context must be non-nil and will be used for request cancellation. If
 11337  // the context is nil a panic will occur. In the future the SDK may create
 11338  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11339  // for more information on using Contexts.
 11340  func (c *SSM) ListOpsItemEventsWithContext(ctx aws.Context, input *ListOpsItemEventsInput, opts ...request.Option) (*ListOpsItemEventsOutput, error) {
 11341  	req, out := c.ListOpsItemEventsRequest(input)
 11342  	req.SetContext(ctx)
 11343  	req.ApplyOptions(opts...)
 11344  	return out, req.Send()
 11345  }
 11346  
 11347  // ListOpsItemEventsPages iterates over the pages of a ListOpsItemEvents operation,
 11348  // calling the "fn" function with the response data for each page. To stop
 11349  // iterating, return false from the fn function.
 11350  //
 11351  // See ListOpsItemEvents method for more information on how to use this operation.
 11352  //
 11353  // Note: This operation can generate multiple requests to a service.
 11354  //
 11355  //    // Example iterating over at most 3 pages of a ListOpsItemEvents operation.
 11356  //    pageNum := 0
 11357  //    err := client.ListOpsItemEventsPages(params,
 11358  //        func(page *ssm.ListOpsItemEventsOutput, lastPage bool) bool {
 11359  //            pageNum++
 11360  //            fmt.Println(page)
 11361  //            return pageNum <= 3
 11362  //        })
 11363  //
 11364  func (c *SSM) ListOpsItemEventsPages(input *ListOpsItemEventsInput, fn func(*ListOpsItemEventsOutput, bool) bool) error {
 11365  	return c.ListOpsItemEventsPagesWithContext(aws.BackgroundContext(), input, fn)
 11366  }
 11367  
 11368  // ListOpsItemEventsPagesWithContext same as ListOpsItemEventsPages except
 11369  // it takes a Context and allows setting request options on the pages.
 11370  //
 11371  // The context must be non-nil and will be used for request cancellation. If
 11372  // the context is nil a panic will occur. In the future the SDK may create
 11373  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11374  // for more information on using Contexts.
 11375  func (c *SSM) ListOpsItemEventsPagesWithContext(ctx aws.Context, input *ListOpsItemEventsInput, fn func(*ListOpsItemEventsOutput, bool) bool, opts ...request.Option) error {
 11376  	p := request.Pagination{
 11377  		NewRequest: func() (*request.Request, error) {
 11378  			var inCpy *ListOpsItemEventsInput
 11379  			if input != nil {
 11380  				tmp := *input
 11381  				inCpy = &tmp
 11382  			}
 11383  			req, _ := c.ListOpsItemEventsRequest(inCpy)
 11384  			req.SetContext(ctx)
 11385  			req.ApplyOptions(opts...)
 11386  			return req, nil
 11387  		},
 11388  	}
 11389  
 11390  	for p.Next() {
 11391  		if !fn(p.Page().(*ListOpsItemEventsOutput), !p.HasNextPage()) {
 11392  			break
 11393  		}
 11394  	}
 11395  
 11396  	return p.Err()
 11397  }
 11398  
 11399  const opListOpsItemRelatedItems = "ListOpsItemRelatedItems"
 11400  
 11401  // ListOpsItemRelatedItemsRequest generates a "aws/request.Request" representing the
 11402  // client's request for the ListOpsItemRelatedItems operation. The "output" return
 11403  // value will be populated with the request's response once the request completes
 11404  // successfully.
 11405  //
 11406  // Use "Send" method on the returned Request to send the API call to the service.
 11407  // the "output" return value is not valid until after Send returns without error.
 11408  //
 11409  // See ListOpsItemRelatedItems for more information on using the ListOpsItemRelatedItems
 11410  // API call, and error handling.
 11411  //
 11412  // This method is useful when you want to inject custom logic or configuration
 11413  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 11414  //
 11415  //
 11416  //    // Example sending a request using the ListOpsItemRelatedItemsRequest method.
 11417  //    req, resp := client.ListOpsItemRelatedItemsRequest(params)
 11418  //
 11419  //    err := req.Send()
 11420  //    if err == nil { // resp is now filled
 11421  //        fmt.Println(resp)
 11422  //    }
 11423  //
 11424  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsItemRelatedItems
 11425  func (c *SSM) ListOpsItemRelatedItemsRequest(input *ListOpsItemRelatedItemsInput) (req *request.Request, output *ListOpsItemRelatedItemsOutput) {
 11426  	op := &request.Operation{
 11427  		Name:       opListOpsItemRelatedItems,
 11428  		HTTPMethod: "POST",
 11429  		HTTPPath:   "/",
 11430  		Paginator: &request.Paginator{
 11431  			InputTokens:     []string{"NextToken"},
 11432  			OutputTokens:    []string{"NextToken"},
 11433  			LimitToken:      "MaxResults",
 11434  			TruncationToken: "",
 11435  		},
 11436  	}
 11437  
 11438  	if input == nil {
 11439  		input = &ListOpsItemRelatedItemsInput{}
 11440  	}
 11441  
 11442  	output = &ListOpsItemRelatedItemsOutput{}
 11443  	req = c.newRequest(op, input, output)
 11444  	return
 11445  }
 11446  
 11447  // ListOpsItemRelatedItems API operation for Amazon Simple Systems Manager (SSM).
 11448  //
 11449  // Lists all related-item resources associated with a Systems Manager OpsCenter
 11450  // OpsItem. OpsCenter is a capability of Amazon Web Services Systems Manager.
 11451  //
 11452  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 11453  // with awserr.Error's Code and Message methods to get detailed information about
 11454  // the error.
 11455  //
 11456  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 11457  // API operation ListOpsItemRelatedItems for usage and error information.
 11458  //
 11459  // Returned Error Types:
 11460  //   * InternalServerError
 11461  //   An error occurred on the server side.
 11462  //
 11463  //   * OpsItemInvalidParameterException
 11464  //   A specified parameter argument isn't valid. Verify the available arguments
 11465  //   and try again.
 11466  //
 11467  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsItemRelatedItems
 11468  func (c *SSM) ListOpsItemRelatedItems(input *ListOpsItemRelatedItemsInput) (*ListOpsItemRelatedItemsOutput, error) {
 11469  	req, out := c.ListOpsItemRelatedItemsRequest(input)
 11470  	return out, req.Send()
 11471  }
 11472  
 11473  // ListOpsItemRelatedItemsWithContext is the same as ListOpsItemRelatedItems with the addition of
 11474  // the ability to pass a context and additional request options.
 11475  //
 11476  // See ListOpsItemRelatedItems for details on how to use this API operation.
 11477  //
 11478  // The context must be non-nil and will be used for request cancellation. If
 11479  // the context is nil a panic will occur. In the future the SDK may create
 11480  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11481  // for more information on using Contexts.
 11482  func (c *SSM) ListOpsItemRelatedItemsWithContext(ctx aws.Context, input *ListOpsItemRelatedItemsInput, opts ...request.Option) (*ListOpsItemRelatedItemsOutput, error) {
 11483  	req, out := c.ListOpsItemRelatedItemsRequest(input)
 11484  	req.SetContext(ctx)
 11485  	req.ApplyOptions(opts...)
 11486  	return out, req.Send()
 11487  }
 11488  
 11489  // ListOpsItemRelatedItemsPages iterates over the pages of a ListOpsItemRelatedItems operation,
 11490  // calling the "fn" function with the response data for each page. To stop
 11491  // iterating, return false from the fn function.
 11492  //
 11493  // See ListOpsItemRelatedItems method for more information on how to use this operation.
 11494  //
 11495  // Note: This operation can generate multiple requests to a service.
 11496  //
 11497  //    // Example iterating over at most 3 pages of a ListOpsItemRelatedItems operation.
 11498  //    pageNum := 0
 11499  //    err := client.ListOpsItemRelatedItemsPages(params,
 11500  //        func(page *ssm.ListOpsItemRelatedItemsOutput, lastPage bool) bool {
 11501  //            pageNum++
 11502  //            fmt.Println(page)
 11503  //            return pageNum <= 3
 11504  //        })
 11505  //
 11506  func (c *SSM) ListOpsItemRelatedItemsPages(input *ListOpsItemRelatedItemsInput, fn func(*ListOpsItemRelatedItemsOutput, bool) bool) error {
 11507  	return c.ListOpsItemRelatedItemsPagesWithContext(aws.BackgroundContext(), input, fn)
 11508  }
 11509  
 11510  // ListOpsItemRelatedItemsPagesWithContext same as ListOpsItemRelatedItemsPages except
 11511  // it takes a Context and allows setting request options on the pages.
 11512  //
 11513  // The context must be non-nil and will be used for request cancellation. If
 11514  // the context is nil a panic will occur. In the future the SDK may create
 11515  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11516  // for more information on using Contexts.
 11517  func (c *SSM) ListOpsItemRelatedItemsPagesWithContext(ctx aws.Context, input *ListOpsItemRelatedItemsInput, fn func(*ListOpsItemRelatedItemsOutput, bool) bool, opts ...request.Option) error {
 11518  	p := request.Pagination{
 11519  		NewRequest: func() (*request.Request, error) {
 11520  			var inCpy *ListOpsItemRelatedItemsInput
 11521  			if input != nil {
 11522  				tmp := *input
 11523  				inCpy = &tmp
 11524  			}
 11525  			req, _ := c.ListOpsItemRelatedItemsRequest(inCpy)
 11526  			req.SetContext(ctx)
 11527  			req.ApplyOptions(opts...)
 11528  			return req, nil
 11529  		},
 11530  	}
 11531  
 11532  	for p.Next() {
 11533  		if !fn(p.Page().(*ListOpsItemRelatedItemsOutput), !p.HasNextPage()) {
 11534  			break
 11535  		}
 11536  	}
 11537  
 11538  	return p.Err()
 11539  }
 11540  
 11541  const opListOpsMetadata = "ListOpsMetadata"
 11542  
 11543  // ListOpsMetadataRequest generates a "aws/request.Request" representing the
 11544  // client's request for the ListOpsMetadata operation. The "output" return
 11545  // value will be populated with the request's response once the request completes
 11546  // successfully.
 11547  //
 11548  // Use "Send" method on the returned Request to send the API call to the service.
 11549  // the "output" return value is not valid until after Send returns without error.
 11550  //
 11551  // See ListOpsMetadata for more information on using the ListOpsMetadata
 11552  // API call, and error handling.
 11553  //
 11554  // This method is useful when you want to inject custom logic or configuration
 11555  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 11556  //
 11557  //
 11558  //    // Example sending a request using the ListOpsMetadataRequest method.
 11559  //    req, resp := client.ListOpsMetadataRequest(params)
 11560  //
 11561  //    err := req.Send()
 11562  //    if err == nil { // resp is now filled
 11563  //        fmt.Println(resp)
 11564  //    }
 11565  //
 11566  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsMetadata
 11567  func (c *SSM) ListOpsMetadataRequest(input *ListOpsMetadataInput) (req *request.Request, output *ListOpsMetadataOutput) {
 11568  	op := &request.Operation{
 11569  		Name:       opListOpsMetadata,
 11570  		HTTPMethod: "POST",
 11571  		HTTPPath:   "/",
 11572  		Paginator: &request.Paginator{
 11573  			InputTokens:     []string{"NextToken"},
 11574  			OutputTokens:    []string{"NextToken"},
 11575  			LimitToken:      "MaxResults",
 11576  			TruncationToken: "",
 11577  		},
 11578  	}
 11579  
 11580  	if input == nil {
 11581  		input = &ListOpsMetadataInput{}
 11582  	}
 11583  
 11584  	output = &ListOpsMetadataOutput{}
 11585  	req = c.newRequest(op, input, output)
 11586  	return
 11587  }
 11588  
 11589  // ListOpsMetadata API operation for Amazon Simple Systems Manager (SSM).
 11590  //
 11591  // Amazon Web Services Systems Manager calls this API operation when displaying
 11592  // all Application Manager OpsMetadata objects or blobs.
 11593  //
 11594  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 11595  // with awserr.Error's Code and Message methods to get detailed information about
 11596  // the error.
 11597  //
 11598  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 11599  // API operation ListOpsMetadata for usage and error information.
 11600  //
 11601  // Returned Error Types:
 11602  //   * OpsMetadataInvalidArgumentException
 11603  //   One of the arguments passed is invalid.
 11604  //
 11605  //   * InternalServerError
 11606  //   An error occurred on the server side.
 11607  //
 11608  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsMetadata
 11609  func (c *SSM) ListOpsMetadata(input *ListOpsMetadataInput) (*ListOpsMetadataOutput, error) {
 11610  	req, out := c.ListOpsMetadataRequest(input)
 11611  	return out, req.Send()
 11612  }
 11613  
 11614  // ListOpsMetadataWithContext is the same as ListOpsMetadata with the addition of
 11615  // the ability to pass a context and additional request options.
 11616  //
 11617  // See ListOpsMetadata for details on how to use this API operation.
 11618  //
 11619  // The context must be non-nil and will be used for request cancellation. If
 11620  // the context is nil a panic will occur. In the future the SDK may create
 11621  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11622  // for more information on using Contexts.
 11623  func (c *SSM) ListOpsMetadataWithContext(ctx aws.Context, input *ListOpsMetadataInput, opts ...request.Option) (*ListOpsMetadataOutput, error) {
 11624  	req, out := c.ListOpsMetadataRequest(input)
 11625  	req.SetContext(ctx)
 11626  	req.ApplyOptions(opts...)
 11627  	return out, req.Send()
 11628  }
 11629  
 11630  // ListOpsMetadataPages iterates over the pages of a ListOpsMetadata operation,
 11631  // calling the "fn" function with the response data for each page. To stop
 11632  // iterating, return false from the fn function.
 11633  //
 11634  // See ListOpsMetadata method for more information on how to use this operation.
 11635  //
 11636  // Note: This operation can generate multiple requests to a service.
 11637  //
 11638  //    // Example iterating over at most 3 pages of a ListOpsMetadata operation.
 11639  //    pageNum := 0
 11640  //    err := client.ListOpsMetadataPages(params,
 11641  //        func(page *ssm.ListOpsMetadataOutput, lastPage bool) bool {
 11642  //            pageNum++
 11643  //            fmt.Println(page)
 11644  //            return pageNum <= 3
 11645  //        })
 11646  //
 11647  func (c *SSM) ListOpsMetadataPages(input *ListOpsMetadataInput, fn func(*ListOpsMetadataOutput, bool) bool) error {
 11648  	return c.ListOpsMetadataPagesWithContext(aws.BackgroundContext(), input, fn)
 11649  }
 11650  
 11651  // ListOpsMetadataPagesWithContext same as ListOpsMetadataPages except
 11652  // it takes a Context and allows setting request options on the pages.
 11653  //
 11654  // The context must be non-nil and will be used for request cancellation. If
 11655  // the context is nil a panic will occur. In the future the SDK may create
 11656  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11657  // for more information on using Contexts.
 11658  func (c *SSM) ListOpsMetadataPagesWithContext(ctx aws.Context, input *ListOpsMetadataInput, fn func(*ListOpsMetadataOutput, bool) bool, opts ...request.Option) error {
 11659  	p := request.Pagination{
 11660  		NewRequest: func() (*request.Request, error) {
 11661  			var inCpy *ListOpsMetadataInput
 11662  			if input != nil {
 11663  				tmp := *input
 11664  				inCpy = &tmp
 11665  			}
 11666  			req, _ := c.ListOpsMetadataRequest(inCpy)
 11667  			req.SetContext(ctx)
 11668  			req.ApplyOptions(opts...)
 11669  			return req, nil
 11670  		},
 11671  	}
 11672  
 11673  	for p.Next() {
 11674  		if !fn(p.Page().(*ListOpsMetadataOutput), !p.HasNextPage()) {
 11675  			break
 11676  		}
 11677  	}
 11678  
 11679  	return p.Err()
 11680  }
 11681  
 11682  const opListResourceComplianceSummaries = "ListResourceComplianceSummaries"
 11683  
 11684  // ListResourceComplianceSummariesRequest generates a "aws/request.Request" representing the
 11685  // client's request for the ListResourceComplianceSummaries operation. The "output" return
 11686  // value will be populated with the request's response once the request completes
 11687  // successfully.
 11688  //
 11689  // Use "Send" method on the returned Request to send the API call to the service.
 11690  // the "output" return value is not valid until after Send returns without error.
 11691  //
 11692  // See ListResourceComplianceSummaries for more information on using the ListResourceComplianceSummaries
 11693  // API call, and error handling.
 11694  //
 11695  // This method is useful when you want to inject custom logic or configuration
 11696  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 11697  //
 11698  //
 11699  //    // Example sending a request using the ListResourceComplianceSummariesRequest method.
 11700  //    req, resp := client.ListResourceComplianceSummariesRequest(params)
 11701  //
 11702  //    err := req.Send()
 11703  //    if err == nil { // resp is now filled
 11704  //        fmt.Println(resp)
 11705  //    }
 11706  //
 11707  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListResourceComplianceSummaries
 11708  func (c *SSM) ListResourceComplianceSummariesRequest(input *ListResourceComplianceSummariesInput) (req *request.Request, output *ListResourceComplianceSummariesOutput) {
 11709  	op := &request.Operation{
 11710  		Name:       opListResourceComplianceSummaries,
 11711  		HTTPMethod: "POST",
 11712  		HTTPPath:   "/",
 11713  		Paginator: &request.Paginator{
 11714  			InputTokens:     []string{"NextToken"},
 11715  			OutputTokens:    []string{"NextToken"},
 11716  			LimitToken:      "MaxResults",
 11717  			TruncationToken: "",
 11718  		},
 11719  	}
 11720  
 11721  	if input == nil {
 11722  		input = &ListResourceComplianceSummariesInput{}
 11723  	}
 11724  
 11725  	output = &ListResourceComplianceSummariesOutput{}
 11726  	req = c.newRequest(op, input, output)
 11727  	return
 11728  }
 11729  
 11730  // ListResourceComplianceSummaries API operation for Amazon Simple Systems Manager (SSM).
 11731  //
 11732  // Returns a resource-level summary count. The summary includes information
 11733  // about compliant and non-compliant statuses and detailed compliance-item severity
 11734  // counts, according to the filter criteria you specify.
 11735  //
 11736  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 11737  // with awserr.Error's Code and Message methods to get detailed information about
 11738  // the error.
 11739  //
 11740  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 11741  // API operation ListResourceComplianceSummaries for usage and error information.
 11742  //
 11743  // Returned Error Types:
 11744  //   * InvalidFilter
 11745  //   The filter name isn't valid. Verify the you entered the correct name and
 11746  //   try again.
 11747  //
 11748  //   * InvalidNextToken
 11749  //   The specified token isn't valid.
 11750  //
 11751  //   * InternalServerError
 11752  //   An error occurred on the server side.
 11753  //
 11754  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListResourceComplianceSummaries
 11755  func (c *SSM) ListResourceComplianceSummaries(input *ListResourceComplianceSummariesInput) (*ListResourceComplianceSummariesOutput, error) {
 11756  	req, out := c.ListResourceComplianceSummariesRequest(input)
 11757  	return out, req.Send()
 11758  }
 11759  
 11760  // ListResourceComplianceSummariesWithContext is the same as ListResourceComplianceSummaries with the addition of
 11761  // the ability to pass a context and additional request options.
 11762  //
 11763  // See ListResourceComplianceSummaries for details on how to use this API operation.
 11764  //
 11765  // The context must be non-nil and will be used for request cancellation. If
 11766  // the context is nil a panic will occur. In the future the SDK may create
 11767  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11768  // for more information on using Contexts.
 11769  func (c *SSM) ListResourceComplianceSummariesWithContext(ctx aws.Context, input *ListResourceComplianceSummariesInput, opts ...request.Option) (*ListResourceComplianceSummariesOutput, error) {
 11770  	req, out := c.ListResourceComplianceSummariesRequest(input)
 11771  	req.SetContext(ctx)
 11772  	req.ApplyOptions(opts...)
 11773  	return out, req.Send()
 11774  }
 11775  
 11776  // ListResourceComplianceSummariesPages iterates over the pages of a ListResourceComplianceSummaries operation,
 11777  // calling the "fn" function with the response data for each page. To stop
 11778  // iterating, return false from the fn function.
 11779  //
 11780  // See ListResourceComplianceSummaries method for more information on how to use this operation.
 11781  //
 11782  // Note: This operation can generate multiple requests to a service.
 11783  //
 11784  //    // Example iterating over at most 3 pages of a ListResourceComplianceSummaries operation.
 11785  //    pageNum := 0
 11786  //    err := client.ListResourceComplianceSummariesPages(params,
 11787  //        func(page *ssm.ListResourceComplianceSummariesOutput, lastPage bool) bool {
 11788  //            pageNum++
 11789  //            fmt.Println(page)
 11790  //            return pageNum <= 3
 11791  //        })
 11792  //
 11793  func (c *SSM) ListResourceComplianceSummariesPages(input *ListResourceComplianceSummariesInput, fn func(*ListResourceComplianceSummariesOutput, bool) bool) error {
 11794  	return c.ListResourceComplianceSummariesPagesWithContext(aws.BackgroundContext(), input, fn)
 11795  }
 11796  
 11797  // ListResourceComplianceSummariesPagesWithContext same as ListResourceComplianceSummariesPages except
 11798  // it takes a Context and allows setting request options on the pages.
 11799  //
 11800  // The context must be non-nil and will be used for request cancellation. If
 11801  // the context is nil a panic will occur. In the future the SDK may create
 11802  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11803  // for more information on using Contexts.
 11804  func (c *SSM) ListResourceComplianceSummariesPagesWithContext(ctx aws.Context, input *ListResourceComplianceSummariesInput, fn func(*ListResourceComplianceSummariesOutput, bool) bool, opts ...request.Option) error {
 11805  	p := request.Pagination{
 11806  		NewRequest: func() (*request.Request, error) {
 11807  			var inCpy *ListResourceComplianceSummariesInput
 11808  			if input != nil {
 11809  				tmp := *input
 11810  				inCpy = &tmp
 11811  			}
 11812  			req, _ := c.ListResourceComplianceSummariesRequest(inCpy)
 11813  			req.SetContext(ctx)
 11814  			req.ApplyOptions(opts...)
 11815  			return req, nil
 11816  		},
 11817  	}
 11818  
 11819  	for p.Next() {
 11820  		if !fn(p.Page().(*ListResourceComplianceSummariesOutput), !p.HasNextPage()) {
 11821  			break
 11822  		}
 11823  	}
 11824  
 11825  	return p.Err()
 11826  }
 11827  
 11828  const opListResourceDataSync = "ListResourceDataSync"
 11829  
 11830  // ListResourceDataSyncRequest generates a "aws/request.Request" representing the
 11831  // client's request for the ListResourceDataSync operation. The "output" return
 11832  // value will be populated with the request's response once the request completes
 11833  // successfully.
 11834  //
 11835  // Use "Send" method on the returned Request to send the API call to the service.
 11836  // the "output" return value is not valid until after Send returns without error.
 11837  //
 11838  // See ListResourceDataSync for more information on using the ListResourceDataSync
 11839  // API call, and error handling.
 11840  //
 11841  // This method is useful when you want to inject custom logic or configuration
 11842  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 11843  //
 11844  //
 11845  //    // Example sending a request using the ListResourceDataSyncRequest method.
 11846  //    req, resp := client.ListResourceDataSyncRequest(params)
 11847  //
 11848  //    err := req.Send()
 11849  //    if err == nil { // resp is now filled
 11850  //        fmt.Println(resp)
 11851  //    }
 11852  //
 11853  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListResourceDataSync
 11854  func (c *SSM) ListResourceDataSyncRequest(input *ListResourceDataSyncInput) (req *request.Request, output *ListResourceDataSyncOutput) {
 11855  	op := &request.Operation{
 11856  		Name:       opListResourceDataSync,
 11857  		HTTPMethod: "POST",
 11858  		HTTPPath:   "/",
 11859  		Paginator: &request.Paginator{
 11860  			InputTokens:     []string{"NextToken"},
 11861  			OutputTokens:    []string{"NextToken"},
 11862  			LimitToken:      "MaxResults",
 11863  			TruncationToken: "",
 11864  		},
 11865  	}
 11866  
 11867  	if input == nil {
 11868  		input = &ListResourceDataSyncInput{}
 11869  	}
 11870  
 11871  	output = &ListResourceDataSyncOutput{}
 11872  	req = c.newRequest(op, input, output)
 11873  	return
 11874  }
 11875  
 11876  // ListResourceDataSync API operation for Amazon Simple Systems Manager (SSM).
 11877  //
 11878  // Lists your resource data sync configurations. Includes information about
 11879  // the last time a sync attempted to start, the last sync status, and the last
 11880  // time a sync successfully completed.
 11881  //
 11882  // The number of sync configurations might be too large to return using a single
 11883  // call to ListResourceDataSync. You can limit the number of sync configurations
 11884  // returned by using the MaxResults parameter. To determine whether there are
 11885  // more sync configurations to list, check the value of NextToken in the output.
 11886  // If there are more sync configurations to list, you can request them by specifying
 11887  // the NextToken returned in the call to the parameter of a subsequent call.
 11888  //
 11889  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 11890  // with awserr.Error's Code and Message methods to get detailed information about
 11891  // the error.
 11892  //
 11893  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 11894  // API operation ListResourceDataSync for usage and error information.
 11895  //
 11896  // Returned Error Types:
 11897  //   * ResourceDataSyncInvalidConfigurationException
 11898  //   The specified sync configuration is invalid.
 11899  //
 11900  //   * InternalServerError
 11901  //   An error occurred on the server side.
 11902  //
 11903  //   * InvalidNextToken
 11904  //   The specified token isn't valid.
 11905  //
 11906  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListResourceDataSync
 11907  func (c *SSM) ListResourceDataSync(input *ListResourceDataSyncInput) (*ListResourceDataSyncOutput, error) {
 11908  	req, out := c.ListResourceDataSyncRequest(input)
 11909  	return out, req.Send()
 11910  }
 11911  
 11912  // ListResourceDataSyncWithContext is the same as ListResourceDataSync with the addition of
 11913  // the ability to pass a context and additional request options.
 11914  //
 11915  // See ListResourceDataSync for details on how to use this API operation.
 11916  //
 11917  // The context must be non-nil and will be used for request cancellation. If
 11918  // the context is nil a panic will occur. In the future the SDK may create
 11919  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11920  // for more information on using Contexts.
 11921  func (c *SSM) ListResourceDataSyncWithContext(ctx aws.Context, input *ListResourceDataSyncInput, opts ...request.Option) (*ListResourceDataSyncOutput, error) {
 11922  	req, out := c.ListResourceDataSyncRequest(input)
 11923  	req.SetContext(ctx)
 11924  	req.ApplyOptions(opts...)
 11925  	return out, req.Send()
 11926  }
 11927  
 11928  // ListResourceDataSyncPages iterates over the pages of a ListResourceDataSync operation,
 11929  // calling the "fn" function with the response data for each page. To stop
 11930  // iterating, return false from the fn function.
 11931  //
 11932  // See ListResourceDataSync method for more information on how to use this operation.
 11933  //
 11934  // Note: This operation can generate multiple requests to a service.
 11935  //
 11936  //    // Example iterating over at most 3 pages of a ListResourceDataSync operation.
 11937  //    pageNum := 0
 11938  //    err := client.ListResourceDataSyncPages(params,
 11939  //        func(page *ssm.ListResourceDataSyncOutput, lastPage bool) bool {
 11940  //            pageNum++
 11941  //            fmt.Println(page)
 11942  //            return pageNum <= 3
 11943  //        })
 11944  //
 11945  func (c *SSM) ListResourceDataSyncPages(input *ListResourceDataSyncInput, fn func(*ListResourceDataSyncOutput, bool) bool) error {
 11946  	return c.ListResourceDataSyncPagesWithContext(aws.BackgroundContext(), input, fn)
 11947  }
 11948  
 11949  // ListResourceDataSyncPagesWithContext same as ListResourceDataSyncPages except
 11950  // it takes a Context and allows setting request options on the pages.
 11951  //
 11952  // The context must be non-nil and will be used for request cancellation. If
 11953  // the context is nil a panic will occur. In the future the SDK may create
 11954  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 11955  // for more information on using Contexts.
 11956  func (c *SSM) ListResourceDataSyncPagesWithContext(ctx aws.Context, input *ListResourceDataSyncInput, fn func(*ListResourceDataSyncOutput, bool) bool, opts ...request.Option) error {
 11957  	p := request.Pagination{
 11958  		NewRequest: func() (*request.Request, error) {
 11959  			var inCpy *ListResourceDataSyncInput
 11960  			if input != nil {
 11961  				tmp := *input
 11962  				inCpy = &tmp
 11963  			}
 11964  			req, _ := c.ListResourceDataSyncRequest(inCpy)
 11965  			req.SetContext(ctx)
 11966  			req.ApplyOptions(opts...)
 11967  			return req, nil
 11968  		},
 11969  	}
 11970  
 11971  	for p.Next() {
 11972  		if !fn(p.Page().(*ListResourceDataSyncOutput), !p.HasNextPage()) {
 11973  			break
 11974  		}
 11975  	}
 11976  
 11977  	return p.Err()
 11978  }
 11979  
 11980  const opListTagsForResource = "ListTagsForResource"
 11981  
 11982  // ListTagsForResourceRequest generates a "aws/request.Request" representing the
 11983  // client's request for the ListTagsForResource operation. The "output" return
 11984  // value will be populated with the request's response once the request completes
 11985  // successfully.
 11986  //
 11987  // Use "Send" method on the returned Request to send the API call to the service.
 11988  // the "output" return value is not valid until after Send returns without error.
 11989  //
 11990  // See ListTagsForResource for more information on using the ListTagsForResource
 11991  // API call, and error handling.
 11992  //
 11993  // This method is useful when you want to inject custom logic or configuration
 11994  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 11995  //
 11996  //
 11997  //    // Example sending a request using the ListTagsForResourceRequest method.
 11998  //    req, resp := client.ListTagsForResourceRequest(params)
 11999  //
 12000  //    err := req.Send()
 12001  //    if err == nil { // resp is now filled
 12002  //        fmt.Println(resp)
 12003  //    }
 12004  //
 12005  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListTagsForResource
 12006  func (c *SSM) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
 12007  	op := &request.Operation{
 12008  		Name:       opListTagsForResource,
 12009  		HTTPMethod: "POST",
 12010  		HTTPPath:   "/",
 12011  	}
 12012  
 12013  	if input == nil {
 12014  		input = &ListTagsForResourceInput{}
 12015  	}
 12016  
 12017  	output = &ListTagsForResourceOutput{}
 12018  	req = c.newRequest(op, input, output)
 12019  	return
 12020  }
 12021  
 12022  // ListTagsForResource API operation for Amazon Simple Systems Manager (SSM).
 12023  //
 12024  // Returns a list of the tags assigned to the specified resource.
 12025  //
 12026  // For information about the ID format for each supported resource type, see
 12027  // AddTagsToResource.
 12028  //
 12029  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 12030  // with awserr.Error's Code and Message methods to get detailed information about
 12031  // the error.
 12032  //
 12033  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 12034  // API operation ListTagsForResource for usage and error information.
 12035  //
 12036  // Returned Error Types:
 12037  //   * InvalidResourceType
 12038  //   The resource type isn't valid. For example, if you are attempting to tag
 12039  //   an instance, the instance must be a registered, managed instance.
 12040  //
 12041  //   * InvalidResourceId
 12042  //   The resource ID isn't valid. Verify that you entered the correct ID and try
 12043  //   again.
 12044  //
 12045  //   * InternalServerError
 12046  //   An error occurred on the server side.
 12047  //
 12048  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListTagsForResource
 12049  func (c *SSM) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
 12050  	req, out := c.ListTagsForResourceRequest(input)
 12051  	return out, req.Send()
 12052  }
 12053  
 12054  // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
 12055  // the ability to pass a context and additional request options.
 12056  //
 12057  // See ListTagsForResource for details on how to use this API operation.
 12058  //
 12059  // The context must be non-nil and will be used for request cancellation. If
 12060  // the context is nil a panic will occur. In the future the SDK may create
 12061  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 12062  // for more information on using Contexts.
 12063  func (c *SSM) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
 12064  	req, out := c.ListTagsForResourceRequest(input)
 12065  	req.SetContext(ctx)
 12066  	req.ApplyOptions(opts...)
 12067  	return out, req.Send()
 12068  }
 12069  
 12070  const opModifyDocumentPermission = "ModifyDocumentPermission"
 12071  
 12072  // ModifyDocumentPermissionRequest generates a "aws/request.Request" representing the
 12073  // client's request for the ModifyDocumentPermission operation. The "output" return
 12074  // value will be populated with the request's response once the request completes
 12075  // successfully.
 12076  //
 12077  // Use "Send" method on the returned Request to send the API call to the service.
 12078  // the "output" return value is not valid until after Send returns without error.
 12079  //
 12080  // See ModifyDocumentPermission for more information on using the ModifyDocumentPermission
 12081  // API call, and error handling.
 12082  //
 12083  // This method is useful when you want to inject custom logic or configuration
 12084  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 12085  //
 12086  //
 12087  //    // Example sending a request using the ModifyDocumentPermissionRequest method.
 12088  //    req, resp := client.ModifyDocumentPermissionRequest(params)
 12089  //
 12090  //    err := req.Send()
 12091  //    if err == nil { // resp is now filled
 12092  //        fmt.Println(resp)
 12093  //    }
 12094  //
 12095  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ModifyDocumentPermission
 12096  func (c *SSM) ModifyDocumentPermissionRequest(input *ModifyDocumentPermissionInput) (req *request.Request, output *ModifyDocumentPermissionOutput) {
 12097  	op := &request.Operation{
 12098  		Name:       opModifyDocumentPermission,
 12099  		HTTPMethod: "POST",
 12100  		HTTPPath:   "/",
 12101  	}
 12102  
 12103  	if input == nil {
 12104  		input = &ModifyDocumentPermissionInput{}
 12105  	}
 12106  
 12107  	output = &ModifyDocumentPermissionOutput{}
 12108  	req = c.newRequest(op, input, output)
 12109  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 12110  	return
 12111  }
 12112  
 12113  // ModifyDocumentPermission API operation for Amazon Simple Systems Manager (SSM).
 12114  //
 12115  // Shares a Amazon Web Services Systems Manager document (SSM document)publicly
 12116  // or privately. If you share a document privately, you must specify the Amazon
 12117  // Web Services user account IDs for those people who can use the document.
 12118  // If you share a document publicly, you must specify All as the account ID.
 12119  //
 12120  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 12121  // with awserr.Error's Code and Message methods to get detailed information about
 12122  // the error.
 12123  //
 12124  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 12125  // API operation ModifyDocumentPermission for usage and error information.
 12126  //
 12127  // Returned Error Types:
 12128  //   * InternalServerError
 12129  //   An error occurred on the server side.
 12130  //
 12131  //   * InvalidDocument
 12132  //   The specified SSM document doesn't exist.
 12133  //
 12134  //   * InvalidPermissionType
 12135  //   The permission type isn't supported. Share is the only supported permission
 12136  //   type.
 12137  //
 12138  //   * DocumentPermissionLimit
 12139  //   The document can't be shared with more Amazon Web Services user accounts.
 12140  //   You can share a document with a maximum of 20 accounts. You can publicly
 12141  //   share up to five documents. If you need to increase this limit, contact Amazon
 12142  //   Web Services Support.
 12143  //
 12144  //   * DocumentLimitExceeded
 12145  //   You can have at most 500 active SSM documents.
 12146  //
 12147  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ModifyDocumentPermission
 12148  func (c *SSM) ModifyDocumentPermission(input *ModifyDocumentPermissionInput) (*ModifyDocumentPermissionOutput, error) {
 12149  	req, out := c.ModifyDocumentPermissionRequest(input)
 12150  	return out, req.Send()
 12151  }
 12152  
 12153  // ModifyDocumentPermissionWithContext is the same as ModifyDocumentPermission with the addition of
 12154  // the ability to pass a context and additional request options.
 12155  //
 12156  // See ModifyDocumentPermission for details on how to use this API operation.
 12157  //
 12158  // The context must be non-nil and will be used for request cancellation. If
 12159  // the context is nil a panic will occur. In the future the SDK may create
 12160  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 12161  // for more information on using Contexts.
 12162  func (c *SSM) ModifyDocumentPermissionWithContext(ctx aws.Context, input *ModifyDocumentPermissionInput, opts ...request.Option) (*ModifyDocumentPermissionOutput, error) {
 12163  	req, out := c.ModifyDocumentPermissionRequest(input)
 12164  	req.SetContext(ctx)
 12165  	req.ApplyOptions(opts...)
 12166  	return out, req.Send()
 12167  }
 12168  
 12169  const opPutComplianceItems = "PutComplianceItems"
 12170  
 12171  // PutComplianceItemsRequest generates a "aws/request.Request" representing the
 12172  // client's request for the PutComplianceItems operation. The "output" return
 12173  // value will be populated with the request's response once the request completes
 12174  // successfully.
 12175  //
 12176  // Use "Send" method on the returned Request to send the API call to the service.
 12177  // the "output" return value is not valid until after Send returns without error.
 12178  //
 12179  // See PutComplianceItems for more information on using the PutComplianceItems
 12180  // API call, and error handling.
 12181  //
 12182  // This method is useful when you want to inject custom logic or configuration
 12183  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 12184  //
 12185  //
 12186  //    // Example sending a request using the PutComplianceItemsRequest method.
 12187  //    req, resp := client.PutComplianceItemsRequest(params)
 12188  //
 12189  //    err := req.Send()
 12190  //    if err == nil { // resp is now filled
 12191  //        fmt.Println(resp)
 12192  //    }
 12193  //
 12194  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutComplianceItems
 12195  func (c *SSM) PutComplianceItemsRequest(input *PutComplianceItemsInput) (req *request.Request, output *PutComplianceItemsOutput) {
 12196  	op := &request.Operation{
 12197  		Name:       opPutComplianceItems,
 12198  		HTTPMethod: "POST",
 12199  		HTTPPath:   "/",
 12200  	}
 12201  
 12202  	if input == nil {
 12203  		input = &PutComplianceItemsInput{}
 12204  	}
 12205  
 12206  	output = &PutComplianceItemsOutput{}
 12207  	req = c.newRequest(op, input, output)
 12208  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 12209  	return
 12210  }
 12211  
 12212  // PutComplianceItems API operation for Amazon Simple Systems Manager (SSM).
 12213  //
 12214  // Registers a compliance type and other compliance details on a designated
 12215  // resource. This operation lets you register custom compliance details with
 12216  // a resource. This call overwrites existing compliance information on the resource,
 12217  // so you must provide a full list of compliance items each time that you send
 12218  // the request.
 12219  //
 12220  // ComplianceType can be one of the following:
 12221  //
 12222  //    * ExecutionId: The execution ID when the patch, association, or custom
 12223  //    compliance item was applied.
 12224  //
 12225  //    * ExecutionType: Specify patch, association, or Custom:string.
 12226  //
 12227  //    * ExecutionTime. The time the patch, association, or custom compliance
 12228  //    item was applied to the instance.
 12229  //
 12230  //    * Id: The patch, association, or custom compliance ID.
 12231  //
 12232  //    * Title: A title.
 12233  //
 12234  //    * Status: The status of the compliance item. For example, approved for
 12235  //    patches, or Failed for associations.
 12236  //
 12237  //    * Severity: A patch severity. For example, critical.
 12238  //
 12239  //    * DocumentName: An SSM document name. For example, AWS-RunPatchBaseline.
 12240  //
 12241  //    * DocumentVersion: An SSM document version number. For example, 4.
 12242  //
 12243  //    * Classification: A patch classification. For example, security updates.
 12244  //
 12245  //    * PatchBaselineId: A patch baseline ID.
 12246  //
 12247  //    * PatchSeverity: A patch severity. For example, Critical.
 12248  //
 12249  //    * PatchState: A patch state. For example, InstancesWithFailedPatches.
 12250  //
 12251  //    * PatchGroup: The name of a patch group.
 12252  //
 12253  //    * InstalledTime: The time the association, patch, or custom compliance
 12254  //    item was applied to the resource. Specify the time by using the following
 12255  //    format: yyyy-MM-dd'T'HH:mm:ss'Z'
 12256  //
 12257  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 12258  // with awserr.Error's Code and Message methods to get detailed information about
 12259  // the error.
 12260  //
 12261  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 12262  // API operation PutComplianceItems for usage and error information.
 12263  //
 12264  // Returned Error Types:
 12265  //   * InternalServerError
 12266  //   An error occurred on the server side.
 12267  //
 12268  //   * InvalidItemContentException
 12269  //   One or more content items isn't valid.
 12270  //
 12271  //   * TotalSizeLimitExceededException
 12272  //   The size of inventory data has exceeded the total size limit for the resource.
 12273  //
 12274  //   * ItemSizeLimitExceededException
 12275  //   The inventory item size has exceeded the size limit.
 12276  //
 12277  //   * ComplianceTypeCountLimitExceededException
 12278  //   You specified too many custom compliance types. You can specify a maximum
 12279  //   of 10 different types.
 12280  //
 12281  //   * InvalidResourceType
 12282  //   The resource type isn't valid. For example, if you are attempting to tag
 12283  //   an instance, the instance must be a registered, managed instance.
 12284  //
 12285  //   * InvalidResourceId
 12286  //   The resource ID isn't valid. Verify that you entered the correct ID and try
 12287  //   again.
 12288  //
 12289  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutComplianceItems
 12290  func (c *SSM) PutComplianceItems(input *PutComplianceItemsInput) (*PutComplianceItemsOutput, error) {
 12291  	req, out := c.PutComplianceItemsRequest(input)
 12292  	return out, req.Send()
 12293  }
 12294  
 12295  // PutComplianceItemsWithContext is the same as PutComplianceItems with the addition of
 12296  // the ability to pass a context and additional request options.
 12297  //
 12298  // See PutComplianceItems for details on how to use this API operation.
 12299  //
 12300  // The context must be non-nil and will be used for request cancellation. If
 12301  // the context is nil a panic will occur. In the future the SDK may create
 12302  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 12303  // for more information on using Contexts.
 12304  func (c *SSM) PutComplianceItemsWithContext(ctx aws.Context, input *PutComplianceItemsInput, opts ...request.Option) (*PutComplianceItemsOutput, error) {
 12305  	req, out := c.PutComplianceItemsRequest(input)
 12306  	req.SetContext(ctx)
 12307  	req.ApplyOptions(opts...)
 12308  	return out, req.Send()
 12309  }
 12310  
 12311  const opPutInventory = "PutInventory"
 12312  
 12313  // PutInventoryRequest generates a "aws/request.Request" representing the
 12314  // client's request for the PutInventory operation. The "output" return
 12315  // value will be populated with the request's response once the request completes
 12316  // successfully.
 12317  //
 12318  // Use "Send" method on the returned Request to send the API call to the service.
 12319  // the "output" return value is not valid until after Send returns without error.
 12320  //
 12321  // See PutInventory for more information on using the PutInventory
 12322  // API call, and error handling.
 12323  //
 12324  // This method is useful when you want to inject custom logic or configuration
 12325  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 12326  //
 12327  //
 12328  //    // Example sending a request using the PutInventoryRequest method.
 12329  //    req, resp := client.PutInventoryRequest(params)
 12330  //
 12331  //    err := req.Send()
 12332  //    if err == nil { // resp is now filled
 12333  //        fmt.Println(resp)
 12334  //    }
 12335  //
 12336  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutInventory
 12337  func (c *SSM) PutInventoryRequest(input *PutInventoryInput) (req *request.Request, output *PutInventoryOutput) {
 12338  	op := &request.Operation{
 12339  		Name:       opPutInventory,
 12340  		HTTPMethod: "POST",
 12341  		HTTPPath:   "/",
 12342  	}
 12343  
 12344  	if input == nil {
 12345  		input = &PutInventoryInput{}
 12346  	}
 12347  
 12348  	output = &PutInventoryOutput{}
 12349  	req = c.newRequest(op, input, output)
 12350  	return
 12351  }
 12352  
 12353  // PutInventory API operation for Amazon Simple Systems Manager (SSM).
 12354  //
 12355  // Bulk update custom inventory items on one more instance. The request adds
 12356  // an inventory item, if it doesn't already exist, or updates an inventory item,
 12357  // if it does exist.
 12358  //
 12359  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 12360  // with awserr.Error's Code and Message methods to get detailed information about
 12361  // the error.
 12362  //
 12363  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 12364  // API operation PutInventory for usage and error information.
 12365  //
 12366  // Returned Error Types:
 12367  //   * InternalServerError
 12368  //   An error occurred on the server side.
 12369  //
 12370  //   * InvalidInstanceId
 12371  //   The following problems can cause this exception:
 12372  //
 12373  //      * You don't have permission to access the instance.
 12374  //
 12375  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
 12376  //      Verify that SSM Agent is running.
 12377  //
 12378  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
 12379  //      Agent.
 12380  //
 12381  //      * The instance isn't in valid state. Valid states are: Running, Pending,
 12382  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
 12383  //
 12384  //   * InvalidTypeNameException
 12385  //   The parameter type name isn't valid.
 12386  //
 12387  //   * InvalidItemContentException
 12388  //   One or more content items isn't valid.
 12389  //
 12390  //   * TotalSizeLimitExceededException
 12391  //   The size of inventory data has exceeded the total size limit for the resource.
 12392  //
 12393  //   * ItemSizeLimitExceededException
 12394  //   The inventory item size has exceeded the size limit.
 12395  //
 12396  //   * ItemContentMismatchException
 12397  //   The inventory item has invalid content.
 12398  //
 12399  //   * CustomSchemaCountLimitExceededException
 12400  //   You have exceeded the limit for custom schemas. Delete one or more custom
 12401  //   schemas and try again.
 12402  //
 12403  //   * UnsupportedInventorySchemaVersionException
 12404  //   Inventory item type schema version has to match supported versions in the
 12405  //   service. Check output of GetInventorySchema to see the available schema version
 12406  //   for each type.
 12407  //
 12408  //   * UnsupportedInventoryItemContextException
 12409  //   The Context attribute that you specified for the InventoryItem isn't allowed
 12410  //   for this inventory type. You can only use the Context attribute with inventory
 12411  //   types like AWS:ComplianceItem.
 12412  //
 12413  //   * InvalidInventoryItemContextException
 12414  //   You specified invalid keys or values in the Context attribute for InventoryItem.
 12415  //   Verify the keys and values, and try again.
 12416  //
 12417  //   * SubTypeCountLimitExceededException
 12418  //   The sub-type count exceeded the limit for the inventory type.
 12419  //
 12420  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutInventory
 12421  func (c *SSM) PutInventory(input *PutInventoryInput) (*PutInventoryOutput, error) {
 12422  	req, out := c.PutInventoryRequest(input)
 12423  	return out, req.Send()
 12424  }
 12425  
 12426  // PutInventoryWithContext is the same as PutInventory with the addition of
 12427  // the ability to pass a context and additional request options.
 12428  //
 12429  // See PutInventory for details on how to use this API operation.
 12430  //
 12431  // The context must be non-nil and will be used for request cancellation. If
 12432  // the context is nil a panic will occur. In the future the SDK may create
 12433  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 12434  // for more information on using Contexts.
 12435  func (c *SSM) PutInventoryWithContext(ctx aws.Context, input *PutInventoryInput, opts ...request.Option) (*PutInventoryOutput, error) {
 12436  	req, out := c.PutInventoryRequest(input)
 12437  	req.SetContext(ctx)
 12438  	req.ApplyOptions(opts...)
 12439  	return out, req.Send()
 12440  }
 12441  
 12442  const opPutParameter = "PutParameter"
 12443  
 12444  // PutParameterRequest generates a "aws/request.Request" representing the
 12445  // client's request for the PutParameter operation. The "output" return
 12446  // value will be populated with the request's response once the request completes
 12447  // successfully.
 12448  //
 12449  // Use "Send" method on the returned Request to send the API call to the service.
 12450  // the "output" return value is not valid until after Send returns without error.
 12451  //
 12452  // See PutParameter for more information on using the PutParameter
 12453  // API call, and error handling.
 12454  //
 12455  // This method is useful when you want to inject custom logic or configuration
 12456  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 12457  //
 12458  //
 12459  //    // Example sending a request using the PutParameterRequest method.
 12460  //    req, resp := client.PutParameterRequest(params)
 12461  //
 12462  //    err := req.Send()
 12463  //    if err == nil { // resp is now filled
 12464  //        fmt.Println(resp)
 12465  //    }
 12466  //
 12467  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutParameter
 12468  func (c *SSM) PutParameterRequest(input *PutParameterInput) (req *request.Request, output *PutParameterOutput) {
 12469  	op := &request.Operation{
 12470  		Name:       opPutParameter,
 12471  		HTTPMethod: "POST",
 12472  		HTTPPath:   "/",
 12473  	}
 12474  
 12475  	if input == nil {
 12476  		input = &PutParameterInput{}
 12477  	}
 12478  
 12479  	output = &PutParameterOutput{}
 12480  	req = c.newRequest(op, input, output)
 12481  	return
 12482  }
 12483  
 12484  // PutParameter API operation for Amazon Simple Systems Manager (SSM).
 12485  //
 12486  // Add a parameter to the system.
 12487  //
 12488  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 12489  // with awserr.Error's Code and Message methods to get detailed information about
 12490  // the error.
 12491  //
 12492  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 12493  // API operation PutParameter for usage and error information.
 12494  //
 12495  // Returned Error Types:
 12496  //   * InternalServerError
 12497  //   An error occurred on the server side.
 12498  //
 12499  //   * InvalidKeyId
 12500  //   The query key ID isn't valid.
 12501  //
 12502  //   * ParameterLimitExceeded
 12503  //   You have exceeded the number of parameters for this Amazon Web Services account.
 12504  //   Delete one or more parameters and try again.
 12505  //
 12506  //   * TooManyUpdates
 12507  //   There are concurrent updates for a resource that supports one update at a
 12508  //   time.
 12509  //
 12510  //   * ParameterAlreadyExists
 12511  //   The parameter already exists. You can't create duplicate parameters.
 12512  //
 12513  //   * HierarchyLevelLimitExceededException
 12514  //   A hierarchy can have a maximum of 15 levels. For more information, see Requirements
 12515  //   and constraints for parameter names (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html)
 12516  //   in the Amazon Web Services Systems Manager User Guide.
 12517  //
 12518  //   * HierarchyTypeMismatchException
 12519  //   Parameter Store doesn't support changing a parameter type in a hierarchy.
 12520  //   For example, you can't change a parameter from a String type to a SecureString
 12521  //   type. You must create a new, unique parameter.
 12522  //
 12523  //   * InvalidAllowedPatternException
 12524  //   The request doesn't meet the regular expression requirement.
 12525  //
 12526  //   * ParameterMaxVersionLimitExceeded
 12527  //   Parameter Store retains the 100 most recently created versions of a parameter.
 12528  //   After this number of versions has been created, Parameter Store deletes the
 12529  //   oldest version when a new one is created. However, if the oldest version
 12530  //   has a label attached to it, Parameter Store won't delete the version and
 12531  //   instead presents this error message:
 12532  //
 12533  //   An error occurred (ParameterMaxVersionLimitExceeded) when calling the PutParameter
 12534  //   operation: You attempted to create a new version of parameter-name by calling
 12535  //   the PutParameter API with the overwrite flag. Version version-number, the
 12536  //   oldest version, can't be deleted because it has a label associated with it.
 12537  //   Move the label to another version of the parameter, and try again.
 12538  //
 12539  //   This safeguard is to prevent parameter versions with mission critical labels
 12540  //   assigned to them from being deleted. To continue creating new parameters,
 12541  //   first move the label from the oldest version of the parameter to a newer
 12542  //   one for use in your operations. For information about moving parameter labels,
 12543  //   see Move a parameter label (console) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html#sysman-paramstore-labels-console-move)
 12544  //   or Move a parameter label (CLI) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html#sysman-paramstore-labels-cli-move)
 12545  //   in the Amazon Web Services Systems Manager User Guide.
 12546  //
 12547  //   * ParameterPatternMismatchException
 12548  //   The parameter name isn't valid.
 12549  //
 12550  //   * UnsupportedParameterType
 12551  //   The parameter type isn't supported.
 12552  //
 12553  //   * PoliciesLimitExceededException
 12554  //   You specified more than the maximum number of allowed policies for the parameter.
 12555  //   The maximum is 10.
 12556  //
 12557  //   * InvalidPolicyTypeException
 12558  //   The policy type isn't supported. Parameter Store supports the following policy
 12559  //   types: Expiration, ExpirationNotification, and NoChangeNotification.
 12560  //
 12561  //   * InvalidPolicyAttributeException
 12562  //   A policy attribute or its value is invalid.
 12563  //
 12564  //   * IncompatiblePolicyException
 12565  //   There is a conflict in the policies specified for this parameter. You can't,
 12566  //   for example, specify two Expiration policies for a parameter. Review your
 12567  //   policies, and try again.
 12568  //
 12569  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutParameter
 12570  func (c *SSM) PutParameter(input *PutParameterInput) (*PutParameterOutput, error) {
 12571  	req, out := c.PutParameterRequest(input)
 12572  	return out, req.Send()
 12573  }
 12574  
 12575  // PutParameterWithContext is the same as PutParameter with the addition of
 12576  // the ability to pass a context and additional request options.
 12577  //
 12578  // See PutParameter for details on how to use this API operation.
 12579  //
 12580  // The context must be non-nil and will be used for request cancellation. If
 12581  // the context is nil a panic will occur. In the future the SDK may create
 12582  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 12583  // for more information on using Contexts.
 12584  func (c *SSM) PutParameterWithContext(ctx aws.Context, input *PutParameterInput, opts ...request.Option) (*PutParameterOutput, error) {
 12585  	req, out := c.PutParameterRequest(input)
 12586  	req.SetContext(ctx)
 12587  	req.ApplyOptions(opts...)
 12588  	return out, req.Send()
 12589  }
 12590  
 12591  const opRegisterDefaultPatchBaseline = "RegisterDefaultPatchBaseline"
 12592  
 12593  // RegisterDefaultPatchBaselineRequest generates a "aws/request.Request" representing the
 12594  // client's request for the RegisterDefaultPatchBaseline operation. The "output" return
 12595  // value will be populated with the request's response once the request completes
 12596  // successfully.
 12597  //
 12598  // Use "Send" method on the returned Request to send the API call to the service.
 12599  // the "output" return value is not valid until after Send returns without error.
 12600  //
 12601  // See RegisterDefaultPatchBaseline for more information on using the RegisterDefaultPatchBaseline
 12602  // API call, and error handling.
 12603  //
 12604  // This method is useful when you want to inject custom logic or configuration
 12605  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 12606  //
 12607  //
 12608  //    // Example sending a request using the RegisterDefaultPatchBaselineRequest method.
 12609  //    req, resp := client.RegisterDefaultPatchBaselineRequest(params)
 12610  //
 12611  //    err := req.Send()
 12612  //    if err == nil { // resp is now filled
 12613  //        fmt.Println(resp)
 12614  //    }
 12615  //
 12616  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterDefaultPatchBaseline
 12617  func (c *SSM) RegisterDefaultPatchBaselineRequest(input *RegisterDefaultPatchBaselineInput) (req *request.Request, output *RegisterDefaultPatchBaselineOutput) {
 12618  	op := &request.Operation{
 12619  		Name:       opRegisterDefaultPatchBaseline,
 12620  		HTTPMethod: "POST",
 12621  		HTTPPath:   "/",
 12622  	}
 12623  
 12624  	if input == nil {
 12625  		input = &RegisterDefaultPatchBaselineInput{}
 12626  	}
 12627  
 12628  	output = &RegisterDefaultPatchBaselineOutput{}
 12629  	req = c.newRequest(op, input, output)
 12630  	return
 12631  }
 12632  
 12633  // RegisterDefaultPatchBaseline API operation for Amazon Simple Systems Manager (SSM).
 12634  //
 12635  // Defines the default patch baseline for the relevant operating system.
 12636  //
 12637  // To reset the Amazon Web Services-predefined patch baseline as the default,
 12638  // specify the full patch baseline Amazon Resource Name (ARN) as the baseline
 12639  // ID value. For example, for CentOS, specify arn:aws:ssm:us-east-2:733109147000:patchbaseline/pb-0574b43a65ea646ed
 12640  // instead of pb-0574b43a65ea646ed.
 12641  //
 12642  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 12643  // with awserr.Error's Code and Message methods to get detailed information about
 12644  // the error.
 12645  //
 12646  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 12647  // API operation RegisterDefaultPatchBaseline for usage and error information.
 12648  //
 12649  // Returned Error Types:
 12650  //   * InvalidResourceId
 12651  //   The resource ID isn't valid. Verify that you entered the correct ID and try
 12652  //   again.
 12653  //
 12654  //   * DoesNotExistException
 12655  //   Error returned when the ID specified for a resource, such as a maintenance
 12656  //   window or patch baseline, doesn't exist.
 12657  //
 12658  //   For information about resource quotas in Amazon Web Services Systems Manager,
 12659  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 12660  //   in the Amazon Web Services General Reference.
 12661  //
 12662  //   * InternalServerError
 12663  //   An error occurred on the server side.
 12664  //
 12665  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterDefaultPatchBaseline
 12666  func (c *SSM) RegisterDefaultPatchBaseline(input *RegisterDefaultPatchBaselineInput) (*RegisterDefaultPatchBaselineOutput, error) {
 12667  	req, out := c.RegisterDefaultPatchBaselineRequest(input)
 12668  	return out, req.Send()
 12669  }
 12670  
 12671  // RegisterDefaultPatchBaselineWithContext is the same as RegisterDefaultPatchBaseline with the addition of
 12672  // the ability to pass a context and additional request options.
 12673  //
 12674  // See RegisterDefaultPatchBaseline for details on how to use this API operation.
 12675  //
 12676  // The context must be non-nil and will be used for request cancellation. If
 12677  // the context is nil a panic will occur. In the future the SDK may create
 12678  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 12679  // for more information on using Contexts.
 12680  func (c *SSM) RegisterDefaultPatchBaselineWithContext(ctx aws.Context, input *RegisterDefaultPatchBaselineInput, opts ...request.Option) (*RegisterDefaultPatchBaselineOutput, error) {
 12681  	req, out := c.RegisterDefaultPatchBaselineRequest(input)
 12682  	req.SetContext(ctx)
 12683  	req.ApplyOptions(opts...)
 12684  	return out, req.Send()
 12685  }
 12686  
 12687  const opRegisterPatchBaselineForPatchGroup = "RegisterPatchBaselineForPatchGroup"
 12688  
 12689  // RegisterPatchBaselineForPatchGroupRequest generates a "aws/request.Request" representing the
 12690  // client's request for the RegisterPatchBaselineForPatchGroup operation. The "output" return
 12691  // value will be populated with the request's response once the request completes
 12692  // successfully.
 12693  //
 12694  // Use "Send" method on the returned Request to send the API call to the service.
 12695  // the "output" return value is not valid until after Send returns without error.
 12696  //
 12697  // See RegisterPatchBaselineForPatchGroup for more information on using the RegisterPatchBaselineForPatchGroup
 12698  // API call, and error handling.
 12699  //
 12700  // This method is useful when you want to inject custom logic or configuration
 12701  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 12702  //
 12703  //
 12704  //    // Example sending a request using the RegisterPatchBaselineForPatchGroupRequest method.
 12705  //    req, resp := client.RegisterPatchBaselineForPatchGroupRequest(params)
 12706  //
 12707  //    err := req.Send()
 12708  //    if err == nil { // resp is now filled
 12709  //        fmt.Println(resp)
 12710  //    }
 12711  //
 12712  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterPatchBaselineForPatchGroup
 12713  func (c *SSM) RegisterPatchBaselineForPatchGroupRequest(input *RegisterPatchBaselineForPatchGroupInput) (req *request.Request, output *RegisterPatchBaselineForPatchGroupOutput) {
 12714  	op := &request.Operation{
 12715  		Name:       opRegisterPatchBaselineForPatchGroup,
 12716  		HTTPMethod: "POST",
 12717  		HTTPPath:   "/",
 12718  	}
 12719  
 12720  	if input == nil {
 12721  		input = &RegisterPatchBaselineForPatchGroupInput{}
 12722  	}
 12723  
 12724  	output = &RegisterPatchBaselineForPatchGroupOutput{}
 12725  	req = c.newRequest(op, input, output)
 12726  	return
 12727  }
 12728  
 12729  // RegisterPatchBaselineForPatchGroup API operation for Amazon Simple Systems Manager (SSM).
 12730  //
 12731  // Registers a patch baseline for a patch group.
 12732  //
 12733  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 12734  // with awserr.Error's Code and Message methods to get detailed information about
 12735  // the error.
 12736  //
 12737  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 12738  // API operation RegisterPatchBaselineForPatchGroup for usage and error information.
 12739  //
 12740  // Returned Error Types:
 12741  //   * AlreadyExistsException
 12742  //   Error returned if an attempt is made to register a patch group with a patch
 12743  //   baseline that is already registered with a different patch baseline.
 12744  //
 12745  //   * DoesNotExistException
 12746  //   Error returned when the ID specified for a resource, such as a maintenance
 12747  //   window or patch baseline, doesn't exist.
 12748  //
 12749  //   For information about resource quotas in Amazon Web Services Systems Manager,
 12750  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 12751  //   in the Amazon Web Services General Reference.
 12752  //
 12753  //   * InvalidResourceId
 12754  //   The resource ID isn't valid. Verify that you entered the correct ID and try
 12755  //   again.
 12756  //
 12757  //   * ResourceLimitExceededException
 12758  //   Error returned when the caller has exceeded the default resource quotas.
 12759  //   For example, too many maintenance windows or patch baselines have been created.
 12760  //
 12761  //   For information about resource quotas in Systems Manager, see Systems Manager
 12762  //   service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 12763  //   in the Amazon Web Services General Reference.
 12764  //
 12765  //   * InternalServerError
 12766  //   An error occurred on the server side.
 12767  //
 12768  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterPatchBaselineForPatchGroup
 12769  func (c *SSM) RegisterPatchBaselineForPatchGroup(input *RegisterPatchBaselineForPatchGroupInput) (*RegisterPatchBaselineForPatchGroupOutput, error) {
 12770  	req, out := c.RegisterPatchBaselineForPatchGroupRequest(input)
 12771  	return out, req.Send()
 12772  }
 12773  
 12774  // RegisterPatchBaselineForPatchGroupWithContext is the same as RegisterPatchBaselineForPatchGroup with the addition of
 12775  // the ability to pass a context and additional request options.
 12776  //
 12777  // See RegisterPatchBaselineForPatchGroup for details on how to use this API operation.
 12778  //
 12779  // The context must be non-nil and will be used for request cancellation. If
 12780  // the context is nil a panic will occur. In the future the SDK may create
 12781  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 12782  // for more information on using Contexts.
 12783  func (c *SSM) RegisterPatchBaselineForPatchGroupWithContext(ctx aws.Context, input *RegisterPatchBaselineForPatchGroupInput, opts ...request.Option) (*RegisterPatchBaselineForPatchGroupOutput, error) {
 12784  	req, out := c.RegisterPatchBaselineForPatchGroupRequest(input)
 12785  	req.SetContext(ctx)
 12786  	req.ApplyOptions(opts...)
 12787  	return out, req.Send()
 12788  }
 12789  
 12790  const opRegisterTargetWithMaintenanceWindow = "RegisterTargetWithMaintenanceWindow"
 12791  
 12792  // RegisterTargetWithMaintenanceWindowRequest generates a "aws/request.Request" representing the
 12793  // client's request for the RegisterTargetWithMaintenanceWindow operation. The "output" return
 12794  // value will be populated with the request's response once the request completes
 12795  // successfully.
 12796  //
 12797  // Use "Send" method on the returned Request to send the API call to the service.
 12798  // the "output" return value is not valid until after Send returns without error.
 12799  //
 12800  // See RegisterTargetWithMaintenanceWindow for more information on using the RegisterTargetWithMaintenanceWindow
 12801  // API call, and error handling.
 12802  //
 12803  // This method is useful when you want to inject custom logic or configuration
 12804  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 12805  //
 12806  //
 12807  //    // Example sending a request using the RegisterTargetWithMaintenanceWindowRequest method.
 12808  //    req, resp := client.RegisterTargetWithMaintenanceWindowRequest(params)
 12809  //
 12810  //    err := req.Send()
 12811  //    if err == nil { // resp is now filled
 12812  //        fmt.Println(resp)
 12813  //    }
 12814  //
 12815  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterTargetWithMaintenanceWindow
 12816  func (c *SSM) RegisterTargetWithMaintenanceWindowRequest(input *RegisterTargetWithMaintenanceWindowInput) (req *request.Request, output *RegisterTargetWithMaintenanceWindowOutput) {
 12817  	op := &request.Operation{
 12818  		Name:       opRegisterTargetWithMaintenanceWindow,
 12819  		HTTPMethod: "POST",
 12820  		HTTPPath:   "/",
 12821  	}
 12822  
 12823  	if input == nil {
 12824  		input = &RegisterTargetWithMaintenanceWindowInput{}
 12825  	}
 12826  
 12827  	output = &RegisterTargetWithMaintenanceWindowOutput{}
 12828  	req = c.newRequest(op, input, output)
 12829  	return
 12830  }
 12831  
 12832  // RegisterTargetWithMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
 12833  //
 12834  // Registers a target with a maintenance window.
 12835  //
 12836  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 12837  // with awserr.Error's Code and Message methods to get detailed information about
 12838  // the error.
 12839  //
 12840  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 12841  // API operation RegisterTargetWithMaintenanceWindow for usage and error information.
 12842  //
 12843  // Returned Error Types:
 12844  //   * IdempotentParameterMismatch
 12845  //   Error returned when an idempotent operation is retried and the parameters
 12846  //   don't match the original call to the API with the same idempotency token.
 12847  //
 12848  //   * DoesNotExistException
 12849  //   Error returned when the ID specified for a resource, such as a maintenance
 12850  //   window or patch baseline, doesn't exist.
 12851  //
 12852  //   For information about resource quotas in Amazon Web Services Systems Manager,
 12853  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 12854  //   in the Amazon Web Services General Reference.
 12855  //
 12856  //   * ResourceLimitExceededException
 12857  //   Error returned when the caller has exceeded the default resource quotas.
 12858  //   For example, too many maintenance windows or patch baselines have been created.
 12859  //
 12860  //   For information about resource quotas in Systems Manager, see Systems Manager
 12861  //   service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 12862  //   in the Amazon Web Services General Reference.
 12863  //
 12864  //   * InternalServerError
 12865  //   An error occurred on the server side.
 12866  //
 12867  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterTargetWithMaintenanceWindow
 12868  func (c *SSM) RegisterTargetWithMaintenanceWindow(input *RegisterTargetWithMaintenanceWindowInput) (*RegisterTargetWithMaintenanceWindowOutput, error) {
 12869  	req, out := c.RegisterTargetWithMaintenanceWindowRequest(input)
 12870  	return out, req.Send()
 12871  }
 12872  
 12873  // RegisterTargetWithMaintenanceWindowWithContext is the same as RegisterTargetWithMaintenanceWindow with the addition of
 12874  // the ability to pass a context and additional request options.
 12875  //
 12876  // See RegisterTargetWithMaintenanceWindow for details on how to use this API operation.
 12877  //
 12878  // The context must be non-nil and will be used for request cancellation. If
 12879  // the context is nil a panic will occur. In the future the SDK may create
 12880  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 12881  // for more information on using Contexts.
 12882  func (c *SSM) RegisterTargetWithMaintenanceWindowWithContext(ctx aws.Context, input *RegisterTargetWithMaintenanceWindowInput, opts ...request.Option) (*RegisterTargetWithMaintenanceWindowOutput, error) {
 12883  	req, out := c.RegisterTargetWithMaintenanceWindowRequest(input)
 12884  	req.SetContext(ctx)
 12885  	req.ApplyOptions(opts...)
 12886  	return out, req.Send()
 12887  }
 12888  
 12889  const opRegisterTaskWithMaintenanceWindow = "RegisterTaskWithMaintenanceWindow"
 12890  
 12891  // RegisterTaskWithMaintenanceWindowRequest generates a "aws/request.Request" representing the
 12892  // client's request for the RegisterTaskWithMaintenanceWindow operation. The "output" return
 12893  // value will be populated with the request's response once the request completes
 12894  // successfully.
 12895  //
 12896  // Use "Send" method on the returned Request to send the API call to the service.
 12897  // the "output" return value is not valid until after Send returns without error.
 12898  //
 12899  // See RegisterTaskWithMaintenanceWindow for more information on using the RegisterTaskWithMaintenanceWindow
 12900  // API call, and error handling.
 12901  //
 12902  // This method is useful when you want to inject custom logic or configuration
 12903  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 12904  //
 12905  //
 12906  //    // Example sending a request using the RegisterTaskWithMaintenanceWindowRequest method.
 12907  //    req, resp := client.RegisterTaskWithMaintenanceWindowRequest(params)
 12908  //
 12909  //    err := req.Send()
 12910  //    if err == nil { // resp is now filled
 12911  //        fmt.Println(resp)
 12912  //    }
 12913  //
 12914  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterTaskWithMaintenanceWindow
 12915  func (c *SSM) RegisterTaskWithMaintenanceWindowRequest(input *RegisterTaskWithMaintenanceWindowInput) (req *request.Request, output *RegisterTaskWithMaintenanceWindowOutput) {
 12916  	op := &request.Operation{
 12917  		Name:       opRegisterTaskWithMaintenanceWindow,
 12918  		HTTPMethod: "POST",
 12919  		HTTPPath:   "/",
 12920  	}
 12921  
 12922  	if input == nil {
 12923  		input = &RegisterTaskWithMaintenanceWindowInput{}
 12924  	}
 12925  
 12926  	output = &RegisterTaskWithMaintenanceWindowOutput{}
 12927  	req = c.newRequest(op, input, output)
 12928  	return
 12929  }
 12930  
 12931  // RegisterTaskWithMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
 12932  //
 12933  // Adds a new task to a maintenance window.
 12934  //
 12935  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 12936  // with awserr.Error's Code and Message methods to get detailed information about
 12937  // the error.
 12938  //
 12939  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 12940  // API operation RegisterTaskWithMaintenanceWindow for usage and error information.
 12941  //
 12942  // Returned Error Types:
 12943  //   * IdempotentParameterMismatch
 12944  //   Error returned when an idempotent operation is retried and the parameters
 12945  //   don't match the original call to the API with the same idempotency token.
 12946  //
 12947  //   * DoesNotExistException
 12948  //   Error returned when the ID specified for a resource, such as a maintenance
 12949  //   window or patch baseline, doesn't exist.
 12950  //
 12951  //   For information about resource quotas in Amazon Web Services Systems Manager,
 12952  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 12953  //   in the Amazon Web Services General Reference.
 12954  //
 12955  //   * ResourceLimitExceededException
 12956  //   Error returned when the caller has exceeded the default resource quotas.
 12957  //   For example, too many maintenance windows or patch baselines have been created.
 12958  //
 12959  //   For information about resource quotas in Systems Manager, see Systems Manager
 12960  //   service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 12961  //   in the Amazon Web Services General Reference.
 12962  //
 12963  //   * FeatureNotAvailableException
 12964  //   You attempted to register a LAMBDA or STEP_FUNCTIONS task in a region where
 12965  //   the corresponding service isn't available.
 12966  //
 12967  //   * InternalServerError
 12968  //   An error occurred on the server side.
 12969  //
 12970  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterTaskWithMaintenanceWindow
 12971  func (c *SSM) RegisterTaskWithMaintenanceWindow(input *RegisterTaskWithMaintenanceWindowInput) (*RegisterTaskWithMaintenanceWindowOutput, error) {
 12972  	req, out := c.RegisterTaskWithMaintenanceWindowRequest(input)
 12973  	return out, req.Send()
 12974  }
 12975  
 12976  // RegisterTaskWithMaintenanceWindowWithContext is the same as RegisterTaskWithMaintenanceWindow with the addition of
 12977  // the ability to pass a context and additional request options.
 12978  //
 12979  // See RegisterTaskWithMaintenanceWindow for details on how to use this API operation.
 12980  //
 12981  // The context must be non-nil and will be used for request cancellation. If
 12982  // the context is nil a panic will occur. In the future the SDK may create
 12983  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 12984  // for more information on using Contexts.
 12985  func (c *SSM) RegisterTaskWithMaintenanceWindowWithContext(ctx aws.Context, input *RegisterTaskWithMaintenanceWindowInput, opts ...request.Option) (*RegisterTaskWithMaintenanceWindowOutput, error) {
 12986  	req, out := c.RegisterTaskWithMaintenanceWindowRequest(input)
 12987  	req.SetContext(ctx)
 12988  	req.ApplyOptions(opts...)
 12989  	return out, req.Send()
 12990  }
 12991  
 12992  const opRemoveTagsFromResource = "RemoveTagsFromResource"
 12993  
 12994  // RemoveTagsFromResourceRequest generates a "aws/request.Request" representing the
 12995  // client's request for the RemoveTagsFromResource operation. The "output" return
 12996  // value will be populated with the request's response once the request completes
 12997  // successfully.
 12998  //
 12999  // Use "Send" method on the returned Request to send the API call to the service.
 13000  // the "output" return value is not valid until after Send returns without error.
 13001  //
 13002  // See RemoveTagsFromResource for more information on using the RemoveTagsFromResource
 13003  // API call, and error handling.
 13004  //
 13005  // This method is useful when you want to inject custom logic or configuration
 13006  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13007  //
 13008  //
 13009  //    // Example sending a request using the RemoveTagsFromResourceRequest method.
 13010  //    req, resp := client.RemoveTagsFromResourceRequest(params)
 13011  //
 13012  //    err := req.Send()
 13013  //    if err == nil { // resp is now filled
 13014  //        fmt.Println(resp)
 13015  //    }
 13016  //
 13017  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RemoveTagsFromResource
 13018  func (c *SSM) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput) (req *request.Request, output *RemoveTagsFromResourceOutput) {
 13019  	op := &request.Operation{
 13020  		Name:       opRemoveTagsFromResource,
 13021  		HTTPMethod: "POST",
 13022  		HTTPPath:   "/",
 13023  	}
 13024  
 13025  	if input == nil {
 13026  		input = &RemoveTagsFromResourceInput{}
 13027  	}
 13028  
 13029  	output = &RemoveTagsFromResourceOutput{}
 13030  	req = c.newRequest(op, input, output)
 13031  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 13032  	return
 13033  }
 13034  
 13035  // RemoveTagsFromResource API operation for Amazon Simple Systems Manager (SSM).
 13036  //
 13037  // Removes tag keys from the specified resource.
 13038  //
 13039  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 13040  // with awserr.Error's Code and Message methods to get detailed information about
 13041  // the error.
 13042  //
 13043  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 13044  // API operation RemoveTagsFromResource for usage and error information.
 13045  //
 13046  // Returned Error Types:
 13047  //   * InvalidResourceType
 13048  //   The resource type isn't valid. For example, if you are attempting to tag
 13049  //   an instance, the instance must be a registered, managed instance.
 13050  //
 13051  //   * InvalidResourceId
 13052  //   The resource ID isn't valid. Verify that you entered the correct ID and try
 13053  //   again.
 13054  //
 13055  //   * InternalServerError
 13056  //   An error occurred on the server side.
 13057  //
 13058  //   * TooManyUpdates
 13059  //   There are concurrent updates for a resource that supports one update at a
 13060  //   time.
 13061  //
 13062  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RemoveTagsFromResource
 13063  func (c *SSM) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) {
 13064  	req, out := c.RemoveTagsFromResourceRequest(input)
 13065  	return out, req.Send()
 13066  }
 13067  
 13068  // RemoveTagsFromResourceWithContext is the same as RemoveTagsFromResource with the addition of
 13069  // the ability to pass a context and additional request options.
 13070  //
 13071  // See RemoveTagsFromResource for details on how to use this API operation.
 13072  //
 13073  // The context must be non-nil and will be used for request cancellation. If
 13074  // the context is nil a panic will occur. In the future the SDK may create
 13075  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 13076  // for more information on using Contexts.
 13077  func (c *SSM) RemoveTagsFromResourceWithContext(ctx aws.Context, input *RemoveTagsFromResourceInput, opts ...request.Option) (*RemoveTagsFromResourceOutput, error) {
 13078  	req, out := c.RemoveTagsFromResourceRequest(input)
 13079  	req.SetContext(ctx)
 13080  	req.ApplyOptions(opts...)
 13081  	return out, req.Send()
 13082  }
 13083  
 13084  const opResetServiceSetting = "ResetServiceSetting"
 13085  
 13086  // ResetServiceSettingRequest generates a "aws/request.Request" representing the
 13087  // client's request for the ResetServiceSetting operation. The "output" return
 13088  // value will be populated with the request's response once the request completes
 13089  // successfully.
 13090  //
 13091  // Use "Send" method on the returned Request to send the API call to the service.
 13092  // the "output" return value is not valid until after Send returns without error.
 13093  //
 13094  // See ResetServiceSetting for more information on using the ResetServiceSetting
 13095  // API call, and error handling.
 13096  //
 13097  // This method is useful when you want to inject custom logic or configuration
 13098  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13099  //
 13100  //
 13101  //    // Example sending a request using the ResetServiceSettingRequest method.
 13102  //    req, resp := client.ResetServiceSettingRequest(params)
 13103  //
 13104  //    err := req.Send()
 13105  //    if err == nil { // resp is now filled
 13106  //        fmt.Println(resp)
 13107  //    }
 13108  //
 13109  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ResetServiceSetting
 13110  func (c *SSM) ResetServiceSettingRequest(input *ResetServiceSettingInput) (req *request.Request, output *ResetServiceSettingOutput) {
 13111  	op := &request.Operation{
 13112  		Name:       opResetServiceSetting,
 13113  		HTTPMethod: "POST",
 13114  		HTTPPath:   "/",
 13115  	}
 13116  
 13117  	if input == nil {
 13118  		input = &ResetServiceSettingInput{}
 13119  	}
 13120  
 13121  	output = &ResetServiceSettingOutput{}
 13122  	req = c.newRequest(op, input, output)
 13123  	return
 13124  }
 13125  
 13126  // ResetServiceSetting API operation for Amazon Simple Systems Manager (SSM).
 13127  //
 13128  // ServiceSetting is an account-level setting for an Amazon Web Services service.
 13129  // This setting defines how a user interacts with or uses a service or a feature
 13130  // of a service. For example, if an Amazon Web Services service charges money
 13131  // to the account based on feature or service usage, then the Amazon Web Services
 13132  // service team might create a default setting of "false". This means the user
 13133  // can't use this feature unless they change the setting to "true" and intentionally
 13134  // opt in for a paid feature.
 13135  //
 13136  // Services map a SettingId object to a setting value. Amazon Web Services services
 13137  // teams define the default value for a SettingId. You can't create a new SettingId,
 13138  // but you can overwrite the default value if you have the ssm:UpdateServiceSetting
 13139  // permission for the setting. Use the GetServiceSetting API operation to view
 13140  // the current value. Use the UpdateServiceSetting API operation to change the
 13141  // default setting.
 13142  //
 13143  // Reset the service setting for the account to the default value as provisioned
 13144  // by the Amazon Web Services service team.
 13145  //
 13146  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 13147  // with awserr.Error's Code and Message methods to get detailed information about
 13148  // the error.
 13149  //
 13150  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 13151  // API operation ResetServiceSetting for usage and error information.
 13152  //
 13153  // Returned Error Types:
 13154  //   * InternalServerError
 13155  //   An error occurred on the server side.
 13156  //
 13157  //   * ServiceSettingNotFound
 13158  //   The specified service setting wasn't found. Either the service name or the
 13159  //   setting hasn't been provisioned by the Amazon Web Services service team.
 13160  //
 13161  //   * TooManyUpdates
 13162  //   There are concurrent updates for a resource that supports one update at a
 13163  //   time.
 13164  //
 13165  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ResetServiceSetting
 13166  func (c *SSM) ResetServiceSetting(input *ResetServiceSettingInput) (*ResetServiceSettingOutput, error) {
 13167  	req, out := c.ResetServiceSettingRequest(input)
 13168  	return out, req.Send()
 13169  }
 13170  
 13171  // ResetServiceSettingWithContext is the same as ResetServiceSetting with the addition of
 13172  // the ability to pass a context and additional request options.
 13173  //
 13174  // See ResetServiceSetting for details on how to use this API operation.
 13175  //
 13176  // The context must be non-nil and will be used for request cancellation. If
 13177  // the context is nil a panic will occur. In the future the SDK may create
 13178  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 13179  // for more information on using Contexts.
 13180  func (c *SSM) ResetServiceSettingWithContext(ctx aws.Context, input *ResetServiceSettingInput, opts ...request.Option) (*ResetServiceSettingOutput, error) {
 13181  	req, out := c.ResetServiceSettingRequest(input)
 13182  	req.SetContext(ctx)
 13183  	req.ApplyOptions(opts...)
 13184  	return out, req.Send()
 13185  }
 13186  
 13187  const opResumeSession = "ResumeSession"
 13188  
 13189  // ResumeSessionRequest generates a "aws/request.Request" representing the
 13190  // client's request for the ResumeSession operation. The "output" return
 13191  // value will be populated with the request's response once the request completes
 13192  // successfully.
 13193  //
 13194  // Use "Send" method on the returned Request to send the API call to the service.
 13195  // the "output" return value is not valid until after Send returns without error.
 13196  //
 13197  // See ResumeSession for more information on using the ResumeSession
 13198  // API call, and error handling.
 13199  //
 13200  // This method is useful when you want to inject custom logic or configuration
 13201  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13202  //
 13203  //
 13204  //    // Example sending a request using the ResumeSessionRequest method.
 13205  //    req, resp := client.ResumeSessionRequest(params)
 13206  //
 13207  //    err := req.Send()
 13208  //    if err == nil { // resp is now filled
 13209  //        fmt.Println(resp)
 13210  //    }
 13211  //
 13212  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ResumeSession
 13213  func (c *SSM) ResumeSessionRequest(input *ResumeSessionInput) (req *request.Request, output *ResumeSessionOutput) {
 13214  	op := &request.Operation{
 13215  		Name:       opResumeSession,
 13216  		HTTPMethod: "POST",
 13217  		HTTPPath:   "/",
 13218  	}
 13219  
 13220  	if input == nil {
 13221  		input = &ResumeSessionInput{}
 13222  	}
 13223  
 13224  	output = &ResumeSessionOutput{}
 13225  	req = c.newRequest(op, input, output)
 13226  	return
 13227  }
 13228  
 13229  // ResumeSession API operation for Amazon Simple Systems Manager (SSM).
 13230  //
 13231  // Reconnects a session to an instance after it has been disconnected. Connections
 13232  // can be resumed for disconnected sessions, but not terminated sessions.
 13233  //
 13234  // This command is primarily for use by client machines to automatically reconnect
 13235  // during intermittent network issues. It isn't intended for any other use.
 13236  //
 13237  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 13238  // with awserr.Error's Code and Message methods to get detailed information about
 13239  // the error.
 13240  //
 13241  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 13242  // API operation ResumeSession for usage and error information.
 13243  //
 13244  // Returned Error Types:
 13245  //   * DoesNotExistException
 13246  //   Error returned when the ID specified for a resource, such as a maintenance
 13247  //   window or patch baseline, doesn't exist.
 13248  //
 13249  //   For information about resource quotas in Amazon Web Services Systems Manager,
 13250  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 13251  //   in the Amazon Web Services General Reference.
 13252  //
 13253  //   * InternalServerError
 13254  //   An error occurred on the server side.
 13255  //
 13256  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ResumeSession
 13257  func (c *SSM) ResumeSession(input *ResumeSessionInput) (*ResumeSessionOutput, error) {
 13258  	req, out := c.ResumeSessionRequest(input)
 13259  	return out, req.Send()
 13260  }
 13261  
 13262  // ResumeSessionWithContext is the same as ResumeSession with the addition of
 13263  // the ability to pass a context and additional request options.
 13264  //
 13265  // See ResumeSession for details on how to use this API operation.
 13266  //
 13267  // The context must be non-nil and will be used for request cancellation. If
 13268  // the context is nil a panic will occur. In the future the SDK may create
 13269  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 13270  // for more information on using Contexts.
 13271  func (c *SSM) ResumeSessionWithContext(ctx aws.Context, input *ResumeSessionInput, opts ...request.Option) (*ResumeSessionOutput, error) {
 13272  	req, out := c.ResumeSessionRequest(input)
 13273  	req.SetContext(ctx)
 13274  	req.ApplyOptions(opts...)
 13275  	return out, req.Send()
 13276  }
 13277  
 13278  const opSendAutomationSignal = "SendAutomationSignal"
 13279  
 13280  // SendAutomationSignalRequest generates a "aws/request.Request" representing the
 13281  // client's request for the SendAutomationSignal operation. The "output" return
 13282  // value will be populated with the request's response once the request completes
 13283  // successfully.
 13284  //
 13285  // Use "Send" method on the returned Request to send the API call to the service.
 13286  // the "output" return value is not valid until after Send returns without error.
 13287  //
 13288  // See SendAutomationSignal for more information on using the SendAutomationSignal
 13289  // API call, and error handling.
 13290  //
 13291  // This method is useful when you want to inject custom logic or configuration
 13292  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13293  //
 13294  //
 13295  //    // Example sending a request using the SendAutomationSignalRequest method.
 13296  //    req, resp := client.SendAutomationSignalRequest(params)
 13297  //
 13298  //    err := req.Send()
 13299  //    if err == nil { // resp is now filled
 13300  //        fmt.Println(resp)
 13301  //    }
 13302  //
 13303  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/SendAutomationSignal
 13304  func (c *SSM) SendAutomationSignalRequest(input *SendAutomationSignalInput) (req *request.Request, output *SendAutomationSignalOutput) {
 13305  	op := &request.Operation{
 13306  		Name:       opSendAutomationSignal,
 13307  		HTTPMethod: "POST",
 13308  		HTTPPath:   "/",
 13309  	}
 13310  
 13311  	if input == nil {
 13312  		input = &SendAutomationSignalInput{}
 13313  	}
 13314  
 13315  	output = &SendAutomationSignalOutput{}
 13316  	req = c.newRequest(op, input, output)
 13317  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 13318  	return
 13319  }
 13320  
 13321  // SendAutomationSignal API operation for Amazon Simple Systems Manager (SSM).
 13322  //
 13323  // Sends a signal to an Automation execution to change the current behavior
 13324  // or status of the execution.
 13325  //
 13326  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 13327  // with awserr.Error's Code and Message methods to get detailed information about
 13328  // the error.
 13329  //
 13330  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 13331  // API operation SendAutomationSignal for usage and error information.
 13332  //
 13333  // Returned Error Types:
 13334  //   * AutomationExecutionNotFoundException
 13335  //   There is no automation execution information for the requested automation
 13336  //   execution ID.
 13337  //
 13338  //   * AutomationStepNotFoundException
 13339  //   The specified step name and execution ID don't exist. Verify the information
 13340  //   and try again.
 13341  //
 13342  //   * InvalidAutomationSignalException
 13343  //   The signal isn't valid for the current Automation execution.
 13344  //
 13345  //   * InternalServerError
 13346  //   An error occurred on the server side.
 13347  //
 13348  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/SendAutomationSignal
 13349  func (c *SSM) SendAutomationSignal(input *SendAutomationSignalInput) (*SendAutomationSignalOutput, error) {
 13350  	req, out := c.SendAutomationSignalRequest(input)
 13351  	return out, req.Send()
 13352  }
 13353  
 13354  // SendAutomationSignalWithContext is the same as SendAutomationSignal with the addition of
 13355  // the ability to pass a context and additional request options.
 13356  //
 13357  // See SendAutomationSignal for details on how to use this API operation.
 13358  //
 13359  // The context must be non-nil and will be used for request cancellation. If
 13360  // the context is nil a panic will occur. In the future the SDK may create
 13361  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 13362  // for more information on using Contexts.
 13363  func (c *SSM) SendAutomationSignalWithContext(ctx aws.Context, input *SendAutomationSignalInput, opts ...request.Option) (*SendAutomationSignalOutput, error) {
 13364  	req, out := c.SendAutomationSignalRequest(input)
 13365  	req.SetContext(ctx)
 13366  	req.ApplyOptions(opts...)
 13367  	return out, req.Send()
 13368  }
 13369  
 13370  const opSendCommand = "SendCommand"
 13371  
 13372  // SendCommandRequest generates a "aws/request.Request" representing the
 13373  // client's request for the SendCommand operation. The "output" return
 13374  // value will be populated with the request's response once the request completes
 13375  // successfully.
 13376  //
 13377  // Use "Send" method on the returned Request to send the API call to the service.
 13378  // the "output" return value is not valid until after Send returns without error.
 13379  //
 13380  // See SendCommand for more information on using the SendCommand
 13381  // API call, and error handling.
 13382  //
 13383  // This method is useful when you want to inject custom logic or configuration
 13384  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13385  //
 13386  //
 13387  //    // Example sending a request using the SendCommandRequest method.
 13388  //    req, resp := client.SendCommandRequest(params)
 13389  //
 13390  //    err := req.Send()
 13391  //    if err == nil { // resp is now filled
 13392  //        fmt.Println(resp)
 13393  //    }
 13394  //
 13395  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/SendCommand
 13396  func (c *SSM) SendCommandRequest(input *SendCommandInput) (req *request.Request, output *SendCommandOutput) {
 13397  	op := &request.Operation{
 13398  		Name:       opSendCommand,
 13399  		HTTPMethod: "POST",
 13400  		HTTPPath:   "/",
 13401  	}
 13402  
 13403  	if input == nil {
 13404  		input = &SendCommandInput{}
 13405  	}
 13406  
 13407  	output = &SendCommandOutput{}
 13408  	req = c.newRequest(op, input, output)
 13409  	return
 13410  }
 13411  
 13412  // SendCommand API operation for Amazon Simple Systems Manager (SSM).
 13413  //
 13414  // Runs commands on one or more managed instances.
 13415  //
 13416  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 13417  // with awserr.Error's Code and Message methods to get detailed information about
 13418  // the error.
 13419  //
 13420  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 13421  // API operation SendCommand for usage and error information.
 13422  //
 13423  // Returned Error Types:
 13424  //   * DuplicateInstanceId
 13425  //   You can't specify an instance ID in more than one association.
 13426  //
 13427  //   * InternalServerError
 13428  //   An error occurred on the server side.
 13429  //
 13430  //   * InvalidInstanceId
 13431  //   The following problems can cause this exception:
 13432  //
 13433  //      * You don't have permission to access the instance.
 13434  //
 13435  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
 13436  //      Verify that SSM Agent is running.
 13437  //
 13438  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
 13439  //      Agent.
 13440  //
 13441  //      * The instance isn't in valid state. Valid states are: Running, Pending,
 13442  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
 13443  //
 13444  //   * InvalidDocument
 13445  //   The specified SSM document doesn't exist.
 13446  //
 13447  //   * InvalidDocumentVersion
 13448  //   The document version isn't valid or doesn't exist.
 13449  //
 13450  //   * InvalidOutputFolder
 13451  //   The S3 bucket doesn't exist.
 13452  //
 13453  //   * InvalidParameters
 13454  //   You must specify values for all required parameters in the Amazon Web Services
 13455  //   Systems Manager document (SSM document). You can only supply values to parameters
 13456  //   defined in the SSM document.
 13457  //
 13458  //   * UnsupportedPlatformType
 13459  //   The document doesn't support the platform type of the given instance ID(s).
 13460  //   For example, you sent an document for a Windows instance to a Linux instance.
 13461  //
 13462  //   * MaxDocumentSizeExceeded
 13463  //   The size limit of a document is 64 KB.
 13464  //
 13465  //   * InvalidRole
 13466  //   The role name can't contain invalid characters. Also verify that you specified
 13467  //   an IAM role for notifications that includes the required trust policy. For
 13468  //   information about configuring the IAM role for Run Command notifications,
 13469  //   see Configuring Amazon SNS Notifications for Run Command (https://docs.aws.amazon.com/systems-manager/latest/userguide/rc-sns-notifications.html)
 13470  //   in the Amazon Web Services Systems Manager User Guide.
 13471  //
 13472  //   * InvalidNotificationConfig
 13473  //   One or more configuration items isn't valid. Verify that a valid Amazon Resource
 13474  //   Name (ARN) was provided for an Amazon Simple Notification Service topic.
 13475  //
 13476  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/SendCommand
 13477  func (c *SSM) SendCommand(input *SendCommandInput) (*SendCommandOutput, error) {
 13478  	req, out := c.SendCommandRequest(input)
 13479  	return out, req.Send()
 13480  }
 13481  
 13482  // SendCommandWithContext is the same as SendCommand with the addition of
 13483  // the ability to pass a context and additional request options.
 13484  //
 13485  // See SendCommand for details on how to use this API operation.
 13486  //
 13487  // The context must be non-nil and will be used for request cancellation. If
 13488  // the context is nil a panic will occur. In the future the SDK may create
 13489  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 13490  // for more information on using Contexts.
 13491  func (c *SSM) SendCommandWithContext(ctx aws.Context, input *SendCommandInput, opts ...request.Option) (*SendCommandOutput, error) {
 13492  	req, out := c.SendCommandRequest(input)
 13493  	req.SetContext(ctx)
 13494  	req.ApplyOptions(opts...)
 13495  	return out, req.Send()
 13496  }
 13497  
 13498  const opStartAssociationsOnce = "StartAssociationsOnce"
 13499  
 13500  // StartAssociationsOnceRequest generates a "aws/request.Request" representing the
 13501  // client's request for the StartAssociationsOnce operation. The "output" return
 13502  // value will be populated with the request's response once the request completes
 13503  // successfully.
 13504  //
 13505  // Use "Send" method on the returned Request to send the API call to the service.
 13506  // the "output" return value is not valid until after Send returns without error.
 13507  //
 13508  // See StartAssociationsOnce for more information on using the StartAssociationsOnce
 13509  // API call, and error handling.
 13510  //
 13511  // This method is useful when you want to inject custom logic or configuration
 13512  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13513  //
 13514  //
 13515  //    // Example sending a request using the StartAssociationsOnceRequest method.
 13516  //    req, resp := client.StartAssociationsOnceRequest(params)
 13517  //
 13518  //    err := req.Send()
 13519  //    if err == nil { // resp is now filled
 13520  //        fmt.Println(resp)
 13521  //    }
 13522  //
 13523  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartAssociationsOnce
 13524  func (c *SSM) StartAssociationsOnceRequest(input *StartAssociationsOnceInput) (req *request.Request, output *StartAssociationsOnceOutput) {
 13525  	op := &request.Operation{
 13526  		Name:       opStartAssociationsOnce,
 13527  		HTTPMethod: "POST",
 13528  		HTTPPath:   "/",
 13529  	}
 13530  
 13531  	if input == nil {
 13532  		input = &StartAssociationsOnceInput{}
 13533  	}
 13534  
 13535  	output = &StartAssociationsOnceOutput{}
 13536  	req = c.newRequest(op, input, output)
 13537  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 13538  	return
 13539  }
 13540  
 13541  // StartAssociationsOnce API operation for Amazon Simple Systems Manager (SSM).
 13542  //
 13543  // Runs an association immediately and only one time. This operation can be
 13544  // helpful when troubleshooting associations.
 13545  //
 13546  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 13547  // with awserr.Error's Code and Message methods to get detailed information about
 13548  // the error.
 13549  //
 13550  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 13551  // API operation StartAssociationsOnce for usage and error information.
 13552  //
 13553  // Returned Error Types:
 13554  //   * InvalidAssociation
 13555  //   The association isn't valid or doesn't exist.
 13556  //
 13557  //   * AssociationDoesNotExist
 13558  //   The specified association doesn't exist.
 13559  //
 13560  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartAssociationsOnce
 13561  func (c *SSM) StartAssociationsOnce(input *StartAssociationsOnceInput) (*StartAssociationsOnceOutput, error) {
 13562  	req, out := c.StartAssociationsOnceRequest(input)
 13563  	return out, req.Send()
 13564  }
 13565  
 13566  // StartAssociationsOnceWithContext is the same as StartAssociationsOnce with the addition of
 13567  // the ability to pass a context and additional request options.
 13568  //
 13569  // See StartAssociationsOnce for details on how to use this API operation.
 13570  //
 13571  // The context must be non-nil and will be used for request cancellation. If
 13572  // the context is nil a panic will occur. In the future the SDK may create
 13573  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 13574  // for more information on using Contexts.
 13575  func (c *SSM) StartAssociationsOnceWithContext(ctx aws.Context, input *StartAssociationsOnceInput, opts ...request.Option) (*StartAssociationsOnceOutput, error) {
 13576  	req, out := c.StartAssociationsOnceRequest(input)
 13577  	req.SetContext(ctx)
 13578  	req.ApplyOptions(opts...)
 13579  	return out, req.Send()
 13580  }
 13581  
 13582  const opStartAutomationExecution = "StartAutomationExecution"
 13583  
 13584  // StartAutomationExecutionRequest generates a "aws/request.Request" representing the
 13585  // client's request for the StartAutomationExecution operation. The "output" return
 13586  // value will be populated with the request's response once the request completes
 13587  // successfully.
 13588  //
 13589  // Use "Send" method on the returned Request to send the API call to the service.
 13590  // the "output" return value is not valid until after Send returns without error.
 13591  //
 13592  // See StartAutomationExecution for more information on using the StartAutomationExecution
 13593  // API call, and error handling.
 13594  //
 13595  // This method is useful when you want to inject custom logic or configuration
 13596  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13597  //
 13598  //
 13599  //    // Example sending a request using the StartAutomationExecutionRequest method.
 13600  //    req, resp := client.StartAutomationExecutionRequest(params)
 13601  //
 13602  //    err := req.Send()
 13603  //    if err == nil { // resp is now filled
 13604  //        fmt.Println(resp)
 13605  //    }
 13606  //
 13607  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartAutomationExecution
 13608  func (c *SSM) StartAutomationExecutionRequest(input *StartAutomationExecutionInput) (req *request.Request, output *StartAutomationExecutionOutput) {
 13609  	op := &request.Operation{
 13610  		Name:       opStartAutomationExecution,
 13611  		HTTPMethod: "POST",
 13612  		HTTPPath:   "/",
 13613  	}
 13614  
 13615  	if input == nil {
 13616  		input = &StartAutomationExecutionInput{}
 13617  	}
 13618  
 13619  	output = &StartAutomationExecutionOutput{}
 13620  	req = c.newRequest(op, input, output)
 13621  	return
 13622  }
 13623  
 13624  // StartAutomationExecution API operation for Amazon Simple Systems Manager (SSM).
 13625  //
 13626  // Initiates execution of an Automation runbook.
 13627  //
 13628  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 13629  // with awserr.Error's Code and Message methods to get detailed information about
 13630  // the error.
 13631  //
 13632  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 13633  // API operation StartAutomationExecution for usage and error information.
 13634  //
 13635  // Returned Error Types:
 13636  //   * AutomationDefinitionNotFoundException
 13637  //   An Automation runbook with the specified name couldn't be found.
 13638  //
 13639  //   * InvalidAutomationExecutionParametersException
 13640  //   The supplied parameters for invoking the specified Automation runbook are
 13641  //   incorrect. For example, they may not match the set of parameters permitted
 13642  //   for the specified Automation document.
 13643  //
 13644  //   * AutomationExecutionLimitExceededException
 13645  //   The number of simultaneously running Automation executions exceeded the allowable
 13646  //   limit.
 13647  //
 13648  //   * AutomationDefinitionVersionNotFoundException
 13649  //   An Automation runbook with the specified name and version couldn't be found.
 13650  //
 13651  //   * IdempotentParameterMismatch
 13652  //   Error returned when an idempotent operation is retried and the parameters
 13653  //   don't match the original call to the API with the same idempotency token.
 13654  //
 13655  //   * InvalidTarget
 13656  //   The target isn't valid or doesn't exist. It might not be configured for Systems
 13657  //   Manager or you might not have permission to perform the operation.
 13658  //
 13659  //   * InternalServerError
 13660  //   An error occurred on the server side.
 13661  //
 13662  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartAutomationExecution
 13663  func (c *SSM) StartAutomationExecution(input *StartAutomationExecutionInput) (*StartAutomationExecutionOutput, error) {
 13664  	req, out := c.StartAutomationExecutionRequest(input)
 13665  	return out, req.Send()
 13666  }
 13667  
 13668  // StartAutomationExecutionWithContext is the same as StartAutomationExecution with the addition of
 13669  // the ability to pass a context and additional request options.
 13670  //
 13671  // See StartAutomationExecution for details on how to use this API operation.
 13672  //
 13673  // The context must be non-nil and will be used for request cancellation. If
 13674  // the context is nil a panic will occur. In the future the SDK may create
 13675  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 13676  // for more information on using Contexts.
 13677  func (c *SSM) StartAutomationExecutionWithContext(ctx aws.Context, input *StartAutomationExecutionInput, opts ...request.Option) (*StartAutomationExecutionOutput, error) {
 13678  	req, out := c.StartAutomationExecutionRequest(input)
 13679  	req.SetContext(ctx)
 13680  	req.ApplyOptions(opts...)
 13681  	return out, req.Send()
 13682  }
 13683  
 13684  const opStartChangeRequestExecution = "StartChangeRequestExecution"
 13685  
 13686  // StartChangeRequestExecutionRequest generates a "aws/request.Request" representing the
 13687  // client's request for the StartChangeRequestExecution operation. The "output" return
 13688  // value will be populated with the request's response once the request completes
 13689  // successfully.
 13690  //
 13691  // Use "Send" method on the returned Request to send the API call to the service.
 13692  // the "output" return value is not valid until after Send returns without error.
 13693  //
 13694  // See StartChangeRequestExecution for more information on using the StartChangeRequestExecution
 13695  // API call, and error handling.
 13696  //
 13697  // This method is useful when you want to inject custom logic or configuration
 13698  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13699  //
 13700  //
 13701  //    // Example sending a request using the StartChangeRequestExecutionRequest method.
 13702  //    req, resp := client.StartChangeRequestExecutionRequest(params)
 13703  //
 13704  //    err := req.Send()
 13705  //    if err == nil { // resp is now filled
 13706  //        fmt.Println(resp)
 13707  //    }
 13708  //
 13709  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartChangeRequestExecution
 13710  func (c *SSM) StartChangeRequestExecutionRequest(input *StartChangeRequestExecutionInput) (req *request.Request, output *StartChangeRequestExecutionOutput) {
 13711  	op := &request.Operation{
 13712  		Name:       opStartChangeRequestExecution,
 13713  		HTTPMethod: "POST",
 13714  		HTTPPath:   "/",
 13715  	}
 13716  
 13717  	if input == nil {
 13718  		input = &StartChangeRequestExecutionInput{}
 13719  	}
 13720  
 13721  	output = &StartChangeRequestExecutionOutput{}
 13722  	req = c.newRequest(op, input, output)
 13723  	return
 13724  }
 13725  
 13726  // StartChangeRequestExecution API operation for Amazon Simple Systems Manager (SSM).
 13727  //
 13728  // Creates a change request for Change Manager. The Automation runbooks specified
 13729  // in the change request run only after all required approvals for the change
 13730  // request have been received.
 13731  //
 13732  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 13733  // with awserr.Error's Code and Message methods to get detailed information about
 13734  // the error.
 13735  //
 13736  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 13737  // API operation StartChangeRequestExecution for usage and error information.
 13738  //
 13739  // Returned Error Types:
 13740  //   * AutomationDefinitionNotFoundException
 13741  //   An Automation runbook with the specified name couldn't be found.
 13742  //
 13743  //   * InvalidAutomationExecutionParametersException
 13744  //   The supplied parameters for invoking the specified Automation runbook are
 13745  //   incorrect. For example, they may not match the set of parameters permitted
 13746  //   for the specified Automation document.
 13747  //
 13748  //   * AutomationExecutionLimitExceededException
 13749  //   The number of simultaneously running Automation executions exceeded the allowable
 13750  //   limit.
 13751  //
 13752  //   * AutomationDefinitionVersionNotFoundException
 13753  //   An Automation runbook with the specified name and version couldn't be found.
 13754  //
 13755  //   * IdempotentParameterMismatch
 13756  //   Error returned when an idempotent operation is retried and the parameters
 13757  //   don't match the original call to the API with the same idempotency token.
 13758  //
 13759  //   * InternalServerError
 13760  //   An error occurred on the server side.
 13761  //
 13762  //   * AutomationDefinitionNotApprovedException
 13763  //   Indicates that the Change Manager change template used in the change request
 13764  //   was rejected or is still in a pending state.
 13765  //
 13766  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartChangeRequestExecution
 13767  func (c *SSM) StartChangeRequestExecution(input *StartChangeRequestExecutionInput) (*StartChangeRequestExecutionOutput, error) {
 13768  	req, out := c.StartChangeRequestExecutionRequest(input)
 13769  	return out, req.Send()
 13770  }
 13771  
 13772  // StartChangeRequestExecutionWithContext is the same as StartChangeRequestExecution with the addition of
 13773  // the ability to pass a context and additional request options.
 13774  //
 13775  // See StartChangeRequestExecution for details on how to use this API operation.
 13776  //
 13777  // The context must be non-nil and will be used for request cancellation. If
 13778  // the context is nil a panic will occur. In the future the SDK may create
 13779  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 13780  // for more information on using Contexts.
 13781  func (c *SSM) StartChangeRequestExecutionWithContext(ctx aws.Context, input *StartChangeRequestExecutionInput, opts ...request.Option) (*StartChangeRequestExecutionOutput, error) {
 13782  	req, out := c.StartChangeRequestExecutionRequest(input)
 13783  	req.SetContext(ctx)
 13784  	req.ApplyOptions(opts...)
 13785  	return out, req.Send()
 13786  }
 13787  
 13788  const opStartSession = "StartSession"
 13789  
 13790  // StartSessionRequest generates a "aws/request.Request" representing the
 13791  // client's request for the StartSession operation. The "output" return
 13792  // value will be populated with the request's response once the request completes
 13793  // successfully.
 13794  //
 13795  // Use "Send" method on the returned Request to send the API call to the service.
 13796  // the "output" return value is not valid until after Send returns without error.
 13797  //
 13798  // See StartSession for more information on using the StartSession
 13799  // API call, and error handling.
 13800  //
 13801  // This method is useful when you want to inject custom logic or configuration
 13802  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13803  //
 13804  //
 13805  //    // Example sending a request using the StartSessionRequest method.
 13806  //    req, resp := client.StartSessionRequest(params)
 13807  //
 13808  //    err := req.Send()
 13809  //    if err == nil { // resp is now filled
 13810  //        fmt.Println(resp)
 13811  //    }
 13812  //
 13813  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartSession
 13814  func (c *SSM) StartSessionRequest(input *StartSessionInput) (req *request.Request, output *StartSessionOutput) {
 13815  	op := &request.Operation{
 13816  		Name:       opStartSession,
 13817  		HTTPMethod: "POST",
 13818  		HTTPPath:   "/",
 13819  	}
 13820  
 13821  	if input == nil {
 13822  		input = &StartSessionInput{}
 13823  	}
 13824  
 13825  	output = &StartSessionOutput{}
 13826  	req = c.newRequest(op, input, output)
 13827  	return
 13828  }
 13829  
 13830  // StartSession API operation for Amazon Simple Systems Manager (SSM).
 13831  //
 13832  // Initiates a connection to a target (for example, an instance) for a Session
 13833  // Manager session. Returns a URL and token that can be used to open a WebSocket
 13834  // connection for sending input and receiving outputs.
 13835  //
 13836  // Amazon Web Services CLI usage: start-session is an interactive command that
 13837  // requires the Session Manager plugin to be installed on the client machine
 13838  // making the call. For information, see Install the Session Manager plugin
 13839  // for the Amazon Web Services CLI (https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html)
 13840  // in the Amazon Web Services Systems Manager User Guide.
 13841  //
 13842  // Amazon Web Services Tools for PowerShell usage: Start-SSMSession isn't currently
 13843  // supported by Amazon Web Services Tools for PowerShell on Windows local machines.
 13844  //
 13845  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 13846  // with awserr.Error's Code and Message methods to get detailed information about
 13847  // the error.
 13848  //
 13849  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 13850  // API operation StartSession for usage and error information.
 13851  //
 13852  // Returned Error Types:
 13853  //   * InvalidDocument
 13854  //   The specified SSM document doesn't exist.
 13855  //
 13856  //   * TargetNotConnected
 13857  //   The specified target instance for the session isn't fully configured for
 13858  //   use with Session Manager. For more information, see Getting started with
 13859  //   Session Manager (https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started.html)
 13860  //   in the Amazon Web Services Systems Manager User Guide. This error is also
 13861  //   returned if you attempt to start a session on an instance that is located
 13862  //   in a different account or Region
 13863  //
 13864  //   * InternalServerError
 13865  //   An error occurred on the server side.
 13866  //
 13867  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartSession
 13868  func (c *SSM) StartSession(input *StartSessionInput) (*StartSessionOutput, error) {
 13869  	req, out := c.StartSessionRequest(input)
 13870  	return out, req.Send()
 13871  }
 13872  
 13873  // StartSessionWithContext is the same as StartSession with the addition of
 13874  // the ability to pass a context and additional request options.
 13875  //
 13876  // See StartSession for details on how to use this API operation.
 13877  //
 13878  // The context must be non-nil and will be used for request cancellation. If
 13879  // the context is nil a panic will occur. In the future the SDK may create
 13880  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 13881  // for more information on using Contexts.
 13882  func (c *SSM) StartSessionWithContext(ctx aws.Context, input *StartSessionInput, opts ...request.Option) (*StartSessionOutput, error) {
 13883  	req, out := c.StartSessionRequest(input)
 13884  	req.SetContext(ctx)
 13885  	req.ApplyOptions(opts...)
 13886  	return out, req.Send()
 13887  }
 13888  
 13889  const opStopAutomationExecution = "StopAutomationExecution"
 13890  
 13891  // StopAutomationExecutionRequest generates a "aws/request.Request" representing the
 13892  // client's request for the StopAutomationExecution operation. The "output" return
 13893  // value will be populated with the request's response once the request completes
 13894  // successfully.
 13895  //
 13896  // Use "Send" method on the returned Request to send the API call to the service.
 13897  // the "output" return value is not valid until after Send returns without error.
 13898  //
 13899  // See StopAutomationExecution for more information on using the StopAutomationExecution
 13900  // API call, and error handling.
 13901  //
 13902  // This method is useful when you want to inject custom logic or configuration
 13903  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13904  //
 13905  //
 13906  //    // Example sending a request using the StopAutomationExecutionRequest method.
 13907  //    req, resp := client.StopAutomationExecutionRequest(params)
 13908  //
 13909  //    err := req.Send()
 13910  //    if err == nil { // resp is now filled
 13911  //        fmt.Println(resp)
 13912  //    }
 13913  //
 13914  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StopAutomationExecution
 13915  func (c *SSM) StopAutomationExecutionRequest(input *StopAutomationExecutionInput) (req *request.Request, output *StopAutomationExecutionOutput) {
 13916  	op := &request.Operation{
 13917  		Name:       opStopAutomationExecution,
 13918  		HTTPMethod: "POST",
 13919  		HTTPPath:   "/",
 13920  	}
 13921  
 13922  	if input == nil {
 13923  		input = &StopAutomationExecutionInput{}
 13924  	}
 13925  
 13926  	output = &StopAutomationExecutionOutput{}
 13927  	req = c.newRequest(op, input, output)
 13928  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 13929  	return
 13930  }
 13931  
 13932  // StopAutomationExecution API operation for Amazon Simple Systems Manager (SSM).
 13933  //
 13934  // Stop an Automation that is currently running.
 13935  //
 13936  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 13937  // with awserr.Error's Code and Message methods to get detailed information about
 13938  // the error.
 13939  //
 13940  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 13941  // API operation StopAutomationExecution for usage and error information.
 13942  //
 13943  // Returned Error Types:
 13944  //   * AutomationExecutionNotFoundException
 13945  //   There is no automation execution information for the requested automation
 13946  //   execution ID.
 13947  //
 13948  //   * InvalidAutomationStatusUpdateException
 13949  //   The specified update status operation isn't valid.
 13950  //
 13951  //   * InternalServerError
 13952  //   An error occurred on the server side.
 13953  //
 13954  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StopAutomationExecution
 13955  func (c *SSM) StopAutomationExecution(input *StopAutomationExecutionInput) (*StopAutomationExecutionOutput, error) {
 13956  	req, out := c.StopAutomationExecutionRequest(input)
 13957  	return out, req.Send()
 13958  }
 13959  
 13960  // StopAutomationExecutionWithContext is the same as StopAutomationExecution with the addition of
 13961  // the ability to pass a context and additional request options.
 13962  //
 13963  // See StopAutomationExecution for details on how to use this API operation.
 13964  //
 13965  // The context must be non-nil and will be used for request cancellation. If
 13966  // the context is nil a panic will occur. In the future the SDK may create
 13967  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 13968  // for more information on using Contexts.
 13969  func (c *SSM) StopAutomationExecutionWithContext(ctx aws.Context, input *StopAutomationExecutionInput, opts ...request.Option) (*StopAutomationExecutionOutput, error) {
 13970  	req, out := c.StopAutomationExecutionRequest(input)
 13971  	req.SetContext(ctx)
 13972  	req.ApplyOptions(opts...)
 13973  	return out, req.Send()
 13974  }
 13975  
 13976  const opTerminateSession = "TerminateSession"
 13977  
 13978  // TerminateSessionRequest generates a "aws/request.Request" representing the
 13979  // client's request for the TerminateSession operation. The "output" return
 13980  // value will be populated with the request's response once the request completes
 13981  // successfully.
 13982  //
 13983  // Use "Send" method on the returned Request to send the API call to the service.
 13984  // the "output" return value is not valid until after Send returns without error.
 13985  //
 13986  // See TerminateSession for more information on using the TerminateSession
 13987  // API call, and error handling.
 13988  //
 13989  // This method is useful when you want to inject custom logic or configuration
 13990  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 13991  //
 13992  //
 13993  //    // Example sending a request using the TerminateSessionRequest method.
 13994  //    req, resp := client.TerminateSessionRequest(params)
 13995  //
 13996  //    err := req.Send()
 13997  //    if err == nil { // resp is now filled
 13998  //        fmt.Println(resp)
 13999  //    }
 14000  //
 14001  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/TerminateSession
 14002  func (c *SSM) TerminateSessionRequest(input *TerminateSessionInput) (req *request.Request, output *TerminateSessionOutput) {
 14003  	op := &request.Operation{
 14004  		Name:       opTerminateSession,
 14005  		HTTPMethod: "POST",
 14006  		HTTPPath:   "/",
 14007  	}
 14008  
 14009  	if input == nil {
 14010  		input = &TerminateSessionInput{}
 14011  	}
 14012  
 14013  	output = &TerminateSessionOutput{}
 14014  	req = c.newRequest(op, input, output)
 14015  	return
 14016  }
 14017  
 14018  // TerminateSession API operation for Amazon Simple Systems Manager (SSM).
 14019  //
 14020  // Permanently ends a session and closes the data connection between the Session
 14021  // Manager client and SSM Agent on the instance. A terminated session isn't
 14022  // be resumed.
 14023  //
 14024  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 14025  // with awserr.Error's Code and Message methods to get detailed information about
 14026  // the error.
 14027  //
 14028  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 14029  // API operation TerminateSession for usage and error information.
 14030  //
 14031  // Returned Error Types:
 14032  //   * DoesNotExistException
 14033  //   Error returned when the ID specified for a resource, such as a maintenance
 14034  //   window or patch baseline, doesn't exist.
 14035  //
 14036  //   For information about resource quotas in Amazon Web Services Systems Manager,
 14037  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 14038  //   in the Amazon Web Services General Reference.
 14039  //
 14040  //   * InternalServerError
 14041  //   An error occurred on the server side.
 14042  //
 14043  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/TerminateSession
 14044  func (c *SSM) TerminateSession(input *TerminateSessionInput) (*TerminateSessionOutput, error) {
 14045  	req, out := c.TerminateSessionRequest(input)
 14046  	return out, req.Send()
 14047  }
 14048  
 14049  // TerminateSessionWithContext is the same as TerminateSession with the addition of
 14050  // the ability to pass a context and additional request options.
 14051  //
 14052  // See TerminateSession for details on how to use this API operation.
 14053  //
 14054  // The context must be non-nil and will be used for request cancellation. If
 14055  // the context is nil a panic will occur. In the future the SDK may create
 14056  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 14057  // for more information on using Contexts.
 14058  func (c *SSM) TerminateSessionWithContext(ctx aws.Context, input *TerminateSessionInput, opts ...request.Option) (*TerminateSessionOutput, error) {
 14059  	req, out := c.TerminateSessionRequest(input)
 14060  	req.SetContext(ctx)
 14061  	req.ApplyOptions(opts...)
 14062  	return out, req.Send()
 14063  }
 14064  
 14065  const opUnlabelParameterVersion = "UnlabelParameterVersion"
 14066  
 14067  // UnlabelParameterVersionRequest generates a "aws/request.Request" representing the
 14068  // client's request for the UnlabelParameterVersion operation. The "output" return
 14069  // value will be populated with the request's response once the request completes
 14070  // successfully.
 14071  //
 14072  // Use "Send" method on the returned Request to send the API call to the service.
 14073  // the "output" return value is not valid until after Send returns without error.
 14074  //
 14075  // See UnlabelParameterVersion for more information on using the UnlabelParameterVersion
 14076  // API call, and error handling.
 14077  //
 14078  // This method is useful when you want to inject custom logic or configuration
 14079  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 14080  //
 14081  //
 14082  //    // Example sending a request using the UnlabelParameterVersionRequest method.
 14083  //    req, resp := client.UnlabelParameterVersionRequest(params)
 14084  //
 14085  //    err := req.Send()
 14086  //    if err == nil { // resp is now filled
 14087  //        fmt.Println(resp)
 14088  //    }
 14089  //
 14090  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UnlabelParameterVersion
 14091  func (c *SSM) UnlabelParameterVersionRequest(input *UnlabelParameterVersionInput) (req *request.Request, output *UnlabelParameterVersionOutput) {
 14092  	op := &request.Operation{
 14093  		Name:       opUnlabelParameterVersion,
 14094  		HTTPMethod: "POST",
 14095  		HTTPPath:   "/",
 14096  	}
 14097  
 14098  	if input == nil {
 14099  		input = &UnlabelParameterVersionInput{}
 14100  	}
 14101  
 14102  	output = &UnlabelParameterVersionOutput{}
 14103  	req = c.newRequest(op, input, output)
 14104  	return
 14105  }
 14106  
 14107  // UnlabelParameterVersion API operation for Amazon Simple Systems Manager (SSM).
 14108  //
 14109  // Remove a label or labels from a parameter.
 14110  //
 14111  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 14112  // with awserr.Error's Code and Message methods to get detailed information about
 14113  // the error.
 14114  //
 14115  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 14116  // API operation UnlabelParameterVersion for usage and error information.
 14117  //
 14118  // Returned Error Types:
 14119  //   * InternalServerError
 14120  //   An error occurred on the server side.
 14121  //
 14122  //   * TooManyUpdates
 14123  //   There are concurrent updates for a resource that supports one update at a
 14124  //   time.
 14125  //
 14126  //   * ParameterNotFound
 14127  //   The parameter couldn't be found. Verify the name and try again.
 14128  //
 14129  //   * ParameterVersionNotFound
 14130  //   The specified parameter version wasn't found. Verify the parameter name and
 14131  //   version, and try again.
 14132  //
 14133  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UnlabelParameterVersion
 14134  func (c *SSM) UnlabelParameterVersion(input *UnlabelParameterVersionInput) (*UnlabelParameterVersionOutput, error) {
 14135  	req, out := c.UnlabelParameterVersionRequest(input)
 14136  	return out, req.Send()
 14137  }
 14138  
 14139  // UnlabelParameterVersionWithContext is the same as UnlabelParameterVersion with the addition of
 14140  // the ability to pass a context and additional request options.
 14141  //
 14142  // See UnlabelParameterVersion for details on how to use this API operation.
 14143  //
 14144  // The context must be non-nil and will be used for request cancellation. If
 14145  // the context is nil a panic will occur. In the future the SDK may create
 14146  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 14147  // for more information on using Contexts.
 14148  func (c *SSM) UnlabelParameterVersionWithContext(ctx aws.Context, input *UnlabelParameterVersionInput, opts ...request.Option) (*UnlabelParameterVersionOutput, error) {
 14149  	req, out := c.UnlabelParameterVersionRequest(input)
 14150  	req.SetContext(ctx)
 14151  	req.ApplyOptions(opts...)
 14152  	return out, req.Send()
 14153  }
 14154  
 14155  const opUpdateAssociation = "UpdateAssociation"
 14156  
 14157  // UpdateAssociationRequest generates a "aws/request.Request" representing the
 14158  // client's request for the UpdateAssociation operation. The "output" return
 14159  // value will be populated with the request's response once the request completes
 14160  // successfully.
 14161  //
 14162  // Use "Send" method on the returned Request to send the API call to the service.
 14163  // the "output" return value is not valid until after Send returns without error.
 14164  //
 14165  // See UpdateAssociation for more information on using the UpdateAssociation
 14166  // API call, and error handling.
 14167  //
 14168  // This method is useful when you want to inject custom logic or configuration
 14169  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 14170  //
 14171  //
 14172  //    // Example sending a request using the UpdateAssociationRequest method.
 14173  //    req, resp := client.UpdateAssociationRequest(params)
 14174  //
 14175  //    err := req.Send()
 14176  //    if err == nil { // resp is now filled
 14177  //        fmt.Println(resp)
 14178  //    }
 14179  //
 14180  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateAssociation
 14181  func (c *SSM) UpdateAssociationRequest(input *UpdateAssociationInput) (req *request.Request, output *UpdateAssociationOutput) {
 14182  	op := &request.Operation{
 14183  		Name:       opUpdateAssociation,
 14184  		HTTPMethod: "POST",
 14185  		HTTPPath:   "/",
 14186  	}
 14187  
 14188  	if input == nil {
 14189  		input = &UpdateAssociationInput{}
 14190  	}
 14191  
 14192  	output = &UpdateAssociationOutput{}
 14193  	req = c.newRequest(op, input, output)
 14194  	return
 14195  }
 14196  
 14197  // UpdateAssociation API operation for Amazon Simple Systems Manager (SSM).
 14198  //
 14199  // Updates an association. You can update the association name and version,
 14200  // the document version, schedule, parameters, and Amazon Simple Storage Service
 14201  // (Amazon S3) output.
 14202  //
 14203  // In order to call this API operation, your Identity and Access Management
 14204  // (IAM) user account, group, or role must be configured with permission to
 14205  // call the DescribeAssociation API operation. If you don't have permission
 14206  // to call DescribeAssociation, then you receive the following error: An error
 14207  // occurred (AccessDeniedException) when calling the UpdateAssociation operation:
 14208  // User: <user_arn> isn't authorized to perform: ssm:DescribeAssociation on
 14209  // resource: <resource_arn>
 14210  //
 14211  // When you update an association, the association immediately runs against
 14212  // the specified targets.
 14213  //
 14214  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 14215  // with awserr.Error's Code and Message methods to get detailed information about
 14216  // the error.
 14217  //
 14218  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 14219  // API operation UpdateAssociation for usage and error information.
 14220  //
 14221  // Returned Error Types:
 14222  //   * InternalServerError
 14223  //   An error occurred on the server side.
 14224  //
 14225  //   * InvalidSchedule
 14226  //   The schedule is invalid. Verify your cron or rate expression and try again.
 14227  //
 14228  //   * InvalidParameters
 14229  //   You must specify values for all required parameters in the Amazon Web Services
 14230  //   Systems Manager document (SSM document). You can only supply values to parameters
 14231  //   defined in the SSM document.
 14232  //
 14233  //   * InvalidOutputLocation
 14234  //   The output location isn't valid or doesn't exist.
 14235  //
 14236  //   * InvalidDocumentVersion
 14237  //   The document version isn't valid or doesn't exist.
 14238  //
 14239  //   * AssociationDoesNotExist
 14240  //   The specified association doesn't exist.
 14241  //
 14242  //   * InvalidUpdate
 14243  //   The update isn't valid.
 14244  //
 14245  //   * TooManyUpdates
 14246  //   There are concurrent updates for a resource that supports one update at a
 14247  //   time.
 14248  //
 14249  //   * InvalidDocument
 14250  //   The specified SSM document doesn't exist.
 14251  //
 14252  //   * InvalidTarget
 14253  //   The target isn't valid or doesn't exist. It might not be configured for Systems
 14254  //   Manager or you might not have permission to perform the operation.
 14255  //
 14256  //   * InvalidAssociationVersion
 14257  //   The version you specified isn't valid. Use ListAssociationVersions to view
 14258  //   all versions of an association according to the association ID. Or, use the
 14259  //   $LATEST parameter to view the latest version of the association.
 14260  //
 14261  //   * AssociationVersionLimitExceeded
 14262  //   You have reached the maximum number versions allowed for an association.
 14263  //   Each association has a limit of 1,000 versions.
 14264  //
 14265  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateAssociation
 14266  func (c *SSM) UpdateAssociation(input *UpdateAssociationInput) (*UpdateAssociationOutput, error) {
 14267  	req, out := c.UpdateAssociationRequest(input)
 14268  	return out, req.Send()
 14269  }
 14270  
 14271  // UpdateAssociationWithContext is the same as UpdateAssociation with the addition of
 14272  // the ability to pass a context and additional request options.
 14273  //
 14274  // See UpdateAssociation for details on how to use this API operation.
 14275  //
 14276  // The context must be non-nil and will be used for request cancellation. If
 14277  // the context is nil a panic will occur. In the future the SDK may create
 14278  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 14279  // for more information on using Contexts.
 14280  func (c *SSM) UpdateAssociationWithContext(ctx aws.Context, input *UpdateAssociationInput, opts ...request.Option) (*UpdateAssociationOutput, error) {
 14281  	req, out := c.UpdateAssociationRequest(input)
 14282  	req.SetContext(ctx)
 14283  	req.ApplyOptions(opts...)
 14284  	return out, req.Send()
 14285  }
 14286  
 14287  const opUpdateAssociationStatus = "UpdateAssociationStatus"
 14288  
 14289  // UpdateAssociationStatusRequest generates a "aws/request.Request" representing the
 14290  // client's request for the UpdateAssociationStatus operation. The "output" return
 14291  // value will be populated with the request's response once the request completes
 14292  // successfully.
 14293  //
 14294  // Use "Send" method on the returned Request to send the API call to the service.
 14295  // the "output" return value is not valid until after Send returns without error.
 14296  //
 14297  // See UpdateAssociationStatus for more information on using the UpdateAssociationStatus
 14298  // API call, and error handling.
 14299  //
 14300  // This method is useful when you want to inject custom logic or configuration
 14301  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 14302  //
 14303  //
 14304  //    // Example sending a request using the UpdateAssociationStatusRequest method.
 14305  //    req, resp := client.UpdateAssociationStatusRequest(params)
 14306  //
 14307  //    err := req.Send()
 14308  //    if err == nil { // resp is now filled
 14309  //        fmt.Println(resp)
 14310  //    }
 14311  //
 14312  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateAssociationStatus
 14313  func (c *SSM) UpdateAssociationStatusRequest(input *UpdateAssociationStatusInput) (req *request.Request, output *UpdateAssociationStatusOutput) {
 14314  	op := &request.Operation{
 14315  		Name:       opUpdateAssociationStatus,
 14316  		HTTPMethod: "POST",
 14317  		HTTPPath:   "/",
 14318  	}
 14319  
 14320  	if input == nil {
 14321  		input = &UpdateAssociationStatusInput{}
 14322  	}
 14323  
 14324  	output = &UpdateAssociationStatusOutput{}
 14325  	req = c.newRequest(op, input, output)
 14326  	return
 14327  }
 14328  
 14329  // UpdateAssociationStatus API operation for Amazon Simple Systems Manager (SSM).
 14330  //
 14331  // Updates the status of the Amazon Web Services Systems Manager document (SSM
 14332  // document) associated with the specified instance.
 14333  //
 14334  // UpdateAssociationStatus is primarily used by the Amazon Web Services Systems
 14335  // Manager Agent (SSM Agent) to report status updates about your associations
 14336  // and is only used for associations created with the InstanceId legacy parameter.
 14337  //
 14338  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 14339  // with awserr.Error's Code and Message methods to get detailed information about
 14340  // the error.
 14341  //
 14342  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 14343  // API operation UpdateAssociationStatus for usage and error information.
 14344  //
 14345  // Returned Error Types:
 14346  //   * InternalServerError
 14347  //   An error occurred on the server side.
 14348  //
 14349  //   * InvalidInstanceId
 14350  //   The following problems can cause this exception:
 14351  //
 14352  //      * You don't have permission to access the instance.
 14353  //
 14354  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
 14355  //      Verify that SSM Agent is running.
 14356  //
 14357  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
 14358  //      Agent.
 14359  //
 14360  //      * The instance isn't in valid state. Valid states are: Running, Pending,
 14361  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
 14362  //
 14363  //   * InvalidDocument
 14364  //   The specified SSM document doesn't exist.
 14365  //
 14366  //   * AssociationDoesNotExist
 14367  //   The specified association doesn't exist.
 14368  //
 14369  //   * StatusUnchanged
 14370  //   The updated status is the same as the current status.
 14371  //
 14372  //   * TooManyUpdates
 14373  //   There are concurrent updates for a resource that supports one update at a
 14374  //   time.
 14375  //
 14376  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateAssociationStatus
 14377  func (c *SSM) UpdateAssociationStatus(input *UpdateAssociationStatusInput) (*UpdateAssociationStatusOutput, error) {
 14378  	req, out := c.UpdateAssociationStatusRequest(input)
 14379  	return out, req.Send()
 14380  }
 14381  
 14382  // UpdateAssociationStatusWithContext is the same as UpdateAssociationStatus with the addition of
 14383  // the ability to pass a context and additional request options.
 14384  //
 14385  // See UpdateAssociationStatus for details on how to use this API operation.
 14386  //
 14387  // The context must be non-nil and will be used for request cancellation. If
 14388  // the context is nil a panic will occur. In the future the SDK may create
 14389  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 14390  // for more information on using Contexts.
 14391  func (c *SSM) UpdateAssociationStatusWithContext(ctx aws.Context, input *UpdateAssociationStatusInput, opts ...request.Option) (*UpdateAssociationStatusOutput, error) {
 14392  	req, out := c.UpdateAssociationStatusRequest(input)
 14393  	req.SetContext(ctx)
 14394  	req.ApplyOptions(opts...)
 14395  	return out, req.Send()
 14396  }
 14397  
 14398  const opUpdateDocument = "UpdateDocument"
 14399  
 14400  // UpdateDocumentRequest generates a "aws/request.Request" representing the
 14401  // client's request for the UpdateDocument operation. The "output" return
 14402  // value will be populated with the request's response once the request completes
 14403  // successfully.
 14404  //
 14405  // Use "Send" method on the returned Request to send the API call to the service.
 14406  // the "output" return value is not valid until after Send returns without error.
 14407  //
 14408  // See UpdateDocument for more information on using the UpdateDocument
 14409  // API call, and error handling.
 14410  //
 14411  // This method is useful when you want to inject custom logic or configuration
 14412  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 14413  //
 14414  //
 14415  //    // Example sending a request using the UpdateDocumentRequest method.
 14416  //    req, resp := client.UpdateDocumentRequest(params)
 14417  //
 14418  //    err := req.Send()
 14419  //    if err == nil { // resp is now filled
 14420  //        fmt.Println(resp)
 14421  //    }
 14422  //
 14423  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocument
 14424  func (c *SSM) UpdateDocumentRequest(input *UpdateDocumentInput) (req *request.Request, output *UpdateDocumentOutput) {
 14425  	op := &request.Operation{
 14426  		Name:       opUpdateDocument,
 14427  		HTTPMethod: "POST",
 14428  		HTTPPath:   "/",
 14429  	}
 14430  
 14431  	if input == nil {
 14432  		input = &UpdateDocumentInput{}
 14433  	}
 14434  
 14435  	output = &UpdateDocumentOutput{}
 14436  	req = c.newRequest(op, input, output)
 14437  	return
 14438  }
 14439  
 14440  // UpdateDocument API operation for Amazon Simple Systems Manager (SSM).
 14441  //
 14442  // Updates one or more values for an SSM document.
 14443  //
 14444  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 14445  // with awserr.Error's Code and Message methods to get detailed information about
 14446  // the error.
 14447  //
 14448  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 14449  // API operation UpdateDocument for usage and error information.
 14450  //
 14451  // Returned Error Types:
 14452  //   * MaxDocumentSizeExceeded
 14453  //   The size limit of a document is 64 KB.
 14454  //
 14455  //   * DocumentVersionLimitExceeded
 14456  //   The document has too many versions. Delete one or more document versions
 14457  //   and try again.
 14458  //
 14459  //   * InternalServerError
 14460  //   An error occurred on the server side.
 14461  //
 14462  //   * DuplicateDocumentContent
 14463  //   The content of the association document matches another document. Change
 14464  //   the content of the document and try again.
 14465  //
 14466  //   * DuplicateDocumentVersionName
 14467  //   The version name has already been used in this document. Specify a different
 14468  //   version name, and then try again.
 14469  //
 14470  //   * InvalidDocumentContent
 14471  //   The content for the document isn't valid.
 14472  //
 14473  //   * InvalidDocumentVersion
 14474  //   The document version isn't valid or doesn't exist.
 14475  //
 14476  //   * InvalidDocumentSchemaVersion
 14477  //   The version of the document schema isn't supported.
 14478  //
 14479  //   * InvalidDocument
 14480  //   The specified SSM document doesn't exist.
 14481  //
 14482  //   * InvalidDocumentOperation
 14483  //   You attempted to delete a document while it is still shared. You must stop
 14484  //   sharing the document before you can delete it.
 14485  //
 14486  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocument
 14487  func (c *SSM) UpdateDocument(input *UpdateDocumentInput) (*UpdateDocumentOutput, error) {
 14488  	req, out := c.UpdateDocumentRequest(input)
 14489  	return out, req.Send()
 14490  }
 14491  
 14492  // UpdateDocumentWithContext is the same as UpdateDocument with the addition of
 14493  // the ability to pass a context and additional request options.
 14494  //
 14495  // See UpdateDocument for details on how to use this API operation.
 14496  //
 14497  // The context must be non-nil and will be used for request cancellation. If
 14498  // the context is nil a panic will occur. In the future the SDK may create
 14499  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 14500  // for more information on using Contexts.
 14501  func (c *SSM) UpdateDocumentWithContext(ctx aws.Context, input *UpdateDocumentInput, opts ...request.Option) (*UpdateDocumentOutput, error) {
 14502  	req, out := c.UpdateDocumentRequest(input)
 14503  	req.SetContext(ctx)
 14504  	req.ApplyOptions(opts...)
 14505  	return out, req.Send()
 14506  }
 14507  
 14508  const opUpdateDocumentDefaultVersion = "UpdateDocumentDefaultVersion"
 14509  
 14510  // UpdateDocumentDefaultVersionRequest generates a "aws/request.Request" representing the
 14511  // client's request for the UpdateDocumentDefaultVersion operation. The "output" return
 14512  // value will be populated with the request's response once the request completes
 14513  // successfully.
 14514  //
 14515  // Use "Send" method on the returned Request to send the API call to the service.
 14516  // the "output" return value is not valid until after Send returns without error.
 14517  //
 14518  // See UpdateDocumentDefaultVersion for more information on using the UpdateDocumentDefaultVersion
 14519  // API call, and error handling.
 14520  //
 14521  // This method is useful when you want to inject custom logic or configuration
 14522  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 14523  //
 14524  //
 14525  //    // Example sending a request using the UpdateDocumentDefaultVersionRequest method.
 14526  //    req, resp := client.UpdateDocumentDefaultVersionRequest(params)
 14527  //
 14528  //    err := req.Send()
 14529  //    if err == nil { // resp is now filled
 14530  //        fmt.Println(resp)
 14531  //    }
 14532  //
 14533  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocumentDefaultVersion
 14534  func (c *SSM) UpdateDocumentDefaultVersionRequest(input *UpdateDocumentDefaultVersionInput) (req *request.Request, output *UpdateDocumentDefaultVersionOutput) {
 14535  	op := &request.Operation{
 14536  		Name:       opUpdateDocumentDefaultVersion,
 14537  		HTTPMethod: "POST",
 14538  		HTTPPath:   "/",
 14539  	}
 14540  
 14541  	if input == nil {
 14542  		input = &UpdateDocumentDefaultVersionInput{}
 14543  	}
 14544  
 14545  	output = &UpdateDocumentDefaultVersionOutput{}
 14546  	req = c.newRequest(op, input, output)
 14547  	return
 14548  }
 14549  
 14550  // UpdateDocumentDefaultVersion API operation for Amazon Simple Systems Manager (SSM).
 14551  //
 14552  // Set the default version of a document.
 14553  //
 14554  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 14555  // with awserr.Error's Code and Message methods to get detailed information about
 14556  // the error.
 14557  //
 14558  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 14559  // API operation UpdateDocumentDefaultVersion for usage and error information.
 14560  //
 14561  // Returned Error Types:
 14562  //   * InternalServerError
 14563  //   An error occurred on the server side.
 14564  //
 14565  //   * InvalidDocument
 14566  //   The specified SSM document doesn't exist.
 14567  //
 14568  //   * InvalidDocumentVersion
 14569  //   The document version isn't valid or doesn't exist.
 14570  //
 14571  //   * InvalidDocumentSchemaVersion
 14572  //   The version of the document schema isn't supported.
 14573  //
 14574  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocumentDefaultVersion
 14575  func (c *SSM) UpdateDocumentDefaultVersion(input *UpdateDocumentDefaultVersionInput) (*UpdateDocumentDefaultVersionOutput, error) {
 14576  	req, out := c.UpdateDocumentDefaultVersionRequest(input)
 14577  	return out, req.Send()
 14578  }
 14579  
 14580  // UpdateDocumentDefaultVersionWithContext is the same as UpdateDocumentDefaultVersion with the addition of
 14581  // the ability to pass a context and additional request options.
 14582  //
 14583  // See UpdateDocumentDefaultVersion for details on how to use this API operation.
 14584  //
 14585  // The context must be non-nil and will be used for request cancellation. If
 14586  // the context is nil a panic will occur. In the future the SDK may create
 14587  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 14588  // for more information on using Contexts.
 14589  func (c *SSM) UpdateDocumentDefaultVersionWithContext(ctx aws.Context, input *UpdateDocumentDefaultVersionInput, opts ...request.Option) (*UpdateDocumentDefaultVersionOutput, error) {
 14590  	req, out := c.UpdateDocumentDefaultVersionRequest(input)
 14591  	req.SetContext(ctx)
 14592  	req.ApplyOptions(opts...)
 14593  	return out, req.Send()
 14594  }
 14595  
 14596  const opUpdateDocumentMetadata = "UpdateDocumentMetadata"
 14597  
 14598  // UpdateDocumentMetadataRequest generates a "aws/request.Request" representing the
 14599  // client's request for the UpdateDocumentMetadata operation. The "output" return
 14600  // value will be populated with the request's response once the request completes
 14601  // successfully.
 14602  //
 14603  // Use "Send" method on the returned Request to send the API call to the service.
 14604  // the "output" return value is not valid until after Send returns without error.
 14605  //
 14606  // See UpdateDocumentMetadata for more information on using the UpdateDocumentMetadata
 14607  // API call, and error handling.
 14608  //
 14609  // This method is useful when you want to inject custom logic or configuration
 14610  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 14611  //
 14612  //
 14613  //    // Example sending a request using the UpdateDocumentMetadataRequest method.
 14614  //    req, resp := client.UpdateDocumentMetadataRequest(params)
 14615  //
 14616  //    err := req.Send()
 14617  //    if err == nil { // resp is now filled
 14618  //        fmt.Println(resp)
 14619  //    }
 14620  //
 14621  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocumentMetadata
 14622  func (c *SSM) UpdateDocumentMetadataRequest(input *UpdateDocumentMetadataInput) (req *request.Request, output *UpdateDocumentMetadataOutput) {
 14623  	op := &request.Operation{
 14624  		Name:       opUpdateDocumentMetadata,
 14625  		HTTPMethod: "POST",
 14626  		HTTPPath:   "/",
 14627  	}
 14628  
 14629  	if input == nil {
 14630  		input = &UpdateDocumentMetadataInput{}
 14631  	}
 14632  
 14633  	output = &UpdateDocumentMetadataOutput{}
 14634  	req = c.newRequest(op, input, output)
 14635  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 14636  	return
 14637  }
 14638  
 14639  // UpdateDocumentMetadata API operation for Amazon Simple Systems Manager (SSM).
 14640  //
 14641  // Updates information related to approval reviews for a specific version of
 14642  // a change template in Change Manager.
 14643  //
 14644  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 14645  // with awserr.Error's Code and Message methods to get detailed information about
 14646  // the error.
 14647  //
 14648  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 14649  // API operation UpdateDocumentMetadata for usage and error information.
 14650  //
 14651  // Returned Error Types:
 14652  //   * InternalServerError
 14653  //   An error occurred on the server side.
 14654  //
 14655  //   * InvalidDocument
 14656  //   The specified SSM document doesn't exist.
 14657  //
 14658  //   * InvalidDocumentOperation
 14659  //   You attempted to delete a document while it is still shared. You must stop
 14660  //   sharing the document before you can delete it.
 14661  //
 14662  //   * InvalidDocumentVersion
 14663  //   The document version isn't valid or doesn't exist.
 14664  //
 14665  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocumentMetadata
 14666  func (c *SSM) UpdateDocumentMetadata(input *UpdateDocumentMetadataInput) (*UpdateDocumentMetadataOutput, error) {
 14667  	req, out := c.UpdateDocumentMetadataRequest(input)
 14668  	return out, req.Send()
 14669  }
 14670  
 14671  // UpdateDocumentMetadataWithContext is the same as UpdateDocumentMetadata with the addition of
 14672  // the ability to pass a context and additional request options.
 14673  //
 14674  // See UpdateDocumentMetadata for details on how to use this API operation.
 14675  //
 14676  // The context must be non-nil and will be used for request cancellation. If
 14677  // the context is nil a panic will occur. In the future the SDK may create
 14678  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 14679  // for more information on using Contexts.
 14680  func (c *SSM) UpdateDocumentMetadataWithContext(ctx aws.Context, input *UpdateDocumentMetadataInput, opts ...request.Option) (*UpdateDocumentMetadataOutput, error) {
 14681  	req, out := c.UpdateDocumentMetadataRequest(input)
 14682  	req.SetContext(ctx)
 14683  	req.ApplyOptions(opts...)
 14684  	return out, req.Send()
 14685  }
 14686  
 14687  const opUpdateMaintenanceWindow = "UpdateMaintenanceWindow"
 14688  
 14689  // UpdateMaintenanceWindowRequest generates a "aws/request.Request" representing the
 14690  // client's request for the UpdateMaintenanceWindow operation. The "output" return
 14691  // value will be populated with the request's response once the request completes
 14692  // successfully.
 14693  //
 14694  // Use "Send" method on the returned Request to send the API call to the service.
 14695  // the "output" return value is not valid until after Send returns without error.
 14696  //
 14697  // See UpdateMaintenanceWindow for more information on using the UpdateMaintenanceWindow
 14698  // API call, and error handling.
 14699  //
 14700  // This method is useful when you want to inject custom logic or configuration
 14701  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 14702  //
 14703  //
 14704  //    // Example sending a request using the UpdateMaintenanceWindowRequest method.
 14705  //    req, resp := client.UpdateMaintenanceWindowRequest(params)
 14706  //
 14707  //    err := req.Send()
 14708  //    if err == nil { // resp is now filled
 14709  //        fmt.Println(resp)
 14710  //    }
 14711  //
 14712  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindow
 14713  func (c *SSM) UpdateMaintenanceWindowRequest(input *UpdateMaintenanceWindowInput) (req *request.Request, output *UpdateMaintenanceWindowOutput) {
 14714  	op := &request.Operation{
 14715  		Name:       opUpdateMaintenanceWindow,
 14716  		HTTPMethod: "POST",
 14717  		HTTPPath:   "/",
 14718  	}
 14719  
 14720  	if input == nil {
 14721  		input = &UpdateMaintenanceWindowInput{}
 14722  	}
 14723  
 14724  	output = &UpdateMaintenanceWindowOutput{}
 14725  	req = c.newRequest(op, input, output)
 14726  	return
 14727  }
 14728  
 14729  // UpdateMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
 14730  //
 14731  // Updates an existing maintenance window. Only specified parameters are modified.
 14732  //
 14733  // The value you specify for Duration determines the specific end time for the
 14734  // maintenance window based on the time it begins. No maintenance window tasks
 14735  // are permitted to start after the resulting endtime minus the number of hours
 14736  // you specify for Cutoff. For example, if the maintenance window starts at
 14737  // 3 PM, the duration is three hours, and the value you specify for Cutoff is
 14738  // one hour, no maintenance window tasks can start after 5 PM.
 14739  //
 14740  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 14741  // with awserr.Error's Code and Message methods to get detailed information about
 14742  // the error.
 14743  //
 14744  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 14745  // API operation UpdateMaintenanceWindow for usage and error information.
 14746  //
 14747  // Returned Error Types:
 14748  //   * DoesNotExistException
 14749  //   Error returned when the ID specified for a resource, such as a maintenance
 14750  //   window or patch baseline, doesn't exist.
 14751  //
 14752  //   For information about resource quotas in Amazon Web Services Systems Manager,
 14753  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 14754  //   in the Amazon Web Services General Reference.
 14755  //
 14756  //   * InternalServerError
 14757  //   An error occurred on the server side.
 14758  //
 14759  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindow
 14760  func (c *SSM) UpdateMaintenanceWindow(input *UpdateMaintenanceWindowInput) (*UpdateMaintenanceWindowOutput, error) {
 14761  	req, out := c.UpdateMaintenanceWindowRequest(input)
 14762  	return out, req.Send()
 14763  }
 14764  
 14765  // UpdateMaintenanceWindowWithContext is the same as UpdateMaintenanceWindow with the addition of
 14766  // the ability to pass a context and additional request options.
 14767  //
 14768  // See UpdateMaintenanceWindow for details on how to use this API operation.
 14769  //
 14770  // The context must be non-nil and will be used for request cancellation. If
 14771  // the context is nil a panic will occur. In the future the SDK may create
 14772  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 14773  // for more information on using Contexts.
 14774  func (c *SSM) UpdateMaintenanceWindowWithContext(ctx aws.Context, input *UpdateMaintenanceWindowInput, opts ...request.Option) (*UpdateMaintenanceWindowOutput, error) {
 14775  	req, out := c.UpdateMaintenanceWindowRequest(input)
 14776  	req.SetContext(ctx)
 14777  	req.ApplyOptions(opts...)
 14778  	return out, req.Send()
 14779  }
 14780  
 14781  const opUpdateMaintenanceWindowTarget = "UpdateMaintenanceWindowTarget"
 14782  
 14783  // UpdateMaintenanceWindowTargetRequest generates a "aws/request.Request" representing the
 14784  // client's request for the UpdateMaintenanceWindowTarget operation. The "output" return
 14785  // value will be populated with the request's response once the request completes
 14786  // successfully.
 14787  //
 14788  // Use "Send" method on the returned Request to send the API call to the service.
 14789  // the "output" return value is not valid until after Send returns without error.
 14790  //
 14791  // See UpdateMaintenanceWindowTarget for more information on using the UpdateMaintenanceWindowTarget
 14792  // API call, and error handling.
 14793  //
 14794  // This method is useful when you want to inject custom logic or configuration
 14795  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 14796  //
 14797  //
 14798  //    // Example sending a request using the UpdateMaintenanceWindowTargetRequest method.
 14799  //    req, resp := client.UpdateMaintenanceWindowTargetRequest(params)
 14800  //
 14801  //    err := req.Send()
 14802  //    if err == nil { // resp is now filled
 14803  //        fmt.Println(resp)
 14804  //    }
 14805  //
 14806  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindowTarget
 14807  func (c *SSM) UpdateMaintenanceWindowTargetRequest(input *UpdateMaintenanceWindowTargetInput) (req *request.Request, output *UpdateMaintenanceWindowTargetOutput) {
 14808  	op := &request.Operation{
 14809  		Name:       opUpdateMaintenanceWindowTarget,
 14810  		HTTPMethod: "POST",
 14811  		HTTPPath:   "/",
 14812  	}
 14813  
 14814  	if input == nil {
 14815  		input = &UpdateMaintenanceWindowTargetInput{}
 14816  	}
 14817  
 14818  	output = &UpdateMaintenanceWindowTargetOutput{}
 14819  	req = c.newRequest(op, input, output)
 14820  	return
 14821  }
 14822  
 14823  // UpdateMaintenanceWindowTarget API operation for Amazon Simple Systems Manager (SSM).
 14824  //
 14825  // Modifies the target of an existing maintenance window. You can change the
 14826  // following:
 14827  //
 14828  //    * Name
 14829  //
 14830  //    * Description
 14831  //
 14832  //    * Owner
 14833  //
 14834  //    * IDs for an ID target
 14835  //
 14836  //    * Tags for a Tag target
 14837  //
 14838  //    * From any supported tag type to another. The three supported tag types
 14839  //    are ID target, Tag target, and resource group. For more information, see
 14840  //    Target.
 14841  //
 14842  // If a parameter is null, then the corresponding field isn't modified.
 14843  //
 14844  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 14845  // with awserr.Error's Code and Message methods to get detailed information about
 14846  // the error.
 14847  //
 14848  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 14849  // API operation UpdateMaintenanceWindowTarget for usage and error information.
 14850  //
 14851  // Returned Error Types:
 14852  //   * DoesNotExistException
 14853  //   Error returned when the ID specified for a resource, such as a maintenance
 14854  //   window or patch baseline, doesn't exist.
 14855  //
 14856  //   For information about resource quotas in Amazon Web Services Systems Manager,
 14857  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 14858  //   in the Amazon Web Services General Reference.
 14859  //
 14860  //   * InternalServerError
 14861  //   An error occurred on the server side.
 14862  //
 14863  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindowTarget
 14864  func (c *SSM) UpdateMaintenanceWindowTarget(input *UpdateMaintenanceWindowTargetInput) (*UpdateMaintenanceWindowTargetOutput, error) {
 14865  	req, out := c.UpdateMaintenanceWindowTargetRequest(input)
 14866  	return out, req.Send()
 14867  }
 14868  
 14869  // UpdateMaintenanceWindowTargetWithContext is the same as UpdateMaintenanceWindowTarget with the addition of
 14870  // the ability to pass a context and additional request options.
 14871  //
 14872  // See UpdateMaintenanceWindowTarget for details on how to use this API operation.
 14873  //
 14874  // The context must be non-nil and will be used for request cancellation. If
 14875  // the context is nil a panic will occur. In the future the SDK may create
 14876  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 14877  // for more information on using Contexts.
 14878  func (c *SSM) UpdateMaintenanceWindowTargetWithContext(ctx aws.Context, input *UpdateMaintenanceWindowTargetInput, opts ...request.Option) (*UpdateMaintenanceWindowTargetOutput, error) {
 14879  	req, out := c.UpdateMaintenanceWindowTargetRequest(input)
 14880  	req.SetContext(ctx)
 14881  	req.ApplyOptions(opts...)
 14882  	return out, req.Send()
 14883  }
 14884  
 14885  const opUpdateMaintenanceWindowTask = "UpdateMaintenanceWindowTask"
 14886  
 14887  // UpdateMaintenanceWindowTaskRequest generates a "aws/request.Request" representing the
 14888  // client's request for the UpdateMaintenanceWindowTask operation. The "output" return
 14889  // value will be populated with the request's response once the request completes
 14890  // successfully.
 14891  //
 14892  // Use "Send" method on the returned Request to send the API call to the service.
 14893  // the "output" return value is not valid until after Send returns without error.
 14894  //
 14895  // See UpdateMaintenanceWindowTask for more information on using the UpdateMaintenanceWindowTask
 14896  // API call, and error handling.
 14897  //
 14898  // This method is useful when you want to inject custom logic or configuration
 14899  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 14900  //
 14901  //
 14902  //    // Example sending a request using the UpdateMaintenanceWindowTaskRequest method.
 14903  //    req, resp := client.UpdateMaintenanceWindowTaskRequest(params)
 14904  //
 14905  //    err := req.Send()
 14906  //    if err == nil { // resp is now filled
 14907  //        fmt.Println(resp)
 14908  //    }
 14909  //
 14910  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindowTask
 14911  func (c *SSM) UpdateMaintenanceWindowTaskRequest(input *UpdateMaintenanceWindowTaskInput) (req *request.Request, output *UpdateMaintenanceWindowTaskOutput) {
 14912  	op := &request.Operation{
 14913  		Name:       opUpdateMaintenanceWindowTask,
 14914  		HTTPMethod: "POST",
 14915  		HTTPPath:   "/",
 14916  	}
 14917  
 14918  	if input == nil {
 14919  		input = &UpdateMaintenanceWindowTaskInput{}
 14920  	}
 14921  
 14922  	output = &UpdateMaintenanceWindowTaskOutput{}
 14923  	req = c.newRequest(op, input, output)
 14924  	return
 14925  }
 14926  
 14927  // UpdateMaintenanceWindowTask API operation for Amazon Simple Systems Manager (SSM).
 14928  //
 14929  // Modifies a task assigned to a maintenance window. You can't change the task
 14930  // type, but you can change the following values:
 14931  //
 14932  //    * TaskARN. For example, you can change a RUN_COMMAND task from AWS-RunPowerShellScript
 14933  //    to AWS-RunShellScript.
 14934  //
 14935  //    * ServiceRoleArn
 14936  //
 14937  //    * TaskInvocationParameters
 14938  //
 14939  //    * Priority
 14940  //
 14941  //    * MaxConcurrency
 14942  //
 14943  //    * MaxErrors
 14944  //
 14945  // One or more targets must be specified for maintenance window Run Command-type
 14946  // tasks. Depending on the task, targets are optional for other maintenance
 14947  // window task types (Automation, Lambda, and Step Functions). For more information
 14948  // about running tasks that don't specify targets, see Registering maintenance
 14949  // window tasks without targets (https://docs.aws.amazon.com/systems-manager/latest/userguide/maintenance-windows-targetless-tasks.html)
 14950  // in the Amazon Web Services Systems Manager User Guide.
 14951  //
 14952  // If the value for a parameter in UpdateMaintenanceWindowTask is null, then
 14953  // the corresponding field isn't modified. If you set Replace to true, then
 14954  // all fields required by the RegisterTaskWithMaintenanceWindow operation are
 14955  // required for this request. Optional fields that aren't specified are set
 14956  // to null.
 14957  //
 14958  // When you update a maintenance window task that has options specified in TaskInvocationParameters,
 14959  // you must provide again all the TaskInvocationParameters values that you want
 14960  // to retain. The values you don't specify again are removed. For example, suppose
 14961  // that when you registered a Run Command task, you specified TaskInvocationParameters
 14962  // values for Comment, NotificationConfig, and OutputS3BucketName. If you update
 14963  // the maintenance window task and specify only a different OutputS3BucketName
 14964  // value, the values for Comment and NotificationConfig are removed.
 14965  //
 14966  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 14967  // with awserr.Error's Code and Message methods to get detailed information about
 14968  // the error.
 14969  //
 14970  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 14971  // API operation UpdateMaintenanceWindowTask for usage and error information.
 14972  //
 14973  // Returned Error Types:
 14974  //   * DoesNotExistException
 14975  //   Error returned when the ID specified for a resource, such as a maintenance
 14976  //   window or patch baseline, doesn't exist.
 14977  //
 14978  //   For information about resource quotas in Amazon Web Services Systems Manager,
 14979  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 14980  //   in the Amazon Web Services General Reference.
 14981  //
 14982  //   * InternalServerError
 14983  //   An error occurred on the server side.
 14984  //
 14985  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindowTask
 14986  func (c *SSM) UpdateMaintenanceWindowTask(input *UpdateMaintenanceWindowTaskInput) (*UpdateMaintenanceWindowTaskOutput, error) {
 14987  	req, out := c.UpdateMaintenanceWindowTaskRequest(input)
 14988  	return out, req.Send()
 14989  }
 14990  
 14991  // UpdateMaintenanceWindowTaskWithContext is the same as UpdateMaintenanceWindowTask with the addition of
 14992  // the ability to pass a context and additional request options.
 14993  //
 14994  // See UpdateMaintenanceWindowTask for details on how to use this API operation.
 14995  //
 14996  // The context must be non-nil and will be used for request cancellation. If
 14997  // the context is nil a panic will occur. In the future the SDK may create
 14998  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 14999  // for more information on using Contexts.
 15000  func (c *SSM) UpdateMaintenanceWindowTaskWithContext(ctx aws.Context, input *UpdateMaintenanceWindowTaskInput, opts ...request.Option) (*UpdateMaintenanceWindowTaskOutput, error) {
 15001  	req, out := c.UpdateMaintenanceWindowTaskRequest(input)
 15002  	req.SetContext(ctx)
 15003  	req.ApplyOptions(opts...)
 15004  	return out, req.Send()
 15005  }
 15006  
 15007  const opUpdateManagedInstanceRole = "UpdateManagedInstanceRole"
 15008  
 15009  // UpdateManagedInstanceRoleRequest generates a "aws/request.Request" representing the
 15010  // client's request for the UpdateManagedInstanceRole operation. The "output" return
 15011  // value will be populated with the request's response once the request completes
 15012  // successfully.
 15013  //
 15014  // Use "Send" method on the returned Request to send the API call to the service.
 15015  // the "output" return value is not valid until after Send returns without error.
 15016  //
 15017  // See UpdateManagedInstanceRole for more information on using the UpdateManagedInstanceRole
 15018  // API call, and error handling.
 15019  //
 15020  // This method is useful when you want to inject custom logic or configuration
 15021  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 15022  //
 15023  //
 15024  //    // Example sending a request using the UpdateManagedInstanceRoleRequest method.
 15025  //    req, resp := client.UpdateManagedInstanceRoleRequest(params)
 15026  //
 15027  //    err := req.Send()
 15028  //    if err == nil { // resp is now filled
 15029  //        fmt.Println(resp)
 15030  //    }
 15031  //
 15032  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateManagedInstanceRole
 15033  func (c *SSM) UpdateManagedInstanceRoleRequest(input *UpdateManagedInstanceRoleInput) (req *request.Request, output *UpdateManagedInstanceRoleOutput) {
 15034  	op := &request.Operation{
 15035  		Name:       opUpdateManagedInstanceRole,
 15036  		HTTPMethod: "POST",
 15037  		HTTPPath:   "/",
 15038  	}
 15039  
 15040  	if input == nil {
 15041  		input = &UpdateManagedInstanceRoleInput{}
 15042  	}
 15043  
 15044  	output = &UpdateManagedInstanceRoleOutput{}
 15045  	req = c.newRequest(op, input, output)
 15046  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 15047  	return
 15048  }
 15049  
 15050  // UpdateManagedInstanceRole API operation for Amazon Simple Systems Manager (SSM).
 15051  //
 15052  // Changes the Identity and Access Management (IAM) role that is assigned to
 15053  // the on-premises instance or virtual machines (VM). IAM roles are first assigned
 15054  // to these hybrid instances during the activation process. For more information,
 15055  // see CreateActivation.
 15056  //
 15057  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 15058  // with awserr.Error's Code and Message methods to get detailed information about
 15059  // the error.
 15060  //
 15061  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 15062  // API operation UpdateManagedInstanceRole for usage and error information.
 15063  //
 15064  // Returned Error Types:
 15065  //   * InvalidInstanceId
 15066  //   The following problems can cause this exception:
 15067  //
 15068  //      * You don't have permission to access the instance.
 15069  //
 15070  //      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
 15071  //      Verify that SSM Agent is running.
 15072  //
 15073  //      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
 15074  //      Agent.
 15075  //
 15076  //      * The instance isn't in valid state. Valid states are: Running, Pending,
 15077  //      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
 15078  //
 15079  //   * InternalServerError
 15080  //   An error occurred on the server side.
 15081  //
 15082  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateManagedInstanceRole
 15083  func (c *SSM) UpdateManagedInstanceRole(input *UpdateManagedInstanceRoleInput) (*UpdateManagedInstanceRoleOutput, error) {
 15084  	req, out := c.UpdateManagedInstanceRoleRequest(input)
 15085  	return out, req.Send()
 15086  }
 15087  
 15088  // UpdateManagedInstanceRoleWithContext is the same as UpdateManagedInstanceRole with the addition of
 15089  // the ability to pass a context and additional request options.
 15090  //
 15091  // See UpdateManagedInstanceRole for details on how to use this API operation.
 15092  //
 15093  // The context must be non-nil and will be used for request cancellation. If
 15094  // the context is nil a panic will occur. In the future the SDK may create
 15095  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 15096  // for more information on using Contexts.
 15097  func (c *SSM) UpdateManagedInstanceRoleWithContext(ctx aws.Context, input *UpdateManagedInstanceRoleInput, opts ...request.Option) (*UpdateManagedInstanceRoleOutput, error) {
 15098  	req, out := c.UpdateManagedInstanceRoleRequest(input)
 15099  	req.SetContext(ctx)
 15100  	req.ApplyOptions(opts...)
 15101  	return out, req.Send()
 15102  }
 15103  
 15104  const opUpdateOpsItem = "UpdateOpsItem"
 15105  
 15106  // UpdateOpsItemRequest generates a "aws/request.Request" representing the
 15107  // client's request for the UpdateOpsItem operation. The "output" return
 15108  // value will be populated with the request's response once the request completes
 15109  // successfully.
 15110  //
 15111  // Use "Send" method on the returned Request to send the API call to the service.
 15112  // the "output" return value is not valid until after Send returns without error.
 15113  //
 15114  // See UpdateOpsItem for more information on using the UpdateOpsItem
 15115  // API call, and error handling.
 15116  //
 15117  // This method is useful when you want to inject custom logic or configuration
 15118  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 15119  //
 15120  //
 15121  //    // Example sending a request using the UpdateOpsItemRequest method.
 15122  //    req, resp := client.UpdateOpsItemRequest(params)
 15123  //
 15124  //    err := req.Send()
 15125  //    if err == nil { // resp is now filled
 15126  //        fmt.Println(resp)
 15127  //    }
 15128  //
 15129  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsItem
 15130  func (c *SSM) UpdateOpsItemRequest(input *UpdateOpsItemInput) (req *request.Request, output *UpdateOpsItemOutput) {
 15131  	op := &request.Operation{
 15132  		Name:       opUpdateOpsItem,
 15133  		HTTPMethod: "POST",
 15134  		HTTPPath:   "/",
 15135  	}
 15136  
 15137  	if input == nil {
 15138  		input = &UpdateOpsItemInput{}
 15139  	}
 15140  
 15141  	output = &UpdateOpsItemOutput{}
 15142  	req = c.newRequest(op, input, output)
 15143  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 15144  	return
 15145  }
 15146  
 15147  // UpdateOpsItem API operation for Amazon Simple Systems Manager (SSM).
 15148  //
 15149  // Edit or change an OpsItem. You must have permission in Identity and Access
 15150  // Management (IAM) to update an OpsItem. For more information, see Getting
 15151  // started with OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-getting-started.html)
 15152  // in the Amazon Web Services Systems Manager User Guide.
 15153  //
 15154  // Operations engineers and IT professionals use Amazon Web Services Systems
 15155  // Manager OpsCenter to view, investigate, and remediate operational issues
 15156  // impacting the performance and health of their Amazon Web Services resources.
 15157  // For more information, see OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html)
 15158  // in the Amazon Web Services Systems Manager User Guide.
 15159  //
 15160  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 15161  // with awserr.Error's Code and Message methods to get detailed information about
 15162  // the error.
 15163  //
 15164  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 15165  // API operation UpdateOpsItem for usage and error information.
 15166  //
 15167  // Returned Error Types:
 15168  //   * InternalServerError
 15169  //   An error occurred on the server side.
 15170  //
 15171  //   * OpsItemNotFoundException
 15172  //   The specified OpsItem ID doesn't exist. Verify the ID and try again.
 15173  //
 15174  //   * OpsItemAlreadyExistsException
 15175  //   The OpsItem already exists.
 15176  //
 15177  //   * OpsItemLimitExceededException
 15178  //   The request caused OpsItems to exceed one or more quotas. For information
 15179  //   about OpsItem quotas, see What are the resource limits for OpsCenter? (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-learn-more.html#OpsCenter-learn-more-limits).
 15180  //
 15181  //   * OpsItemInvalidParameterException
 15182  //   A specified parameter argument isn't valid. Verify the available arguments
 15183  //   and try again.
 15184  //
 15185  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsItem
 15186  func (c *SSM) UpdateOpsItem(input *UpdateOpsItemInput) (*UpdateOpsItemOutput, error) {
 15187  	req, out := c.UpdateOpsItemRequest(input)
 15188  	return out, req.Send()
 15189  }
 15190  
 15191  // UpdateOpsItemWithContext is the same as UpdateOpsItem with the addition of
 15192  // the ability to pass a context and additional request options.
 15193  //
 15194  // See UpdateOpsItem for details on how to use this API operation.
 15195  //
 15196  // The context must be non-nil and will be used for request cancellation. If
 15197  // the context is nil a panic will occur. In the future the SDK may create
 15198  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 15199  // for more information on using Contexts.
 15200  func (c *SSM) UpdateOpsItemWithContext(ctx aws.Context, input *UpdateOpsItemInput, opts ...request.Option) (*UpdateOpsItemOutput, error) {
 15201  	req, out := c.UpdateOpsItemRequest(input)
 15202  	req.SetContext(ctx)
 15203  	req.ApplyOptions(opts...)
 15204  	return out, req.Send()
 15205  }
 15206  
 15207  const opUpdateOpsMetadata = "UpdateOpsMetadata"
 15208  
 15209  // UpdateOpsMetadataRequest generates a "aws/request.Request" representing the
 15210  // client's request for the UpdateOpsMetadata operation. The "output" return
 15211  // value will be populated with the request's response once the request completes
 15212  // successfully.
 15213  //
 15214  // Use "Send" method on the returned Request to send the API call to the service.
 15215  // the "output" return value is not valid until after Send returns without error.
 15216  //
 15217  // See UpdateOpsMetadata for more information on using the UpdateOpsMetadata
 15218  // API call, and error handling.
 15219  //
 15220  // This method is useful when you want to inject custom logic or configuration
 15221  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 15222  //
 15223  //
 15224  //    // Example sending a request using the UpdateOpsMetadataRequest method.
 15225  //    req, resp := client.UpdateOpsMetadataRequest(params)
 15226  //
 15227  //    err := req.Send()
 15228  //    if err == nil { // resp is now filled
 15229  //        fmt.Println(resp)
 15230  //    }
 15231  //
 15232  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsMetadata
 15233  func (c *SSM) UpdateOpsMetadataRequest(input *UpdateOpsMetadataInput) (req *request.Request, output *UpdateOpsMetadataOutput) {
 15234  	op := &request.Operation{
 15235  		Name:       opUpdateOpsMetadata,
 15236  		HTTPMethod: "POST",
 15237  		HTTPPath:   "/",
 15238  	}
 15239  
 15240  	if input == nil {
 15241  		input = &UpdateOpsMetadataInput{}
 15242  	}
 15243  
 15244  	output = &UpdateOpsMetadataOutput{}
 15245  	req = c.newRequest(op, input, output)
 15246  	return
 15247  }
 15248  
 15249  // UpdateOpsMetadata API operation for Amazon Simple Systems Manager (SSM).
 15250  //
 15251  // Amazon Web Services Systems Manager calls this API operation when you edit
 15252  // OpsMetadata in Application Manager.
 15253  //
 15254  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 15255  // with awserr.Error's Code and Message methods to get detailed information about
 15256  // the error.
 15257  //
 15258  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 15259  // API operation UpdateOpsMetadata for usage and error information.
 15260  //
 15261  // Returned Error Types:
 15262  //   * OpsMetadataNotFoundException
 15263  //   The OpsMetadata object doesn't exist.
 15264  //
 15265  //   * OpsMetadataInvalidArgumentException
 15266  //   One of the arguments passed is invalid.
 15267  //
 15268  //   * OpsMetadataKeyLimitExceededException
 15269  //   The OpsMetadata object exceeds the maximum number of OpsMetadata keys that
 15270  //   you can assign to an application in Application Manager.
 15271  //
 15272  //   * OpsMetadataTooManyUpdatesException
 15273  //   The system is processing too many concurrent updates. Wait a few moments
 15274  //   and try again.
 15275  //
 15276  //   * InternalServerError
 15277  //   An error occurred on the server side.
 15278  //
 15279  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsMetadata
 15280  func (c *SSM) UpdateOpsMetadata(input *UpdateOpsMetadataInput) (*UpdateOpsMetadataOutput, error) {
 15281  	req, out := c.UpdateOpsMetadataRequest(input)
 15282  	return out, req.Send()
 15283  }
 15284  
 15285  // UpdateOpsMetadataWithContext is the same as UpdateOpsMetadata with the addition of
 15286  // the ability to pass a context and additional request options.
 15287  //
 15288  // See UpdateOpsMetadata for details on how to use this API operation.
 15289  //
 15290  // The context must be non-nil and will be used for request cancellation. If
 15291  // the context is nil a panic will occur. In the future the SDK may create
 15292  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 15293  // for more information on using Contexts.
 15294  func (c *SSM) UpdateOpsMetadataWithContext(ctx aws.Context, input *UpdateOpsMetadataInput, opts ...request.Option) (*UpdateOpsMetadataOutput, error) {
 15295  	req, out := c.UpdateOpsMetadataRequest(input)
 15296  	req.SetContext(ctx)
 15297  	req.ApplyOptions(opts...)
 15298  	return out, req.Send()
 15299  }
 15300  
 15301  const opUpdatePatchBaseline = "UpdatePatchBaseline"
 15302  
 15303  // UpdatePatchBaselineRequest generates a "aws/request.Request" representing the
 15304  // client's request for the UpdatePatchBaseline operation. The "output" return
 15305  // value will be populated with the request's response once the request completes
 15306  // successfully.
 15307  //
 15308  // Use "Send" method on the returned Request to send the API call to the service.
 15309  // the "output" return value is not valid until after Send returns without error.
 15310  //
 15311  // See UpdatePatchBaseline for more information on using the UpdatePatchBaseline
 15312  // API call, and error handling.
 15313  //
 15314  // This method is useful when you want to inject custom logic or configuration
 15315  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 15316  //
 15317  //
 15318  //    // Example sending a request using the UpdatePatchBaselineRequest method.
 15319  //    req, resp := client.UpdatePatchBaselineRequest(params)
 15320  //
 15321  //    err := req.Send()
 15322  //    if err == nil { // resp is now filled
 15323  //        fmt.Println(resp)
 15324  //    }
 15325  //
 15326  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdatePatchBaseline
 15327  func (c *SSM) UpdatePatchBaselineRequest(input *UpdatePatchBaselineInput) (req *request.Request, output *UpdatePatchBaselineOutput) {
 15328  	op := &request.Operation{
 15329  		Name:       opUpdatePatchBaseline,
 15330  		HTTPMethod: "POST",
 15331  		HTTPPath:   "/",
 15332  	}
 15333  
 15334  	if input == nil {
 15335  		input = &UpdatePatchBaselineInput{}
 15336  	}
 15337  
 15338  	output = &UpdatePatchBaselineOutput{}
 15339  	req = c.newRequest(op, input, output)
 15340  	return
 15341  }
 15342  
 15343  // UpdatePatchBaseline API operation for Amazon Simple Systems Manager (SSM).
 15344  //
 15345  // Modifies an existing patch baseline. Fields not specified in the request
 15346  // are left unchanged.
 15347  //
 15348  // For information about valid key-value pairs in PatchFilters for each supported
 15349  // operating system type, see PatchFilter.
 15350  //
 15351  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 15352  // with awserr.Error's Code and Message methods to get detailed information about
 15353  // the error.
 15354  //
 15355  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 15356  // API operation UpdatePatchBaseline for usage and error information.
 15357  //
 15358  // Returned Error Types:
 15359  //   * DoesNotExistException
 15360  //   Error returned when the ID specified for a resource, such as a maintenance
 15361  //   window or patch baseline, doesn't exist.
 15362  //
 15363  //   For information about resource quotas in Amazon Web Services Systems Manager,
 15364  //   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 15365  //   in the Amazon Web Services General Reference.
 15366  //
 15367  //   * InternalServerError
 15368  //   An error occurred on the server side.
 15369  //
 15370  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdatePatchBaseline
 15371  func (c *SSM) UpdatePatchBaseline(input *UpdatePatchBaselineInput) (*UpdatePatchBaselineOutput, error) {
 15372  	req, out := c.UpdatePatchBaselineRequest(input)
 15373  	return out, req.Send()
 15374  }
 15375  
 15376  // UpdatePatchBaselineWithContext is the same as UpdatePatchBaseline with the addition of
 15377  // the ability to pass a context and additional request options.
 15378  //
 15379  // See UpdatePatchBaseline for details on how to use this API operation.
 15380  //
 15381  // The context must be non-nil and will be used for request cancellation. If
 15382  // the context is nil a panic will occur. In the future the SDK may create
 15383  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 15384  // for more information on using Contexts.
 15385  func (c *SSM) UpdatePatchBaselineWithContext(ctx aws.Context, input *UpdatePatchBaselineInput, opts ...request.Option) (*UpdatePatchBaselineOutput, error) {
 15386  	req, out := c.UpdatePatchBaselineRequest(input)
 15387  	req.SetContext(ctx)
 15388  	req.ApplyOptions(opts...)
 15389  	return out, req.Send()
 15390  }
 15391  
 15392  const opUpdateResourceDataSync = "UpdateResourceDataSync"
 15393  
 15394  // UpdateResourceDataSyncRequest generates a "aws/request.Request" representing the
 15395  // client's request for the UpdateResourceDataSync operation. The "output" return
 15396  // value will be populated with the request's response once the request completes
 15397  // successfully.
 15398  //
 15399  // Use "Send" method on the returned Request to send the API call to the service.
 15400  // the "output" return value is not valid until after Send returns without error.
 15401  //
 15402  // See UpdateResourceDataSync for more information on using the UpdateResourceDataSync
 15403  // API call, and error handling.
 15404  //
 15405  // This method is useful when you want to inject custom logic or configuration
 15406  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 15407  //
 15408  //
 15409  //    // Example sending a request using the UpdateResourceDataSyncRequest method.
 15410  //    req, resp := client.UpdateResourceDataSyncRequest(params)
 15411  //
 15412  //    err := req.Send()
 15413  //    if err == nil { // resp is now filled
 15414  //        fmt.Println(resp)
 15415  //    }
 15416  //
 15417  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateResourceDataSync
 15418  func (c *SSM) UpdateResourceDataSyncRequest(input *UpdateResourceDataSyncInput) (req *request.Request, output *UpdateResourceDataSyncOutput) {
 15419  	op := &request.Operation{
 15420  		Name:       opUpdateResourceDataSync,
 15421  		HTTPMethod: "POST",
 15422  		HTTPPath:   "/",
 15423  	}
 15424  
 15425  	if input == nil {
 15426  		input = &UpdateResourceDataSyncInput{}
 15427  	}
 15428  
 15429  	output = &UpdateResourceDataSyncOutput{}
 15430  	req = c.newRequest(op, input, output)
 15431  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 15432  	return
 15433  }
 15434  
 15435  // UpdateResourceDataSync API operation for Amazon Simple Systems Manager (SSM).
 15436  //
 15437  // Update a resource data sync. After you create a resource data sync for a
 15438  // Region, you can't change the account options for that sync. For example,
 15439  // if you create a sync in the us-east-2 (Ohio) Region and you choose the Include
 15440  // only the current account option, you can't edit that sync later and choose
 15441  // the Include all accounts from my Organizations configuration option. Instead,
 15442  // you must delete the first resource data sync, and create a new one.
 15443  //
 15444  // This API operation only supports a resource data sync that was created with
 15445  // a SyncFromSource SyncType.
 15446  //
 15447  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 15448  // with awserr.Error's Code and Message methods to get detailed information about
 15449  // the error.
 15450  //
 15451  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 15452  // API operation UpdateResourceDataSync for usage and error information.
 15453  //
 15454  // Returned Error Types:
 15455  //   * ResourceDataSyncNotFoundException
 15456  //   The specified sync name wasn't found.
 15457  //
 15458  //   * ResourceDataSyncInvalidConfigurationException
 15459  //   The specified sync configuration is invalid.
 15460  //
 15461  //   * ResourceDataSyncConflictException
 15462  //   Another UpdateResourceDataSync request is being processed. Wait a few minutes
 15463  //   and try again.
 15464  //
 15465  //   * InternalServerError
 15466  //   An error occurred on the server side.
 15467  //
 15468  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateResourceDataSync
 15469  func (c *SSM) UpdateResourceDataSync(input *UpdateResourceDataSyncInput) (*UpdateResourceDataSyncOutput, error) {
 15470  	req, out := c.UpdateResourceDataSyncRequest(input)
 15471  	return out, req.Send()
 15472  }
 15473  
 15474  // UpdateResourceDataSyncWithContext is the same as UpdateResourceDataSync with the addition of
 15475  // the ability to pass a context and additional request options.
 15476  //
 15477  // See UpdateResourceDataSync for details on how to use this API operation.
 15478  //
 15479  // The context must be non-nil and will be used for request cancellation. If
 15480  // the context is nil a panic will occur. In the future the SDK may create
 15481  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 15482  // for more information on using Contexts.
 15483  func (c *SSM) UpdateResourceDataSyncWithContext(ctx aws.Context, input *UpdateResourceDataSyncInput, opts ...request.Option) (*UpdateResourceDataSyncOutput, error) {
 15484  	req, out := c.UpdateResourceDataSyncRequest(input)
 15485  	req.SetContext(ctx)
 15486  	req.ApplyOptions(opts...)
 15487  	return out, req.Send()
 15488  }
 15489  
 15490  const opUpdateServiceSetting = "UpdateServiceSetting"
 15491  
 15492  // UpdateServiceSettingRequest generates a "aws/request.Request" representing the
 15493  // client's request for the UpdateServiceSetting operation. The "output" return
 15494  // value will be populated with the request's response once the request completes
 15495  // successfully.
 15496  //
 15497  // Use "Send" method on the returned Request to send the API call to the service.
 15498  // the "output" return value is not valid until after Send returns without error.
 15499  //
 15500  // See UpdateServiceSetting for more information on using the UpdateServiceSetting
 15501  // API call, and error handling.
 15502  //
 15503  // This method is useful when you want to inject custom logic or configuration
 15504  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
 15505  //
 15506  //
 15507  //    // Example sending a request using the UpdateServiceSettingRequest method.
 15508  //    req, resp := client.UpdateServiceSettingRequest(params)
 15509  //
 15510  //    err := req.Send()
 15511  //    if err == nil { // resp is now filled
 15512  //        fmt.Println(resp)
 15513  //    }
 15514  //
 15515  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateServiceSetting
 15516  func (c *SSM) UpdateServiceSettingRequest(input *UpdateServiceSettingInput) (req *request.Request, output *UpdateServiceSettingOutput) {
 15517  	op := &request.Operation{
 15518  		Name:       opUpdateServiceSetting,
 15519  		HTTPMethod: "POST",
 15520  		HTTPPath:   "/",
 15521  	}
 15522  
 15523  	if input == nil {
 15524  		input = &UpdateServiceSettingInput{}
 15525  	}
 15526  
 15527  	output = &UpdateServiceSettingOutput{}
 15528  	req = c.newRequest(op, input, output)
 15529  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
 15530  	return
 15531  }
 15532  
 15533  // UpdateServiceSetting API operation for Amazon Simple Systems Manager (SSM).
 15534  //
 15535  // ServiceSetting is an account-level setting for an Amazon Web Services service.
 15536  // This setting defines how a user interacts with or uses a service or a feature
 15537  // of a service. For example, if an Amazon Web Services service charges money
 15538  // to the account based on feature or service usage, then the Amazon Web Services
 15539  // service team might create a default setting of "false". This means the user
 15540  // can't use this feature unless they change the setting to "true" and intentionally
 15541  // opt in for a paid feature.
 15542  //
 15543  // Services map a SettingId object to a setting value. Amazon Web Services services
 15544  // teams define the default value for a SettingId. You can't create a new SettingId,
 15545  // but you can overwrite the default value if you have the ssm:UpdateServiceSetting
 15546  // permission for the setting. Use the GetServiceSetting API operation to view
 15547  // the current value. Or, use the ResetServiceSetting to change the value back
 15548  // to the original value defined by the Amazon Web Services service team.
 15549  //
 15550  // Update the service setting for the account.
 15551  //
 15552  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
 15553  // with awserr.Error's Code and Message methods to get detailed information about
 15554  // the error.
 15555  //
 15556  // See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
 15557  // API operation UpdateServiceSetting for usage and error information.
 15558  //
 15559  // Returned Error Types:
 15560  //   * InternalServerError
 15561  //   An error occurred on the server side.
 15562  //
 15563  //   * ServiceSettingNotFound
 15564  //   The specified service setting wasn't found. Either the service name or the
 15565  //   setting hasn't been provisioned by the Amazon Web Services service team.
 15566  //
 15567  //   * TooManyUpdates
 15568  //   There are concurrent updates for a resource that supports one update at a
 15569  //   time.
 15570  //
 15571  // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateServiceSetting
 15572  func (c *SSM) UpdateServiceSetting(input *UpdateServiceSettingInput) (*UpdateServiceSettingOutput, error) {
 15573  	req, out := c.UpdateServiceSettingRequest(input)
 15574  	return out, req.Send()
 15575  }
 15576  
 15577  // UpdateServiceSettingWithContext is the same as UpdateServiceSetting with the addition of
 15578  // the ability to pass a context and additional request options.
 15579  //
 15580  // See UpdateServiceSetting for details on how to use this API operation.
 15581  //
 15582  // The context must be non-nil and will be used for request cancellation. If
 15583  // the context is nil a panic will occur. In the future the SDK may create
 15584  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
 15585  // for more information on using Contexts.
 15586  func (c *SSM) UpdateServiceSettingWithContext(ctx aws.Context, input *UpdateServiceSettingInput, opts ...request.Option) (*UpdateServiceSettingOutput, error) {
 15587  	req, out := c.UpdateServiceSettingRequest(input)
 15588  	req.SetContext(ctx)
 15589  	req.ApplyOptions(opts...)
 15590  	return out, req.Send()
 15591  }
 15592  
 15593  // Information includes the Amazon Web Services account ID where the current
 15594  // document is shared and the version shared with that account.
 15595  type AccountSharingInfo struct {
 15596  	_ struct{} `type:"structure"`
 15597  
 15598  	// The Amazon Web Services account ID where the current document is shared.
 15599  	AccountId *string `type:"string"`
 15600  
 15601  	// The version of the current document shared with the account.
 15602  	SharedDocumentVersion *string `type:"string"`
 15603  }
 15604  
 15605  // String returns the string representation.
 15606  //
 15607  // API parameter values that are decorated as "sensitive" in the API will not
 15608  // be included in the string output. The member name will be present, but the
 15609  // value will be replaced with "sensitive".
 15610  func (s AccountSharingInfo) String() string {
 15611  	return awsutil.Prettify(s)
 15612  }
 15613  
 15614  // GoString returns the string representation.
 15615  //
 15616  // API parameter values that are decorated as "sensitive" in the API will not
 15617  // be included in the string output. The member name will be present, but the
 15618  // value will be replaced with "sensitive".
 15619  func (s AccountSharingInfo) GoString() string {
 15620  	return s.String()
 15621  }
 15622  
 15623  // SetAccountId sets the AccountId field's value.
 15624  func (s *AccountSharingInfo) SetAccountId(v string) *AccountSharingInfo {
 15625  	s.AccountId = &v
 15626  	return s
 15627  }
 15628  
 15629  // SetSharedDocumentVersion sets the SharedDocumentVersion field's value.
 15630  func (s *AccountSharingInfo) SetSharedDocumentVersion(v string) *AccountSharingInfo {
 15631  	s.SharedDocumentVersion = &v
 15632  	return s
 15633  }
 15634  
 15635  // An activation registers one or more on-premises servers or virtual machines
 15636  // (VMs) with Amazon Web Services so that you can configure those servers or
 15637  // VMs using Run Command. A server or VM that has been registered with Amazon
 15638  // Web Services Systems Manager is called a managed instance.
 15639  type Activation struct {
 15640  	_ struct{} `type:"structure"`
 15641  
 15642  	// The ID created by Systems Manager when you submitted the activation.
 15643  	ActivationId *string `type:"string"`
 15644  
 15645  	// The date the activation was created.
 15646  	CreatedDate *time.Time `type:"timestamp"`
 15647  
 15648  	// A name for the managed instance when it is created.
 15649  	DefaultInstanceName *string `type:"string"`
 15650  
 15651  	// A user defined description of the activation.
 15652  	Description *string `type:"string"`
 15653  
 15654  	// The date when this activation can no longer be used to register managed instances.
 15655  	ExpirationDate *time.Time `type:"timestamp"`
 15656  
 15657  	// Whether or not the activation is expired.
 15658  	Expired *bool `type:"boolean"`
 15659  
 15660  	// The Identity and Access Management (IAM) role to assign to the managed instance.
 15661  	IamRole *string `type:"string"`
 15662  
 15663  	// The maximum number of managed instances that can be registered using this
 15664  	// activation.
 15665  	RegistrationLimit *int64 `min:"1" type:"integer"`
 15666  
 15667  	// The number of managed instances already registered with this activation.
 15668  	RegistrationsCount *int64 `min:"1" type:"integer"`
 15669  
 15670  	// Tags assigned to the activation.
 15671  	Tags []*Tag `type:"list"`
 15672  }
 15673  
 15674  // String returns the string representation.
 15675  //
 15676  // API parameter values that are decorated as "sensitive" in the API will not
 15677  // be included in the string output. The member name will be present, but the
 15678  // value will be replaced with "sensitive".
 15679  func (s Activation) String() string {
 15680  	return awsutil.Prettify(s)
 15681  }
 15682  
 15683  // GoString returns the string representation.
 15684  //
 15685  // API parameter values that are decorated as "sensitive" in the API will not
 15686  // be included in the string output. The member name will be present, but the
 15687  // value will be replaced with "sensitive".
 15688  func (s Activation) GoString() string {
 15689  	return s.String()
 15690  }
 15691  
 15692  // SetActivationId sets the ActivationId field's value.
 15693  func (s *Activation) SetActivationId(v string) *Activation {
 15694  	s.ActivationId = &v
 15695  	return s
 15696  }
 15697  
 15698  // SetCreatedDate sets the CreatedDate field's value.
 15699  func (s *Activation) SetCreatedDate(v time.Time) *Activation {
 15700  	s.CreatedDate = &v
 15701  	return s
 15702  }
 15703  
 15704  // SetDefaultInstanceName sets the DefaultInstanceName field's value.
 15705  func (s *Activation) SetDefaultInstanceName(v string) *Activation {
 15706  	s.DefaultInstanceName = &v
 15707  	return s
 15708  }
 15709  
 15710  // SetDescription sets the Description field's value.
 15711  func (s *Activation) SetDescription(v string) *Activation {
 15712  	s.Description = &v
 15713  	return s
 15714  }
 15715  
 15716  // SetExpirationDate sets the ExpirationDate field's value.
 15717  func (s *Activation) SetExpirationDate(v time.Time) *Activation {
 15718  	s.ExpirationDate = &v
 15719  	return s
 15720  }
 15721  
 15722  // SetExpired sets the Expired field's value.
 15723  func (s *Activation) SetExpired(v bool) *Activation {
 15724  	s.Expired = &v
 15725  	return s
 15726  }
 15727  
 15728  // SetIamRole sets the IamRole field's value.
 15729  func (s *Activation) SetIamRole(v string) *Activation {
 15730  	s.IamRole = &v
 15731  	return s
 15732  }
 15733  
 15734  // SetRegistrationLimit sets the RegistrationLimit field's value.
 15735  func (s *Activation) SetRegistrationLimit(v int64) *Activation {
 15736  	s.RegistrationLimit = &v
 15737  	return s
 15738  }
 15739  
 15740  // SetRegistrationsCount sets the RegistrationsCount field's value.
 15741  func (s *Activation) SetRegistrationsCount(v int64) *Activation {
 15742  	s.RegistrationsCount = &v
 15743  	return s
 15744  }
 15745  
 15746  // SetTags sets the Tags field's value.
 15747  func (s *Activation) SetTags(v []*Tag) *Activation {
 15748  	s.Tags = v
 15749  	return s
 15750  }
 15751  
 15752  type AddTagsToResourceInput struct {
 15753  	_ struct{} `type:"structure"`
 15754  
 15755  	// The resource ID you want to tag.
 15756  	//
 15757  	// Use the ID of the resource. Here are some examples:
 15758  	//
 15759  	// MaintenanceWindow: mw-012345abcde
 15760  	//
 15761  	// PatchBaseline: pb-012345abcde
 15762  	//
 15763  	// OpsMetadata object: ResourceID for tagging is created from the Amazon Resource
 15764  	// Name (ARN) for the object. Specifically, ResourceID is created from the strings
 15765  	// that come after the word opsmetadata in the ARN. For example, an OpsMetadata
 15766  	// object with an ARN of arn:aws:ssm:us-east-2:1234567890:opsmetadata/aws/ssm/MyGroup/appmanager
 15767  	// has a ResourceID of either aws/ssm/MyGroup/appmanager or /aws/ssm/MyGroup/appmanager.
 15768  	//
 15769  	// For the Document and Parameter values, use the name of the resource.
 15770  	//
 15771  	// ManagedInstance: mi-012345abcde
 15772  	//
 15773  	// The ManagedInstance type for this API operation is only for on-premises managed
 15774  	// instances. You must specify the name of the managed instance in the following
 15775  	// format: mi-ID_number . For example, mi-1a2b3c4d5e6f.
 15776  	//
 15777  	// ResourceId is a required field
 15778  	ResourceId *string `type:"string" required:"true"`
 15779  
 15780  	// Specifies the type of resource you are tagging.
 15781  	//
 15782  	// The ManagedInstance type for this API operation is for on-premises managed
 15783  	// instances. You must specify the name of the managed instance in the following
 15784  	// format: mi-ID_number . For example, mi-1a2b3c4d5e6f.
 15785  	//
 15786  	// ResourceType is a required field
 15787  	ResourceType *string `type:"string" required:"true" enum:"ResourceTypeForTagging"`
 15788  
 15789  	// One or more tags. The value parameter is required.
 15790  	//
 15791  	// Don't enter personally identifiable information in this field.
 15792  	//
 15793  	// Tags is a required field
 15794  	Tags []*Tag `type:"list" required:"true"`
 15795  }
 15796  
 15797  // String returns the string representation.
 15798  //
 15799  // API parameter values that are decorated as "sensitive" in the API will not
 15800  // be included in the string output. The member name will be present, but the
 15801  // value will be replaced with "sensitive".
 15802  func (s AddTagsToResourceInput) String() string {
 15803  	return awsutil.Prettify(s)
 15804  }
 15805  
 15806  // GoString returns the string representation.
 15807  //
 15808  // API parameter values that are decorated as "sensitive" in the API will not
 15809  // be included in the string output. The member name will be present, but the
 15810  // value will be replaced with "sensitive".
 15811  func (s AddTagsToResourceInput) GoString() string {
 15812  	return s.String()
 15813  }
 15814  
 15815  // Validate inspects the fields of the type to determine if they are valid.
 15816  func (s *AddTagsToResourceInput) Validate() error {
 15817  	invalidParams := request.ErrInvalidParams{Context: "AddTagsToResourceInput"}
 15818  	if s.ResourceId == nil {
 15819  		invalidParams.Add(request.NewErrParamRequired("ResourceId"))
 15820  	}
 15821  	if s.ResourceType == nil {
 15822  		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
 15823  	}
 15824  	if s.Tags == nil {
 15825  		invalidParams.Add(request.NewErrParamRequired("Tags"))
 15826  	}
 15827  	if s.Tags != nil {
 15828  		for i, v := range s.Tags {
 15829  			if v == nil {
 15830  				continue
 15831  			}
 15832  			if err := v.Validate(); err != nil {
 15833  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 15834  			}
 15835  		}
 15836  	}
 15837  
 15838  	if invalidParams.Len() > 0 {
 15839  		return invalidParams
 15840  	}
 15841  	return nil
 15842  }
 15843  
 15844  // SetResourceId sets the ResourceId field's value.
 15845  func (s *AddTagsToResourceInput) SetResourceId(v string) *AddTagsToResourceInput {
 15846  	s.ResourceId = &v
 15847  	return s
 15848  }
 15849  
 15850  // SetResourceType sets the ResourceType field's value.
 15851  func (s *AddTagsToResourceInput) SetResourceType(v string) *AddTagsToResourceInput {
 15852  	s.ResourceType = &v
 15853  	return s
 15854  }
 15855  
 15856  // SetTags sets the Tags field's value.
 15857  func (s *AddTagsToResourceInput) SetTags(v []*Tag) *AddTagsToResourceInput {
 15858  	s.Tags = v
 15859  	return s
 15860  }
 15861  
 15862  type AddTagsToResourceOutput struct {
 15863  	_ struct{} `type:"structure"`
 15864  }
 15865  
 15866  // String returns the string representation.
 15867  //
 15868  // API parameter values that are decorated as "sensitive" in the API will not
 15869  // be included in the string output. The member name will be present, but the
 15870  // value will be replaced with "sensitive".
 15871  func (s AddTagsToResourceOutput) String() string {
 15872  	return awsutil.Prettify(s)
 15873  }
 15874  
 15875  // GoString returns the string representation.
 15876  //
 15877  // API parameter values that are decorated as "sensitive" in the API will not
 15878  // be included in the string output. The member name will be present, but the
 15879  // value will be replaced with "sensitive".
 15880  func (s AddTagsToResourceOutput) GoString() string {
 15881  	return s.String()
 15882  }
 15883  
 15884  // Error returned if an attempt is made to register a patch group with a patch
 15885  // baseline that is already registered with a different patch baseline.
 15886  type AlreadyExistsException struct {
 15887  	_            struct{}                  `type:"structure"`
 15888  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 15889  
 15890  	Message_ *string `locationName:"Message" type:"string"`
 15891  }
 15892  
 15893  // String returns the string representation.
 15894  //
 15895  // API parameter values that are decorated as "sensitive" in the API will not
 15896  // be included in the string output. The member name will be present, but the
 15897  // value will be replaced with "sensitive".
 15898  func (s AlreadyExistsException) String() string {
 15899  	return awsutil.Prettify(s)
 15900  }
 15901  
 15902  // GoString returns the string representation.
 15903  //
 15904  // API parameter values that are decorated as "sensitive" in the API will not
 15905  // be included in the string output. The member name will be present, but the
 15906  // value will be replaced with "sensitive".
 15907  func (s AlreadyExistsException) GoString() string {
 15908  	return s.String()
 15909  }
 15910  
 15911  func newErrorAlreadyExistsException(v protocol.ResponseMetadata) error {
 15912  	return &AlreadyExistsException{
 15913  		RespMetadata: v,
 15914  	}
 15915  }
 15916  
 15917  // Code returns the exception type name.
 15918  func (s *AlreadyExistsException) Code() string {
 15919  	return "AlreadyExistsException"
 15920  }
 15921  
 15922  // Message returns the exception's message.
 15923  func (s *AlreadyExistsException) Message() string {
 15924  	if s.Message_ != nil {
 15925  		return *s.Message_
 15926  	}
 15927  	return ""
 15928  }
 15929  
 15930  // OrigErr always returns nil, satisfies awserr.Error interface.
 15931  func (s *AlreadyExistsException) OrigErr() error {
 15932  	return nil
 15933  }
 15934  
 15935  func (s *AlreadyExistsException) Error() string {
 15936  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 15937  }
 15938  
 15939  // Status code returns the HTTP status code for the request's response error.
 15940  func (s *AlreadyExistsException) StatusCode() int {
 15941  	return s.RespMetadata.StatusCode
 15942  }
 15943  
 15944  // RequestID returns the service's response RequestID for request.
 15945  func (s *AlreadyExistsException) RequestID() string {
 15946  	return s.RespMetadata.RequestID
 15947  }
 15948  
 15949  type AssociateOpsItemRelatedItemInput struct {
 15950  	_ struct{} `type:"structure"`
 15951  
 15952  	// The type of association that you want to create between an OpsItem and a
 15953  	// resource. OpsCenter supports IsParentOf and RelatesTo association types.
 15954  	//
 15955  	// AssociationType is a required field
 15956  	AssociationType *string `type:"string" required:"true"`
 15957  
 15958  	// The ID of the OpsItem to which you want to associate a resource as a related
 15959  	// item.
 15960  	//
 15961  	// OpsItemId is a required field
 15962  	OpsItemId *string `type:"string" required:"true"`
 15963  
 15964  	// The type of resource that you want to associate with an OpsItem. OpsCenter
 15965  	// supports the following types:
 15966  	//
 15967  	// AWS::SSMIncidents::IncidentRecord: an Incident Manager incident.
 15968  	//
 15969  	// AWS::SSM::Document: a Systems Manager (SSM) document.
 15970  	//
 15971  	// ResourceType is a required field
 15972  	ResourceType *string `type:"string" required:"true"`
 15973  
 15974  	// The Amazon Resource Name (ARN) of the Amazon Web Services resource that you
 15975  	// want to associate with the OpsItem.
 15976  	//
 15977  	// ResourceUri is a required field
 15978  	ResourceUri *string `type:"string" required:"true"`
 15979  }
 15980  
 15981  // String returns the string representation.
 15982  //
 15983  // API parameter values that are decorated as "sensitive" in the API will not
 15984  // be included in the string output. The member name will be present, but the
 15985  // value will be replaced with "sensitive".
 15986  func (s AssociateOpsItemRelatedItemInput) String() string {
 15987  	return awsutil.Prettify(s)
 15988  }
 15989  
 15990  // GoString returns the string representation.
 15991  //
 15992  // API parameter values that are decorated as "sensitive" in the API will not
 15993  // be included in the string output. The member name will be present, but the
 15994  // value will be replaced with "sensitive".
 15995  func (s AssociateOpsItemRelatedItemInput) GoString() string {
 15996  	return s.String()
 15997  }
 15998  
 15999  // Validate inspects the fields of the type to determine if they are valid.
 16000  func (s *AssociateOpsItemRelatedItemInput) Validate() error {
 16001  	invalidParams := request.ErrInvalidParams{Context: "AssociateOpsItemRelatedItemInput"}
 16002  	if s.AssociationType == nil {
 16003  		invalidParams.Add(request.NewErrParamRequired("AssociationType"))
 16004  	}
 16005  	if s.OpsItemId == nil {
 16006  		invalidParams.Add(request.NewErrParamRequired("OpsItemId"))
 16007  	}
 16008  	if s.ResourceType == nil {
 16009  		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
 16010  	}
 16011  	if s.ResourceUri == nil {
 16012  		invalidParams.Add(request.NewErrParamRequired("ResourceUri"))
 16013  	}
 16014  
 16015  	if invalidParams.Len() > 0 {
 16016  		return invalidParams
 16017  	}
 16018  	return nil
 16019  }
 16020  
 16021  // SetAssociationType sets the AssociationType field's value.
 16022  func (s *AssociateOpsItemRelatedItemInput) SetAssociationType(v string) *AssociateOpsItemRelatedItemInput {
 16023  	s.AssociationType = &v
 16024  	return s
 16025  }
 16026  
 16027  // SetOpsItemId sets the OpsItemId field's value.
 16028  func (s *AssociateOpsItemRelatedItemInput) SetOpsItemId(v string) *AssociateOpsItemRelatedItemInput {
 16029  	s.OpsItemId = &v
 16030  	return s
 16031  }
 16032  
 16033  // SetResourceType sets the ResourceType field's value.
 16034  func (s *AssociateOpsItemRelatedItemInput) SetResourceType(v string) *AssociateOpsItemRelatedItemInput {
 16035  	s.ResourceType = &v
 16036  	return s
 16037  }
 16038  
 16039  // SetResourceUri sets the ResourceUri field's value.
 16040  func (s *AssociateOpsItemRelatedItemInput) SetResourceUri(v string) *AssociateOpsItemRelatedItemInput {
 16041  	s.ResourceUri = &v
 16042  	return s
 16043  }
 16044  
 16045  type AssociateOpsItemRelatedItemOutput struct {
 16046  	_ struct{} `type:"structure"`
 16047  
 16048  	// The association ID.
 16049  	AssociationId *string `type:"string"`
 16050  }
 16051  
 16052  // String returns the string representation.
 16053  //
 16054  // API parameter values that are decorated as "sensitive" in the API will not
 16055  // be included in the string output. The member name will be present, but the
 16056  // value will be replaced with "sensitive".
 16057  func (s AssociateOpsItemRelatedItemOutput) String() string {
 16058  	return awsutil.Prettify(s)
 16059  }
 16060  
 16061  // GoString returns the string representation.
 16062  //
 16063  // API parameter values that are decorated as "sensitive" in the API will not
 16064  // be included in the string output. The member name will be present, but the
 16065  // value will be replaced with "sensitive".
 16066  func (s AssociateOpsItemRelatedItemOutput) GoString() string {
 16067  	return s.String()
 16068  }
 16069  
 16070  // SetAssociationId sets the AssociationId field's value.
 16071  func (s *AssociateOpsItemRelatedItemOutput) SetAssociationId(v string) *AssociateOpsItemRelatedItemOutput {
 16072  	s.AssociationId = &v
 16073  	return s
 16074  }
 16075  
 16076  // You must disassociate a document from all instances before you can delete
 16077  // it.
 16078  type AssociatedInstances struct {
 16079  	_            struct{}                  `type:"structure"`
 16080  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 16081  
 16082  	Message_ *string `locationName:"message" type:"string"`
 16083  }
 16084  
 16085  // String returns the string representation.
 16086  //
 16087  // API parameter values that are decorated as "sensitive" in the API will not
 16088  // be included in the string output. The member name will be present, but the
 16089  // value will be replaced with "sensitive".
 16090  func (s AssociatedInstances) String() string {
 16091  	return awsutil.Prettify(s)
 16092  }
 16093  
 16094  // GoString returns the string representation.
 16095  //
 16096  // API parameter values that are decorated as "sensitive" in the API will not
 16097  // be included in the string output. The member name will be present, but the
 16098  // value will be replaced with "sensitive".
 16099  func (s AssociatedInstances) GoString() string {
 16100  	return s.String()
 16101  }
 16102  
 16103  func newErrorAssociatedInstances(v protocol.ResponseMetadata) error {
 16104  	return &AssociatedInstances{
 16105  		RespMetadata: v,
 16106  	}
 16107  }
 16108  
 16109  // Code returns the exception type name.
 16110  func (s *AssociatedInstances) Code() string {
 16111  	return "AssociatedInstances"
 16112  }
 16113  
 16114  // Message returns the exception's message.
 16115  func (s *AssociatedInstances) Message() string {
 16116  	if s.Message_ != nil {
 16117  		return *s.Message_
 16118  	}
 16119  	return ""
 16120  }
 16121  
 16122  // OrigErr always returns nil, satisfies awserr.Error interface.
 16123  func (s *AssociatedInstances) OrigErr() error {
 16124  	return nil
 16125  }
 16126  
 16127  func (s *AssociatedInstances) Error() string {
 16128  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 16129  }
 16130  
 16131  // Status code returns the HTTP status code for the request's response error.
 16132  func (s *AssociatedInstances) StatusCode() int {
 16133  	return s.RespMetadata.StatusCode
 16134  }
 16135  
 16136  // RequestID returns the service's response RequestID for request.
 16137  func (s *AssociatedInstances) RequestID() string {
 16138  	return s.RespMetadata.RequestID
 16139  }
 16140  
 16141  // Describes an association of a Amazon Web Services Systems Manager document
 16142  // (SSM document) and an instance.
 16143  type Association struct {
 16144  	_ struct{} `type:"structure"`
 16145  
 16146  	// The ID created by the system when you create an association. An association
 16147  	// is a binding between a document and a set of targets with a schedule.
 16148  	AssociationId *string `type:"string"`
 16149  
 16150  	// The association name.
 16151  	AssociationName *string `type:"string"`
 16152  
 16153  	// The association version.
 16154  	AssociationVersion *string `type:"string"`
 16155  
 16156  	// The version of the document used in the association.
 16157  	DocumentVersion *string `type:"string"`
 16158  
 16159  	// The instance ID.
 16160  	InstanceId *string `type:"string"`
 16161  
 16162  	// The date on which the association was last run.
 16163  	LastExecutionDate *time.Time `type:"timestamp"`
 16164  
 16165  	// The name of the SSM document.
 16166  	Name *string `type:"string"`
 16167  
 16168  	// Information about the association.
 16169  	Overview *AssociationOverview `type:"structure"`
 16170  
 16171  	// A cron expression that specifies a schedule when the association runs. The
 16172  	// schedule runs in Coordinated Universal Time (UTC).
 16173  	ScheduleExpression *string `min:"1" type:"string"`
 16174  
 16175  	// The instances targeted by the request to create an association. You can target
 16176  	// all instances in an Amazon Web Services account by specifying the InstanceIds
 16177  	// key with a value of *.
 16178  	Targets []*Target `type:"list"`
 16179  }
 16180  
 16181  // String returns the string representation.
 16182  //
 16183  // API parameter values that are decorated as "sensitive" in the API will not
 16184  // be included in the string output. The member name will be present, but the
 16185  // value will be replaced with "sensitive".
 16186  func (s Association) String() string {
 16187  	return awsutil.Prettify(s)
 16188  }
 16189  
 16190  // GoString returns the string representation.
 16191  //
 16192  // API parameter values that are decorated as "sensitive" in the API will not
 16193  // be included in the string output. The member name will be present, but the
 16194  // value will be replaced with "sensitive".
 16195  func (s Association) GoString() string {
 16196  	return s.String()
 16197  }
 16198  
 16199  // SetAssociationId sets the AssociationId field's value.
 16200  func (s *Association) SetAssociationId(v string) *Association {
 16201  	s.AssociationId = &v
 16202  	return s
 16203  }
 16204  
 16205  // SetAssociationName sets the AssociationName field's value.
 16206  func (s *Association) SetAssociationName(v string) *Association {
 16207  	s.AssociationName = &v
 16208  	return s
 16209  }
 16210  
 16211  // SetAssociationVersion sets the AssociationVersion field's value.
 16212  func (s *Association) SetAssociationVersion(v string) *Association {
 16213  	s.AssociationVersion = &v
 16214  	return s
 16215  }
 16216  
 16217  // SetDocumentVersion sets the DocumentVersion field's value.
 16218  func (s *Association) SetDocumentVersion(v string) *Association {
 16219  	s.DocumentVersion = &v
 16220  	return s
 16221  }
 16222  
 16223  // SetInstanceId sets the InstanceId field's value.
 16224  func (s *Association) SetInstanceId(v string) *Association {
 16225  	s.InstanceId = &v
 16226  	return s
 16227  }
 16228  
 16229  // SetLastExecutionDate sets the LastExecutionDate field's value.
 16230  func (s *Association) SetLastExecutionDate(v time.Time) *Association {
 16231  	s.LastExecutionDate = &v
 16232  	return s
 16233  }
 16234  
 16235  // SetName sets the Name field's value.
 16236  func (s *Association) SetName(v string) *Association {
 16237  	s.Name = &v
 16238  	return s
 16239  }
 16240  
 16241  // SetOverview sets the Overview field's value.
 16242  func (s *Association) SetOverview(v *AssociationOverview) *Association {
 16243  	s.Overview = v
 16244  	return s
 16245  }
 16246  
 16247  // SetScheduleExpression sets the ScheduleExpression field's value.
 16248  func (s *Association) SetScheduleExpression(v string) *Association {
 16249  	s.ScheduleExpression = &v
 16250  	return s
 16251  }
 16252  
 16253  // SetTargets sets the Targets field's value.
 16254  func (s *Association) SetTargets(v []*Target) *Association {
 16255  	s.Targets = v
 16256  	return s
 16257  }
 16258  
 16259  // The specified association already exists.
 16260  type AssociationAlreadyExists struct {
 16261  	_            struct{}                  `type:"structure"`
 16262  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 16263  
 16264  	Message_ *string `locationName:"message" type:"string"`
 16265  }
 16266  
 16267  // String returns the string representation.
 16268  //
 16269  // API parameter values that are decorated as "sensitive" in the API will not
 16270  // be included in the string output. The member name will be present, but the
 16271  // value will be replaced with "sensitive".
 16272  func (s AssociationAlreadyExists) String() string {
 16273  	return awsutil.Prettify(s)
 16274  }
 16275  
 16276  // GoString returns the string representation.
 16277  //
 16278  // API parameter values that are decorated as "sensitive" in the API will not
 16279  // be included in the string output. The member name will be present, but the
 16280  // value will be replaced with "sensitive".
 16281  func (s AssociationAlreadyExists) GoString() string {
 16282  	return s.String()
 16283  }
 16284  
 16285  func newErrorAssociationAlreadyExists(v protocol.ResponseMetadata) error {
 16286  	return &AssociationAlreadyExists{
 16287  		RespMetadata: v,
 16288  	}
 16289  }
 16290  
 16291  // Code returns the exception type name.
 16292  func (s *AssociationAlreadyExists) Code() string {
 16293  	return "AssociationAlreadyExists"
 16294  }
 16295  
 16296  // Message returns the exception's message.
 16297  func (s *AssociationAlreadyExists) Message() string {
 16298  	if s.Message_ != nil {
 16299  		return *s.Message_
 16300  	}
 16301  	return ""
 16302  }
 16303  
 16304  // OrigErr always returns nil, satisfies awserr.Error interface.
 16305  func (s *AssociationAlreadyExists) OrigErr() error {
 16306  	return nil
 16307  }
 16308  
 16309  func (s *AssociationAlreadyExists) Error() string {
 16310  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 16311  }
 16312  
 16313  // Status code returns the HTTP status code for the request's response error.
 16314  func (s *AssociationAlreadyExists) StatusCode() int {
 16315  	return s.RespMetadata.StatusCode
 16316  }
 16317  
 16318  // RequestID returns the service's response RequestID for request.
 16319  func (s *AssociationAlreadyExists) RequestID() string {
 16320  	return s.RespMetadata.RequestID
 16321  }
 16322  
 16323  // Describes the parameters for a document.
 16324  type AssociationDescription struct {
 16325  	_ struct{} `type:"structure"`
 16326  
 16327  	// By default, when you create a new associations, the system runs it immediately
 16328  	// after it is created and then according to the schedule you specified. Specify
 16329  	// this option if you don't want an association to run immediately after you
 16330  	// create it. This parameter isn't supported for rate expressions.
 16331  	ApplyOnlyAtCronInterval *bool `type:"boolean"`
 16332  
 16333  	// The association ID.
 16334  	AssociationId *string `type:"string"`
 16335  
 16336  	// The association name.
 16337  	AssociationName *string `type:"string"`
 16338  
 16339  	// The association version.
 16340  	AssociationVersion *string `type:"string"`
 16341  
 16342  	// Specify the target for the association. This target is required for associations
 16343  	// that use an Automation runbook and target resources by using rate controls.
 16344  	// Automation is a capability of Amazon Web Services Systems Manager.
 16345  	AutomationTargetParameterName *string `min:"1" type:"string"`
 16346  
 16347  	// The names or Amazon Resource Names (ARNs) of the Change Calendar type documents
 16348  	// your associations are gated under. The associations only run when that change
 16349  	// calendar is open. For more information, see Amazon Web Services Systems Manager
 16350  	// Change Calendar (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar).
 16351  	CalendarNames []*string `type:"list"`
 16352  
 16353  	// The severity level that is assigned to the association.
 16354  	ComplianceSeverity *string `type:"string" enum:"AssociationComplianceSeverity"`
 16355  
 16356  	// The date when the association was made.
 16357  	Date *time.Time `type:"timestamp"`
 16358  
 16359  	// The document version.
 16360  	DocumentVersion *string `type:"string"`
 16361  
 16362  	// The instance ID.
 16363  	InstanceId *string `type:"string"`
 16364  
 16365  	// The date on which the association was last run.
 16366  	LastExecutionDate *time.Time `type:"timestamp"`
 16367  
 16368  	// The last date on which the association was successfully run.
 16369  	LastSuccessfulExecutionDate *time.Time `type:"timestamp"`
 16370  
 16371  	// The date when the association was last updated.
 16372  	LastUpdateAssociationDate *time.Time `type:"timestamp"`
 16373  
 16374  	// The maximum number of targets allowed to run the association at the same
 16375  	// time. You can specify a number, for example 10, or a percentage of the target
 16376  	// set, for example 10%. The default value is 100%, which means all targets
 16377  	// run the association at the same time.
 16378  	//
 16379  	// If a new instance starts and attempts to run an association while Systems
 16380  	// Manager is running MaxConcurrency associations, the association is allowed
 16381  	// to run. During the next association interval, the new instance will process
 16382  	// its association within the limit specified for MaxConcurrency.
 16383  	MaxConcurrency *string `min:"1" type:"string"`
 16384  
 16385  	// The number of errors that are allowed before the system stops sending requests
 16386  	// to run the association on additional targets. You can specify either an absolute
 16387  	// number of errors, for example 10, or a percentage of the target set, for
 16388  	// example 10%. If you specify 3, for example, the system stops sending requests
 16389  	// when the fourth error is received. If you specify 0, then the system stops
 16390  	// sending requests after the first error is returned. If you run an association
 16391  	// on 50 instances and set MaxError to 10%, then the system stops sending the
 16392  	// request when the sixth error is received.
 16393  	//
 16394  	// Executions that are already running an association when MaxErrors is reached
 16395  	// are allowed to complete, but some of these executions may fail as well. If
 16396  	// you need to ensure that there won't be more than max-errors failed executions,
 16397  	// set MaxConcurrency to 1 so that executions proceed one at a time.
 16398  	MaxErrors *string `min:"1" type:"string"`
 16399  
 16400  	// The name of the SSM document.
 16401  	Name *string `type:"string"`
 16402  
 16403  	// An S3 bucket where you want to store the output details of the request.
 16404  	OutputLocation *InstanceAssociationOutputLocation `type:"structure"`
 16405  
 16406  	// Information about the association.
 16407  	Overview *AssociationOverview `type:"structure"`
 16408  
 16409  	// A description of the parameters for a document.
 16410  	Parameters map[string][]*string `type:"map"`
 16411  
 16412  	// A cron expression that specifies a schedule when the association runs.
 16413  	ScheduleExpression *string `min:"1" type:"string"`
 16414  
 16415  	// The association status.
 16416  	Status *AssociationStatus `type:"structure"`
 16417  
 16418  	// The mode for generating association compliance. You can specify AUTO or MANUAL.
 16419  	// In AUTO mode, the system uses the status of the association execution to
 16420  	// determine the compliance status. If the association execution runs successfully,
 16421  	// then the association is COMPLIANT. If the association execution doesn't run
 16422  	// successfully, the association is NON-COMPLIANT.
 16423  	//
 16424  	// In MANUAL mode, you must specify the AssociationId as a parameter for the
 16425  	// PutComplianceItems API operation. In this case, compliance data isn't managed
 16426  	// by State Manager, a capability of Amazon Web Services Systems Manager. It
 16427  	// is managed by your direct call to the PutComplianceItems API operation.
 16428  	//
 16429  	// By default, all associations use AUTO mode.
 16430  	SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"`
 16431  
 16432  	// The combination of Amazon Web Services Regions and Amazon Web Services accounts
 16433  	// where you want to run the association.
 16434  	TargetLocations []*TargetLocation `min:"1" type:"list"`
 16435  
 16436  	// The instances targeted by the request.
 16437  	Targets []*Target `type:"list"`
 16438  }
 16439  
 16440  // String returns the string representation.
 16441  //
 16442  // API parameter values that are decorated as "sensitive" in the API will not
 16443  // be included in the string output. The member name will be present, but the
 16444  // value will be replaced with "sensitive".
 16445  func (s AssociationDescription) String() string {
 16446  	return awsutil.Prettify(s)
 16447  }
 16448  
 16449  // GoString returns the string representation.
 16450  //
 16451  // API parameter values that are decorated as "sensitive" in the API will not
 16452  // be included in the string output. The member name will be present, but the
 16453  // value will be replaced with "sensitive".
 16454  func (s AssociationDescription) GoString() string {
 16455  	return s.String()
 16456  }
 16457  
 16458  // SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value.
 16459  func (s *AssociationDescription) SetApplyOnlyAtCronInterval(v bool) *AssociationDescription {
 16460  	s.ApplyOnlyAtCronInterval = &v
 16461  	return s
 16462  }
 16463  
 16464  // SetAssociationId sets the AssociationId field's value.
 16465  func (s *AssociationDescription) SetAssociationId(v string) *AssociationDescription {
 16466  	s.AssociationId = &v
 16467  	return s
 16468  }
 16469  
 16470  // SetAssociationName sets the AssociationName field's value.
 16471  func (s *AssociationDescription) SetAssociationName(v string) *AssociationDescription {
 16472  	s.AssociationName = &v
 16473  	return s
 16474  }
 16475  
 16476  // SetAssociationVersion sets the AssociationVersion field's value.
 16477  func (s *AssociationDescription) SetAssociationVersion(v string) *AssociationDescription {
 16478  	s.AssociationVersion = &v
 16479  	return s
 16480  }
 16481  
 16482  // SetAutomationTargetParameterName sets the AutomationTargetParameterName field's value.
 16483  func (s *AssociationDescription) SetAutomationTargetParameterName(v string) *AssociationDescription {
 16484  	s.AutomationTargetParameterName = &v
 16485  	return s
 16486  }
 16487  
 16488  // SetCalendarNames sets the CalendarNames field's value.
 16489  func (s *AssociationDescription) SetCalendarNames(v []*string) *AssociationDescription {
 16490  	s.CalendarNames = v
 16491  	return s
 16492  }
 16493  
 16494  // SetComplianceSeverity sets the ComplianceSeverity field's value.
 16495  func (s *AssociationDescription) SetComplianceSeverity(v string) *AssociationDescription {
 16496  	s.ComplianceSeverity = &v
 16497  	return s
 16498  }
 16499  
 16500  // SetDate sets the Date field's value.
 16501  func (s *AssociationDescription) SetDate(v time.Time) *AssociationDescription {
 16502  	s.Date = &v
 16503  	return s
 16504  }
 16505  
 16506  // SetDocumentVersion sets the DocumentVersion field's value.
 16507  func (s *AssociationDescription) SetDocumentVersion(v string) *AssociationDescription {
 16508  	s.DocumentVersion = &v
 16509  	return s
 16510  }
 16511  
 16512  // SetInstanceId sets the InstanceId field's value.
 16513  func (s *AssociationDescription) SetInstanceId(v string) *AssociationDescription {
 16514  	s.InstanceId = &v
 16515  	return s
 16516  }
 16517  
 16518  // SetLastExecutionDate sets the LastExecutionDate field's value.
 16519  func (s *AssociationDescription) SetLastExecutionDate(v time.Time) *AssociationDescription {
 16520  	s.LastExecutionDate = &v
 16521  	return s
 16522  }
 16523  
 16524  // SetLastSuccessfulExecutionDate sets the LastSuccessfulExecutionDate field's value.
 16525  func (s *AssociationDescription) SetLastSuccessfulExecutionDate(v time.Time) *AssociationDescription {
 16526  	s.LastSuccessfulExecutionDate = &v
 16527  	return s
 16528  }
 16529  
 16530  // SetLastUpdateAssociationDate sets the LastUpdateAssociationDate field's value.
 16531  func (s *AssociationDescription) SetLastUpdateAssociationDate(v time.Time) *AssociationDescription {
 16532  	s.LastUpdateAssociationDate = &v
 16533  	return s
 16534  }
 16535  
 16536  // SetMaxConcurrency sets the MaxConcurrency field's value.
 16537  func (s *AssociationDescription) SetMaxConcurrency(v string) *AssociationDescription {
 16538  	s.MaxConcurrency = &v
 16539  	return s
 16540  }
 16541  
 16542  // SetMaxErrors sets the MaxErrors field's value.
 16543  func (s *AssociationDescription) SetMaxErrors(v string) *AssociationDescription {
 16544  	s.MaxErrors = &v
 16545  	return s
 16546  }
 16547  
 16548  // SetName sets the Name field's value.
 16549  func (s *AssociationDescription) SetName(v string) *AssociationDescription {
 16550  	s.Name = &v
 16551  	return s
 16552  }
 16553  
 16554  // SetOutputLocation sets the OutputLocation field's value.
 16555  func (s *AssociationDescription) SetOutputLocation(v *InstanceAssociationOutputLocation) *AssociationDescription {
 16556  	s.OutputLocation = v
 16557  	return s
 16558  }
 16559  
 16560  // SetOverview sets the Overview field's value.
 16561  func (s *AssociationDescription) SetOverview(v *AssociationOverview) *AssociationDescription {
 16562  	s.Overview = v
 16563  	return s
 16564  }
 16565  
 16566  // SetParameters sets the Parameters field's value.
 16567  func (s *AssociationDescription) SetParameters(v map[string][]*string) *AssociationDescription {
 16568  	s.Parameters = v
 16569  	return s
 16570  }
 16571  
 16572  // SetScheduleExpression sets the ScheduleExpression field's value.
 16573  func (s *AssociationDescription) SetScheduleExpression(v string) *AssociationDescription {
 16574  	s.ScheduleExpression = &v
 16575  	return s
 16576  }
 16577  
 16578  // SetStatus sets the Status field's value.
 16579  func (s *AssociationDescription) SetStatus(v *AssociationStatus) *AssociationDescription {
 16580  	s.Status = v
 16581  	return s
 16582  }
 16583  
 16584  // SetSyncCompliance sets the SyncCompliance field's value.
 16585  func (s *AssociationDescription) SetSyncCompliance(v string) *AssociationDescription {
 16586  	s.SyncCompliance = &v
 16587  	return s
 16588  }
 16589  
 16590  // SetTargetLocations sets the TargetLocations field's value.
 16591  func (s *AssociationDescription) SetTargetLocations(v []*TargetLocation) *AssociationDescription {
 16592  	s.TargetLocations = v
 16593  	return s
 16594  }
 16595  
 16596  // SetTargets sets the Targets field's value.
 16597  func (s *AssociationDescription) SetTargets(v []*Target) *AssociationDescription {
 16598  	s.Targets = v
 16599  	return s
 16600  }
 16601  
 16602  // The specified association doesn't exist.
 16603  type AssociationDoesNotExist struct {
 16604  	_            struct{}                  `type:"structure"`
 16605  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 16606  
 16607  	Message_ *string `locationName:"Message" type:"string"`
 16608  }
 16609  
 16610  // String returns the string representation.
 16611  //
 16612  // API parameter values that are decorated as "sensitive" in the API will not
 16613  // be included in the string output. The member name will be present, but the
 16614  // value will be replaced with "sensitive".
 16615  func (s AssociationDoesNotExist) String() string {
 16616  	return awsutil.Prettify(s)
 16617  }
 16618  
 16619  // GoString returns the string representation.
 16620  //
 16621  // API parameter values that are decorated as "sensitive" in the API will not
 16622  // be included in the string output. The member name will be present, but the
 16623  // value will be replaced with "sensitive".
 16624  func (s AssociationDoesNotExist) GoString() string {
 16625  	return s.String()
 16626  }
 16627  
 16628  func newErrorAssociationDoesNotExist(v protocol.ResponseMetadata) error {
 16629  	return &AssociationDoesNotExist{
 16630  		RespMetadata: v,
 16631  	}
 16632  }
 16633  
 16634  // Code returns the exception type name.
 16635  func (s *AssociationDoesNotExist) Code() string {
 16636  	return "AssociationDoesNotExist"
 16637  }
 16638  
 16639  // Message returns the exception's message.
 16640  func (s *AssociationDoesNotExist) Message() string {
 16641  	if s.Message_ != nil {
 16642  		return *s.Message_
 16643  	}
 16644  	return ""
 16645  }
 16646  
 16647  // OrigErr always returns nil, satisfies awserr.Error interface.
 16648  func (s *AssociationDoesNotExist) OrigErr() error {
 16649  	return nil
 16650  }
 16651  
 16652  func (s *AssociationDoesNotExist) Error() string {
 16653  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 16654  }
 16655  
 16656  // Status code returns the HTTP status code for the request's response error.
 16657  func (s *AssociationDoesNotExist) StatusCode() int {
 16658  	return s.RespMetadata.StatusCode
 16659  }
 16660  
 16661  // RequestID returns the service's response RequestID for request.
 16662  func (s *AssociationDoesNotExist) RequestID() string {
 16663  	return s.RespMetadata.RequestID
 16664  }
 16665  
 16666  // Includes information about the specified association.
 16667  type AssociationExecution struct {
 16668  	_ struct{} `type:"structure"`
 16669  
 16670  	// The association ID.
 16671  	AssociationId *string `type:"string"`
 16672  
 16673  	// The association version.
 16674  	AssociationVersion *string `type:"string"`
 16675  
 16676  	// The time the execution started.
 16677  	CreatedTime *time.Time `type:"timestamp"`
 16678  
 16679  	// Detailed status information about the execution.
 16680  	DetailedStatus *string `type:"string"`
 16681  
 16682  	// The execution ID for the association.
 16683  	ExecutionId *string `type:"string"`
 16684  
 16685  	// The date of the last execution.
 16686  	LastExecutionDate *time.Time `type:"timestamp"`
 16687  
 16688  	// An aggregate status of the resources in the execution based on the status
 16689  	// type.
 16690  	ResourceCountByStatus *string `type:"string"`
 16691  
 16692  	// The status of the association execution.
 16693  	Status *string `type:"string"`
 16694  }
 16695  
 16696  // String returns the string representation.
 16697  //
 16698  // API parameter values that are decorated as "sensitive" in the API will not
 16699  // be included in the string output. The member name will be present, but the
 16700  // value will be replaced with "sensitive".
 16701  func (s AssociationExecution) String() string {
 16702  	return awsutil.Prettify(s)
 16703  }
 16704  
 16705  // GoString returns the string representation.
 16706  //
 16707  // API parameter values that are decorated as "sensitive" in the API will not
 16708  // be included in the string output. The member name will be present, but the
 16709  // value will be replaced with "sensitive".
 16710  func (s AssociationExecution) GoString() string {
 16711  	return s.String()
 16712  }
 16713  
 16714  // SetAssociationId sets the AssociationId field's value.
 16715  func (s *AssociationExecution) SetAssociationId(v string) *AssociationExecution {
 16716  	s.AssociationId = &v
 16717  	return s
 16718  }
 16719  
 16720  // SetAssociationVersion sets the AssociationVersion field's value.
 16721  func (s *AssociationExecution) SetAssociationVersion(v string) *AssociationExecution {
 16722  	s.AssociationVersion = &v
 16723  	return s
 16724  }
 16725  
 16726  // SetCreatedTime sets the CreatedTime field's value.
 16727  func (s *AssociationExecution) SetCreatedTime(v time.Time) *AssociationExecution {
 16728  	s.CreatedTime = &v
 16729  	return s
 16730  }
 16731  
 16732  // SetDetailedStatus sets the DetailedStatus field's value.
 16733  func (s *AssociationExecution) SetDetailedStatus(v string) *AssociationExecution {
 16734  	s.DetailedStatus = &v
 16735  	return s
 16736  }
 16737  
 16738  // SetExecutionId sets the ExecutionId field's value.
 16739  func (s *AssociationExecution) SetExecutionId(v string) *AssociationExecution {
 16740  	s.ExecutionId = &v
 16741  	return s
 16742  }
 16743  
 16744  // SetLastExecutionDate sets the LastExecutionDate field's value.
 16745  func (s *AssociationExecution) SetLastExecutionDate(v time.Time) *AssociationExecution {
 16746  	s.LastExecutionDate = &v
 16747  	return s
 16748  }
 16749  
 16750  // SetResourceCountByStatus sets the ResourceCountByStatus field's value.
 16751  func (s *AssociationExecution) SetResourceCountByStatus(v string) *AssociationExecution {
 16752  	s.ResourceCountByStatus = &v
 16753  	return s
 16754  }
 16755  
 16756  // SetStatus sets the Status field's value.
 16757  func (s *AssociationExecution) SetStatus(v string) *AssociationExecution {
 16758  	s.Status = &v
 16759  	return s
 16760  }
 16761  
 16762  // The specified execution ID doesn't exist. Verify the ID number and try again.
 16763  type AssociationExecutionDoesNotExist struct {
 16764  	_            struct{}                  `type:"structure"`
 16765  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 16766  
 16767  	Message_ *string `locationName:"Message" type:"string"`
 16768  }
 16769  
 16770  // String returns the string representation.
 16771  //
 16772  // API parameter values that are decorated as "sensitive" in the API will not
 16773  // be included in the string output. The member name will be present, but the
 16774  // value will be replaced with "sensitive".
 16775  func (s AssociationExecutionDoesNotExist) String() string {
 16776  	return awsutil.Prettify(s)
 16777  }
 16778  
 16779  // GoString returns the string representation.
 16780  //
 16781  // API parameter values that are decorated as "sensitive" in the API will not
 16782  // be included in the string output. The member name will be present, but the
 16783  // value will be replaced with "sensitive".
 16784  func (s AssociationExecutionDoesNotExist) GoString() string {
 16785  	return s.String()
 16786  }
 16787  
 16788  func newErrorAssociationExecutionDoesNotExist(v protocol.ResponseMetadata) error {
 16789  	return &AssociationExecutionDoesNotExist{
 16790  		RespMetadata: v,
 16791  	}
 16792  }
 16793  
 16794  // Code returns the exception type name.
 16795  func (s *AssociationExecutionDoesNotExist) Code() string {
 16796  	return "AssociationExecutionDoesNotExist"
 16797  }
 16798  
 16799  // Message returns the exception's message.
 16800  func (s *AssociationExecutionDoesNotExist) Message() string {
 16801  	if s.Message_ != nil {
 16802  		return *s.Message_
 16803  	}
 16804  	return ""
 16805  }
 16806  
 16807  // OrigErr always returns nil, satisfies awserr.Error interface.
 16808  func (s *AssociationExecutionDoesNotExist) OrigErr() error {
 16809  	return nil
 16810  }
 16811  
 16812  func (s *AssociationExecutionDoesNotExist) Error() string {
 16813  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 16814  }
 16815  
 16816  // Status code returns the HTTP status code for the request's response error.
 16817  func (s *AssociationExecutionDoesNotExist) StatusCode() int {
 16818  	return s.RespMetadata.StatusCode
 16819  }
 16820  
 16821  // RequestID returns the service's response RequestID for request.
 16822  func (s *AssociationExecutionDoesNotExist) RequestID() string {
 16823  	return s.RespMetadata.RequestID
 16824  }
 16825  
 16826  // Filters used in the request.
 16827  type AssociationExecutionFilter struct {
 16828  	_ struct{} `type:"structure"`
 16829  
 16830  	// The key value used in the request.
 16831  	//
 16832  	// Key is a required field
 16833  	Key *string `type:"string" required:"true" enum:"AssociationExecutionFilterKey"`
 16834  
 16835  	// The filter type specified in the request.
 16836  	//
 16837  	// Type is a required field
 16838  	Type *string `type:"string" required:"true" enum:"AssociationFilterOperatorType"`
 16839  
 16840  	// The value specified for the key.
 16841  	//
 16842  	// Value is a required field
 16843  	Value *string `min:"1" type:"string" required:"true"`
 16844  }
 16845  
 16846  // String returns the string representation.
 16847  //
 16848  // API parameter values that are decorated as "sensitive" in the API will not
 16849  // be included in the string output. The member name will be present, but the
 16850  // value will be replaced with "sensitive".
 16851  func (s AssociationExecutionFilter) String() string {
 16852  	return awsutil.Prettify(s)
 16853  }
 16854  
 16855  // GoString returns the string representation.
 16856  //
 16857  // API parameter values that are decorated as "sensitive" in the API will not
 16858  // be included in the string output. The member name will be present, but the
 16859  // value will be replaced with "sensitive".
 16860  func (s AssociationExecutionFilter) GoString() string {
 16861  	return s.String()
 16862  }
 16863  
 16864  // Validate inspects the fields of the type to determine if they are valid.
 16865  func (s *AssociationExecutionFilter) Validate() error {
 16866  	invalidParams := request.ErrInvalidParams{Context: "AssociationExecutionFilter"}
 16867  	if s.Key == nil {
 16868  		invalidParams.Add(request.NewErrParamRequired("Key"))
 16869  	}
 16870  	if s.Type == nil {
 16871  		invalidParams.Add(request.NewErrParamRequired("Type"))
 16872  	}
 16873  	if s.Value == nil {
 16874  		invalidParams.Add(request.NewErrParamRequired("Value"))
 16875  	}
 16876  	if s.Value != nil && len(*s.Value) < 1 {
 16877  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 16878  	}
 16879  
 16880  	if invalidParams.Len() > 0 {
 16881  		return invalidParams
 16882  	}
 16883  	return nil
 16884  }
 16885  
 16886  // SetKey sets the Key field's value.
 16887  func (s *AssociationExecutionFilter) SetKey(v string) *AssociationExecutionFilter {
 16888  	s.Key = &v
 16889  	return s
 16890  }
 16891  
 16892  // SetType sets the Type field's value.
 16893  func (s *AssociationExecutionFilter) SetType(v string) *AssociationExecutionFilter {
 16894  	s.Type = &v
 16895  	return s
 16896  }
 16897  
 16898  // SetValue sets the Value field's value.
 16899  func (s *AssociationExecutionFilter) SetValue(v string) *AssociationExecutionFilter {
 16900  	s.Value = &v
 16901  	return s
 16902  }
 16903  
 16904  // Includes information about the specified association execution.
 16905  type AssociationExecutionTarget struct {
 16906  	_ struct{} `type:"structure"`
 16907  
 16908  	// The association ID.
 16909  	AssociationId *string `type:"string"`
 16910  
 16911  	// The association version.
 16912  	AssociationVersion *string `type:"string"`
 16913  
 16914  	// Detailed information about the execution status.
 16915  	DetailedStatus *string `type:"string"`
 16916  
 16917  	// The execution ID.
 16918  	ExecutionId *string `type:"string"`
 16919  
 16920  	// The date of the last execution.
 16921  	LastExecutionDate *time.Time `type:"timestamp"`
 16922  
 16923  	// The location where the association details are saved.
 16924  	OutputSource *OutputSource `type:"structure"`
 16925  
 16926  	// The resource ID, for example, the instance ID where the association ran.
 16927  	ResourceId *string `min:"1" type:"string"`
 16928  
 16929  	// The resource type, for example, instance.
 16930  	ResourceType *string `min:"1" type:"string"`
 16931  
 16932  	// The association execution status.
 16933  	Status *string `type:"string"`
 16934  }
 16935  
 16936  // String returns the string representation.
 16937  //
 16938  // API parameter values that are decorated as "sensitive" in the API will not
 16939  // be included in the string output. The member name will be present, but the
 16940  // value will be replaced with "sensitive".
 16941  func (s AssociationExecutionTarget) String() string {
 16942  	return awsutil.Prettify(s)
 16943  }
 16944  
 16945  // GoString returns the string representation.
 16946  //
 16947  // API parameter values that are decorated as "sensitive" in the API will not
 16948  // be included in the string output. The member name will be present, but the
 16949  // value will be replaced with "sensitive".
 16950  func (s AssociationExecutionTarget) GoString() string {
 16951  	return s.String()
 16952  }
 16953  
 16954  // SetAssociationId sets the AssociationId field's value.
 16955  func (s *AssociationExecutionTarget) SetAssociationId(v string) *AssociationExecutionTarget {
 16956  	s.AssociationId = &v
 16957  	return s
 16958  }
 16959  
 16960  // SetAssociationVersion sets the AssociationVersion field's value.
 16961  func (s *AssociationExecutionTarget) SetAssociationVersion(v string) *AssociationExecutionTarget {
 16962  	s.AssociationVersion = &v
 16963  	return s
 16964  }
 16965  
 16966  // SetDetailedStatus sets the DetailedStatus field's value.
 16967  func (s *AssociationExecutionTarget) SetDetailedStatus(v string) *AssociationExecutionTarget {
 16968  	s.DetailedStatus = &v
 16969  	return s
 16970  }
 16971  
 16972  // SetExecutionId sets the ExecutionId field's value.
 16973  func (s *AssociationExecutionTarget) SetExecutionId(v string) *AssociationExecutionTarget {
 16974  	s.ExecutionId = &v
 16975  	return s
 16976  }
 16977  
 16978  // SetLastExecutionDate sets the LastExecutionDate field's value.
 16979  func (s *AssociationExecutionTarget) SetLastExecutionDate(v time.Time) *AssociationExecutionTarget {
 16980  	s.LastExecutionDate = &v
 16981  	return s
 16982  }
 16983  
 16984  // SetOutputSource sets the OutputSource field's value.
 16985  func (s *AssociationExecutionTarget) SetOutputSource(v *OutputSource) *AssociationExecutionTarget {
 16986  	s.OutputSource = v
 16987  	return s
 16988  }
 16989  
 16990  // SetResourceId sets the ResourceId field's value.
 16991  func (s *AssociationExecutionTarget) SetResourceId(v string) *AssociationExecutionTarget {
 16992  	s.ResourceId = &v
 16993  	return s
 16994  }
 16995  
 16996  // SetResourceType sets the ResourceType field's value.
 16997  func (s *AssociationExecutionTarget) SetResourceType(v string) *AssociationExecutionTarget {
 16998  	s.ResourceType = &v
 16999  	return s
 17000  }
 17001  
 17002  // SetStatus sets the Status field's value.
 17003  func (s *AssociationExecutionTarget) SetStatus(v string) *AssociationExecutionTarget {
 17004  	s.Status = &v
 17005  	return s
 17006  }
 17007  
 17008  // Filters for the association execution.
 17009  type AssociationExecutionTargetsFilter struct {
 17010  	_ struct{} `type:"structure"`
 17011  
 17012  	// The key value used in the request.
 17013  	//
 17014  	// Key is a required field
 17015  	Key *string `type:"string" required:"true" enum:"AssociationExecutionTargetsFilterKey"`
 17016  
 17017  	// The value specified for the key.
 17018  	//
 17019  	// Value is a required field
 17020  	Value *string `min:"1" type:"string" required:"true"`
 17021  }
 17022  
 17023  // String returns the string representation.
 17024  //
 17025  // API parameter values that are decorated as "sensitive" in the API will not
 17026  // be included in the string output. The member name will be present, but the
 17027  // value will be replaced with "sensitive".
 17028  func (s AssociationExecutionTargetsFilter) String() string {
 17029  	return awsutil.Prettify(s)
 17030  }
 17031  
 17032  // GoString returns the string representation.
 17033  //
 17034  // API parameter values that are decorated as "sensitive" in the API will not
 17035  // be included in the string output. The member name will be present, but the
 17036  // value will be replaced with "sensitive".
 17037  func (s AssociationExecutionTargetsFilter) GoString() string {
 17038  	return s.String()
 17039  }
 17040  
 17041  // Validate inspects the fields of the type to determine if they are valid.
 17042  func (s *AssociationExecutionTargetsFilter) Validate() error {
 17043  	invalidParams := request.ErrInvalidParams{Context: "AssociationExecutionTargetsFilter"}
 17044  	if s.Key == nil {
 17045  		invalidParams.Add(request.NewErrParamRequired("Key"))
 17046  	}
 17047  	if s.Value == nil {
 17048  		invalidParams.Add(request.NewErrParamRequired("Value"))
 17049  	}
 17050  	if s.Value != nil && len(*s.Value) < 1 {
 17051  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 17052  	}
 17053  
 17054  	if invalidParams.Len() > 0 {
 17055  		return invalidParams
 17056  	}
 17057  	return nil
 17058  }
 17059  
 17060  // SetKey sets the Key field's value.
 17061  func (s *AssociationExecutionTargetsFilter) SetKey(v string) *AssociationExecutionTargetsFilter {
 17062  	s.Key = &v
 17063  	return s
 17064  }
 17065  
 17066  // SetValue sets the Value field's value.
 17067  func (s *AssociationExecutionTargetsFilter) SetValue(v string) *AssociationExecutionTargetsFilter {
 17068  	s.Value = &v
 17069  	return s
 17070  }
 17071  
 17072  // Describes a filter.
 17073  type AssociationFilter struct {
 17074  	_ struct{} `type:"structure"`
 17075  
 17076  	// The name of the filter.
 17077  	//
 17078  	// InstanceId has been deprecated.
 17079  	//
 17080  	// Key is a required field
 17081  	Key *string `locationName:"key" type:"string" required:"true" enum:"AssociationFilterKey"`
 17082  
 17083  	// The filter value.
 17084  	//
 17085  	// Value is a required field
 17086  	Value *string `locationName:"value" min:"1" type:"string" required:"true"`
 17087  }
 17088  
 17089  // String returns the string representation.
 17090  //
 17091  // API parameter values that are decorated as "sensitive" in the API will not
 17092  // be included in the string output. The member name will be present, but the
 17093  // value will be replaced with "sensitive".
 17094  func (s AssociationFilter) String() string {
 17095  	return awsutil.Prettify(s)
 17096  }
 17097  
 17098  // GoString returns the string representation.
 17099  //
 17100  // API parameter values that are decorated as "sensitive" in the API will not
 17101  // be included in the string output. The member name will be present, but the
 17102  // value will be replaced with "sensitive".
 17103  func (s AssociationFilter) GoString() string {
 17104  	return s.String()
 17105  }
 17106  
 17107  // Validate inspects the fields of the type to determine if they are valid.
 17108  func (s *AssociationFilter) Validate() error {
 17109  	invalidParams := request.ErrInvalidParams{Context: "AssociationFilter"}
 17110  	if s.Key == nil {
 17111  		invalidParams.Add(request.NewErrParamRequired("Key"))
 17112  	}
 17113  	if s.Value == nil {
 17114  		invalidParams.Add(request.NewErrParamRequired("Value"))
 17115  	}
 17116  	if s.Value != nil && len(*s.Value) < 1 {
 17117  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 17118  	}
 17119  
 17120  	if invalidParams.Len() > 0 {
 17121  		return invalidParams
 17122  	}
 17123  	return nil
 17124  }
 17125  
 17126  // SetKey sets the Key field's value.
 17127  func (s *AssociationFilter) SetKey(v string) *AssociationFilter {
 17128  	s.Key = &v
 17129  	return s
 17130  }
 17131  
 17132  // SetValue sets the Value field's value.
 17133  func (s *AssociationFilter) SetValue(v string) *AssociationFilter {
 17134  	s.Value = &v
 17135  	return s
 17136  }
 17137  
 17138  // You can have at most 2,000 active associations.
 17139  type AssociationLimitExceeded struct {
 17140  	_            struct{}                  `type:"structure"`
 17141  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 17142  
 17143  	Message_ *string `locationName:"message" type:"string"`
 17144  }
 17145  
 17146  // String returns the string representation.
 17147  //
 17148  // API parameter values that are decorated as "sensitive" in the API will not
 17149  // be included in the string output. The member name will be present, but the
 17150  // value will be replaced with "sensitive".
 17151  func (s AssociationLimitExceeded) String() string {
 17152  	return awsutil.Prettify(s)
 17153  }
 17154  
 17155  // GoString returns the string representation.
 17156  //
 17157  // API parameter values that are decorated as "sensitive" in the API will not
 17158  // be included in the string output. The member name will be present, but the
 17159  // value will be replaced with "sensitive".
 17160  func (s AssociationLimitExceeded) GoString() string {
 17161  	return s.String()
 17162  }
 17163  
 17164  func newErrorAssociationLimitExceeded(v protocol.ResponseMetadata) error {
 17165  	return &AssociationLimitExceeded{
 17166  		RespMetadata: v,
 17167  	}
 17168  }
 17169  
 17170  // Code returns the exception type name.
 17171  func (s *AssociationLimitExceeded) Code() string {
 17172  	return "AssociationLimitExceeded"
 17173  }
 17174  
 17175  // Message returns the exception's message.
 17176  func (s *AssociationLimitExceeded) Message() string {
 17177  	if s.Message_ != nil {
 17178  		return *s.Message_
 17179  	}
 17180  	return ""
 17181  }
 17182  
 17183  // OrigErr always returns nil, satisfies awserr.Error interface.
 17184  func (s *AssociationLimitExceeded) OrigErr() error {
 17185  	return nil
 17186  }
 17187  
 17188  func (s *AssociationLimitExceeded) Error() string {
 17189  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 17190  }
 17191  
 17192  // Status code returns the HTTP status code for the request's response error.
 17193  func (s *AssociationLimitExceeded) StatusCode() int {
 17194  	return s.RespMetadata.StatusCode
 17195  }
 17196  
 17197  // RequestID returns the service's response RequestID for request.
 17198  func (s *AssociationLimitExceeded) RequestID() string {
 17199  	return s.RespMetadata.RequestID
 17200  }
 17201  
 17202  // Information about the association.
 17203  type AssociationOverview struct {
 17204  	_ struct{} `type:"structure"`
 17205  
 17206  	// Returns the number of targets for the association status. For example, if
 17207  	// you created an association with two instances, and one of them was successful,
 17208  	// this would return the count of instances by status.
 17209  	AssociationStatusAggregatedCount map[string]*int64 `type:"map"`
 17210  
 17211  	// A detailed status of the association.
 17212  	DetailedStatus *string `type:"string"`
 17213  
 17214  	// The status of the association. Status can be: Pending, Success, or Failed.
 17215  	Status *string `type:"string"`
 17216  }
 17217  
 17218  // String returns the string representation.
 17219  //
 17220  // API parameter values that are decorated as "sensitive" in the API will not
 17221  // be included in the string output. The member name will be present, but the
 17222  // value will be replaced with "sensitive".
 17223  func (s AssociationOverview) String() string {
 17224  	return awsutil.Prettify(s)
 17225  }
 17226  
 17227  // GoString returns the string representation.
 17228  //
 17229  // API parameter values that are decorated as "sensitive" in the API will not
 17230  // be included in the string output. The member name will be present, but the
 17231  // value will be replaced with "sensitive".
 17232  func (s AssociationOverview) GoString() string {
 17233  	return s.String()
 17234  }
 17235  
 17236  // SetAssociationStatusAggregatedCount sets the AssociationStatusAggregatedCount field's value.
 17237  func (s *AssociationOverview) SetAssociationStatusAggregatedCount(v map[string]*int64) *AssociationOverview {
 17238  	s.AssociationStatusAggregatedCount = v
 17239  	return s
 17240  }
 17241  
 17242  // SetDetailedStatus sets the DetailedStatus field's value.
 17243  func (s *AssociationOverview) SetDetailedStatus(v string) *AssociationOverview {
 17244  	s.DetailedStatus = &v
 17245  	return s
 17246  }
 17247  
 17248  // SetStatus sets the Status field's value.
 17249  func (s *AssociationOverview) SetStatus(v string) *AssociationOverview {
 17250  	s.Status = &v
 17251  	return s
 17252  }
 17253  
 17254  // Describes an association status.
 17255  type AssociationStatus struct {
 17256  	_ struct{} `type:"structure"`
 17257  
 17258  	// A user-defined string.
 17259  	AdditionalInfo *string `type:"string"`
 17260  
 17261  	// The date when the status changed.
 17262  	//
 17263  	// Date is a required field
 17264  	Date *time.Time `type:"timestamp" required:"true"`
 17265  
 17266  	// The reason for the status.
 17267  	//
 17268  	// Message is a required field
 17269  	Message *string `min:"1" type:"string" required:"true"`
 17270  
 17271  	// The status.
 17272  	//
 17273  	// Name is a required field
 17274  	Name *string `type:"string" required:"true" enum:"AssociationStatusName"`
 17275  }
 17276  
 17277  // String returns the string representation.
 17278  //
 17279  // API parameter values that are decorated as "sensitive" in the API will not
 17280  // be included in the string output. The member name will be present, but the
 17281  // value will be replaced with "sensitive".
 17282  func (s AssociationStatus) String() string {
 17283  	return awsutil.Prettify(s)
 17284  }
 17285  
 17286  // GoString returns the string representation.
 17287  //
 17288  // API parameter values that are decorated as "sensitive" in the API will not
 17289  // be included in the string output. The member name will be present, but the
 17290  // value will be replaced with "sensitive".
 17291  func (s AssociationStatus) GoString() string {
 17292  	return s.String()
 17293  }
 17294  
 17295  // Validate inspects the fields of the type to determine if they are valid.
 17296  func (s *AssociationStatus) Validate() error {
 17297  	invalidParams := request.ErrInvalidParams{Context: "AssociationStatus"}
 17298  	if s.Date == nil {
 17299  		invalidParams.Add(request.NewErrParamRequired("Date"))
 17300  	}
 17301  	if s.Message == nil {
 17302  		invalidParams.Add(request.NewErrParamRequired("Message"))
 17303  	}
 17304  	if s.Message != nil && len(*s.Message) < 1 {
 17305  		invalidParams.Add(request.NewErrParamMinLen("Message", 1))
 17306  	}
 17307  	if s.Name == nil {
 17308  		invalidParams.Add(request.NewErrParamRequired("Name"))
 17309  	}
 17310  
 17311  	if invalidParams.Len() > 0 {
 17312  		return invalidParams
 17313  	}
 17314  	return nil
 17315  }
 17316  
 17317  // SetAdditionalInfo sets the AdditionalInfo field's value.
 17318  func (s *AssociationStatus) SetAdditionalInfo(v string) *AssociationStatus {
 17319  	s.AdditionalInfo = &v
 17320  	return s
 17321  }
 17322  
 17323  // SetDate sets the Date field's value.
 17324  func (s *AssociationStatus) SetDate(v time.Time) *AssociationStatus {
 17325  	s.Date = &v
 17326  	return s
 17327  }
 17328  
 17329  // SetMessage sets the Message field's value.
 17330  func (s *AssociationStatus) SetMessage(v string) *AssociationStatus {
 17331  	s.Message = &v
 17332  	return s
 17333  }
 17334  
 17335  // SetName sets the Name field's value.
 17336  func (s *AssociationStatus) SetName(v string) *AssociationStatus {
 17337  	s.Name = &v
 17338  	return s
 17339  }
 17340  
 17341  // Information about the association version.
 17342  type AssociationVersionInfo struct {
 17343  	_ struct{} `type:"structure"`
 17344  
 17345  	// By default, when you create a new associations, the system runs it immediately
 17346  	// after it is created and then according to the schedule you specified. Specify
 17347  	// this option if you don't want an association to run immediately after you
 17348  	// create it. This parameter isn't supported for rate expressions.
 17349  	ApplyOnlyAtCronInterval *bool `type:"boolean"`
 17350  
 17351  	// The ID created by the system when the association was created.
 17352  	AssociationId *string `type:"string"`
 17353  
 17354  	// The name specified for the association version when the association version
 17355  	// was created.
 17356  	AssociationName *string `type:"string"`
 17357  
 17358  	// The association version.
 17359  	AssociationVersion *string `type:"string"`
 17360  
 17361  	// The names or Amazon Resource Names (ARNs) of the Change Calendar type documents
 17362  	// your associations are gated under. The associations for this version only
 17363  	// run when that Change Calendar is open. For more information, see Amazon Web
 17364  	// Services Systems Manager Change Calendar (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar).
 17365  	CalendarNames []*string `type:"list"`
 17366  
 17367  	// The severity level that is assigned to the association.
 17368  	ComplianceSeverity *string `type:"string" enum:"AssociationComplianceSeverity"`
 17369  
 17370  	// The date the association version was created.
 17371  	CreatedDate *time.Time `type:"timestamp"`
 17372  
 17373  	// The version of an Amazon Web Services Systems Manager document (SSM document)
 17374  	// used when the association version was created.
 17375  	DocumentVersion *string `type:"string"`
 17376  
 17377  	// The maximum number of targets allowed to run the association at the same
 17378  	// time. You can specify a number, for example 10, or a percentage of the target
 17379  	// set, for example 10%. The default value is 100%, which means all targets
 17380  	// run the association at the same time.
 17381  	//
 17382  	// If a new instance starts and attempts to run an association while Systems
 17383  	// Manager is running MaxConcurrency associations, the association is allowed
 17384  	// to run. During the next association interval, the new instance will process
 17385  	// its association within the limit specified for MaxConcurrency.
 17386  	MaxConcurrency *string `min:"1" type:"string"`
 17387  
 17388  	// The number of errors that are allowed before the system stops sending requests
 17389  	// to run the association on additional targets. You can specify either an absolute
 17390  	// number of errors, for example 10, or a percentage of the target set, for
 17391  	// example 10%. If you specify 3, for example, the system stops sending requests
 17392  	// when the fourth error is received. If you specify 0, then the system stops
 17393  	// sending requests after the first error is returned. If you run an association
 17394  	// on 50 instances and set MaxError to 10%, then the system stops sending the
 17395  	// request when the sixth error is received.
 17396  	//
 17397  	// Executions that are already running an association when MaxErrors is reached
 17398  	// are allowed to complete, but some of these executions may fail as well. If
 17399  	// you need to ensure that there won't be more than max-errors failed executions,
 17400  	// set MaxConcurrency to 1 so that executions proceed one at a time.
 17401  	MaxErrors *string `min:"1" type:"string"`
 17402  
 17403  	// The name specified when the association was created.
 17404  	Name *string `type:"string"`
 17405  
 17406  	// The location in Amazon S3 specified for the association when the association
 17407  	// version was created.
 17408  	OutputLocation *InstanceAssociationOutputLocation `type:"structure"`
 17409  
 17410  	// Parameters specified when the association version was created.
 17411  	Parameters map[string][]*string `type:"map"`
 17412  
 17413  	// The cron or rate schedule specified for the association when the association
 17414  	// version was created.
 17415  	ScheduleExpression *string `min:"1" type:"string"`
 17416  
 17417  	// The mode for generating association compliance. You can specify AUTO or MANUAL.
 17418  	// In AUTO mode, the system uses the status of the association execution to
 17419  	// determine the compliance status. If the association execution runs successfully,
 17420  	// then the association is COMPLIANT. If the association execution doesn't run
 17421  	// successfully, the association is NON-COMPLIANT.
 17422  	//
 17423  	// In MANUAL mode, you must specify the AssociationId as a parameter for the
 17424  	// PutComplianceItems API operation. In this case, compliance data isn't managed
 17425  	// by State Manager, a capability of Amazon Web Services Systems Manager. It
 17426  	// is managed by your direct call to the PutComplianceItems API operation.
 17427  	//
 17428  	// By default, all associations use AUTO mode.
 17429  	SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"`
 17430  
 17431  	// The combination of Amazon Web Services Regions and Amazon Web Services accounts
 17432  	// where you wanted to run the association when this association version was
 17433  	// created.
 17434  	TargetLocations []*TargetLocation `min:"1" type:"list"`
 17435  
 17436  	// The targets specified for the association when the association version was
 17437  	// created.
 17438  	Targets []*Target `type:"list"`
 17439  }
 17440  
 17441  // String returns the string representation.
 17442  //
 17443  // API parameter values that are decorated as "sensitive" in the API will not
 17444  // be included in the string output. The member name will be present, but the
 17445  // value will be replaced with "sensitive".
 17446  func (s AssociationVersionInfo) String() string {
 17447  	return awsutil.Prettify(s)
 17448  }
 17449  
 17450  // GoString returns the string representation.
 17451  //
 17452  // API parameter values that are decorated as "sensitive" in the API will not
 17453  // be included in the string output. The member name will be present, but the
 17454  // value will be replaced with "sensitive".
 17455  func (s AssociationVersionInfo) GoString() string {
 17456  	return s.String()
 17457  }
 17458  
 17459  // SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value.
 17460  func (s *AssociationVersionInfo) SetApplyOnlyAtCronInterval(v bool) *AssociationVersionInfo {
 17461  	s.ApplyOnlyAtCronInterval = &v
 17462  	return s
 17463  }
 17464  
 17465  // SetAssociationId sets the AssociationId field's value.
 17466  func (s *AssociationVersionInfo) SetAssociationId(v string) *AssociationVersionInfo {
 17467  	s.AssociationId = &v
 17468  	return s
 17469  }
 17470  
 17471  // SetAssociationName sets the AssociationName field's value.
 17472  func (s *AssociationVersionInfo) SetAssociationName(v string) *AssociationVersionInfo {
 17473  	s.AssociationName = &v
 17474  	return s
 17475  }
 17476  
 17477  // SetAssociationVersion sets the AssociationVersion field's value.
 17478  func (s *AssociationVersionInfo) SetAssociationVersion(v string) *AssociationVersionInfo {
 17479  	s.AssociationVersion = &v
 17480  	return s
 17481  }
 17482  
 17483  // SetCalendarNames sets the CalendarNames field's value.
 17484  func (s *AssociationVersionInfo) SetCalendarNames(v []*string) *AssociationVersionInfo {
 17485  	s.CalendarNames = v
 17486  	return s
 17487  }
 17488  
 17489  // SetComplianceSeverity sets the ComplianceSeverity field's value.
 17490  func (s *AssociationVersionInfo) SetComplianceSeverity(v string) *AssociationVersionInfo {
 17491  	s.ComplianceSeverity = &v
 17492  	return s
 17493  }
 17494  
 17495  // SetCreatedDate sets the CreatedDate field's value.
 17496  func (s *AssociationVersionInfo) SetCreatedDate(v time.Time) *AssociationVersionInfo {
 17497  	s.CreatedDate = &v
 17498  	return s
 17499  }
 17500  
 17501  // SetDocumentVersion sets the DocumentVersion field's value.
 17502  func (s *AssociationVersionInfo) SetDocumentVersion(v string) *AssociationVersionInfo {
 17503  	s.DocumentVersion = &v
 17504  	return s
 17505  }
 17506  
 17507  // SetMaxConcurrency sets the MaxConcurrency field's value.
 17508  func (s *AssociationVersionInfo) SetMaxConcurrency(v string) *AssociationVersionInfo {
 17509  	s.MaxConcurrency = &v
 17510  	return s
 17511  }
 17512  
 17513  // SetMaxErrors sets the MaxErrors field's value.
 17514  func (s *AssociationVersionInfo) SetMaxErrors(v string) *AssociationVersionInfo {
 17515  	s.MaxErrors = &v
 17516  	return s
 17517  }
 17518  
 17519  // SetName sets the Name field's value.
 17520  func (s *AssociationVersionInfo) SetName(v string) *AssociationVersionInfo {
 17521  	s.Name = &v
 17522  	return s
 17523  }
 17524  
 17525  // SetOutputLocation sets the OutputLocation field's value.
 17526  func (s *AssociationVersionInfo) SetOutputLocation(v *InstanceAssociationOutputLocation) *AssociationVersionInfo {
 17527  	s.OutputLocation = v
 17528  	return s
 17529  }
 17530  
 17531  // SetParameters sets the Parameters field's value.
 17532  func (s *AssociationVersionInfo) SetParameters(v map[string][]*string) *AssociationVersionInfo {
 17533  	s.Parameters = v
 17534  	return s
 17535  }
 17536  
 17537  // SetScheduleExpression sets the ScheduleExpression field's value.
 17538  func (s *AssociationVersionInfo) SetScheduleExpression(v string) *AssociationVersionInfo {
 17539  	s.ScheduleExpression = &v
 17540  	return s
 17541  }
 17542  
 17543  // SetSyncCompliance sets the SyncCompliance field's value.
 17544  func (s *AssociationVersionInfo) SetSyncCompliance(v string) *AssociationVersionInfo {
 17545  	s.SyncCompliance = &v
 17546  	return s
 17547  }
 17548  
 17549  // SetTargetLocations sets the TargetLocations field's value.
 17550  func (s *AssociationVersionInfo) SetTargetLocations(v []*TargetLocation) *AssociationVersionInfo {
 17551  	s.TargetLocations = v
 17552  	return s
 17553  }
 17554  
 17555  // SetTargets sets the Targets field's value.
 17556  func (s *AssociationVersionInfo) SetTargets(v []*Target) *AssociationVersionInfo {
 17557  	s.Targets = v
 17558  	return s
 17559  }
 17560  
 17561  // You have reached the maximum number versions allowed for an association.
 17562  // Each association has a limit of 1,000 versions.
 17563  type AssociationVersionLimitExceeded struct {
 17564  	_            struct{}                  `type:"structure"`
 17565  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 17566  
 17567  	Message_ *string `locationName:"Message" type:"string"`
 17568  }
 17569  
 17570  // String returns the string representation.
 17571  //
 17572  // API parameter values that are decorated as "sensitive" in the API will not
 17573  // be included in the string output. The member name will be present, but the
 17574  // value will be replaced with "sensitive".
 17575  func (s AssociationVersionLimitExceeded) String() string {
 17576  	return awsutil.Prettify(s)
 17577  }
 17578  
 17579  // GoString returns the string representation.
 17580  //
 17581  // API parameter values that are decorated as "sensitive" in the API will not
 17582  // be included in the string output. The member name will be present, but the
 17583  // value will be replaced with "sensitive".
 17584  func (s AssociationVersionLimitExceeded) GoString() string {
 17585  	return s.String()
 17586  }
 17587  
 17588  func newErrorAssociationVersionLimitExceeded(v protocol.ResponseMetadata) error {
 17589  	return &AssociationVersionLimitExceeded{
 17590  		RespMetadata: v,
 17591  	}
 17592  }
 17593  
 17594  // Code returns the exception type name.
 17595  func (s *AssociationVersionLimitExceeded) Code() string {
 17596  	return "AssociationVersionLimitExceeded"
 17597  }
 17598  
 17599  // Message returns the exception's message.
 17600  func (s *AssociationVersionLimitExceeded) Message() string {
 17601  	if s.Message_ != nil {
 17602  		return *s.Message_
 17603  	}
 17604  	return ""
 17605  }
 17606  
 17607  // OrigErr always returns nil, satisfies awserr.Error interface.
 17608  func (s *AssociationVersionLimitExceeded) OrigErr() error {
 17609  	return nil
 17610  }
 17611  
 17612  func (s *AssociationVersionLimitExceeded) Error() string {
 17613  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 17614  }
 17615  
 17616  // Status code returns the HTTP status code for the request's response error.
 17617  func (s *AssociationVersionLimitExceeded) StatusCode() int {
 17618  	return s.RespMetadata.StatusCode
 17619  }
 17620  
 17621  // RequestID returns the service's response RequestID for request.
 17622  func (s *AssociationVersionLimitExceeded) RequestID() string {
 17623  	return s.RespMetadata.RequestID
 17624  }
 17625  
 17626  // A structure that includes attributes that describe a document attachment.
 17627  type AttachmentContent struct {
 17628  	_ struct{} `type:"structure"`
 17629  
 17630  	// The cryptographic hash value of the document content.
 17631  	Hash *string `type:"string"`
 17632  
 17633  	// The hash algorithm used to calculate the hash value.
 17634  	HashType *string `type:"string" enum:"AttachmentHashType"`
 17635  
 17636  	// The name of an attachment.
 17637  	Name *string `type:"string"`
 17638  
 17639  	// The size of an attachment in bytes.
 17640  	Size *int64 `type:"long"`
 17641  
 17642  	// The URL location of the attachment content.
 17643  	Url *string `type:"string"`
 17644  }
 17645  
 17646  // String returns the string representation.
 17647  //
 17648  // API parameter values that are decorated as "sensitive" in the API will not
 17649  // be included in the string output. The member name will be present, but the
 17650  // value will be replaced with "sensitive".
 17651  func (s AttachmentContent) String() string {
 17652  	return awsutil.Prettify(s)
 17653  }
 17654  
 17655  // GoString returns the string representation.
 17656  //
 17657  // API parameter values that are decorated as "sensitive" in the API will not
 17658  // be included in the string output. The member name will be present, but the
 17659  // value will be replaced with "sensitive".
 17660  func (s AttachmentContent) GoString() string {
 17661  	return s.String()
 17662  }
 17663  
 17664  // SetHash sets the Hash field's value.
 17665  func (s *AttachmentContent) SetHash(v string) *AttachmentContent {
 17666  	s.Hash = &v
 17667  	return s
 17668  }
 17669  
 17670  // SetHashType sets the HashType field's value.
 17671  func (s *AttachmentContent) SetHashType(v string) *AttachmentContent {
 17672  	s.HashType = &v
 17673  	return s
 17674  }
 17675  
 17676  // SetName sets the Name field's value.
 17677  func (s *AttachmentContent) SetName(v string) *AttachmentContent {
 17678  	s.Name = &v
 17679  	return s
 17680  }
 17681  
 17682  // SetSize sets the Size field's value.
 17683  func (s *AttachmentContent) SetSize(v int64) *AttachmentContent {
 17684  	s.Size = &v
 17685  	return s
 17686  }
 17687  
 17688  // SetUrl sets the Url field's value.
 17689  func (s *AttachmentContent) SetUrl(v string) *AttachmentContent {
 17690  	s.Url = &v
 17691  	return s
 17692  }
 17693  
 17694  // An attribute of an attachment, such as the attachment name.
 17695  type AttachmentInformation struct {
 17696  	_ struct{} `type:"structure"`
 17697  
 17698  	// The name of the attachment.
 17699  	Name *string `type:"string"`
 17700  }
 17701  
 17702  // String returns the string representation.
 17703  //
 17704  // API parameter values that are decorated as "sensitive" in the API will not
 17705  // be included in the string output. The member name will be present, but the
 17706  // value will be replaced with "sensitive".
 17707  func (s AttachmentInformation) String() string {
 17708  	return awsutil.Prettify(s)
 17709  }
 17710  
 17711  // GoString returns the string representation.
 17712  //
 17713  // API parameter values that are decorated as "sensitive" in the API will not
 17714  // be included in the string output. The member name will be present, but the
 17715  // value will be replaced with "sensitive".
 17716  func (s AttachmentInformation) GoString() string {
 17717  	return s.String()
 17718  }
 17719  
 17720  // SetName sets the Name field's value.
 17721  func (s *AttachmentInformation) SetName(v string) *AttachmentInformation {
 17722  	s.Name = &v
 17723  	return s
 17724  }
 17725  
 17726  // Identifying information about a document attachment, including the file name
 17727  // and a key-value pair that identifies the location of an attachment to a document.
 17728  type AttachmentsSource struct {
 17729  	_ struct{} `type:"structure"`
 17730  
 17731  	// The key of a key-value pair that identifies the location of an attachment
 17732  	// to a document.
 17733  	Key *string `type:"string" enum:"AttachmentsSourceKey"`
 17734  
 17735  	// The name of the document attachment file.
 17736  	Name *string `type:"string"`
 17737  
 17738  	// The value of a key-value pair that identifies the location of an attachment
 17739  	// to a document. The format for Value depends on the type of key you specify.
 17740  	//
 17741  	//    * For the key SourceUrl, the value is an S3 bucket location. For example:
 17742  	//    "Values": [ "s3://doc-example-bucket/my-folder" ]
 17743  	//
 17744  	//    * For the key S3FileUrl, the value is a file in an S3 bucket. For example:
 17745  	//    "Values": [ "s3://doc-example-bucket/my-folder/my-file.py" ]
 17746  	//
 17747  	//    * For the key AttachmentReference, the value is constructed from the name
 17748  	//    of another SSM document in your account, a version number of that document,
 17749  	//    and a file attached to that document version that you want to reuse. For
 17750  	//    example: "Values": [ "MyOtherDocument/3/my-other-file.py" ] However, if
 17751  	//    the SSM document is shared with you from another account, the full SSM
 17752  	//    document ARN must be specified instead of the document name only. For
 17753  	//    example: "Values": [ "arn:aws:ssm:us-east-2:111122223333:document/OtherAccountDocument/3/their-file.py"
 17754  	//    ]
 17755  	Values []*string `min:"1" type:"list"`
 17756  }
 17757  
 17758  // String returns the string representation.
 17759  //
 17760  // API parameter values that are decorated as "sensitive" in the API will not
 17761  // be included in the string output. The member name will be present, but the
 17762  // value will be replaced with "sensitive".
 17763  func (s AttachmentsSource) String() string {
 17764  	return awsutil.Prettify(s)
 17765  }
 17766  
 17767  // GoString returns the string representation.
 17768  //
 17769  // API parameter values that are decorated as "sensitive" in the API will not
 17770  // be included in the string output. The member name will be present, but the
 17771  // value will be replaced with "sensitive".
 17772  func (s AttachmentsSource) GoString() string {
 17773  	return s.String()
 17774  }
 17775  
 17776  // Validate inspects the fields of the type to determine if they are valid.
 17777  func (s *AttachmentsSource) Validate() error {
 17778  	invalidParams := request.ErrInvalidParams{Context: "AttachmentsSource"}
 17779  	if s.Values != nil && len(s.Values) < 1 {
 17780  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 17781  	}
 17782  
 17783  	if invalidParams.Len() > 0 {
 17784  		return invalidParams
 17785  	}
 17786  	return nil
 17787  }
 17788  
 17789  // SetKey sets the Key field's value.
 17790  func (s *AttachmentsSource) SetKey(v string) *AttachmentsSource {
 17791  	s.Key = &v
 17792  	return s
 17793  }
 17794  
 17795  // SetName sets the Name field's value.
 17796  func (s *AttachmentsSource) SetName(v string) *AttachmentsSource {
 17797  	s.Name = &v
 17798  	return s
 17799  }
 17800  
 17801  // SetValues sets the Values field's value.
 17802  func (s *AttachmentsSource) SetValues(v []*string) *AttachmentsSource {
 17803  	s.Values = v
 17804  	return s
 17805  }
 17806  
 17807  // Indicates that the Change Manager change template used in the change request
 17808  // was rejected or is still in a pending state.
 17809  type AutomationDefinitionNotApprovedException struct {
 17810  	_            struct{}                  `type:"structure"`
 17811  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 17812  
 17813  	Message_ *string `locationName:"Message" type:"string"`
 17814  }
 17815  
 17816  // String returns the string representation.
 17817  //
 17818  // API parameter values that are decorated as "sensitive" in the API will not
 17819  // be included in the string output. The member name will be present, but the
 17820  // value will be replaced with "sensitive".
 17821  func (s AutomationDefinitionNotApprovedException) String() string {
 17822  	return awsutil.Prettify(s)
 17823  }
 17824  
 17825  // GoString returns the string representation.
 17826  //
 17827  // API parameter values that are decorated as "sensitive" in the API will not
 17828  // be included in the string output. The member name will be present, but the
 17829  // value will be replaced with "sensitive".
 17830  func (s AutomationDefinitionNotApprovedException) GoString() string {
 17831  	return s.String()
 17832  }
 17833  
 17834  func newErrorAutomationDefinitionNotApprovedException(v protocol.ResponseMetadata) error {
 17835  	return &AutomationDefinitionNotApprovedException{
 17836  		RespMetadata: v,
 17837  	}
 17838  }
 17839  
 17840  // Code returns the exception type name.
 17841  func (s *AutomationDefinitionNotApprovedException) Code() string {
 17842  	return "AutomationDefinitionNotApprovedException"
 17843  }
 17844  
 17845  // Message returns the exception's message.
 17846  func (s *AutomationDefinitionNotApprovedException) Message() string {
 17847  	if s.Message_ != nil {
 17848  		return *s.Message_
 17849  	}
 17850  	return ""
 17851  }
 17852  
 17853  // OrigErr always returns nil, satisfies awserr.Error interface.
 17854  func (s *AutomationDefinitionNotApprovedException) OrigErr() error {
 17855  	return nil
 17856  }
 17857  
 17858  func (s *AutomationDefinitionNotApprovedException) Error() string {
 17859  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 17860  }
 17861  
 17862  // Status code returns the HTTP status code for the request's response error.
 17863  func (s *AutomationDefinitionNotApprovedException) StatusCode() int {
 17864  	return s.RespMetadata.StatusCode
 17865  }
 17866  
 17867  // RequestID returns the service's response RequestID for request.
 17868  func (s *AutomationDefinitionNotApprovedException) RequestID() string {
 17869  	return s.RespMetadata.RequestID
 17870  }
 17871  
 17872  // An Automation runbook with the specified name couldn't be found.
 17873  type AutomationDefinitionNotFoundException struct {
 17874  	_            struct{}                  `type:"structure"`
 17875  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 17876  
 17877  	Message_ *string `locationName:"Message" type:"string"`
 17878  }
 17879  
 17880  // String returns the string representation.
 17881  //
 17882  // API parameter values that are decorated as "sensitive" in the API will not
 17883  // be included in the string output. The member name will be present, but the
 17884  // value will be replaced with "sensitive".
 17885  func (s AutomationDefinitionNotFoundException) String() string {
 17886  	return awsutil.Prettify(s)
 17887  }
 17888  
 17889  // GoString returns the string representation.
 17890  //
 17891  // API parameter values that are decorated as "sensitive" in the API will not
 17892  // be included in the string output. The member name will be present, but the
 17893  // value will be replaced with "sensitive".
 17894  func (s AutomationDefinitionNotFoundException) GoString() string {
 17895  	return s.String()
 17896  }
 17897  
 17898  func newErrorAutomationDefinitionNotFoundException(v protocol.ResponseMetadata) error {
 17899  	return &AutomationDefinitionNotFoundException{
 17900  		RespMetadata: v,
 17901  	}
 17902  }
 17903  
 17904  // Code returns the exception type name.
 17905  func (s *AutomationDefinitionNotFoundException) Code() string {
 17906  	return "AutomationDefinitionNotFoundException"
 17907  }
 17908  
 17909  // Message returns the exception's message.
 17910  func (s *AutomationDefinitionNotFoundException) Message() string {
 17911  	if s.Message_ != nil {
 17912  		return *s.Message_
 17913  	}
 17914  	return ""
 17915  }
 17916  
 17917  // OrigErr always returns nil, satisfies awserr.Error interface.
 17918  func (s *AutomationDefinitionNotFoundException) OrigErr() error {
 17919  	return nil
 17920  }
 17921  
 17922  func (s *AutomationDefinitionNotFoundException) Error() string {
 17923  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 17924  }
 17925  
 17926  // Status code returns the HTTP status code for the request's response error.
 17927  func (s *AutomationDefinitionNotFoundException) StatusCode() int {
 17928  	return s.RespMetadata.StatusCode
 17929  }
 17930  
 17931  // RequestID returns the service's response RequestID for request.
 17932  func (s *AutomationDefinitionNotFoundException) RequestID() string {
 17933  	return s.RespMetadata.RequestID
 17934  }
 17935  
 17936  // An Automation runbook with the specified name and version couldn't be found.
 17937  type AutomationDefinitionVersionNotFoundException struct {
 17938  	_            struct{}                  `type:"structure"`
 17939  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 17940  
 17941  	Message_ *string `locationName:"Message" type:"string"`
 17942  }
 17943  
 17944  // String returns the string representation.
 17945  //
 17946  // API parameter values that are decorated as "sensitive" in the API will not
 17947  // be included in the string output. The member name will be present, but the
 17948  // value will be replaced with "sensitive".
 17949  func (s AutomationDefinitionVersionNotFoundException) String() string {
 17950  	return awsutil.Prettify(s)
 17951  }
 17952  
 17953  // GoString returns the string representation.
 17954  //
 17955  // API parameter values that are decorated as "sensitive" in the API will not
 17956  // be included in the string output. The member name will be present, but the
 17957  // value will be replaced with "sensitive".
 17958  func (s AutomationDefinitionVersionNotFoundException) GoString() string {
 17959  	return s.String()
 17960  }
 17961  
 17962  func newErrorAutomationDefinitionVersionNotFoundException(v protocol.ResponseMetadata) error {
 17963  	return &AutomationDefinitionVersionNotFoundException{
 17964  		RespMetadata: v,
 17965  	}
 17966  }
 17967  
 17968  // Code returns the exception type name.
 17969  func (s *AutomationDefinitionVersionNotFoundException) Code() string {
 17970  	return "AutomationDefinitionVersionNotFoundException"
 17971  }
 17972  
 17973  // Message returns the exception's message.
 17974  func (s *AutomationDefinitionVersionNotFoundException) Message() string {
 17975  	if s.Message_ != nil {
 17976  		return *s.Message_
 17977  	}
 17978  	return ""
 17979  }
 17980  
 17981  // OrigErr always returns nil, satisfies awserr.Error interface.
 17982  func (s *AutomationDefinitionVersionNotFoundException) OrigErr() error {
 17983  	return nil
 17984  }
 17985  
 17986  func (s *AutomationDefinitionVersionNotFoundException) Error() string {
 17987  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 17988  }
 17989  
 17990  // Status code returns the HTTP status code for the request's response error.
 17991  func (s *AutomationDefinitionVersionNotFoundException) StatusCode() int {
 17992  	return s.RespMetadata.StatusCode
 17993  }
 17994  
 17995  // RequestID returns the service's response RequestID for request.
 17996  func (s *AutomationDefinitionVersionNotFoundException) RequestID() string {
 17997  	return s.RespMetadata.RequestID
 17998  }
 17999  
 18000  // Detailed information about the current state of an individual Automation
 18001  // execution.
 18002  type AutomationExecution struct {
 18003  	_ struct{} `type:"structure"`
 18004  
 18005  	// The ID of a State Manager association used in the Automation operation.
 18006  	AssociationId *string `type:"string"`
 18007  
 18008  	// The execution ID.
 18009  	AutomationExecutionId *string `min:"36" type:"string"`
 18010  
 18011  	// The execution status of the Automation.
 18012  	AutomationExecutionStatus *string `type:"string" enum:"AutomationExecutionStatus"`
 18013  
 18014  	// The subtype of the Automation operation. Currently, the only supported value
 18015  	// is ChangeRequest.
 18016  	AutomationSubtype *string `type:"string" enum:"AutomationSubtype"`
 18017  
 18018  	// The name of the Change Manager change request.
 18019  	ChangeRequestName *string `min:"1" type:"string"`
 18020  
 18021  	// The action of the step that is currently running.
 18022  	CurrentAction *string `type:"string"`
 18023  
 18024  	// The name of the step that is currently running.
 18025  	CurrentStepName *string `type:"string"`
 18026  
 18027  	// The name of the Automation runbook used during the execution.
 18028  	DocumentName *string `type:"string"`
 18029  
 18030  	// The version of the document to use during execution.
 18031  	DocumentVersion *string `type:"string"`
 18032  
 18033  	// The Amazon Resource Name (ARN) of the user who ran the automation.
 18034  	ExecutedBy *string `type:"string"`
 18035  
 18036  	// The time the execution finished.
 18037  	ExecutionEndTime *time.Time `type:"timestamp"`
 18038  
 18039  	// The time the execution started.
 18040  	ExecutionStartTime *time.Time `type:"timestamp"`
 18041  
 18042  	// A message describing why an execution has failed, if the status is set to
 18043  	// Failed.
 18044  	FailureMessage *string `type:"string"`
 18045  
 18046  	// The MaxConcurrency value specified by the user when the execution started.
 18047  	MaxConcurrency *string `min:"1" type:"string"`
 18048  
 18049  	// The MaxErrors value specified by the user when the execution started.
 18050  	MaxErrors *string `min:"1" type:"string"`
 18051  
 18052  	// The automation execution mode.
 18053  	Mode *string `type:"string" enum:"ExecutionMode"`
 18054  
 18055  	// The ID of an OpsItem that is created to represent a Change Manager change
 18056  	// request.
 18057  	OpsItemId *string `type:"string"`
 18058  
 18059  	// The list of execution outputs as defined in the Automation runbook.
 18060  	Outputs map[string][]*string `min:"1" type:"map"`
 18061  
 18062  	// The key-value map of execution parameters, which were supplied when calling
 18063  	// StartAutomationExecution.
 18064  	Parameters map[string][]*string `min:"1" type:"map"`
 18065  
 18066  	// The AutomationExecutionId of the parent automation.
 18067  	ParentAutomationExecutionId *string `min:"36" type:"string"`
 18068  
 18069  	// An aggregate of step execution statuses displayed in the Amazon Web Services
 18070  	// Systems Manager console for a multi-Region and multi-account Automation execution.
 18071  	ProgressCounters *ProgressCounters `type:"structure"`
 18072  
 18073  	// A list of resolved targets in the rate control execution.
 18074  	ResolvedTargets *ResolvedTargets `type:"structure"`
 18075  
 18076  	// Information about the Automation runbooks that are run as part of a runbook
 18077  	// workflow.
 18078  	//
 18079  	// The Automation runbooks specified for the runbook workflow can't run until
 18080  	// all required approvals for the change request have been received.
 18081  	Runbooks []*Runbook `min:"1" type:"list"`
 18082  
 18083  	// The date and time the Automation operation is scheduled to start.
 18084  	ScheduledTime *time.Time `type:"timestamp"`
 18085  
 18086  	// A list of details about the current state of all steps that comprise an execution.
 18087  	// An Automation runbook contains a list of steps that are run in order.
 18088  	StepExecutions []*StepExecution `type:"list"`
 18089  
 18090  	// A boolean value that indicates if the response contains the full list of
 18091  	// the Automation step executions. If true, use the DescribeAutomationStepExecutions
 18092  	// API operation to get the full list of step executions.
 18093  	StepExecutionsTruncated *bool `type:"boolean"`
 18094  
 18095  	// The target of the execution.
 18096  	Target *string `type:"string"`
 18097  
 18098  	// The combination of Amazon Web Services Regions and/or Amazon Web Services
 18099  	// accounts where you want to run the Automation.
 18100  	TargetLocations []*TargetLocation `min:"1" type:"list"`
 18101  
 18102  	// The specified key-value mapping of document parameters to target resources.
 18103  	TargetMaps []map[string][]*string `type:"list"`
 18104  
 18105  	// The parameter name.
 18106  	TargetParameterName *string `min:"1" type:"string"`
 18107  
 18108  	// The specified targets.
 18109  	Targets []*Target `type:"list"`
 18110  }
 18111  
 18112  // String returns the string representation.
 18113  //
 18114  // API parameter values that are decorated as "sensitive" in the API will not
 18115  // be included in the string output. The member name will be present, but the
 18116  // value will be replaced with "sensitive".
 18117  func (s AutomationExecution) String() string {
 18118  	return awsutil.Prettify(s)
 18119  }
 18120  
 18121  // GoString returns the string representation.
 18122  //
 18123  // API parameter values that are decorated as "sensitive" in the API will not
 18124  // be included in the string output. The member name will be present, but the
 18125  // value will be replaced with "sensitive".
 18126  func (s AutomationExecution) GoString() string {
 18127  	return s.String()
 18128  }
 18129  
 18130  // SetAssociationId sets the AssociationId field's value.
 18131  func (s *AutomationExecution) SetAssociationId(v string) *AutomationExecution {
 18132  	s.AssociationId = &v
 18133  	return s
 18134  }
 18135  
 18136  // SetAutomationExecutionId sets the AutomationExecutionId field's value.
 18137  func (s *AutomationExecution) SetAutomationExecutionId(v string) *AutomationExecution {
 18138  	s.AutomationExecutionId = &v
 18139  	return s
 18140  }
 18141  
 18142  // SetAutomationExecutionStatus sets the AutomationExecutionStatus field's value.
 18143  func (s *AutomationExecution) SetAutomationExecutionStatus(v string) *AutomationExecution {
 18144  	s.AutomationExecutionStatus = &v
 18145  	return s
 18146  }
 18147  
 18148  // SetAutomationSubtype sets the AutomationSubtype field's value.
 18149  func (s *AutomationExecution) SetAutomationSubtype(v string) *AutomationExecution {
 18150  	s.AutomationSubtype = &v
 18151  	return s
 18152  }
 18153  
 18154  // SetChangeRequestName sets the ChangeRequestName field's value.
 18155  func (s *AutomationExecution) SetChangeRequestName(v string) *AutomationExecution {
 18156  	s.ChangeRequestName = &v
 18157  	return s
 18158  }
 18159  
 18160  // SetCurrentAction sets the CurrentAction field's value.
 18161  func (s *AutomationExecution) SetCurrentAction(v string) *AutomationExecution {
 18162  	s.CurrentAction = &v
 18163  	return s
 18164  }
 18165  
 18166  // SetCurrentStepName sets the CurrentStepName field's value.
 18167  func (s *AutomationExecution) SetCurrentStepName(v string) *AutomationExecution {
 18168  	s.CurrentStepName = &v
 18169  	return s
 18170  }
 18171  
 18172  // SetDocumentName sets the DocumentName field's value.
 18173  func (s *AutomationExecution) SetDocumentName(v string) *AutomationExecution {
 18174  	s.DocumentName = &v
 18175  	return s
 18176  }
 18177  
 18178  // SetDocumentVersion sets the DocumentVersion field's value.
 18179  func (s *AutomationExecution) SetDocumentVersion(v string) *AutomationExecution {
 18180  	s.DocumentVersion = &v
 18181  	return s
 18182  }
 18183  
 18184  // SetExecutedBy sets the ExecutedBy field's value.
 18185  func (s *AutomationExecution) SetExecutedBy(v string) *AutomationExecution {
 18186  	s.ExecutedBy = &v
 18187  	return s
 18188  }
 18189  
 18190  // SetExecutionEndTime sets the ExecutionEndTime field's value.
 18191  func (s *AutomationExecution) SetExecutionEndTime(v time.Time) *AutomationExecution {
 18192  	s.ExecutionEndTime = &v
 18193  	return s
 18194  }
 18195  
 18196  // SetExecutionStartTime sets the ExecutionStartTime field's value.
 18197  func (s *AutomationExecution) SetExecutionStartTime(v time.Time) *AutomationExecution {
 18198  	s.ExecutionStartTime = &v
 18199  	return s
 18200  }
 18201  
 18202  // SetFailureMessage sets the FailureMessage field's value.
 18203  func (s *AutomationExecution) SetFailureMessage(v string) *AutomationExecution {
 18204  	s.FailureMessage = &v
 18205  	return s
 18206  }
 18207  
 18208  // SetMaxConcurrency sets the MaxConcurrency field's value.
 18209  func (s *AutomationExecution) SetMaxConcurrency(v string) *AutomationExecution {
 18210  	s.MaxConcurrency = &v
 18211  	return s
 18212  }
 18213  
 18214  // SetMaxErrors sets the MaxErrors field's value.
 18215  func (s *AutomationExecution) SetMaxErrors(v string) *AutomationExecution {
 18216  	s.MaxErrors = &v
 18217  	return s
 18218  }
 18219  
 18220  // SetMode sets the Mode field's value.
 18221  func (s *AutomationExecution) SetMode(v string) *AutomationExecution {
 18222  	s.Mode = &v
 18223  	return s
 18224  }
 18225  
 18226  // SetOpsItemId sets the OpsItemId field's value.
 18227  func (s *AutomationExecution) SetOpsItemId(v string) *AutomationExecution {
 18228  	s.OpsItemId = &v
 18229  	return s
 18230  }
 18231  
 18232  // SetOutputs sets the Outputs field's value.
 18233  func (s *AutomationExecution) SetOutputs(v map[string][]*string) *AutomationExecution {
 18234  	s.Outputs = v
 18235  	return s
 18236  }
 18237  
 18238  // SetParameters sets the Parameters field's value.
 18239  func (s *AutomationExecution) SetParameters(v map[string][]*string) *AutomationExecution {
 18240  	s.Parameters = v
 18241  	return s
 18242  }
 18243  
 18244  // SetParentAutomationExecutionId sets the ParentAutomationExecutionId field's value.
 18245  func (s *AutomationExecution) SetParentAutomationExecutionId(v string) *AutomationExecution {
 18246  	s.ParentAutomationExecutionId = &v
 18247  	return s
 18248  }
 18249  
 18250  // SetProgressCounters sets the ProgressCounters field's value.
 18251  func (s *AutomationExecution) SetProgressCounters(v *ProgressCounters) *AutomationExecution {
 18252  	s.ProgressCounters = v
 18253  	return s
 18254  }
 18255  
 18256  // SetResolvedTargets sets the ResolvedTargets field's value.
 18257  func (s *AutomationExecution) SetResolvedTargets(v *ResolvedTargets) *AutomationExecution {
 18258  	s.ResolvedTargets = v
 18259  	return s
 18260  }
 18261  
 18262  // SetRunbooks sets the Runbooks field's value.
 18263  func (s *AutomationExecution) SetRunbooks(v []*Runbook) *AutomationExecution {
 18264  	s.Runbooks = v
 18265  	return s
 18266  }
 18267  
 18268  // SetScheduledTime sets the ScheduledTime field's value.
 18269  func (s *AutomationExecution) SetScheduledTime(v time.Time) *AutomationExecution {
 18270  	s.ScheduledTime = &v
 18271  	return s
 18272  }
 18273  
 18274  // SetStepExecutions sets the StepExecutions field's value.
 18275  func (s *AutomationExecution) SetStepExecutions(v []*StepExecution) *AutomationExecution {
 18276  	s.StepExecutions = v
 18277  	return s
 18278  }
 18279  
 18280  // SetStepExecutionsTruncated sets the StepExecutionsTruncated field's value.
 18281  func (s *AutomationExecution) SetStepExecutionsTruncated(v bool) *AutomationExecution {
 18282  	s.StepExecutionsTruncated = &v
 18283  	return s
 18284  }
 18285  
 18286  // SetTarget sets the Target field's value.
 18287  func (s *AutomationExecution) SetTarget(v string) *AutomationExecution {
 18288  	s.Target = &v
 18289  	return s
 18290  }
 18291  
 18292  // SetTargetLocations sets the TargetLocations field's value.
 18293  func (s *AutomationExecution) SetTargetLocations(v []*TargetLocation) *AutomationExecution {
 18294  	s.TargetLocations = v
 18295  	return s
 18296  }
 18297  
 18298  // SetTargetMaps sets the TargetMaps field's value.
 18299  func (s *AutomationExecution) SetTargetMaps(v []map[string][]*string) *AutomationExecution {
 18300  	s.TargetMaps = v
 18301  	return s
 18302  }
 18303  
 18304  // SetTargetParameterName sets the TargetParameterName field's value.
 18305  func (s *AutomationExecution) SetTargetParameterName(v string) *AutomationExecution {
 18306  	s.TargetParameterName = &v
 18307  	return s
 18308  }
 18309  
 18310  // SetTargets sets the Targets field's value.
 18311  func (s *AutomationExecution) SetTargets(v []*Target) *AutomationExecution {
 18312  	s.Targets = v
 18313  	return s
 18314  }
 18315  
 18316  // A filter used to match specific automation executions. This is used to limit
 18317  // the scope of Automation execution information returned.
 18318  type AutomationExecutionFilter struct {
 18319  	_ struct{} `type:"structure"`
 18320  
 18321  	// One or more keys to limit the results.
 18322  	//
 18323  	// Key is a required field
 18324  	Key *string `type:"string" required:"true" enum:"AutomationExecutionFilterKey"`
 18325  
 18326  	// The values used to limit the execution information associated with the filter's
 18327  	// key.
 18328  	//
 18329  	// Values is a required field
 18330  	Values []*string `min:"1" type:"list" required:"true"`
 18331  }
 18332  
 18333  // String returns the string representation.
 18334  //
 18335  // API parameter values that are decorated as "sensitive" in the API will not
 18336  // be included in the string output. The member name will be present, but the
 18337  // value will be replaced with "sensitive".
 18338  func (s AutomationExecutionFilter) String() string {
 18339  	return awsutil.Prettify(s)
 18340  }
 18341  
 18342  // GoString returns the string representation.
 18343  //
 18344  // API parameter values that are decorated as "sensitive" in the API will not
 18345  // be included in the string output. The member name will be present, but the
 18346  // value will be replaced with "sensitive".
 18347  func (s AutomationExecutionFilter) GoString() string {
 18348  	return s.String()
 18349  }
 18350  
 18351  // Validate inspects the fields of the type to determine if they are valid.
 18352  func (s *AutomationExecutionFilter) Validate() error {
 18353  	invalidParams := request.ErrInvalidParams{Context: "AutomationExecutionFilter"}
 18354  	if s.Key == nil {
 18355  		invalidParams.Add(request.NewErrParamRequired("Key"))
 18356  	}
 18357  	if s.Values == nil {
 18358  		invalidParams.Add(request.NewErrParamRequired("Values"))
 18359  	}
 18360  	if s.Values != nil && len(s.Values) < 1 {
 18361  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 18362  	}
 18363  
 18364  	if invalidParams.Len() > 0 {
 18365  		return invalidParams
 18366  	}
 18367  	return nil
 18368  }
 18369  
 18370  // SetKey sets the Key field's value.
 18371  func (s *AutomationExecutionFilter) SetKey(v string) *AutomationExecutionFilter {
 18372  	s.Key = &v
 18373  	return s
 18374  }
 18375  
 18376  // SetValues sets the Values field's value.
 18377  func (s *AutomationExecutionFilter) SetValues(v []*string) *AutomationExecutionFilter {
 18378  	s.Values = v
 18379  	return s
 18380  }
 18381  
 18382  // The number of simultaneously running Automation executions exceeded the allowable
 18383  // limit.
 18384  type AutomationExecutionLimitExceededException struct {
 18385  	_            struct{}                  `type:"structure"`
 18386  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 18387  
 18388  	Message_ *string `locationName:"Message" type:"string"`
 18389  }
 18390  
 18391  // String returns the string representation.
 18392  //
 18393  // API parameter values that are decorated as "sensitive" in the API will not
 18394  // be included in the string output. The member name will be present, but the
 18395  // value will be replaced with "sensitive".
 18396  func (s AutomationExecutionLimitExceededException) String() string {
 18397  	return awsutil.Prettify(s)
 18398  }
 18399  
 18400  // GoString returns the string representation.
 18401  //
 18402  // API parameter values that are decorated as "sensitive" in the API will not
 18403  // be included in the string output. The member name will be present, but the
 18404  // value will be replaced with "sensitive".
 18405  func (s AutomationExecutionLimitExceededException) GoString() string {
 18406  	return s.String()
 18407  }
 18408  
 18409  func newErrorAutomationExecutionLimitExceededException(v protocol.ResponseMetadata) error {
 18410  	return &AutomationExecutionLimitExceededException{
 18411  		RespMetadata: v,
 18412  	}
 18413  }
 18414  
 18415  // Code returns the exception type name.
 18416  func (s *AutomationExecutionLimitExceededException) Code() string {
 18417  	return "AutomationExecutionLimitExceededException"
 18418  }
 18419  
 18420  // Message returns the exception's message.
 18421  func (s *AutomationExecutionLimitExceededException) Message() string {
 18422  	if s.Message_ != nil {
 18423  		return *s.Message_
 18424  	}
 18425  	return ""
 18426  }
 18427  
 18428  // OrigErr always returns nil, satisfies awserr.Error interface.
 18429  func (s *AutomationExecutionLimitExceededException) OrigErr() error {
 18430  	return nil
 18431  }
 18432  
 18433  func (s *AutomationExecutionLimitExceededException) Error() string {
 18434  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 18435  }
 18436  
 18437  // Status code returns the HTTP status code for the request's response error.
 18438  func (s *AutomationExecutionLimitExceededException) StatusCode() int {
 18439  	return s.RespMetadata.StatusCode
 18440  }
 18441  
 18442  // RequestID returns the service's response RequestID for request.
 18443  func (s *AutomationExecutionLimitExceededException) RequestID() string {
 18444  	return s.RespMetadata.RequestID
 18445  }
 18446  
 18447  // Details about a specific Automation execution.
 18448  type AutomationExecutionMetadata struct {
 18449  	_ struct{} `type:"structure"`
 18450  
 18451  	// The ID of a State Manager association used in the Automation operation.
 18452  	AssociationId *string `type:"string"`
 18453  
 18454  	// The execution ID.
 18455  	AutomationExecutionId *string `min:"36" type:"string"`
 18456  
 18457  	// The status of the execution.
 18458  	AutomationExecutionStatus *string `type:"string" enum:"AutomationExecutionStatus"`
 18459  
 18460  	// The subtype of the Automation operation. Currently, the only supported value
 18461  	// is ChangeRequest.
 18462  	AutomationSubtype *string `type:"string" enum:"AutomationSubtype"`
 18463  
 18464  	// Use this filter with DescribeAutomationExecutions. Specify either Local or
 18465  	// CrossAccount. CrossAccount is an Automation that runs in multiple Amazon
 18466  	// Web Services Regions and Amazon Web Services accounts. For more information,
 18467  	// see Running Automation workflows in multiple Amazon Web Services Regions
 18468  	// and accounts (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation-multiple-accounts-and-regions.html)
 18469  	// in the Amazon Web Services Systems Manager User Guide.
 18470  	AutomationType *string `type:"string" enum:"AutomationType"`
 18471  
 18472  	// The name of the Change Manager change request.
 18473  	ChangeRequestName *string `min:"1" type:"string"`
 18474  
 18475  	// The action of the step that is currently running.
 18476  	CurrentAction *string `type:"string"`
 18477  
 18478  	// The name of the step that is currently running.
 18479  	CurrentStepName *string `type:"string"`
 18480  
 18481  	// The name of the Automation runbook used during execution.
 18482  	DocumentName *string `type:"string"`
 18483  
 18484  	// The document version used during the execution.
 18485  	DocumentVersion *string `type:"string"`
 18486  
 18487  	// The IAM role ARN of the user who ran the automation.
 18488  	ExecutedBy *string `type:"string"`
 18489  
 18490  	// The time the execution finished. This isn't populated if the execution is
 18491  	// still in progress.
 18492  	ExecutionEndTime *time.Time `type:"timestamp"`
 18493  
 18494  	// The time the execution started.
 18495  	ExecutionStartTime *time.Time `type:"timestamp"`
 18496  
 18497  	// The list of execution outputs as defined in the Automation runbook.
 18498  	FailureMessage *string `type:"string"`
 18499  
 18500  	// An S3 bucket where execution information is stored.
 18501  	LogFile *string `type:"string"`
 18502  
 18503  	// The MaxConcurrency value specified by the user when starting the automation.
 18504  	MaxConcurrency *string `min:"1" type:"string"`
 18505  
 18506  	// The MaxErrors value specified by the user when starting the automation.
 18507  	MaxErrors *string `min:"1" type:"string"`
 18508  
 18509  	// The Automation execution mode.
 18510  	Mode *string `type:"string" enum:"ExecutionMode"`
 18511  
 18512  	// The ID of an OpsItem that is created to represent a Change Manager change
 18513  	// request.
 18514  	OpsItemId *string `type:"string"`
 18515  
 18516  	// The list of execution outputs as defined in the Automation runbook.
 18517  	Outputs map[string][]*string `min:"1" type:"map"`
 18518  
 18519  	// The execution ID of the parent automation.
 18520  	ParentAutomationExecutionId *string `min:"36" type:"string"`
 18521  
 18522  	// A list of targets that resolved during the execution.
 18523  	ResolvedTargets *ResolvedTargets `type:"structure"`
 18524  
 18525  	// Information about the Automation runbooks that are run during a runbook workflow
 18526  	// in Change Manager.
 18527  	//
 18528  	// The Automation runbooks specified for the runbook workflow can't run until
 18529  	// all required approvals for the change request have been received.
 18530  	Runbooks []*Runbook `min:"1" type:"list"`
 18531  
 18532  	// The date and time the Automation operation is scheduled to start.
 18533  	ScheduledTime *time.Time `type:"timestamp"`
 18534  
 18535  	// The list of execution outputs as defined in the Automation runbook.
 18536  	Target *string `type:"string"`
 18537  
 18538  	// The specified key-value mapping of document parameters to target resources.
 18539  	TargetMaps []map[string][]*string `type:"list"`
 18540  
 18541  	// The list of execution outputs as defined in the Automation runbook.
 18542  	TargetParameterName *string `min:"1" type:"string"`
 18543  
 18544  	// The targets defined by the user when starting the automation.
 18545  	Targets []*Target `type:"list"`
 18546  }
 18547  
 18548  // String returns the string representation.
 18549  //
 18550  // API parameter values that are decorated as "sensitive" in the API will not
 18551  // be included in the string output. The member name will be present, but the
 18552  // value will be replaced with "sensitive".
 18553  func (s AutomationExecutionMetadata) String() string {
 18554  	return awsutil.Prettify(s)
 18555  }
 18556  
 18557  // GoString returns the string representation.
 18558  //
 18559  // API parameter values that are decorated as "sensitive" in the API will not
 18560  // be included in the string output. The member name will be present, but the
 18561  // value will be replaced with "sensitive".
 18562  func (s AutomationExecutionMetadata) GoString() string {
 18563  	return s.String()
 18564  }
 18565  
 18566  // SetAssociationId sets the AssociationId field's value.
 18567  func (s *AutomationExecutionMetadata) SetAssociationId(v string) *AutomationExecutionMetadata {
 18568  	s.AssociationId = &v
 18569  	return s
 18570  }
 18571  
 18572  // SetAutomationExecutionId sets the AutomationExecutionId field's value.
 18573  func (s *AutomationExecutionMetadata) SetAutomationExecutionId(v string) *AutomationExecutionMetadata {
 18574  	s.AutomationExecutionId = &v
 18575  	return s
 18576  }
 18577  
 18578  // SetAutomationExecutionStatus sets the AutomationExecutionStatus field's value.
 18579  func (s *AutomationExecutionMetadata) SetAutomationExecutionStatus(v string) *AutomationExecutionMetadata {
 18580  	s.AutomationExecutionStatus = &v
 18581  	return s
 18582  }
 18583  
 18584  // SetAutomationSubtype sets the AutomationSubtype field's value.
 18585  func (s *AutomationExecutionMetadata) SetAutomationSubtype(v string) *AutomationExecutionMetadata {
 18586  	s.AutomationSubtype = &v
 18587  	return s
 18588  }
 18589  
 18590  // SetAutomationType sets the AutomationType field's value.
 18591  func (s *AutomationExecutionMetadata) SetAutomationType(v string) *AutomationExecutionMetadata {
 18592  	s.AutomationType = &v
 18593  	return s
 18594  }
 18595  
 18596  // SetChangeRequestName sets the ChangeRequestName field's value.
 18597  func (s *AutomationExecutionMetadata) SetChangeRequestName(v string) *AutomationExecutionMetadata {
 18598  	s.ChangeRequestName = &v
 18599  	return s
 18600  }
 18601  
 18602  // SetCurrentAction sets the CurrentAction field's value.
 18603  func (s *AutomationExecutionMetadata) SetCurrentAction(v string) *AutomationExecutionMetadata {
 18604  	s.CurrentAction = &v
 18605  	return s
 18606  }
 18607  
 18608  // SetCurrentStepName sets the CurrentStepName field's value.
 18609  func (s *AutomationExecutionMetadata) SetCurrentStepName(v string) *AutomationExecutionMetadata {
 18610  	s.CurrentStepName = &v
 18611  	return s
 18612  }
 18613  
 18614  // SetDocumentName sets the DocumentName field's value.
 18615  func (s *AutomationExecutionMetadata) SetDocumentName(v string) *AutomationExecutionMetadata {
 18616  	s.DocumentName = &v
 18617  	return s
 18618  }
 18619  
 18620  // SetDocumentVersion sets the DocumentVersion field's value.
 18621  func (s *AutomationExecutionMetadata) SetDocumentVersion(v string) *AutomationExecutionMetadata {
 18622  	s.DocumentVersion = &v
 18623  	return s
 18624  }
 18625  
 18626  // SetExecutedBy sets the ExecutedBy field's value.
 18627  func (s *AutomationExecutionMetadata) SetExecutedBy(v string) *AutomationExecutionMetadata {
 18628  	s.ExecutedBy = &v
 18629  	return s
 18630  }
 18631  
 18632  // SetExecutionEndTime sets the ExecutionEndTime field's value.
 18633  func (s *AutomationExecutionMetadata) SetExecutionEndTime(v time.Time) *AutomationExecutionMetadata {
 18634  	s.ExecutionEndTime = &v
 18635  	return s
 18636  }
 18637  
 18638  // SetExecutionStartTime sets the ExecutionStartTime field's value.
 18639  func (s *AutomationExecutionMetadata) SetExecutionStartTime(v time.Time) *AutomationExecutionMetadata {
 18640  	s.ExecutionStartTime = &v
 18641  	return s
 18642  }
 18643  
 18644  // SetFailureMessage sets the FailureMessage field's value.
 18645  func (s *AutomationExecutionMetadata) SetFailureMessage(v string) *AutomationExecutionMetadata {
 18646  	s.FailureMessage = &v
 18647  	return s
 18648  }
 18649  
 18650  // SetLogFile sets the LogFile field's value.
 18651  func (s *AutomationExecutionMetadata) SetLogFile(v string) *AutomationExecutionMetadata {
 18652  	s.LogFile = &v
 18653  	return s
 18654  }
 18655  
 18656  // SetMaxConcurrency sets the MaxConcurrency field's value.
 18657  func (s *AutomationExecutionMetadata) SetMaxConcurrency(v string) *AutomationExecutionMetadata {
 18658  	s.MaxConcurrency = &v
 18659  	return s
 18660  }
 18661  
 18662  // SetMaxErrors sets the MaxErrors field's value.
 18663  func (s *AutomationExecutionMetadata) SetMaxErrors(v string) *AutomationExecutionMetadata {
 18664  	s.MaxErrors = &v
 18665  	return s
 18666  }
 18667  
 18668  // SetMode sets the Mode field's value.
 18669  func (s *AutomationExecutionMetadata) SetMode(v string) *AutomationExecutionMetadata {
 18670  	s.Mode = &v
 18671  	return s
 18672  }
 18673  
 18674  // SetOpsItemId sets the OpsItemId field's value.
 18675  func (s *AutomationExecutionMetadata) SetOpsItemId(v string) *AutomationExecutionMetadata {
 18676  	s.OpsItemId = &v
 18677  	return s
 18678  }
 18679  
 18680  // SetOutputs sets the Outputs field's value.
 18681  func (s *AutomationExecutionMetadata) SetOutputs(v map[string][]*string) *AutomationExecutionMetadata {
 18682  	s.Outputs = v
 18683  	return s
 18684  }
 18685  
 18686  // SetParentAutomationExecutionId sets the ParentAutomationExecutionId field's value.
 18687  func (s *AutomationExecutionMetadata) SetParentAutomationExecutionId(v string) *AutomationExecutionMetadata {
 18688  	s.ParentAutomationExecutionId = &v
 18689  	return s
 18690  }
 18691  
 18692  // SetResolvedTargets sets the ResolvedTargets field's value.
 18693  func (s *AutomationExecutionMetadata) SetResolvedTargets(v *ResolvedTargets) *AutomationExecutionMetadata {
 18694  	s.ResolvedTargets = v
 18695  	return s
 18696  }
 18697  
 18698  // SetRunbooks sets the Runbooks field's value.
 18699  func (s *AutomationExecutionMetadata) SetRunbooks(v []*Runbook) *AutomationExecutionMetadata {
 18700  	s.Runbooks = v
 18701  	return s
 18702  }
 18703  
 18704  // SetScheduledTime sets the ScheduledTime field's value.
 18705  func (s *AutomationExecutionMetadata) SetScheduledTime(v time.Time) *AutomationExecutionMetadata {
 18706  	s.ScheduledTime = &v
 18707  	return s
 18708  }
 18709  
 18710  // SetTarget sets the Target field's value.
 18711  func (s *AutomationExecutionMetadata) SetTarget(v string) *AutomationExecutionMetadata {
 18712  	s.Target = &v
 18713  	return s
 18714  }
 18715  
 18716  // SetTargetMaps sets the TargetMaps field's value.
 18717  func (s *AutomationExecutionMetadata) SetTargetMaps(v []map[string][]*string) *AutomationExecutionMetadata {
 18718  	s.TargetMaps = v
 18719  	return s
 18720  }
 18721  
 18722  // SetTargetParameterName sets the TargetParameterName field's value.
 18723  func (s *AutomationExecutionMetadata) SetTargetParameterName(v string) *AutomationExecutionMetadata {
 18724  	s.TargetParameterName = &v
 18725  	return s
 18726  }
 18727  
 18728  // SetTargets sets the Targets field's value.
 18729  func (s *AutomationExecutionMetadata) SetTargets(v []*Target) *AutomationExecutionMetadata {
 18730  	s.Targets = v
 18731  	return s
 18732  }
 18733  
 18734  // There is no automation execution information for the requested automation
 18735  // execution ID.
 18736  type AutomationExecutionNotFoundException struct {
 18737  	_            struct{}                  `type:"structure"`
 18738  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 18739  
 18740  	Message_ *string `locationName:"Message" type:"string"`
 18741  }
 18742  
 18743  // String returns the string representation.
 18744  //
 18745  // API parameter values that are decorated as "sensitive" in the API will not
 18746  // be included in the string output. The member name will be present, but the
 18747  // value will be replaced with "sensitive".
 18748  func (s AutomationExecutionNotFoundException) String() string {
 18749  	return awsutil.Prettify(s)
 18750  }
 18751  
 18752  // GoString returns the string representation.
 18753  //
 18754  // API parameter values that are decorated as "sensitive" in the API will not
 18755  // be included in the string output. The member name will be present, but the
 18756  // value will be replaced with "sensitive".
 18757  func (s AutomationExecutionNotFoundException) GoString() string {
 18758  	return s.String()
 18759  }
 18760  
 18761  func newErrorAutomationExecutionNotFoundException(v protocol.ResponseMetadata) error {
 18762  	return &AutomationExecutionNotFoundException{
 18763  		RespMetadata: v,
 18764  	}
 18765  }
 18766  
 18767  // Code returns the exception type name.
 18768  func (s *AutomationExecutionNotFoundException) Code() string {
 18769  	return "AutomationExecutionNotFoundException"
 18770  }
 18771  
 18772  // Message returns the exception's message.
 18773  func (s *AutomationExecutionNotFoundException) Message() string {
 18774  	if s.Message_ != nil {
 18775  		return *s.Message_
 18776  	}
 18777  	return ""
 18778  }
 18779  
 18780  // OrigErr always returns nil, satisfies awserr.Error interface.
 18781  func (s *AutomationExecutionNotFoundException) OrigErr() error {
 18782  	return nil
 18783  }
 18784  
 18785  func (s *AutomationExecutionNotFoundException) Error() string {
 18786  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 18787  }
 18788  
 18789  // Status code returns the HTTP status code for the request's response error.
 18790  func (s *AutomationExecutionNotFoundException) StatusCode() int {
 18791  	return s.RespMetadata.StatusCode
 18792  }
 18793  
 18794  // RequestID returns the service's response RequestID for request.
 18795  func (s *AutomationExecutionNotFoundException) RequestID() string {
 18796  	return s.RespMetadata.RequestID
 18797  }
 18798  
 18799  // The specified step name and execution ID don't exist. Verify the information
 18800  // and try again.
 18801  type AutomationStepNotFoundException struct {
 18802  	_            struct{}                  `type:"structure"`
 18803  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 18804  
 18805  	Message_ *string `locationName:"Message" type:"string"`
 18806  }
 18807  
 18808  // String returns the string representation.
 18809  //
 18810  // API parameter values that are decorated as "sensitive" in the API will not
 18811  // be included in the string output. The member name will be present, but the
 18812  // value will be replaced with "sensitive".
 18813  func (s AutomationStepNotFoundException) String() string {
 18814  	return awsutil.Prettify(s)
 18815  }
 18816  
 18817  // GoString returns the string representation.
 18818  //
 18819  // API parameter values that are decorated as "sensitive" in the API will not
 18820  // be included in the string output. The member name will be present, but the
 18821  // value will be replaced with "sensitive".
 18822  func (s AutomationStepNotFoundException) GoString() string {
 18823  	return s.String()
 18824  }
 18825  
 18826  func newErrorAutomationStepNotFoundException(v protocol.ResponseMetadata) error {
 18827  	return &AutomationStepNotFoundException{
 18828  		RespMetadata: v,
 18829  	}
 18830  }
 18831  
 18832  // Code returns the exception type name.
 18833  func (s *AutomationStepNotFoundException) Code() string {
 18834  	return "AutomationStepNotFoundException"
 18835  }
 18836  
 18837  // Message returns the exception's message.
 18838  func (s *AutomationStepNotFoundException) Message() string {
 18839  	if s.Message_ != nil {
 18840  		return *s.Message_
 18841  	}
 18842  	return ""
 18843  }
 18844  
 18845  // OrigErr always returns nil, satisfies awserr.Error interface.
 18846  func (s *AutomationStepNotFoundException) OrigErr() error {
 18847  	return nil
 18848  }
 18849  
 18850  func (s *AutomationStepNotFoundException) Error() string {
 18851  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 18852  }
 18853  
 18854  // Status code returns the HTTP status code for the request's response error.
 18855  func (s *AutomationStepNotFoundException) StatusCode() int {
 18856  	return s.RespMetadata.StatusCode
 18857  }
 18858  
 18859  // RequestID returns the service's response RequestID for request.
 18860  func (s *AutomationStepNotFoundException) RequestID() string {
 18861  	return s.RespMetadata.RequestID
 18862  }
 18863  
 18864  // Defines the basic information about a patch baseline override.
 18865  type BaselineOverride struct {
 18866  	_ struct{} `type:"structure"`
 18867  
 18868  	// A set of rules defining the approval rules for a patch baseline.
 18869  	ApprovalRules *PatchRuleGroup `type:"structure"`
 18870  
 18871  	// A list of explicitly approved patches for the baseline.
 18872  	//
 18873  	// For information about accepted formats for lists of approved patches and
 18874  	// rejected patches, see About package name formats for approved and rejected
 18875  	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
 18876  	// in the Amazon Web Services Systems Manager User Guide.
 18877  	ApprovedPatches []*string `type:"list"`
 18878  
 18879  	// Defines the compliance level for approved patches. When an approved patch
 18880  	// is reported as missing, this value describes the severity of the compliance
 18881  	// violation.
 18882  	ApprovedPatchesComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
 18883  
 18884  	// Indicates whether the list of approved patches includes non-security updates
 18885  	// that should be applied to the instances. The default value is false. Applies
 18886  	// to Linux instances only.
 18887  	ApprovedPatchesEnableNonSecurity *bool `type:"boolean"`
 18888  
 18889  	// A set of patch filters, typically used for approval rules.
 18890  	GlobalFilters *PatchFilterGroup `type:"structure"`
 18891  
 18892  	// The operating system rule used by the patch baseline override.
 18893  	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
 18894  
 18895  	// A list of explicitly rejected patches for the baseline.
 18896  	//
 18897  	// For information about accepted formats for lists of approved patches and
 18898  	// rejected patches, see About package name formats for approved and rejected
 18899  	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
 18900  	// in the Amazon Web Services Systems Manager User Guide.
 18901  	RejectedPatches []*string `type:"list"`
 18902  
 18903  	// The action for Patch Manager to take on patches included in the RejectedPackages
 18904  	// list. A patch can be allowed only if it is a dependency of another package,
 18905  	// or blocked entirely along with packages that include it as a dependency.
 18906  	RejectedPatchesAction *string `type:"string" enum:"PatchAction"`
 18907  
 18908  	// Information about the patches to use to update the instances, including target
 18909  	// operating systems and source repositories. Applies to Linux instances only.
 18910  	Sources []*PatchSource `type:"list"`
 18911  }
 18912  
 18913  // String returns the string representation.
 18914  //
 18915  // API parameter values that are decorated as "sensitive" in the API will not
 18916  // be included in the string output. The member name will be present, but the
 18917  // value will be replaced with "sensitive".
 18918  func (s BaselineOverride) String() string {
 18919  	return awsutil.Prettify(s)
 18920  }
 18921  
 18922  // GoString returns the string representation.
 18923  //
 18924  // API parameter values that are decorated as "sensitive" in the API will not
 18925  // be included in the string output. The member name will be present, but the
 18926  // value will be replaced with "sensitive".
 18927  func (s BaselineOverride) GoString() string {
 18928  	return s.String()
 18929  }
 18930  
 18931  // Validate inspects the fields of the type to determine if they are valid.
 18932  func (s *BaselineOverride) Validate() error {
 18933  	invalidParams := request.ErrInvalidParams{Context: "BaselineOverride"}
 18934  	if s.ApprovalRules != nil {
 18935  		if err := s.ApprovalRules.Validate(); err != nil {
 18936  			invalidParams.AddNested("ApprovalRules", err.(request.ErrInvalidParams))
 18937  		}
 18938  	}
 18939  	if s.GlobalFilters != nil {
 18940  		if err := s.GlobalFilters.Validate(); err != nil {
 18941  			invalidParams.AddNested("GlobalFilters", err.(request.ErrInvalidParams))
 18942  		}
 18943  	}
 18944  	if s.Sources != nil {
 18945  		for i, v := range s.Sources {
 18946  			if v == nil {
 18947  				continue
 18948  			}
 18949  			if err := v.Validate(); err != nil {
 18950  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
 18951  			}
 18952  		}
 18953  	}
 18954  
 18955  	if invalidParams.Len() > 0 {
 18956  		return invalidParams
 18957  	}
 18958  	return nil
 18959  }
 18960  
 18961  // SetApprovalRules sets the ApprovalRules field's value.
 18962  func (s *BaselineOverride) SetApprovalRules(v *PatchRuleGroup) *BaselineOverride {
 18963  	s.ApprovalRules = v
 18964  	return s
 18965  }
 18966  
 18967  // SetApprovedPatches sets the ApprovedPatches field's value.
 18968  func (s *BaselineOverride) SetApprovedPatches(v []*string) *BaselineOverride {
 18969  	s.ApprovedPatches = v
 18970  	return s
 18971  }
 18972  
 18973  // SetApprovedPatchesComplianceLevel sets the ApprovedPatchesComplianceLevel field's value.
 18974  func (s *BaselineOverride) SetApprovedPatchesComplianceLevel(v string) *BaselineOverride {
 18975  	s.ApprovedPatchesComplianceLevel = &v
 18976  	return s
 18977  }
 18978  
 18979  // SetApprovedPatchesEnableNonSecurity sets the ApprovedPatchesEnableNonSecurity field's value.
 18980  func (s *BaselineOverride) SetApprovedPatchesEnableNonSecurity(v bool) *BaselineOverride {
 18981  	s.ApprovedPatchesEnableNonSecurity = &v
 18982  	return s
 18983  }
 18984  
 18985  // SetGlobalFilters sets the GlobalFilters field's value.
 18986  func (s *BaselineOverride) SetGlobalFilters(v *PatchFilterGroup) *BaselineOverride {
 18987  	s.GlobalFilters = v
 18988  	return s
 18989  }
 18990  
 18991  // SetOperatingSystem sets the OperatingSystem field's value.
 18992  func (s *BaselineOverride) SetOperatingSystem(v string) *BaselineOverride {
 18993  	s.OperatingSystem = &v
 18994  	return s
 18995  }
 18996  
 18997  // SetRejectedPatches sets the RejectedPatches field's value.
 18998  func (s *BaselineOverride) SetRejectedPatches(v []*string) *BaselineOverride {
 18999  	s.RejectedPatches = v
 19000  	return s
 19001  }
 19002  
 19003  // SetRejectedPatchesAction sets the RejectedPatchesAction field's value.
 19004  func (s *BaselineOverride) SetRejectedPatchesAction(v string) *BaselineOverride {
 19005  	s.RejectedPatchesAction = &v
 19006  	return s
 19007  }
 19008  
 19009  // SetSources sets the Sources field's value.
 19010  func (s *BaselineOverride) SetSources(v []*PatchSource) *BaselineOverride {
 19011  	s.Sources = v
 19012  	return s
 19013  }
 19014  
 19015  type CancelCommandInput struct {
 19016  	_ struct{} `type:"structure"`
 19017  
 19018  	// The ID of the command you want to cancel.
 19019  	//
 19020  	// CommandId is a required field
 19021  	CommandId *string `min:"36" type:"string" required:"true"`
 19022  
 19023  	// (Optional) A list of instance IDs on which you want to cancel the command.
 19024  	// If not provided, the command is canceled on every instance on which it was
 19025  	// requested.
 19026  	InstanceIds []*string `type:"list"`
 19027  }
 19028  
 19029  // String returns the string representation.
 19030  //
 19031  // API parameter values that are decorated as "sensitive" in the API will not
 19032  // be included in the string output. The member name will be present, but the
 19033  // value will be replaced with "sensitive".
 19034  func (s CancelCommandInput) String() string {
 19035  	return awsutil.Prettify(s)
 19036  }
 19037  
 19038  // GoString returns the string representation.
 19039  //
 19040  // API parameter values that are decorated as "sensitive" in the API will not
 19041  // be included in the string output. The member name will be present, but the
 19042  // value will be replaced with "sensitive".
 19043  func (s CancelCommandInput) GoString() string {
 19044  	return s.String()
 19045  }
 19046  
 19047  // Validate inspects the fields of the type to determine if they are valid.
 19048  func (s *CancelCommandInput) Validate() error {
 19049  	invalidParams := request.ErrInvalidParams{Context: "CancelCommandInput"}
 19050  	if s.CommandId == nil {
 19051  		invalidParams.Add(request.NewErrParamRequired("CommandId"))
 19052  	}
 19053  	if s.CommandId != nil && len(*s.CommandId) < 36 {
 19054  		invalidParams.Add(request.NewErrParamMinLen("CommandId", 36))
 19055  	}
 19056  
 19057  	if invalidParams.Len() > 0 {
 19058  		return invalidParams
 19059  	}
 19060  	return nil
 19061  }
 19062  
 19063  // SetCommandId sets the CommandId field's value.
 19064  func (s *CancelCommandInput) SetCommandId(v string) *CancelCommandInput {
 19065  	s.CommandId = &v
 19066  	return s
 19067  }
 19068  
 19069  // SetInstanceIds sets the InstanceIds field's value.
 19070  func (s *CancelCommandInput) SetInstanceIds(v []*string) *CancelCommandInput {
 19071  	s.InstanceIds = v
 19072  	return s
 19073  }
 19074  
 19075  // Whether or not the command was successfully canceled. There is no guarantee
 19076  // that a request can be canceled.
 19077  type CancelCommandOutput struct {
 19078  	_ struct{} `type:"structure"`
 19079  }
 19080  
 19081  // String returns the string representation.
 19082  //
 19083  // API parameter values that are decorated as "sensitive" in the API will not
 19084  // be included in the string output. The member name will be present, but the
 19085  // value will be replaced with "sensitive".
 19086  func (s CancelCommandOutput) String() string {
 19087  	return awsutil.Prettify(s)
 19088  }
 19089  
 19090  // GoString returns the string representation.
 19091  //
 19092  // API parameter values that are decorated as "sensitive" in the API will not
 19093  // be included in the string output. The member name will be present, but the
 19094  // value will be replaced with "sensitive".
 19095  func (s CancelCommandOutput) GoString() string {
 19096  	return s.String()
 19097  }
 19098  
 19099  type CancelMaintenanceWindowExecutionInput struct {
 19100  	_ struct{} `type:"structure"`
 19101  
 19102  	// The ID of the maintenance window execution to stop.
 19103  	//
 19104  	// WindowExecutionId is a required field
 19105  	WindowExecutionId *string `min:"36" type:"string" required:"true"`
 19106  }
 19107  
 19108  // String returns the string representation.
 19109  //
 19110  // API parameter values that are decorated as "sensitive" in the API will not
 19111  // be included in the string output. The member name will be present, but the
 19112  // value will be replaced with "sensitive".
 19113  func (s CancelMaintenanceWindowExecutionInput) String() string {
 19114  	return awsutil.Prettify(s)
 19115  }
 19116  
 19117  // GoString returns the string representation.
 19118  //
 19119  // API parameter values that are decorated as "sensitive" in the API will not
 19120  // be included in the string output. The member name will be present, but the
 19121  // value will be replaced with "sensitive".
 19122  func (s CancelMaintenanceWindowExecutionInput) GoString() string {
 19123  	return s.String()
 19124  }
 19125  
 19126  // Validate inspects the fields of the type to determine if they are valid.
 19127  func (s *CancelMaintenanceWindowExecutionInput) Validate() error {
 19128  	invalidParams := request.ErrInvalidParams{Context: "CancelMaintenanceWindowExecutionInput"}
 19129  	if s.WindowExecutionId == nil {
 19130  		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
 19131  	}
 19132  	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
 19133  		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
 19134  	}
 19135  
 19136  	if invalidParams.Len() > 0 {
 19137  		return invalidParams
 19138  	}
 19139  	return nil
 19140  }
 19141  
 19142  // SetWindowExecutionId sets the WindowExecutionId field's value.
 19143  func (s *CancelMaintenanceWindowExecutionInput) SetWindowExecutionId(v string) *CancelMaintenanceWindowExecutionInput {
 19144  	s.WindowExecutionId = &v
 19145  	return s
 19146  }
 19147  
 19148  type CancelMaintenanceWindowExecutionOutput struct {
 19149  	_ struct{} `type:"structure"`
 19150  
 19151  	// The ID of the maintenance window execution that has been stopped.
 19152  	WindowExecutionId *string `min:"36" type:"string"`
 19153  }
 19154  
 19155  // String returns the string representation.
 19156  //
 19157  // API parameter values that are decorated as "sensitive" in the API will not
 19158  // be included in the string output. The member name will be present, but the
 19159  // value will be replaced with "sensitive".
 19160  func (s CancelMaintenanceWindowExecutionOutput) String() string {
 19161  	return awsutil.Prettify(s)
 19162  }
 19163  
 19164  // GoString returns the string representation.
 19165  //
 19166  // API parameter values that are decorated as "sensitive" in the API will not
 19167  // be included in the string output. The member name will be present, but the
 19168  // value will be replaced with "sensitive".
 19169  func (s CancelMaintenanceWindowExecutionOutput) GoString() string {
 19170  	return s.String()
 19171  }
 19172  
 19173  // SetWindowExecutionId sets the WindowExecutionId field's value.
 19174  func (s *CancelMaintenanceWindowExecutionOutput) SetWindowExecutionId(v string) *CancelMaintenanceWindowExecutionOutput {
 19175  	s.WindowExecutionId = &v
 19176  	return s
 19177  }
 19178  
 19179  // Configuration options for sending command output to Amazon CloudWatch Logs.
 19180  type CloudWatchOutputConfig struct {
 19181  	_ struct{} `type:"structure"`
 19182  
 19183  	// The name of the CloudWatch Logs log group where you want to send command
 19184  	// output. If you don't specify a group name, Amazon Web Services Systems Manager
 19185  	// automatically creates a log group for you. The log group uses the following
 19186  	// naming format:
 19187  	//
 19188  	// aws/ssm/SystemsManagerDocumentName
 19189  	CloudWatchLogGroupName *string `min:"1" type:"string"`
 19190  
 19191  	// Enables Systems Manager to send command output to CloudWatch Logs.
 19192  	CloudWatchOutputEnabled *bool `type:"boolean"`
 19193  }
 19194  
 19195  // String returns the string representation.
 19196  //
 19197  // API parameter values that are decorated as "sensitive" in the API will not
 19198  // be included in the string output. The member name will be present, but the
 19199  // value will be replaced with "sensitive".
 19200  func (s CloudWatchOutputConfig) String() string {
 19201  	return awsutil.Prettify(s)
 19202  }
 19203  
 19204  // GoString returns the string representation.
 19205  //
 19206  // API parameter values that are decorated as "sensitive" in the API will not
 19207  // be included in the string output. The member name will be present, but the
 19208  // value will be replaced with "sensitive".
 19209  func (s CloudWatchOutputConfig) GoString() string {
 19210  	return s.String()
 19211  }
 19212  
 19213  // Validate inspects the fields of the type to determine if they are valid.
 19214  func (s *CloudWatchOutputConfig) Validate() error {
 19215  	invalidParams := request.ErrInvalidParams{Context: "CloudWatchOutputConfig"}
 19216  	if s.CloudWatchLogGroupName != nil && len(*s.CloudWatchLogGroupName) < 1 {
 19217  		invalidParams.Add(request.NewErrParamMinLen("CloudWatchLogGroupName", 1))
 19218  	}
 19219  
 19220  	if invalidParams.Len() > 0 {
 19221  		return invalidParams
 19222  	}
 19223  	return nil
 19224  }
 19225  
 19226  // SetCloudWatchLogGroupName sets the CloudWatchLogGroupName field's value.
 19227  func (s *CloudWatchOutputConfig) SetCloudWatchLogGroupName(v string) *CloudWatchOutputConfig {
 19228  	s.CloudWatchLogGroupName = &v
 19229  	return s
 19230  }
 19231  
 19232  // SetCloudWatchOutputEnabled sets the CloudWatchOutputEnabled field's value.
 19233  func (s *CloudWatchOutputConfig) SetCloudWatchOutputEnabled(v bool) *CloudWatchOutputConfig {
 19234  	s.CloudWatchOutputEnabled = &v
 19235  	return s
 19236  }
 19237  
 19238  // Describes a command request.
 19239  type Command struct {
 19240  	_ struct{} `type:"structure"`
 19241  
 19242  	// Amazon CloudWatch Logs information where you want Amazon Web Services Systems
 19243  	// Manager to send the command output.
 19244  	CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"`
 19245  
 19246  	// A unique identifier for this command.
 19247  	CommandId *string `min:"36" type:"string"`
 19248  
 19249  	// User-specified information about the command, such as a brief description
 19250  	// of what the command should do.
 19251  	Comment *string `type:"string"`
 19252  
 19253  	// The number of targets for which the command invocation reached a terminal
 19254  	// state. Terminal states include the following: Success, Failed, Execution
 19255  	// Timed Out, Delivery Timed Out, Canceled, Terminated, or Undeliverable.
 19256  	CompletedCount *int64 `type:"integer"`
 19257  
 19258  	// The number of targets for which the status is Delivery Timed Out.
 19259  	DeliveryTimedOutCount *int64 `type:"integer"`
 19260  
 19261  	// The name of the document requested for execution.
 19262  	DocumentName *string `type:"string"`
 19263  
 19264  	// The Systems Manager document (SSM document) version.
 19265  	DocumentVersion *string `type:"string"`
 19266  
 19267  	// The number of targets for which the status is Failed or Execution Timed Out.
 19268  	ErrorCount *int64 `type:"integer"`
 19269  
 19270  	// If this time is reached and the command hasn't already started running, it
 19271  	// won't run. Calculated based on the ExpiresAfter user input provided as part
 19272  	// of the SendCommand API operation.
 19273  	ExpiresAfter *time.Time `type:"timestamp"`
 19274  
 19275  	// The instance IDs against which this command was requested.
 19276  	InstanceIds []*string `type:"list"`
 19277  
 19278  	// The maximum number of instances that are allowed to run the command at the
 19279  	// same time. You can specify a number of instances, such as 10, or a percentage
 19280  	// of instances, such as 10%. The default value is 50. For more information
 19281  	// about how to use MaxConcurrency, see Running commands using Systems Manager
 19282  	// Run Command (https://docs.aws.amazon.com/systems-manager/latest/userguide/run-command.html)
 19283  	// in the Amazon Web Services Systems Manager User Guide.
 19284  	MaxConcurrency *string `min:"1" type:"string"`
 19285  
 19286  	// The maximum number of errors allowed before the system stops sending the
 19287  	// command to additional targets. You can specify a number of errors, such as
 19288  	// 10, or a percentage or errors, such as 10%. The default value is 0. For more
 19289  	// information about how to use MaxErrors, see Running commands using Systems
 19290  	// Manager Run Command (https://docs.aws.amazon.com/systems-manager/latest/userguide/run-command.html)
 19291  	// in the Amazon Web Services Systems Manager User Guide.
 19292  	MaxErrors *string `min:"1" type:"string"`
 19293  
 19294  	// Configurations for sending notifications about command status changes.
 19295  	NotificationConfig *NotificationConfig `type:"structure"`
 19296  
 19297  	// The S3 bucket where the responses to the command executions should be stored.
 19298  	// This was requested when issuing the command.
 19299  	OutputS3BucketName *string `min:"3" type:"string"`
 19300  
 19301  	// The S3 directory path inside the bucket where the responses to the command
 19302  	// executions should be stored. This was requested when issuing the command.
 19303  	OutputS3KeyPrefix *string `type:"string"`
 19304  
 19305  	// (Deprecated) You can no longer specify this parameter. The system ignores
 19306  	// it. Instead, Systems Manager automatically determines the Amazon Web Services
 19307  	// Region of the S3 bucket.
 19308  	OutputS3Region *string `min:"3" type:"string"`
 19309  
 19310  	// The parameter values to be inserted in the document when running the command.
 19311  	Parameters map[string][]*string `type:"map"`
 19312  
 19313  	// The date and time the command was requested.
 19314  	RequestedDateTime *time.Time `type:"timestamp"`
 19315  
 19316  	// The Identity and Access Management (IAM) service role that Run Command, a
 19317  	// capability of Amazon Web Services Systems Manager, uses to act on your behalf
 19318  	// when sending notifications about command status changes.
 19319  	ServiceRole *string `type:"string"`
 19320  
 19321  	// The status of the command.
 19322  	Status *string `type:"string" enum:"CommandStatus"`
 19323  
 19324  	// A detailed status of the command execution. StatusDetails includes more information
 19325  	// than Status because it includes states resulting from error and concurrency
 19326  	// control parameters. StatusDetails can show different results than Status.
 19327  	// For more information about these statuses, see Understanding command statuses
 19328  	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/monitor-commands.html)
 19329  	// in the Amazon Web Services Systems Manager User Guide. StatusDetails can
 19330  	// be one of the following values:
 19331  	//
 19332  	//    * Pending: The command hasn't been sent to any instances.
 19333  	//
 19334  	//    * In Progress: The command has been sent to at least one instance but
 19335  	//    hasn't reached a final state on all instances.
 19336  	//
 19337  	//    * Success: The command successfully ran on all invocations. This is a
 19338  	//    terminal state.
 19339  	//
 19340  	//    * Delivery Timed Out: The value of MaxErrors or more command invocations
 19341  	//    shows a status of Delivery Timed Out. This is a terminal state.
 19342  	//
 19343  	//    * Execution Timed Out: The value of MaxErrors or more command invocations
 19344  	//    shows a status of Execution Timed Out. This is a terminal state.
 19345  	//
 19346  	//    * Failed: The value of MaxErrors or more command invocations shows a status
 19347  	//    of Failed. This is a terminal state.
 19348  	//
 19349  	//    * Incomplete: The command was attempted on all instances and one or more
 19350  	//    invocations doesn't have a value of Success but not enough invocations
 19351  	//    failed for the status to be Failed. This is a terminal state.
 19352  	//
 19353  	//    * Canceled: The command was terminated before it was completed. This is
 19354  	//    a terminal state.
 19355  	//
 19356  	//    * Rate Exceeded: The number of instances targeted by the command exceeded
 19357  	//    the account limit for pending invocations. The system has canceled the
 19358  	//    command before running it on any instance. This is a terminal state.
 19359  	StatusDetails *string `type:"string"`
 19360  
 19361  	// The number of targets for the command.
 19362  	TargetCount *int64 `type:"integer"`
 19363  
 19364  	// An array of search criteria that targets instances using a Key,Value combination
 19365  	// that you specify. Targets is required if you don't provide one or more instance
 19366  	// IDs in the call.
 19367  	Targets []*Target `type:"list"`
 19368  
 19369  	// The TimeoutSeconds value specified for a command.
 19370  	TimeoutSeconds *int64 `min:"30" type:"integer"`
 19371  }
 19372  
 19373  // String returns the string representation.
 19374  //
 19375  // API parameter values that are decorated as "sensitive" in the API will not
 19376  // be included in the string output. The member name will be present, but the
 19377  // value will be replaced with "sensitive".
 19378  func (s Command) String() string {
 19379  	return awsutil.Prettify(s)
 19380  }
 19381  
 19382  // GoString returns the string representation.
 19383  //
 19384  // API parameter values that are decorated as "sensitive" in the API will not
 19385  // be included in the string output. The member name will be present, but the
 19386  // value will be replaced with "sensitive".
 19387  func (s Command) GoString() string {
 19388  	return s.String()
 19389  }
 19390  
 19391  // SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value.
 19392  func (s *Command) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *Command {
 19393  	s.CloudWatchOutputConfig = v
 19394  	return s
 19395  }
 19396  
 19397  // SetCommandId sets the CommandId field's value.
 19398  func (s *Command) SetCommandId(v string) *Command {
 19399  	s.CommandId = &v
 19400  	return s
 19401  }
 19402  
 19403  // SetComment sets the Comment field's value.
 19404  func (s *Command) SetComment(v string) *Command {
 19405  	s.Comment = &v
 19406  	return s
 19407  }
 19408  
 19409  // SetCompletedCount sets the CompletedCount field's value.
 19410  func (s *Command) SetCompletedCount(v int64) *Command {
 19411  	s.CompletedCount = &v
 19412  	return s
 19413  }
 19414  
 19415  // SetDeliveryTimedOutCount sets the DeliveryTimedOutCount field's value.
 19416  func (s *Command) SetDeliveryTimedOutCount(v int64) *Command {
 19417  	s.DeliveryTimedOutCount = &v
 19418  	return s
 19419  }
 19420  
 19421  // SetDocumentName sets the DocumentName field's value.
 19422  func (s *Command) SetDocumentName(v string) *Command {
 19423  	s.DocumentName = &v
 19424  	return s
 19425  }
 19426  
 19427  // SetDocumentVersion sets the DocumentVersion field's value.
 19428  func (s *Command) SetDocumentVersion(v string) *Command {
 19429  	s.DocumentVersion = &v
 19430  	return s
 19431  }
 19432  
 19433  // SetErrorCount sets the ErrorCount field's value.
 19434  func (s *Command) SetErrorCount(v int64) *Command {
 19435  	s.ErrorCount = &v
 19436  	return s
 19437  }
 19438  
 19439  // SetExpiresAfter sets the ExpiresAfter field's value.
 19440  func (s *Command) SetExpiresAfter(v time.Time) *Command {
 19441  	s.ExpiresAfter = &v
 19442  	return s
 19443  }
 19444  
 19445  // SetInstanceIds sets the InstanceIds field's value.
 19446  func (s *Command) SetInstanceIds(v []*string) *Command {
 19447  	s.InstanceIds = v
 19448  	return s
 19449  }
 19450  
 19451  // SetMaxConcurrency sets the MaxConcurrency field's value.
 19452  func (s *Command) SetMaxConcurrency(v string) *Command {
 19453  	s.MaxConcurrency = &v
 19454  	return s
 19455  }
 19456  
 19457  // SetMaxErrors sets the MaxErrors field's value.
 19458  func (s *Command) SetMaxErrors(v string) *Command {
 19459  	s.MaxErrors = &v
 19460  	return s
 19461  }
 19462  
 19463  // SetNotificationConfig sets the NotificationConfig field's value.
 19464  func (s *Command) SetNotificationConfig(v *NotificationConfig) *Command {
 19465  	s.NotificationConfig = v
 19466  	return s
 19467  }
 19468  
 19469  // SetOutputS3BucketName sets the OutputS3BucketName field's value.
 19470  func (s *Command) SetOutputS3BucketName(v string) *Command {
 19471  	s.OutputS3BucketName = &v
 19472  	return s
 19473  }
 19474  
 19475  // SetOutputS3KeyPrefix sets the OutputS3KeyPrefix field's value.
 19476  func (s *Command) SetOutputS3KeyPrefix(v string) *Command {
 19477  	s.OutputS3KeyPrefix = &v
 19478  	return s
 19479  }
 19480  
 19481  // SetOutputS3Region sets the OutputS3Region field's value.
 19482  func (s *Command) SetOutputS3Region(v string) *Command {
 19483  	s.OutputS3Region = &v
 19484  	return s
 19485  }
 19486  
 19487  // SetParameters sets the Parameters field's value.
 19488  func (s *Command) SetParameters(v map[string][]*string) *Command {
 19489  	s.Parameters = v
 19490  	return s
 19491  }
 19492  
 19493  // SetRequestedDateTime sets the RequestedDateTime field's value.
 19494  func (s *Command) SetRequestedDateTime(v time.Time) *Command {
 19495  	s.RequestedDateTime = &v
 19496  	return s
 19497  }
 19498  
 19499  // SetServiceRole sets the ServiceRole field's value.
 19500  func (s *Command) SetServiceRole(v string) *Command {
 19501  	s.ServiceRole = &v
 19502  	return s
 19503  }
 19504  
 19505  // SetStatus sets the Status field's value.
 19506  func (s *Command) SetStatus(v string) *Command {
 19507  	s.Status = &v
 19508  	return s
 19509  }
 19510  
 19511  // SetStatusDetails sets the StatusDetails field's value.
 19512  func (s *Command) SetStatusDetails(v string) *Command {
 19513  	s.StatusDetails = &v
 19514  	return s
 19515  }
 19516  
 19517  // SetTargetCount sets the TargetCount field's value.
 19518  func (s *Command) SetTargetCount(v int64) *Command {
 19519  	s.TargetCount = &v
 19520  	return s
 19521  }
 19522  
 19523  // SetTargets sets the Targets field's value.
 19524  func (s *Command) SetTargets(v []*Target) *Command {
 19525  	s.Targets = v
 19526  	return s
 19527  }
 19528  
 19529  // SetTimeoutSeconds sets the TimeoutSeconds field's value.
 19530  func (s *Command) SetTimeoutSeconds(v int64) *Command {
 19531  	s.TimeoutSeconds = &v
 19532  	return s
 19533  }
 19534  
 19535  // Describes a command filter.
 19536  //
 19537  // An instance ID can't be specified when a command status is Pending because
 19538  // the command hasn't run on the instance yet.
 19539  type CommandFilter struct {
 19540  	_ struct{} `type:"structure"`
 19541  
 19542  	// The name of the filter.
 19543  	//
 19544  	// Key is a required field
 19545  	Key *string `locationName:"key" type:"string" required:"true" enum:"CommandFilterKey"`
 19546  
 19547  	// The filter value. Valid values for each filter key are as follows:
 19548  	//
 19549  	//    * InvokedAfter: Specify a timestamp to limit your results. For example,
 19550  	//    specify 2021-07-07T00:00:00Z to see a list of command executions occurring
 19551  	//    July 7, 2021, and later.
 19552  	//
 19553  	//    * InvokedBefore: Specify a timestamp to limit your results. For example,
 19554  	//    specify 2021-07-07T00:00:00Z to see a list of command executions from
 19555  	//    before July 7, 2021.
 19556  	//
 19557  	//    * Status: Specify a valid command status to see a list of all command
 19558  	//    executions with that status. The status choices depend on the API you
 19559  	//    call. The status values you can specify for ListCommands are: Pending
 19560  	//    InProgress Success Cancelled Failed TimedOut (this includes both Delivery
 19561  	//    and Execution time outs) AccessDenied DeliveryTimedOut ExecutionTimedOut
 19562  	//    Incomplete NoInstancesInTag LimitExceeded The status values you can specify
 19563  	//    for ListCommandInvocations are: Pending InProgress Delayed Success Cancelled
 19564  	//    Failed TimedOut (this includes both Delivery and Execution time outs)
 19565  	//    AccessDenied DeliveryTimedOut ExecutionTimedOut Undeliverable InvalidPlatform
 19566  	//    Terminated
 19567  	//
 19568  	//    * DocumentName: Specify name of the Amazon Web Services Systems Manager
 19569  	//    document (SSM document) for which you want to see command execution results.
 19570  	//    For example, specify AWS-RunPatchBaseline to see command executions that
 19571  	//    used this SSM document to perform security patching operations on instances.
 19572  	//
 19573  	//    * ExecutionStage: Specify one of the following values: Executing: Returns
 19574  	//    a list of command executions that are currently still running. Complete:
 19575  	//    Returns a list of command executions that have already completed.
 19576  	//
 19577  	// Value is a required field
 19578  	Value *string `locationName:"value" min:"1" type:"string" required:"true"`
 19579  }
 19580  
 19581  // String returns the string representation.
 19582  //
 19583  // API parameter values that are decorated as "sensitive" in the API will not
 19584  // be included in the string output. The member name will be present, but the
 19585  // value will be replaced with "sensitive".
 19586  func (s CommandFilter) String() string {
 19587  	return awsutil.Prettify(s)
 19588  }
 19589  
 19590  // GoString returns the string representation.
 19591  //
 19592  // API parameter values that are decorated as "sensitive" in the API will not
 19593  // be included in the string output. The member name will be present, but the
 19594  // value will be replaced with "sensitive".
 19595  func (s CommandFilter) GoString() string {
 19596  	return s.String()
 19597  }
 19598  
 19599  // Validate inspects the fields of the type to determine if they are valid.
 19600  func (s *CommandFilter) Validate() error {
 19601  	invalidParams := request.ErrInvalidParams{Context: "CommandFilter"}
 19602  	if s.Key == nil {
 19603  		invalidParams.Add(request.NewErrParamRequired("Key"))
 19604  	}
 19605  	if s.Value == nil {
 19606  		invalidParams.Add(request.NewErrParamRequired("Value"))
 19607  	}
 19608  	if s.Value != nil && len(*s.Value) < 1 {
 19609  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 19610  	}
 19611  
 19612  	if invalidParams.Len() > 0 {
 19613  		return invalidParams
 19614  	}
 19615  	return nil
 19616  }
 19617  
 19618  // SetKey sets the Key field's value.
 19619  func (s *CommandFilter) SetKey(v string) *CommandFilter {
 19620  	s.Key = &v
 19621  	return s
 19622  }
 19623  
 19624  // SetValue sets the Value field's value.
 19625  func (s *CommandFilter) SetValue(v string) *CommandFilter {
 19626  	s.Value = &v
 19627  	return s
 19628  }
 19629  
 19630  // An invocation is copy of a command sent to a specific instance. A command
 19631  // can apply to one or more instances. A command invocation applies to one instance.
 19632  // For example, if a user runs SendCommand against three instances, then a command
 19633  // invocation is created for each requested instance ID. A command invocation
 19634  // returns status and detail information about a command you ran.
 19635  type CommandInvocation struct {
 19636  	_ struct{} `type:"structure"`
 19637  
 19638  	// Amazon CloudWatch Logs information where you want Amazon Web Services Systems
 19639  	// Manager to send the command output.
 19640  	CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"`
 19641  
 19642  	// The command against which this invocation was requested.
 19643  	CommandId *string `min:"36" type:"string"`
 19644  
 19645  	// Plugins processed by the command.
 19646  	CommandPlugins []*CommandPlugin `type:"list"`
 19647  
 19648  	// User-specified information about the command, such as a brief description
 19649  	// of what the command should do.
 19650  	Comment *string `type:"string"`
 19651  
 19652  	// The document name that was requested for execution.
 19653  	DocumentName *string `type:"string"`
 19654  
 19655  	// The Systems Manager document (SSM document) version.
 19656  	DocumentVersion *string `type:"string"`
 19657  
 19658  	// The instance ID in which this invocation was requested.
 19659  	InstanceId *string `type:"string"`
 19660  
 19661  	// The fully qualified host name of the managed instance.
 19662  	InstanceName *string `type:"string"`
 19663  
 19664  	// Configurations for sending notifications about command status changes on
 19665  	// a per instance basis.
 19666  	NotificationConfig *NotificationConfig `type:"structure"`
 19667  
 19668  	// The time and date the request was sent to this instance.
 19669  	RequestedDateTime *time.Time `type:"timestamp"`
 19670  
 19671  	// The Identity and Access Management (IAM) service role that Run Command, a
 19672  	// capability of Amazon Web Services Systems Manager, uses to act on your behalf
 19673  	// when sending notifications about command status changes on a per instance
 19674  	// basis.
 19675  	ServiceRole *string `type:"string"`
 19676  
 19677  	// The URL to the plugin's StdErr file in Amazon Simple Storage Service (Amazon
 19678  	// S3), if the S3 bucket was defined for the parent command. For an invocation,
 19679  	// StandardErrorUrl is populated if there is just one plugin defined for the
 19680  	// command, and the S3 bucket was defined for the command.
 19681  	StandardErrorUrl *string `type:"string"`
 19682  
 19683  	// The URL to the plugin's StdOut file in Amazon Simple Storage Service (Amazon
 19684  	// S3), if the S3 bucket was defined for the parent command. For an invocation,
 19685  	// StandardOutputUrl is populated if there is just one plugin defined for the
 19686  	// command, and the S3 bucket was defined for the command.
 19687  	StandardOutputUrl *string `type:"string"`
 19688  
 19689  	// Whether or not the invocation succeeded, failed, or is pending.
 19690  	Status *string `type:"string" enum:"CommandInvocationStatus"`
 19691  
 19692  	// A detailed status of the command execution for each invocation (each instance
 19693  	// targeted by the command). StatusDetails includes more information than Status
 19694  	// because it includes states resulting from error and concurrency control parameters.
 19695  	// StatusDetails can show different results than Status. For more information
 19696  	// about these statuses, see Understanding command statuses (https://docs.aws.amazon.com/systems-manager/latest/userguide/monitor-commands.html)
 19697  	// in the Amazon Web Services Systems Manager User Guide. StatusDetails can
 19698  	// be one of the following values:
 19699  	//
 19700  	//    * Pending: The command hasn't been sent to the instance.
 19701  	//
 19702  	//    * In Progress: The command has been sent to the instance but hasn't reached
 19703  	//    a terminal state.
 19704  	//
 19705  	//    * Success: The execution of the command or plugin was successfully completed.
 19706  	//    This is a terminal state.
 19707  	//
 19708  	//    * Delivery Timed Out: The command wasn't delivered to the instance before
 19709  	//    the delivery timeout expired. Delivery timeouts don't count against the
 19710  	//    parent command's MaxErrors limit, but they do contribute to whether the
 19711  	//    parent command status is Success or Incomplete. This is a terminal state.
 19712  	//
 19713  	//    * Execution Timed Out: Command execution started on the instance, but
 19714  	//    the execution wasn't complete before the execution timeout expired. Execution
 19715  	//    timeouts count against the MaxErrors limit of the parent command. This
 19716  	//    is a terminal state.
 19717  	//
 19718  	//    * Failed: The command wasn't successful on the instance. For a plugin,
 19719  	//    this indicates that the result code wasn't zero. For a command invocation,
 19720  	//    this indicates that the result code for one or more plugins wasn't zero.
 19721  	//    Invocation failures count against the MaxErrors limit of the parent command.
 19722  	//    This is a terminal state.
 19723  	//
 19724  	//    * Canceled: The command was terminated before it was completed. This is
 19725  	//    a terminal state.
 19726  	//
 19727  	//    * Undeliverable: The command can't be delivered to the instance. The instance
 19728  	//    might not exist or might not be responding. Undeliverable invocations
 19729  	//    don't count against the parent command's MaxErrors limit and don't contribute
 19730  	//    to whether the parent command status is Success or Incomplete. This is
 19731  	//    a terminal state.
 19732  	//
 19733  	//    * Terminated: The parent command exceeded its MaxErrors limit and subsequent
 19734  	//    command invocations were canceled by the system. This is a terminal state.
 19735  	StatusDetails *string `type:"string"`
 19736  
 19737  	// Gets the trace output sent by the agent.
 19738  	TraceOutput *string `type:"string"`
 19739  }
 19740  
 19741  // String returns the string representation.
 19742  //
 19743  // API parameter values that are decorated as "sensitive" in the API will not
 19744  // be included in the string output. The member name will be present, but the
 19745  // value will be replaced with "sensitive".
 19746  func (s CommandInvocation) String() string {
 19747  	return awsutil.Prettify(s)
 19748  }
 19749  
 19750  // GoString returns the string representation.
 19751  //
 19752  // API parameter values that are decorated as "sensitive" in the API will not
 19753  // be included in the string output. The member name will be present, but the
 19754  // value will be replaced with "sensitive".
 19755  func (s CommandInvocation) GoString() string {
 19756  	return s.String()
 19757  }
 19758  
 19759  // SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value.
 19760  func (s *CommandInvocation) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *CommandInvocation {
 19761  	s.CloudWatchOutputConfig = v
 19762  	return s
 19763  }
 19764  
 19765  // SetCommandId sets the CommandId field's value.
 19766  func (s *CommandInvocation) SetCommandId(v string) *CommandInvocation {
 19767  	s.CommandId = &v
 19768  	return s
 19769  }
 19770  
 19771  // SetCommandPlugins sets the CommandPlugins field's value.
 19772  func (s *CommandInvocation) SetCommandPlugins(v []*CommandPlugin) *CommandInvocation {
 19773  	s.CommandPlugins = v
 19774  	return s
 19775  }
 19776  
 19777  // SetComment sets the Comment field's value.
 19778  func (s *CommandInvocation) SetComment(v string) *CommandInvocation {
 19779  	s.Comment = &v
 19780  	return s
 19781  }
 19782  
 19783  // SetDocumentName sets the DocumentName field's value.
 19784  func (s *CommandInvocation) SetDocumentName(v string) *CommandInvocation {
 19785  	s.DocumentName = &v
 19786  	return s
 19787  }
 19788  
 19789  // SetDocumentVersion sets the DocumentVersion field's value.
 19790  func (s *CommandInvocation) SetDocumentVersion(v string) *CommandInvocation {
 19791  	s.DocumentVersion = &v
 19792  	return s
 19793  }
 19794  
 19795  // SetInstanceId sets the InstanceId field's value.
 19796  func (s *CommandInvocation) SetInstanceId(v string) *CommandInvocation {
 19797  	s.InstanceId = &v
 19798  	return s
 19799  }
 19800  
 19801  // SetInstanceName sets the InstanceName field's value.
 19802  func (s *CommandInvocation) SetInstanceName(v string) *CommandInvocation {
 19803  	s.InstanceName = &v
 19804  	return s
 19805  }
 19806  
 19807  // SetNotificationConfig sets the NotificationConfig field's value.
 19808  func (s *CommandInvocation) SetNotificationConfig(v *NotificationConfig) *CommandInvocation {
 19809  	s.NotificationConfig = v
 19810  	return s
 19811  }
 19812  
 19813  // SetRequestedDateTime sets the RequestedDateTime field's value.
 19814  func (s *CommandInvocation) SetRequestedDateTime(v time.Time) *CommandInvocation {
 19815  	s.RequestedDateTime = &v
 19816  	return s
 19817  }
 19818  
 19819  // SetServiceRole sets the ServiceRole field's value.
 19820  func (s *CommandInvocation) SetServiceRole(v string) *CommandInvocation {
 19821  	s.ServiceRole = &v
 19822  	return s
 19823  }
 19824  
 19825  // SetStandardErrorUrl sets the StandardErrorUrl field's value.
 19826  func (s *CommandInvocation) SetStandardErrorUrl(v string) *CommandInvocation {
 19827  	s.StandardErrorUrl = &v
 19828  	return s
 19829  }
 19830  
 19831  // SetStandardOutputUrl sets the StandardOutputUrl field's value.
 19832  func (s *CommandInvocation) SetStandardOutputUrl(v string) *CommandInvocation {
 19833  	s.StandardOutputUrl = &v
 19834  	return s
 19835  }
 19836  
 19837  // SetStatus sets the Status field's value.
 19838  func (s *CommandInvocation) SetStatus(v string) *CommandInvocation {
 19839  	s.Status = &v
 19840  	return s
 19841  }
 19842  
 19843  // SetStatusDetails sets the StatusDetails field's value.
 19844  func (s *CommandInvocation) SetStatusDetails(v string) *CommandInvocation {
 19845  	s.StatusDetails = &v
 19846  	return s
 19847  }
 19848  
 19849  // SetTraceOutput sets the TraceOutput field's value.
 19850  func (s *CommandInvocation) SetTraceOutput(v string) *CommandInvocation {
 19851  	s.TraceOutput = &v
 19852  	return s
 19853  }
 19854  
 19855  // Describes plugin details.
 19856  type CommandPlugin struct {
 19857  	_ struct{} `type:"structure"`
 19858  
 19859  	// The name of the plugin. Must be one of the following: aws:updateAgent, aws:domainjoin,
 19860  	// aws:applications, aws:runPowerShellScript, aws:psmodule, aws:cloudWatch,
 19861  	// aws:runShellScript, or aws:updateSSMAgent.
 19862  	Name *string `min:"4" type:"string"`
 19863  
 19864  	// Output of the plugin execution.
 19865  	Output *string `type:"string"`
 19866  
 19867  	// The S3 bucket where the responses to the command executions should be stored.
 19868  	// This was requested when issuing the command. For example, in the following
 19869  	// response:
 19870  	//
 19871  	// doc-example-bucket/ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix/i-02573cafcfEXAMPLE/awsrunShellScript
 19872  	//
 19873  	// doc-example-bucket is the name of the S3 bucket;
 19874  	//
 19875  	// ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix is the name of the S3 prefix;
 19876  	//
 19877  	// i-02573cafcfEXAMPLE is the instance ID;
 19878  	//
 19879  	// awsrunShellScript is the name of the plugin.
 19880  	OutputS3BucketName *string `min:"3" type:"string"`
 19881  
 19882  	// The S3 directory path inside the bucket where the responses to the command
 19883  	// executions should be stored. This was requested when issuing the command.
 19884  	// For example, in the following response:
 19885  	//
 19886  	// doc-example-bucket/ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix/i-02573cafcfEXAMPLE/awsrunShellScript
 19887  	//
 19888  	// doc-example-bucket is the name of the S3 bucket;
 19889  	//
 19890  	// ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix is the name of the S3 prefix;
 19891  	//
 19892  	// i-02573cafcfEXAMPLE is the instance ID;
 19893  	//
 19894  	// awsrunShellScript is the name of the plugin.
 19895  	OutputS3KeyPrefix *string `type:"string"`
 19896  
 19897  	// (Deprecated) You can no longer specify this parameter. The system ignores
 19898  	// it. Instead, Amazon Web Services Systems Manager automatically determines
 19899  	// the S3 bucket region.
 19900  	OutputS3Region *string `min:"3" type:"string"`
 19901  
 19902  	// A numeric response code generated after running the plugin.
 19903  	ResponseCode *int64 `type:"integer"`
 19904  
 19905  	// The time the plugin stopped running. Could stop prematurely if, for example,
 19906  	// a cancel command was sent.
 19907  	ResponseFinishDateTime *time.Time `type:"timestamp"`
 19908  
 19909  	// The time the plugin started running.
 19910  	ResponseStartDateTime *time.Time `type:"timestamp"`
 19911  
 19912  	// The URL for the complete text written by the plugin to stderr. If execution
 19913  	// isn't yet complete, then this string is empty.
 19914  	StandardErrorUrl *string `type:"string"`
 19915  
 19916  	// The URL for the complete text written by the plugin to stdout in Amazon S3.
 19917  	// If the S3 bucket for the command wasn't specified, then this string is empty.
 19918  	StandardOutputUrl *string `type:"string"`
 19919  
 19920  	// The status of this plugin. You can run a document with multiple plugins.
 19921  	Status *string `type:"string" enum:"CommandPluginStatus"`
 19922  
 19923  	// A detailed status of the plugin execution. StatusDetails includes more information
 19924  	// than Status because it includes states resulting from error and concurrency
 19925  	// control parameters. StatusDetails can show different results than Status.
 19926  	// For more information about these statuses, see Understanding command statuses
 19927  	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/monitor-commands.html)
 19928  	// in the Amazon Web Services Systems Manager User Guide. StatusDetails can
 19929  	// be one of the following values:
 19930  	//
 19931  	//    * Pending: The command hasn't been sent to the instance.
 19932  	//
 19933  	//    * In Progress: The command has been sent to the instance but hasn't reached
 19934  	//    a terminal state.
 19935  	//
 19936  	//    * Success: The execution of the command or plugin was successfully completed.
 19937  	//    This is a terminal state.
 19938  	//
 19939  	//    * Delivery Timed Out: The command wasn't delivered to the instance before
 19940  	//    the delivery timeout expired. Delivery timeouts don't count against the
 19941  	//    parent command's MaxErrors limit, but they do contribute to whether the
 19942  	//    parent command status is Success or Incomplete. This is a terminal state.
 19943  	//
 19944  	//    * Execution Timed Out: Command execution started on the instance, but
 19945  	//    the execution wasn't complete before the execution timeout expired. Execution
 19946  	//    timeouts count against the MaxErrors limit of the parent command. This
 19947  	//    is a terminal state.
 19948  	//
 19949  	//    * Failed: The command wasn't successful on the instance. For a plugin,
 19950  	//    this indicates that the result code wasn't zero. For a command invocation,
 19951  	//    this indicates that the result code for one or more plugins wasn't zero.
 19952  	//    Invocation failures count against the MaxErrors limit of the parent command.
 19953  	//    This is a terminal state.
 19954  	//
 19955  	//    * Canceled: The command was terminated before it was completed. This is
 19956  	//    a terminal state.
 19957  	//
 19958  	//    * Undeliverable: The command can't be delivered to the instance. The instance
 19959  	//    might not exist, or it might not be responding. Undeliverable invocations
 19960  	//    don't count against the parent command's MaxErrors limit, and they don't
 19961  	//    contribute to whether the parent command status is Success or Incomplete.
 19962  	//    This is a terminal state.
 19963  	//
 19964  	//    * Terminated: The parent command exceeded its MaxErrors limit and subsequent
 19965  	//    command invocations were canceled by the system. This is a terminal state.
 19966  	StatusDetails *string `type:"string"`
 19967  }
 19968  
 19969  // String returns the string representation.
 19970  //
 19971  // API parameter values that are decorated as "sensitive" in the API will not
 19972  // be included in the string output. The member name will be present, but the
 19973  // value will be replaced with "sensitive".
 19974  func (s CommandPlugin) String() string {
 19975  	return awsutil.Prettify(s)
 19976  }
 19977  
 19978  // GoString returns the string representation.
 19979  //
 19980  // API parameter values that are decorated as "sensitive" in the API will not
 19981  // be included in the string output. The member name will be present, but the
 19982  // value will be replaced with "sensitive".
 19983  func (s CommandPlugin) GoString() string {
 19984  	return s.String()
 19985  }
 19986  
 19987  // SetName sets the Name field's value.
 19988  func (s *CommandPlugin) SetName(v string) *CommandPlugin {
 19989  	s.Name = &v
 19990  	return s
 19991  }
 19992  
 19993  // SetOutput sets the Output field's value.
 19994  func (s *CommandPlugin) SetOutput(v string) *CommandPlugin {
 19995  	s.Output = &v
 19996  	return s
 19997  }
 19998  
 19999  // SetOutputS3BucketName sets the OutputS3BucketName field's value.
 20000  func (s *CommandPlugin) SetOutputS3BucketName(v string) *CommandPlugin {
 20001  	s.OutputS3BucketName = &v
 20002  	return s
 20003  }
 20004  
 20005  // SetOutputS3KeyPrefix sets the OutputS3KeyPrefix field's value.
 20006  func (s *CommandPlugin) SetOutputS3KeyPrefix(v string) *CommandPlugin {
 20007  	s.OutputS3KeyPrefix = &v
 20008  	return s
 20009  }
 20010  
 20011  // SetOutputS3Region sets the OutputS3Region field's value.
 20012  func (s *CommandPlugin) SetOutputS3Region(v string) *CommandPlugin {
 20013  	s.OutputS3Region = &v
 20014  	return s
 20015  }
 20016  
 20017  // SetResponseCode sets the ResponseCode field's value.
 20018  func (s *CommandPlugin) SetResponseCode(v int64) *CommandPlugin {
 20019  	s.ResponseCode = &v
 20020  	return s
 20021  }
 20022  
 20023  // SetResponseFinishDateTime sets the ResponseFinishDateTime field's value.
 20024  func (s *CommandPlugin) SetResponseFinishDateTime(v time.Time) *CommandPlugin {
 20025  	s.ResponseFinishDateTime = &v
 20026  	return s
 20027  }
 20028  
 20029  // SetResponseStartDateTime sets the ResponseStartDateTime field's value.
 20030  func (s *CommandPlugin) SetResponseStartDateTime(v time.Time) *CommandPlugin {
 20031  	s.ResponseStartDateTime = &v
 20032  	return s
 20033  }
 20034  
 20035  // SetStandardErrorUrl sets the StandardErrorUrl field's value.
 20036  func (s *CommandPlugin) SetStandardErrorUrl(v string) *CommandPlugin {
 20037  	s.StandardErrorUrl = &v
 20038  	return s
 20039  }
 20040  
 20041  // SetStandardOutputUrl sets the StandardOutputUrl field's value.
 20042  func (s *CommandPlugin) SetStandardOutputUrl(v string) *CommandPlugin {
 20043  	s.StandardOutputUrl = &v
 20044  	return s
 20045  }
 20046  
 20047  // SetStatus sets the Status field's value.
 20048  func (s *CommandPlugin) SetStatus(v string) *CommandPlugin {
 20049  	s.Status = &v
 20050  	return s
 20051  }
 20052  
 20053  // SetStatusDetails sets the StatusDetails field's value.
 20054  func (s *CommandPlugin) SetStatusDetails(v string) *CommandPlugin {
 20055  	s.StatusDetails = &v
 20056  	return s
 20057  }
 20058  
 20059  // A summary of the call execution that includes an execution ID, the type of
 20060  // execution (for example, Command), and the date/time of the execution using
 20061  // a datetime object that is saved in the following format: yyyy-MM-dd'T'HH:mm:ss'Z'.
 20062  type ComplianceExecutionSummary struct {
 20063  	_ struct{} `type:"structure"`
 20064  
 20065  	// An ID created by the system when PutComplianceItems was called. For example,
 20066  	// CommandID is a valid execution ID. You can use this ID in subsequent calls.
 20067  	ExecutionId *string `type:"string"`
 20068  
 20069  	// The time the execution ran as a datetime object that is saved in the following
 20070  	// format: yyyy-MM-dd'T'HH:mm:ss'Z'.
 20071  	//
 20072  	// ExecutionTime is a required field
 20073  	ExecutionTime *time.Time `type:"timestamp" required:"true"`
 20074  
 20075  	// The type of execution. For example, Command is a valid execution type.
 20076  	ExecutionType *string `type:"string"`
 20077  }
 20078  
 20079  // String returns the string representation.
 20080  //
 20081  // API parameter values that are decorated as "sensitive" in the API will not
 20082  // be included in the string output. The member name will be present, but the
 20083  // value will be replaced with "sensitive".
 20084  func (s ComplianceExecutionSummary) String() string {
 20085  	return awsutil.Prettify(s)
 20086  }
 20087  
 20088  // GoString returns the string representation.
 20089  //
 20090  // API parameter values that are decorated as "sensitive" in the API will not
 20091  // be included in the string output. The member name will be present, but the
 20092  // value will be replaced with "sensitive".
 20093  func (s ComplianceExecutionSummary) GoString() string {
 20094  	return s.String()
 20095  }
 20096  
 20097  // Validate inspects the fields of the type to determine if they are valid.
 20098  func (s *ComplianceExecutionSummary) Validate() error {
 20099  	invalidParams := request.ErrInvalidParams{Context: "ComplianceExecutionSummary"}
 20100  	if s.ExecutionTime == nil {
 20101  		invalidParams.Add(request.NewErrParamRequired("ExecutionTime"))
 20102  	}
 20103  
 20104  	if invalidParams.Len() > 0 {
 20105  		return invalidParams
 20106  	}
 20107  	return nil
 20108  }
 20109  
 20110  // SetExecutionId sets the ExecutionId field's value.
 20111  func (s *ComplianceExecutionSummary) SetExecutionId(v string) *ComplianceExecutionSummary {
 20112  	s.ExecutionId = &v
 20113  	return s
 20114  }
 20115  
 20116  // SetExecutionTime sets the ExecutionTime field's value.
 20117  func (s *ComplianceExecutionSummary) SetExecutionTime(v time.Time) *ComplianceExecutionSummary {
 20118  	s.ExecutionTime = &v
 20119  	return s
 20120  }
 20121  
 20122  // SetExecutionType sets the ExecutionType field's value.
 20123  func (s *ComplianceExecutionSummary) SetExecutionType(v string) *ComplianceExecutionSummary {
 20124  	s.ExecutionType = &v
 20125  	return s
 20126  }
 20127  
 20128  // Information about the compliance as defined by the resource type. For example,
 20129  // for a patch resource type, Items includes information about the PatchSeverity,
 20130  // Classification, and so on.
 20131  type ComplianceItem struct {
 20132  	_ struct{} `type:"structure"`
 20133  
 20134  	// The compliance type. For example, Association (for a State Manager association),
 20135  	// Patch, or Custom:string are all valid compliance types.
 20136  	ComplianceType *string `min:"1" type:"string"`
 20137  
 20138  	// A "Key": "Value" tag combination for the compliance item.
 20139  	Details map[string]*string `type:"map"`
 20140  
 20141  	// A summary for the compliance item. The summary includes an execution ID,
 20142  	// the execution type (for example, command), and the execution time.
 20143  	ExecutionSummary *ComplianceExecutionSummary `type:"structure"`
 20144  
 20145  	// An ID for the compliance item. For example, if the compliance item is a Windows
 20146  	// patch, the ID could be the number of the KB article; for example: KB4010320.
 20147  	Id *string `type:"string"`
 20148  
 20149  	// An ID for the resource. For a managed instance, this is the instance ID.
 20150  	ResourceId *string `min:"1" type:"string"`
 20151  
 20152  	// The type of resource. ManagedInstance is currently the only supported resource
 20153  	// type.
 20154  	ResourceType *string `min:"1" type:"string"`
 20155  
 20156  	// The severity of the compliance status. Severity can be one of the following:
 20157  	// Critical, High, Medium, Low, Informational, Unspecified.
 20158  	Severity *string `type:"string" enum:"ComplianceSeverity"`
 20159  
 20160  	// The status of the compliance item. An item is either COMPLIANT, NON_COMPLIANT,
 20161  	// or an empty string (for Windows patches that aren't applicable).
 20162  	Status *string `type:"string" enum:"ComplianceStatus"`
 20163  
 20164  	// A title for the compliance item. For example, if the compliance item is a
 20165  	// Windows patch, the title could be the title of the KB article for the patch;
 20166  	// for example: Security Update for Active Directory Federation Services.
 20167  	Title *string `type:"string"`
 20168  }
 20169  
 20170  // String returns the string representation.
 20171  //
 20172  // API parameter values that are decorated as "sensitive" in the API will not
 20173  // be included in the string output. The member name will be present, but the
 20174  // value will be replaced with "sensitive".
 20175  func (s ComplianceItem) String() string {
 20176  	return awsutil.Prettify(s)
 20177  }
 20178  
 20179  // GoString returns the string representation.
 20180  //
 20181  // API parameter values that are decorated as "sensitive" in the API will not
 20182  // be included in the string output. The member name will be present, but the
 20183  // value will be replaced with "sensitive".
 20184  func (s ComplianceItem) GoString() string {
 20185  	return s.String()
 20186  }
 20187  
 20188  // SetComplianceType sets the ComplianceType field's value.
 20189  func (s *ComplianceItem) SetComplianceType(v string) *ComplianceItem {
 20190  	s.ComplianceType = &v
 20191  	return s
 20192  }
 20193  
 20194  // SetDetails sets the Details field's value.
 20195  func (s *ComplianceItem) SetDetails(v map[string]*string) *ComplianceItem {
 20196  	s.Details = v
 20197  	return s
 20198  }
 20199  
 20200  // SetExecutionSummary sets the ExecutionSummary field's value.
 20201  func (s *ComplianceItem) SetExecutionSummary(v *ComplianceExecutionSummary) *ComplianceItem {
 20202  	s.ExecutionSummary = v
 20203  	return s
 20204  }
 20205  
 20206  // SetId sets the Id field's value.
 20207  func (s *ComplianceItem) SetId(v string) *ComplianceItem {
 20208  	s.Id = &v
 20209  	return s
 20210  }
 20211  
 20212  // SetResourceId sets the ResourceId field's value.
 20213  func (s *ComplianceItem) SetResourceId(v string) *ComplianceItem {
 20214  	s.ResourceId = &v
 20215  	return s
 20216  }
 20217  
 20218  // SetResourceType sets the ResourceType field's value.
 20219  func (s *ComplianceItem) SetResourceType(v string) *ComplianceItem {
 20220  	s.ResourceType = &v
 20221  	return s
 20222  }
 20223  
 20224  // SetSeverity sets the Severity field's value.
 20225  func (s *ComplianceItem) SetSeverity(v string) *ComplianceItem {
 20226  	s.Severity = &v
 20227  	return s
 20228  }
 20229  
 20230  // SetStatus sets the Status field's value.
 20231  func (s *ComplianceItem) SetStatus(v string) *ComplianceItem {
 20232  	s.Status = &v
 20233  	return s
 20234  }
 20235  
 20236  // SetTitle sets the Title field's value.
 20237  func (s *ComplianceItem) SetTitle(v string) *ComplianceItem {
 20238  	s.Title = &v
 20239  	return s
 20240  }
 20241  
 20242  // Information about a compliance item.
 20243  type ComplianceItemEntry struct {
 20244  	_ struct{} `type:"structure"`
 20245  
 20246  	// A "Key": "Value" tag combination for the compliance item.
 20247  	Details map[string]*string `type:"map"`
 20248  
 20249  	// The compliance item ID. For example, if the compliance item is a Windows
 20250  	// patch, the ID could be the number of the KB article.
 20251  	Id *string `type:"string"`
 20252  
 20253  	// The severity of the compliance status. Severity can be one of the following:
 20254  	// Critical, High, Medium, Low, Informational, Unspecified.
 20255  	//
 20256  	// Severity is a required field
 20257  	Severity *string `type:"string" required:"true" enum:"ComplianceSeverity"`
 20258  
 20259  	// The status of the compliance item. An item is either COMPLIANT or NON_COMPLIANT.
 20260  	//
 20261  	// Status is a required field
 20262  	Status *string `type:"string" required:"true" enum:"ComplianceStatus"`
 20263  
 20264  	// The title of the compliance item. For example, if the compliance item is
 20265  	// a Windows patch, the title could be the title of the KB article for the patch;
 20266  	// for example: Security Update for Active Directory Federation Services.
 20267  	Title *string `type:"string"`
 20268  }
 20269  
 20270  // String returns the string representation.
 20271  //
 20272  // API parameter values that are decorated as "sensitive" in the API will not
 20273  // be included in the string output. The member name will be present, but the
 20274  // value will be replaced with "sensitive".
 20275  func (s ComplianceItemEntry) String() string {
 20276  	return awsutil.Prettify(s)
 20277  }
 20278  
 20279  // GoString returns the string representation.
 20280  //
 20281  // API parameter values that are decorated as "sensitive" in the API will not
 20282  // be included in the string output. The member name will be present, but the
 20283  // value will be replaced with "sensitive".
 20284  func (s ComplianceItemEntry) GoString() string {
 20285  	return s.String()
 20286  }
 20287  
 20288  // Validate inspects the fields of the type to determine if they are valid.
 20289  func (s *ComplianceItemEntry) Validate() error {
 20290  	invalidParams := request.ErrInvalidParams{Context: "ComplianceItemEntry"}
 20291  	if s.Severity == nil {
 20292  		invalidParams.Add(request.NewErrParamRequired("Severity"))
 20293  	}
 20294  	if s.Status == nil {
 20295  		invalidParams.Add(request.NewErrParamRequired("Status"))
 20296  	}
 20297  
 20298  	if invalidParams.Len() > 0 {
 20299  		return invalidParams
 20300  	}
 20301  	return nil
 20302  }
 20303  
 20304  // SetDetails sets the Details field's value.
 20305  func (s *ComplianceItemEntry) SetDetails(v map[string]*string) *ComplianceItemEntry {
 20306  	s.Details = v
 20307  	return s
 20308  }
 20309  
 20310  // SetId sets the Id field's value.
 20311  func (s *ComplianceItemEntry) SetId(v string) *ComplianceItemEntry {
 20312  	s.Id = &v
 20313  	return s
 20314  }
 20315  
 20316  // SetSeverity sets the Severity field's value.
 20317  func (s *ComplianceItemEntry) SetSeverity(v string) *ComplianceItemEntry {
 20318  	s.Severity = &v
 20319  	return s
 20320  }
 20321  
 20322  // SetStatus sets the Status field's value.
 20323  func (s *ComplianceItemEntry) SetStatus(v string) *ComplianceItemEntry {
 20324  	s.Status = &v
 20325  	return s
 20326  }
 20327  
 20328  // SetTitle sets the Title field's value.
 20329  func (s *ComplianceItemEntry) SetTitle(v string) *ComplianceItemEntry {
 20330  	s.Title = &v
 20331  	return s
 20332  }
 20333  
 20334  // One or more filters. Use a filter to return a more specific list of results.
 20335  type ComplianceStringFilter struct {
 20336  	_ struct{} `type:"structure"`
 20337  
 20338  	// The name of the filter.
 20339  	Key *string `min:"1" type:"string"`
 20340  
 20341  	// The type of comparison that should be performed for the value: Equal, NotEqual,
 20342  	// BeginWith, LessThan, or GreaterThan.
 20343  	Type *string `type:"string" enum:"ComplianceQueryOperatorType"`
 20344  
 20345  	// The value for which to search.
 20346  	Values []*string `min:"1" type:"list"`
 20347  }
 20348  
 20349  // String returns the string representation.
 20350  //
 20351  // API parameter values that are decorated as "sensitive" in the API will not
 20352  // be included in the string output. The member name will be present, but the
 20353  // value will be replaced with "sensitive".
 20354  func (s ComplianceStringFilter) String() string {
 20355  	return awsutil.Prettify(s)
 20356  }
 20357  
 20358  // GoString returns the string representation.
 20359  //
 20360  // API parameter values that are decorated as "sensitive" in the API will not
 20361  // be included in the string output. The member name will be present, but the
 20362  // value will be replaced with "sensitive".
 20363  func (s ComplianceStringFilter) GoString() string {
 20364  	return s.String()
 20365  }
 20366  
 20367  // Validate inspects the fields of the type to determine if they are valid.
 20368  func (s *ComplianceStringFilter) Validate() error {
 20369  	invalidParams := request.ErrInvalidParams{Context: "ComplianceStringFilter"}
 20370  	if s.Key != nil && len(*s.Key) < 1 {
 20371  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 20372  	}
 20373  	if s.Values != nil && len(s.Values) < 1 {
 20374  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 20375  	}
 20376  
 20377  	if invalidParams.Len() > 0 {
 20378  		return invalidParams
 20379  	}
 20380  	return nil
 20381  }
 20382  
 20383  // SetKey sets the Key field's value.
 20384  func (s *ComplianceStringFilter) SetKey(v string) *ComplianceStringFilter {
 20385  	s.Key = &v
 20386  	return s
 20387  }
 20388  
 20389  // SetType sets the Type field's value.
 20390  func (s *ComplianceStringFilter) SetType(v string) *ComplianceStringFilter {
 20391  	s.Type = &v
 20392  	return s
 20393  }
 20394  
 20395  // SetValues sets the Values field's value.
 20396  func (s *ComplianceStringFilter) SetValues(v []*string) *ComplianceStringFilter {
 20397  	s.Values = v
 20398  	return s
 20399  }
 20400  
 20401  // A summary of compliance information by compliance type.
 20402  type ComplianceSummaryItem struct {
 20403  	_ struct{} `type:"structure"`
 20404  
 20405  	// The type of compliance item. For example, the compliance type can be Association,
 20406  	// Patch, or Custom:string.
 20407  	ComplianceType *string `min:"1" type:"string"`
 20408  
 20409  	// A list of COMPLIANT items for the specified compliance type.
 20410  	CompliantSummary *CompliantSummary `type:"structure"`
 20411  
 20412  	// A list of NON_COMPLIANT items for the specified compliance type.
 20413  	NonCompliantSummary *NonCompliantSummary `type:"structure"`
 20414  }
 20415  
 20416  // String returns the string representation.
 20417  //
 20418  // API parameter values that are decorated as "sensitive" in the API will not
 20419  // be included in the string output. The member name will be present, but the
 20420  // value will be replaced with "sensitive".
 20421  func (s ComplianceSummaryItem) String() string {
 20422  	return awsutil.Prettify(s)
 20423  }
 20424  
 20425  // GoString returns the string representation.
 20426  //
 20427  // API parameter values that are decorated as "sensitive" in the API will not
 20428  // be included in the string output. The member name will be present, but the
 20429  // value will be replaced with "sensitive".
 20430  func (s ComplianceSummaryItem) GoString() string {
 20431  	return s.String()
 20432  }
 20433  
 20434  // SetComplianceType sets the ComplianceType field's value.
 20435  func (s *ComplianceSummaryItem) SetComplianceType(v string) *ComplianceSummaryItem {
 20436  	s.ComplianceType = &v
 20437  	return s
 20438  }
 20439  
 20440  // SetCompliantSummary sets the CompliantSummary field's value.
 20441  func (s *ComplianceSummaryItem) SetCompliantSummary(v *CompliantSummary) *ComplianceSummaryItem {
 20442  	s.CompliantSummary = v
 20443  	return s
 20444  }
 20445  
 20446  // SetNonCompliantSummary sets the NonCompliantSummary field's value.
 20447  func (s *ComplianceSummaryItem) SetNonCompliantSummary(v *NonCompliantSummary) *ComplianceSummaryItem {
 20448  	s.NonCompliantSummary = v
 20449  	return s
 20450  }
 20451  
 20452  // You specified too many custom compliance types. You can specify a maximum
 20453  // of 10 different types.
 20454  type ComplianceTypeCountLimitExceededException struct {
 20455  	_            struct{}                  `type:"structure"`
 20456  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 20457  
 20458  	Message_ *string `locationName:"Message" type:"string"`
 20459  }
 20460  
 20461  // String returns the string representation.
 20462  //
 20463  // API parameter values that are decorated as "sensitive" in the API will not
 20464  // be included in the string output. The member name will be present, but the
 20465  // value will be replaced with "sensitive".
 20466  func (s ComplianceTypeCountLimitExceededException) String() string {
 20467  	return awsutil.Prettify(s)
 20468  }
 20469  
 20470  // GoString returns the string representation.
 20471  //
 20472  // API parameter values that are decorated as "sensitive" in the API will not
 20473  // be included in the string output. The member name will be present, but the
 20474  // value will be replaced with "sensitive".
 20475  func (s ComplianceTypeCountLimitExceededException) GoString() string {
 20476  	return s.String()
 20477  }
 20478  
 20479  func newErrorComplianceTypeCountLimitExceededException(v protocol.ResponseMetadata) error {
 20480  	return &ComplianceTypeCountLimitExceededException{
 20481  		RespMetadata: v,
 20482  	}
 20483  }
 20484  
 20485  // Code returns the exception type name.
 20486  func (s *ComplianceTypeCountLimitExceededException) Code() string {
 20487  	return "ComplianceTypeCountLimitExceededException"
 20488  }
 20489  
 20490  // Message returns the exception's message.
 20491  func (s *ComplianceTypeCountLimitExceededException) Message() string {
 20492  	if s.Message_ != nil {
 20493  		return *s.Message_
 20494  	}
 20495  	return ""
 20496  }
 20497  
 20498  // OrigErr always returns nil, satisfies awserr.Error interface.
 20499  func (s *ComplianceTypeCountLimitExceededException) OrigErr() error {
 20500  	return nil
 20501  }
 20502  
 20503  func (s *ComplianceTypeCountLimitExceededException) Error() string {
 20504  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 20505  }
 20506  
 20507  // Status code returns the HTTP status code for the request's response error.
 20508  func (s *ComplianceTypeCountLimitExceededException) StatusCode() int {
 20509  	return s.RespMetadata.StatusCode
 20510  }
 20511  
 20512  // RequestID returns the service's response RequestID for request.
 20513  func (s *ComplianceTypeCountLimitExceededException) RequestID() string {
 20514  	return s.RespMetadata.RequestID
 20515  }
 20516  
 20517  // A summary of resources that are compliant. The summary is organized according
 20518  // to the resource count for each compliance type.
 20519  type CompliantSummary struct {
 20520  	_ struct{} `type:"structure"`
 20521  
 20522  	// The total number of resources that are compliant.
 20523  	CompliantCount *int64 `type:"integer"`
 20524  
 20525  	// A summary of the compliance severity by compliance type.
 20526  	SeveritySummary *SeveritySummary `type:"structure"`
 20527  }
 20528  
 20529  // String returns the string representation.
 20530  //
 20531  // API parameter values that are decorated as "sensitive" in the API will not
 20532  // be included in the string output. The member name will be present, but the
 20533  // value will be replaced with "sensitive".
 20534  func (s CompliantSummary) String() string {
 20535  	return awsutil.Prettify(s)
 20536  }
 20537  
 20538  // GoString returns the string representation.
 20539  //
 20540  // API parameter values that are decorated as "sensitive" in the API will not
 20541  // be included in the string output. The member name will be present, but the
 20542  // value will be replaced with "sensitive".
 20543  func (s CompliantSummary) GoString() string {
 20544  	return s.String()
 20545  }
 20546  
 20547  // SetCompliantCount sets the CompliantCount field's value.
 20548  func (s *CompliantSummary) SetCompliantCount(v int64) *CompliantSummary {
 20549  	s.CompliantCount = &v
 20550  	return s
 20551  }
 20552  
 20553  // SetSeveritySummary sets the SeveritySummary field's value.
 20554  func (s *CompliantSummary) SetSeveritySummary(v *SeveritySummary) *CompliantSummary {
 20555  	s.SeveritySummary = v
 20556  	return s
 20557  }
 20558  
 20559  type CreateActivationInput struct {
 20560  	_ struct{} `type:"structure"`
 20561  
 20562  	// The name of the registered, managed instance as it will appear in the Amazon
 20563  	// Web Services Systems Manager console or when you use the Amazon Web Services
 20564  	// command line tools to list Systems Manager resources.
 20565  	//
 20566  	// Don't enter personally identifiable information in this field.
 20567  	DefaultInstanceName *string `type:"string"`
 20568  
 20569  	// A user-defined description of the resource that you want to register with
 20570  	// Systems Manager.
 20571  	//
 20572  	// Don't enter personally identifiable information in this field.
 20573  	Description *string `type:"string"`
 20574  
 20575  	// The date by which this activation request should expire, in timestamp format,
 20576  	// such as "2021-07-07T00:00:00". You can specify a date up to 30 days in advance.
 20577  	// If you don't provide an expiration date, the activation code expires in 24
 20578  	// hours.
 20579  	ExpirationDate *time.Time `type:"timestamp"`
 20580  
 20581  	// The name of the Identity and Access Management (IAM) role that you want to
 20582  	// assign to the managed instance. This IAM role must provide AssumeRole permissions
 20583  	// for the Amazon Web Services Systems Manager service principal ssm.amazonaws.com.
 20584  	// For more information, see Create an IAM service role for a hybrid environment
 20585  	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-service-role.html)
 20586  	// in the Amazon Web Services Systems Manager User Guide.
 20587  	//
 20588  	// IamRole is a required field
 20589  	IamRole *string `type:"string" required:"true"`
 20590  
 20591  	// Specify the maximum number of managed instances you want to register. The
 20592  	// default value is 1.
 20593  	RegistrationLimit *int64 `min:"1" type:"integer"`
 20594  
 20595  	// Optional metadata that you assign to a resource. Tags enable you to categorize
 20596  	// a resource in different ways, such as by purpose, owner, or environment.
 20597  	// For example, you might want to tag an activation to identify which servers
 20598  	// or virtual machines (VMs) in your on-premises environment you intend to activate.
 20599  	// In this case, you could specify the following key-value pairs:
 20600  	//
 20601  	//    * Key=OS,Value=Windows
 20602  	//
 20603  	//    * Key=Environment,Value=Production
 20604  	//
 20605  	// When you install SSM Agent on your on-premises servers and VMs, you specify
 20606  	// an activation ID and code. When you specify the activation ID and code, tags
 20607  	// assigned to the activation are automatically applied to the on-premises servers
 20608  	// or VMs.
 20609  	//
 20610  	// You can't add tags to or delete tags from an existing activation. You can
 20611  	// tag your on-premises servers and VMs after they connect to Systems Manager
 20612  	// for the first time and are assigned a managed instance ID. This means they
 20613  	// are listed in the Amazon Web Services Systems Manager console with an ID
 20614  	// that is prefixed with "mi-". For information about how to add tags to your
 20615  	// managed instances, see AddTagsToResource. For information about how to remove
 20616  	// tags from your managed instances, see RemoveTagsFromResource.
 20617  	Tags []*Tag `type:"list"`
 20618  }
 20619  
 20620  // String returns the string representation.
 20621  //
 20622  // API parameter values that are decorated as "sensitive" in the API will not
 20623  // be included in the string output. The member name will be present, but the
 20624  // value will be replaced with "sensitive".
 20625  func (s CreateActivationInput) String() string {
 20626  	return awsutil.Prettify(s)
 20627  }
 20628  
 20629  // GoString returns the string representation.
 20630  //
 20631  // API parameter values that are decorated as "sensitive" in the API will not
 20632  // be included in the string output. The member name will be present, but the
 20633  // value will be replaced with "sensitive".
 20634  func (s CreateActivationInput) GoString() string {
 20635  	return s.String()
 20636  }
 20637  
 20638  // Validate inspects the fields of the type to determine if they are valid.
 20639  func (s *CreateActivationInput) Validate() error {
 20640  	invalidParams := request.ErrInvalidParams{Context: "CreateActivationInput"}
 20641  	if s.IamRole == nil {
 20642  		invalidParams.Add(request.NewErrParamRequired("IamRole"))
 20643  	}
 20644  	if s.RegistrationLimit != nil && *s.RegistrationLimit < 1 {
 20645  		invalidParams.Add(request.NewErrParamMinValue("RegistrationLimit", 1))
 20646  	}
 20647  	if s.Tags != nil {
 20648  		for i, v := range s.Tags {
 20649  			if v == nil {
 20650  				continue
 20651  			}
 20652  			if err := v.Validate(); err != nil {
 20653  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 20654  			}
 20655  		}
 20656  	}
 20657  
 20658  	if invalidParams.Len() > 0 {
 20659  		return invalidParams
 20660  	}
 20661  	return nil
 20662  }
 20663  
 20664  // SetDefaultInstanceName sets the DefaultInstanceName field's value.
 20665  func (s *CreateActivationInput) SetDefaultInstanceName(v string) *CreateActivationInput {
 20666  	s.DefaultInstanceName = &v
 20667  	return s
 20668  }
 20669  
 20670  // SetDescription sets the Description field's value.
 20671  func (s *CreateActivationInput) SetDescription(v string) *CreateActivationInput {
 20672  	s.Description = &v
 20673  	return s
 20674  }
 20675  
 20676  // SetExpirationDate sets the ExpirationDate field's value.
 20677  func (s *CreateActivationInput) SetExpirationDate(v time.Time) *CreateActivationInput {
 20678  	s.ExpirationDate = &v
 20679  	return s
 20680  }
 20681  
 20682  // SetIamRole sets the IamRole field's value.
 20683  func (s *CreateActivationInput) SetIamRole(v string) *CreateActivationInput {
 20684  	s.IamRole = &v
 20685  	return s
 20686  }
 20687  
 20688  // SetRegistrationLimit sets the RegistrationLimit field's value.
 20689  func (s *CreateActivationInput) SetRegistrationLimit(v int64) *CreateActivationInput {
 20690  	s.RegistrationLimit = &v
 20691  	return s
 20692  }
 20693  
 20694  // SetTags sets the Tags field's value.
 20695  func (s *CreateActivationInput) SetTags(v []*Tag) *CreateActivationInput {
 20696  	s.Tags = v
 20697  	return s
 20698  }
 20699  
 20700  type CreateActivationOutput struct {
 20701  	_ struct{} `type:"structure"`
 20702  
 20703  	// The code the system generates when it processes the activation. The activation
 20704  	// code functions like a password to validate the activation ID.
 20705  	ActivationCode *string `min:"20" type:"string"`
 20706  
 20707  	// The ID number generated by the system when it processed the activation. The
 20708  	// activation ID functions like a user name.
 20709  	ActivationId *string `type:"string"`
 20710  }
 20711  
 20712  // String returns the string representation.
 20713  //
 20714  // API parameter values that are decorated as "sensitive" in the API will not
 20715  // be included in the string output. The member name will be present, but the
 20716  // value will be replaced with "sensitive".
 20717  func (s CreateActivationOutput) String() string {
 20718  	return awsutil.Prettify(s)
 20719  }
 20720  
 20721  // GoString returns the string representation.
 20722  //
 20723  // API parameter values that are decorated as "sensitive" in the API will not
 20724  // be included in the string output. The member name will be present, but the
 20725  // value will be replaced with "sensitive".
 20726  func (s CreateActivationOutput) GoString() string {
 20727  	return s.String()
 20728  }
 20729  
 20730  // SetActivationCode sets the ActivationCode field's value.
 20731  func (s *CreateActivationOutput) SetActivationCode(v string) *CreateActivationOutput {
 20732  	s.ActivationCode = &v
 20733  	return s
 20734  }
 20735  
 20736  // SetActivationId sets the ActivationId field's value.
 20737  func (s *CreateActivationOutput) SetActivationId(v string) *CreateActivationOutput {
 20738  	s.ActivationId = &v
 20739  	return s
 20740  }
 20741  
 20742  type CreateAssociationBatchInput struct {
 20743  	_ struct{} `type:"structure"`
 20744  
 20745  	// One or more associations.
 20746  	//
 20747  	// Entries is a required field
 20748  	Entries []*CreateAssociationBatchRequestEntry `min:"1" type:"list" required:"true"`
 20749  }
 20750  
 20751  // String returns the string representation.
 20752  //
 20753  // API parameter values that are decorated as "sensitive" in the API will not
 20754  // be included in the string output. The member name will be present, but the
 20755  // value will be replaced with "sensitive".
 20756  func (s CreateAssociationBatchInput) String() string {
 20757  	return awsutil.Prettify(s)
 20758  }
 20759  
 20760  // GoString returns the string representation.
 20761  //
 20762  // API parameter values that are decorated as "sensitive" in the API will not
 20763  // be included in the string output. The member name will be present, but the
 20764  // value will be replaced with "sensitive".
 20765  func (s CreateAssociationBatchInput) GoString() string {
 20766  	return s.String()
 20767  }
 20768  
 20769  // Validate inspects the fields of the type to determine if they are valid.
 20770  func (s *CreateAssociationBatchInput) Validate() error {
 20771  	invalidParams := request.ErrInvalidParams{Context: "CreateAssociationBatchInput"}
 20772  	if s.Entries == nil {
 20773  		invalidParams.Add(request.NewErrParamRequired("Entries"))
 20774  	}
 20775  	if s.Entries != nil && len(s.Entries) < 1 {
 20776  		invalidParams.Add(request.NewErrParamMinLen("Entries", 1))
 20777  	}
 20778  	if s.Entries != nil {
 20779  		for i, v := range s.Entries {
 20780  			if v == nil {
 20781  				continue
 20782  			}
 20783  			if err := v.Validate(); err != nil {
 20784  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entries", i), err.(request.ErrInvalidParams))
 20785  			}
 20786  		}
 20787  	}
 20788  
 20789  	if invalidParams.Len() > 0 {
 20790  		return invalidParams
 20791  	}
 20792  	return nil
 20793  }
 20794  
 20795  // SetEntries sets the Entries field's value.
 20796  func (s *CreateAssociationBatchInput) SetEntries(v []*CreateAssociationBatchRequestEntry) *CreateAssociationBatchInput {
 20797  	s.Entries = v
 20798  	return s
 20799  }
 20800  
 20801  type CreateAssociationBatchOutput struct {
 20802  	_ struct{} `type:"structure"`
 20803  
 20804  	// Information about the associations that failed.
 20805  	Failed []*FailedCreateAssociation `type:"list"`
 20806  
 20807  	// Information about the associations that succeeded.
 20808  	Successful []*AssociationDescription `type:"list"`
 20809  }
 20810  
 20811  // String returns the string representation.
 20812  //
 20813  // API parameter values that are decorated as "sensitive" in the API will not
 20814  // be included in the string output. The member name will be present, but the
 20815  // value will be replaced with "sensitive".
 20816  func (s CreateAssociationBatchOutput) String() string {
 20817  	return awsutil.Prettify(s)
 20818  }
 20819  
 20820  // GoString returns the string representation.
 20821  //
 20822  // API parameter values that are decorated as "sensitive" in the API will not
 20823  // be included in the string output. The member name will be present, but the
 20824  // value will be replaced with "sensitive".
 20825  func (s CreateAssociationBatchOutput) GoString() string {
 20826  	return s.String()
 20827  }
 20828  
 20829  // SetFailed sets the Failed field's value.
 20830  func (s *CreateAssociationBatchOutput) SetFailed(v []*FailedCreateAssociation) *CreateAssociationBatchOutput {
 20831  	s.Failed = v
 20832  	return s
 20833  }
 20834  
 20835  // SetSuccessful sets the Successful field's value.
 20836  func (s *CreateAssociationBatchOutput) SetSuccessful(v []*AssociationDescription) *CreateAssociationBatchOutput {
 20837  	s.Successful = v
 20838  	return s
 20839  }
 20840  
 20841  // Describes the association of a Amazon Web Services Systems Manager document
 20842  // (SSM document) and an instance.
 20843  type CreateAssociationBatchRequestEntry struct {
 20844  	_ struct{} `type:"structure"`
 20845  
 20846  	// By default, when you create a new associations, the system runs it immediately
 20847  	// after it is created and then according to the schedule you specified. Specify
 20848  	// this option if you don't want an association to run immediately after you
 20849  	// create it. This parameter isn't supported for rate expressions.
 20850  	ApplyOnlyAtCronInterval *bool `type:"boolean"`
 20851  
 20852  	// Specify a descriptive name for the association.
 20853  	AssociationName *string `type:"string"`
 20854  
 20855  	// Specify the target for the association. This target is required for associations
 20856  	// that use an Automation runbook and target resources by using rate controls.
 20857  	// Automation is a capability of Amazon Web Services Systems Manager.
 20858  	AutomationTargetParameterName *string `min:"1" type:"string"`
 20859  
 20860  	// The names or Amazon Resource Names (ARNs) of the Change Calendar type documents
 20861  	// your associations are gated under. The associations only run when that Change
 20862  	// Calendar is open. For more information, see Amazon Web Services Systems Manager
 20863  	// Change Calendar (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar).
 20864  	CalendarNames []*string `type:"list"`
 20865  
 20866  	// The severity level to assign to the association.
 20867  	ComplianceSeverity *string `type:"string" enum:"AssociationComplianceSeverity"`
 20868  
 20869  	// The document version.
 20870  	DocumentVersion *string `type:"string"`
 20871  
 20872  	// The instance ID.
 20873  	//
 20874  	// InstanceId has been deprecated. To specify an instance ID for an association,
 20875  	// use the Targets parameter. Requests that include the parameter InstanceID
 20876  	// with Systems Manager documents (SSM documents) that use schema version 2.0
 20877  	// or later will fail. In addition, if you use the parameter InstanceId, you
 20878  	// can't use the parameters AssociationName, DocumentVersion, MaxErrors, MaxConcurrency,
 20879  	// OutputLocation, or ScheduleExpression. To use these parameters, you must
 20880  	// use the Targets parameter.
 20881  	InstanceId *string `type:"string"`
 20882  
 20883  	// The maximum number of targets allowed to run the association at the same
 20884  	// time. You can specify a number, for example 10, or a percentage of the target
 20885  	// set, for example 10%. The default value is 100%, which means all targets
 20886  	// run the association at the same time.
 20887  	//
 20888  	// If a new instance starts and attempts to run an association while Systems
 20889  	// Manager is running MaxConcurrency associations, the association is allowed
 20890  	// to run. During the next association interval, the new instance will process
 20891  	// its association within the limit specified for MaxConcurrency.
 20892  	MaxConcurrency *string `min:"1" type:"string"`
 20893  
 20894  	// The number of errors that are allowed before the system stops sending requests
 20895  	// to run the association on additional targets. You can specify either an absolute
 20896  	// number of errors, for example 10, or a percentage of the target set, for
 20897  	// example 10%. If you specify 3, for example, the system stops sending requests
 20898  	// when the fourth error is received. If you specify 0, then the system stops
 20899  	// sending requests after the first error is returned. If you run an association
 20900  	// on 50 instances and set MaxError to 10%, then the system stops sending the
 20901  	// request when the sixth error is received.
 20902  	//
 20903  	// Executions that are already running an association when MaxErrors is reached
 20904  	// are allowed to complete, but some of these executions may fail as well. If
 20905  	// you need to ensure that there won't be more than max-errors failed executions,
 20906  	// set MaxConcurrency to 1 so that executions proceed one at a time.
 20907  	MaxErrors *string `min:"1" type:"string"`
 20908  
 20909  	// The name of the SSM document that contains the configuration information
 20910  	// for the instance. You can specify Command or Automation runbooks.
 20911  	//
 20912  	// You can specify Amazon Web Services-predefined documents, documents you created,
 20913  	// or a document that is shared with you from another account.
 20914  	//
 20915  	// For SSM documents that are shared with you from other Amazon Web Services
 20916  	// accounts, you must specify the complete SSM document ARN, in the following
 20917  	// format:
 20918  	//
 20919  	// arn:aws:ssm:region:account-id:document/document-name
 20920  	//
 20921  	// For example:
 20922  	//
 20923  	// arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document
 20924  	//
 20925  	// For Amazon Web Services-predefined documents and SSM documents you created
 20926  	// in your account, you only need to specify the document name. For example,
 20927  	// AWS-ApplyPatchBaseline or My-Document.
 20928  	//
 20929  	// Name is a required field
 20930  	Name *string `type:"string" required:"true"`
 20931  
 20932  	// An S3 bucket where you want to store the results of this request.
 20933  	OutputLocation *InstanceAssociationOutputLocation `type:"structure"`
 20934  
 20935  	// A description of the parameters for a document.
 20936  	Parameters map[string][]*string `type:"map"`
 20937  
 20938  	// A cron expression that specifies a schedule when the association runs.
 20939  	ScheduleExpression *string `min:"1" type:"string"`
 20940  
 20941  	// The mode for generating association compliance. You can specify AUTO or MANUAL.
 20942  	// In AUTO mode, the system uses the status of the association execution to
 20943  	// determine the compliance status. If the association execution runs successfully,
 20944  	// then the association is COMPLIANT. If the association execution doesn't run
 20945  	// successfully, the association is NON-COMPLIANT.
 20946  	//
 20947  	// In MANUAL mode, you must specify the AssociationId as a parameter for the
 20948  	// PutComplianceItems API operation. In this case, compliance data isn't managed
 20949  	// by State Manager, a capability of Amazon Web Services Systems Manager. It
 20950  	// is managed by your direct call to the PutComplianceItems API operation.
 20951  	//
 20952  	// By default, all associations use AUTO mode.
 20953  	SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"`
 20954  
 20955  	// Use this action to create an association in multiple Regions and multiple
 20956  	// accounts.
 20957  	TargetLocations []*TargetLocation `min:"1" type:"list"`
 20958  
 20959  	// The instances targeted by the request.
 20960  	Targets []*Target `type:"list"`
 20961  }
 20962  
 20963  // String returns the string representation.
 20964  //
 20965  // API parameter values that are decorated as "sensitive" in the API will not
 20966  // be included in the string output. The member name will be present, but the
 20967  // value will be replaced with "sensitive".
 20968  func (s CreateAssociationBatchRequestEntry) String() string {
 20969  	return awsutil.Prettify(s)
 20970  }
 20971  
 20972  // GoString returns the string representation.
 20973  //
 20974  // API parameter values that are decorated as "sensitive" in the API will not
 20975  // be included in the string output. The member name will be present, but the
 20976  // value will be replaced with "sensitive".
 20977  func (s CreateAssociationBatchRequestEntry) GoString() string {
 20978  	return s.String()
 20979  }
 20980  
 20981  // Validate inspects the fields of the type to determine if they are valid.
 20982  func (s *CreateAssociationBatchRequestEntry) Validate() error {
 20983  	invalidParams := request.ErrInvalidParams{Context: "CreateAssociationBatchRequestEntry"}
 20984  	if s.AutomationTargetParameterName != nil && len(*s.AutomationTargetParameterName) < 1 {
 20985  		invalidParams.Add(request.NewErrParamMinLen("AutomationTargetParameterName", 1))
 20986  	}
 20987  	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
 20988  		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
 20989  	}
 20990  	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
 20991  		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
 20992  	}
 20993  	if s.Name == nil {
 20994  		invalidParams.Add(request.NewErrParamRequired("Name"))
 20995  	}
 20996  	if s.ScheduleExpression != nil && len(*s.ScheduleExpression) < 1 {
 20997  		invalidParams.Add(request.NewErrParamMinLen("ScheduleExpression", 1))
 20998  	}
 20999  	if s.TargetLocations != nil && len(s.TargetLocations) < 1 {
 21000  		invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1))
 21001  	}
 21002  	if s.OutputLocation != nil {
 21003  		if err := s.OutputLocation.Validate(); err != nil {
 21004  			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
 21005  		}
 21006  	}
 21007  	if s.TargetLocations != nil {
 21008  		for i, v := range s.TargetLocations {
 21009  			if v == nil {
 21010  				continue
 21011  			}
 21012  			if err := v.Validate(); err != nil {
 21013  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetLocations", i), err.(request.ErrInvalidParams))
 21014  			}
 21015  		}
 21016  	}
 21017  	if s.Targets != nil {
 21018  		for i, v := range s.Targets {
 21019  			if v == nil {
 21020  				continue
 21021  			}
 21022  			if err := v.Validate(); err != nil {
 21023  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 21024  			}
 21025  		}
 21026  	}
 21027  
 21028  	if invalidParams.Len() > 0 {
 21029  		return invalidParams
 21030  	}
 21031  	return nil
 21032  }
 21033  
 21034  // SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value.
 21035  func (s *CreateAssociationBatchRequestEntry) SetApplyOnlyAtCronInterval(v bool) *CreateAssociationBatchRequestEntry {
 21036  	s.ApplyOnlyAtCronInterval = &v
 21037  	return s
 21038  }
 21039  
 21040  // SetAssociationName sets the AssociationName field's value.
 21041  func (s *CreateAssociationBatchRequestEntry) SetAssociationName(v string) *CreateAssociationBatchRequestEntry {
 21042  	s.AssociationName = &v
 21043  	return s
 21044  }
 21045  
 21046  // SetAutomationTargetParameterName sets the AutomationTargetParameterName field's value.
 21047  func (s *CreateAssociationBatchRequestEntry) SetAutomationTargetParameterName(v string) *CreateAssociationBatchRequestEntry {
 21048  	s.AutomationTargetParameterName = &v
 21049  	return s
 21050  }
 21051  
 21052  // SetCalendarNames sets the CalendarNames field's value.
 21053  func (s *CreateAssociationBatchRequestEntry) SetCalendarNames(v []*string) *CreateAssociationBatchRequestEntry {
 21054  	s.CalendarNames = v
 21055  	return s
 21056  }
 21057  
 21058  // SetComplianceSeverity sets the ComplianceSeverity field's value.
 21059  func (s *CreateAssociationBatchRequestEntry) SetComplianceSeverity(v string) *CreateAssociationBatchRequestEntry {
 21060  	s.ComplianceSeverity = &v
 21061  	return s
 21062  }
 21063  
 21064  // SetDocumentVersion sets the DocumentVersion field's value.
 21065  func (s *CreateAssociationBatchRequestEntry) SetDocumentVersion(v string) *CreateAssociationBatchRequestEntry {
 21066  	s.DocumentVersion = &v
 21067  	return s
 21068  }
 21069  
 21070  // SetInstanceId sets the InstanceId field's value.
 21071  func (s *CreateAssociationBatchRequestEntry) SetInstanceId(v string) *CreateAssociationBatchRequestEntry {
 21072  	s.InstanceId = &v
 21073  	return s
 21074  }
 21075  
 21076  // SetMaxConcurrency sets the MaxConcurrency field's value.
 21077  func (s *CreateAssociationBatchRequestEntry) SetMaxConcurrency(v string) *CreateAssociationBatchRequestEntry {
 21078  	s.MaxConcurrency = &v
 21079  	return s
 21080  }
 21081  
 21082  // SetMaxErrors sets the MaxErrors field's value.
 21083  func (s *CreateAssociationBatchRequestEntry) SetMaxErrors(v string) *CreateAssociationBatchRequestEntry {
 21084  	s.MaxErrors = &v
 21085  	return s
 21086  }
 21087  
 21088  // SetName sets the Name field's value.
 21089  func (s *CreateAssociationBatchRequestEntry) SetName(v string) *CreateAssociationBatchRequestEntry {
 21090  	s.Name = &v
 21091  	return s
 21092  }
 21093  
 21094  // SetOutputLocation sets the OutputLocation field's value.
 21095  func (s *CreateAssociationBatchRequestEntry) SetOutputLocation(v *InstanceAssociationOutputLocation) *CreateAssociationBatchRequestEntry {
 21096  	s.OutputLocation = v
 21097  	return s
 21098  }
 21099  
 21100  // SetParameters sets the Parameters field's value.
 21101  func (s *CreateAssociationBatchRequestEntry) SetParameters(v map[string][]*string) *CreateAssociationBatchRequestEntry {
 21102  	s.Parameters = v
 21103  	return s
 21104  }
 21105  
 21106  // SetScheduleExpression sets the ScheduleExpression field's value.
 21107  func (s *CreateAssociationBatchRequestEntry) SetScheduleExpression(v string) *CreateAssociationBatchRequestEntry {
 21108  	s.ScheduleExpression = &v
 21109  	return s
 21110  }
 21111  
 21112  // SetSyncCompliance sets the SyncCompliance field's value.
 21113  func (s *CreateAssociationBatchRequestEntry) SetSyncCompliance(v string) *CreateAssociationBatchRequestEntry {
 21114  	s.SyncCompliance = &v
 21115  	return s
 21116  }
 21117  
 21118  // SetTargetLocations sets the TargetLocations field's value.
 21119  func (s *CreateAssociationBatchRequestEntry) SetTargetLocations(v []*TargetLocation) *CreateAssociationBatchRequestEntry {
 21120  	s.TargetLocations = v
 21121  	return s
 21122  }
 21123  
 21124  // SetTargets sets the Targets field's value.
 21125  func (s *CreateAssociationBatchRequestEntry) SetTargets(v []*Target) *CreateAssociationBatchRequestEntry {
 21126  	s.Targets = v
 21127  	return s
 21128  }
 21129  
 21130  type CreateAssociationInput struct {
 21131  	_ struct{} `type:"structure"`
 21132  
 21133  	// By default, when you create a new association, the system runs it immediately
 21134  	// after it is created and then according to the schedule you specified. Specify
 21135  	// this option if you don't want an association to run immediately after you
 21136  	// create it. This parameter isn't supported for rate expressions.
 21137  	ApplyOnlyAtCronInterval *bool `type:"boolean"`
 21138  
 21139  	// Specify a descriptive name for the association.
 21140  	AssociationName *string `type:"string"`
 21141  
 21142  	// Specify the target for the association. This target is required for associations
 21143  	// that use an Automation runbook and target resources by using rate controls.
 21144  	// Automation is a capability of Amazon Web Services Systems Manager.
 21145  	AutomationTargetParameterName *string `min:"1" type:"string"`
 21146  
 21147  	// The names or Amazon Resource Names (ARNs) of the Change Calendar type documents
 21148  	// you want to gate your associations under. The associations only run when
 21149  	// that change calendar is open. For more information, see Amazon Web Services
 21150  	// Systems Manager Change Calendar (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar).
 21151  	CalendarNames []*string `type:"list"`
 21152  
 21153  	// The severity level to assign to the association.
 21154  	ComplianceSeverity *string `type:"string" enum:"AssociationComplianceSeverity"`
 21155  
 21156  	// The document version you want to associate with the target(s). Can be a specific
 21157  	// version or the default version.
 21158  	DocumentVersion *string `type:"string"`
 21159  
 21160  	// The instance ID.
 21161  	//
 21162  	// InstanceId has been deprecated. To specify an instance ID for an association,
 21163  	// use the Targets parameter. Requests that include the parameter InstanceID
 21164  	// with Systems Manager documents (SSM documents) that use schema version 2.0
 21165  	// or later will fail. In addition, if you use the parameter InstanceId, you
 21166  	// can't use the parameters AssociationName, DocumentVersion, MaxErrors, MaxConcurrency,
 21167  	// OutputLocation, or ScheduleExpression. To use these parameters, you must
 21168  	// use the Targets parameter.
 21169  	InstanceId *string `type:"string"`
 21170  
 21171  	// The maximum number of targets allowed to run the association at the same
 21172  	// time. You can specify a number, for example 10, or a percentage of the target
 21173  	// set, for example 10%. The default value is 100%, which means all targets
 21174  	// run the association at the same time.
 21175  	//
 21176  	// If a new instance starts and attempts to run an association while Systems
 21177  	// Manager is running MaxConcurrency associations, the association is allowed
 21178  	// to run. During the next association interval, the new instance will process
 21179  	// its association within the limit specified for MaxConcurrency.
 21180  	MaxConcurrency *string `min:"1" type:"string"`
 21181  
 21182  	// The number of errors that are allowed before the system stops sending requests
 21183  	// to run the association on additional targets. You can specify either an absolute
 21184  	// number of errors, for example 10, or a percentage of the target set, for
 21185  	// example 10%. If you specify 3, for example, the system stops sending requests
 21186  	// when the fourth error is received. If you specify 0, then the system stops
 21187  	// sending requests after the first error is returned. If you run an association
 21188  	// on 50 instances and set MaxError to 10%, then the system stops sending the
 21189  	// request when the sixth error is received.
 21190  	//
 21191  	// Executions that are already running an association when MaxErrors is reached
 21192  	// are allowed to complete, but some of these executions may fail as well. If
 21193  	// you need to ensure that there won't be more than max-errors failed executions,
 21194  	// set MaxConcurrency to 1 so that executions proceed one at a time.
 21195  	MaxErrors *string `min:"1" type:"string"`
 21196  
 21197  	// The name of the SSM Command document or Automation runbook that contains
 21198  	// the configuration information for the instance.
 21199  	//
 21200  	// You can specify Amazon Web Services-predefined documents, documents you created,
 21201  	// or a document that is shared with you from another account.
 21202  	//
 21203  	// For Systems Manager documents (SSM documents) that are shared with you from
 21204  	// other Amazon Web Services accounts, you must specify the complete SSM document
 21205  	// ARN, in the following format:
 21206  	//
 21207  	// arn:partition:ssm:region:account-id:document/document-name
 21208  	//
 21209  	// For example:
 21210  	//
 21211  	// arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document
 21212  	//
 21213  	// For Amazon Web Services-predefined documents and SSM documents you created
 21214  	// in your account, you only need to specify the document name. For example,
 21215  	// AWS-ApplyPatchBaseline or My-Document.
 21216  	//
 21217  	// Name is a required field
 21218  	Name *string `type:"string" required:"true"`
 21219  
 21220  	// An Amazon Simple Storage Service (Amazon S3) bucket where you want to store
 21221  	// the output details of the request.
 21222  	OutputLocation *InstanceAssociationOutputLocation `type:"structure"`
 21223  
 21224  	// The parameters for the runtime configuration of the document.
 21225  	Parameters map[string][]*string `type:"map"`
 21226  
 21227  	// A cron expression when the association will be applied to the target(s).
 21228  	ScheduleExpression *string `min:"1" type:"string"`
 21229  
 21230  	// The mode for generating association compliance. You can specify AUTO or MANUAL.
 21231  	// In AUTO mode, the system uses the status of the association execution to
 21232  	// determine the compliance status. If the association execution runs successfully,
 21233  	// then the association is COMPLIANT. If the association execution doesn't run
 21234  	// successfully, the association is NON-COMPLIANT.
 21235  	//
 21236  	// In MANUAL mode, you must specify the AssociationId as a parameter for the
 21237  	// PutComplianceItems API operation. In this case, compliance data isn't managed
 21238  	// by State Manager. It is managed by your direct call to the PutComplianceItems
 21239  	// API operation.
 21240  	//
 21241  	// By default, all associations use AUTO mode.
 21242  	SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"`
 21243  
 21244  	// A location is a combination of Amazon Web Services Regions and Amazon Web
 21245  	// Services accounts where you want to run the association. Use this action
 21246  	// to create an association in multiple Regions and multiple accounts.
 21247  	TargetLocations []*TargetLocation `min:"1" type:"list"`
 21248  
 21249  	// The targets for the association. You can target instances by using tags,
 21250  	// Amazon Web Services resource groups, all instances in an Amazon Web Services
 21251  	// account, or individual instance IDs. You can target all instances in an Amazon
 21252  	// Web Services account by specifying the InstanceIds key with a value of *.
 21253  	// For more information about choosing targets for an association, see Using
 21254  	// targets and rate controls with State Manager associations (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-state-manager-targets-and-rate-controls.html)
 21255  	// in the Amazon Web Services Systems Manager User Guide.
 21256  	Targets []*Target `type:"list"`
 21257  }
 21258  
 21259  // String returns the string representation.
 21260  //
 21261  // API parameter values that are decorated as "sensitive" in the API will not
 21262  // be included in the string output. The member name will be present, but the
 21263  // value will be replaced with "sensitive".
 21264  func (s CreateAssociationInput) String() string {
 21265  	return awsutil.Prettify(s)
 21266  }
 21267  
 21268  // GoString returns the string representation.
 21269  //
 21270  // API parameter values that are decorated as "sensitive" in the API will not
 21271  // be included in the string output. The member name will be present, but the
 21272  // value will be replaced with "sensitive".
 21273  func (s CreateAssociationInput) GoString() string {
 21274  	return s.String()
 21275  }
 21276  
 21277  // Validate inspects the fields of the type to determine if they are valid.
 21278  func (s *CreateAssociationInput) Validate() error {
 21279  	invalidParams := request.ErrInvalidParams{Context: "CreateAssociationInput"}
 21280  	if s.AutomationTargetParameterName != nil && len(*s.AutomationTargetParameterName) < 1 {
 21281  		invalidParams.Add(request.NewErrParamMinLen("AutomationTargetParameterName", 1))
 21282  	}
 21283  	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
 21284  		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
 21285  	}
 21286  	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
 21287  		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
 21288  	}
 21289  	if s.Name == nil {
 21290  		invalidParams.Add(request.NewErrParamRequired("Name"))
 21291  	}
 21292  	if s.ScheduleExpression != nil && len(*s.ScheduleExpression) < 1 {
 21293  		invalidParams.Add(request.NewErrParamMinLen("ScheduleExpression", 1))
 21294  	}
 21295  	if s.TargetLocations != nil && len(s.TargetLocations) < 1 {
 21296  		invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1))
 21297  	}
 21298  	if s.OutputLocation != nil {
 21299  		if err := s.OutputLocation.Validate(); err != nil {
 21300  			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
 21301  		}
 21302  	}
 21303  	if s.TargetLocations != nil {
 21304  		for i, v := range s.TargetLocations {
 21305  			if v == nil {
 21306  				continue
 21307  			}
 21308  			if err := v.Validate(); err != nil {
 21309  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetLocations", i), err.(request.ErrInvalidParams))
 21310  			}
 21311  		}
 21312  	}
 21313  	if s.Targets != nil {
 21314  		for i, v := range s.Targets {
 21315  			if v == nil {
 21316  				continue
 21317  			}
 21318  			if err := v.Validate(); err != nil {
 21319  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 21320  			}
 21321  		}
 21322  	}
 21323  
 21324  	if invalidParams.Len() > 0 {
 21325  		return invalidParams
 21326  	}
 21327  	return nil
 21328  }
 21329  
 21330  // SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value.
 21331  func (s *CreateAssociationInput) SetApplyOnlyAtCronInterval(v bool) *CreateAssociationInput {
 21332  	s.ApplyOnlyAtCronInterval = &v
 21333  	return s
 21334  }
 21335  
 21336  // SetAssociationName sets the AssociationName field's value.
 21337  func (s *CreateAssociationInput) SetAssociationName(v string) *CreateAssociationInput {
 21338  	s.AssociationName = &v
 21339  	return s
 21340  }
 21341  
 21342  // SetAutomationTargetParameterName sets the AutomationTargetParameterName field's value.
 21343  func (s *CreateAssociationInput) SetAutomationTargetParameterName(v string) *CreateAssociationInput {
 21344  	s.AutomationTargetParameterName = &v
 21345  	return s
 21346  }
 21347  
 21348  // SetCalendarNames sets the CalendarNames field's value.
 21349  func (s *CreateAssociationInput) SetCalendarNames(v []*string) *CreateAssociationInput {
 21350  	s.CalendarNames = v
 21351  	return s
 21352  }
 21353  
 21354  // SetComplianceSeverity sets the ComplianceSeverity field's value.
 21355  func (s *CreateAssociationInput) SetComplianceSeverity(v string) *CreateAssociationInput {
 21356  	s.ComplianceSeverity = &v
 21357  	return s
 21358  }
 21359  
 21360  // SetDocumentVersion sets the DocumentVersion field's value.
 21361  func (s *CreateAssociationInput) SetDocumentVersion(v string) *CreateAssociationInput {
 21362  	s.DocumentVersion = &v
 21363  	return s
 21364  }
 21365  
 21366  // SetInstanceId sets the InstanceId field's value.
 21367  func (s *CreateAssociationInput) SetInstanceId(v string) *CreateAssociationInput {
 21368  	s.InstanceId = &v
 21369  	return s
 21370  }
 21371  
 21372  // SetMaxConcurrency sets the MaxConcurrency field's value.
 21373  func (s *CreateAssociationInput) SetMaxConcurrency(v string) *CreateAssociationInput {
 21374  	s.MaxConcurrency = &v
 21375  	return s
 21376  }
 21377  
 21378  // SetMaxErrors sets the MaxErrors field's value.
 21379  func (s *CreateAssociationInput) SetMaxErrors(v string) *CreateAssociationInput {
 21380  	s.MaxErrors = &v
 21381  	return s
 21382  }
 21383  
 21384  // SetName sets the Name field's value.
 21385  func (s *CreateAssociationInput) SetName(v string) *CreateAssociationInput {
 21386  	s.Name = &v
 21387  	return s
 21388  }
 21389  
 21390  // SetOutputLocation sets the OutputLocation field's value.
 21391  func (s *CreateAssociationInput) SetOutputLocation(v *InstanceAssociationOutputLocation) *CreateAssociationInput {
 21392  	s.OutputLocation = v
 21393  	return s
 21394  }
 21395  
 21396  // SetParameters sets the Parameters field's value.
 21397  func (s *CreateAssociationInput) SetParameters(v map[string][]*string) *CreateAssociationInput {
 21398  	s.Parameters = v
 21399  	return s
 21400  }
 21401  
 21402  // SetScheduleExpression sets the ScheduleExpression field's value.
 21403  func (s *CreateAssociationInput) SetScheduleExpression(v string) *CreateAssociationInput {
 21404  	s.ScheduleExpression = &v
 21405  	return s
 21406  }
 21407  
 21408  // SetSyncCompliance sets the SyncCompliance field's value.
 21409  func (s *CreateAssociationInput) SetSyncCompliance(v string) *CreateAssociationInput {
 21410  	s.SyncCompliance = &v
 21411  	return s
 21412  }
 21413  
 21414  // SetTargetLocations sets the TargetLocations field's value.
 21415  func (s *CreateAssociationInput) SetTargetLocations(v []*TargetLocation) *CreateAssociationInput {
 21416  	s.TargetLocations = v
 21417  	return s
 21418  }
 21419  
 21420  // SetTargets sets the Targets field's value.
 21421  func (s *CreateAssociationInput) SetTargets(v []*Target) *CreateAssociationInput {
 21422  	s.Targets = v
 21423  	return s
 21424  }
 21425  
 21426  type CreateAssociationOutput struct {
 21427  	_ struct{} `type:"structure"`
 21428  
 21429  	// Information about the association.
 21430  	AssociationDescription *AssociationDescription `type:"structure"`
 21431  }
 21432  
 21433  // String returns the string representation.
 21434  //
 21435  // API parameter values that are decorated as "sensitive" in the API will not
 21436  // be included in the string output. The member name will be present, but the
 21437  // value will be replaced with "sensitive".
 21438  func (s CreateAssociationOutput) String() string {
 21439  	return awsutil.Prettify(s)
 21440  }
 21441  
 21442  // GoString returns the string representation.
 21443  //
 21444  // API parameter values that are decorated as "sensitive" in the API will not
 21445  // be included in the string output. The member name will be present, but the
 21446  // value will be replaced with "sensitive".
 21447  func (s CreateAssociationOutput) GoString() string {
 21448  	return s.String()
 21449  }
 21450  
 21451  // SetAssociationDescription sets the AssociationDescription field's value.
 21452  func (s *CreateAssociationOutput) SetAssociationDescription(v *AssociationDescription) *CreateAssociationOutput {
 21453  	s.AssociationDescription = v
 21454  	return s
 21455  }
 21456  
 21457  type CreateDocumentInput struct {
 21458  	_ struct{} `type:"structure"`
 21459  
 21460  	// A list of key-value pairs that describe attachments to a version of a document.
 21461  	Attachments []*AttachmentsSource `type:"list"`
 21462  
 21463  	// The content for the new SSM document in JSON or YAML format. We recommend
 21464  	// storing the contents for your new document in an external JSON or YAML file
 21465  	// and referencing the file in a command.
 21466  	//
 21467  	// For examples, see the following topics in the Amazon Web Services Systems
 21468  	// Manager User Guide.
 21469  	//
 21470  	//    * Create an SSM document (Amazon Web Services API) (https://docs.aws.amazon.com/systems-manager/latest/userguide/create-ssm-document-api.html)
 21471  	//
 21472  	//    * Create an SSM document (Amazon Web Services CLI) (https://docs.aws.amazon.com/systems-manager/latest/userguide/create-ssm-document-cli.html)
 21473  	//
 21474  	//    * Create an SSM document (API) (https://docs.aws.amazon.com/systems-manager/latest/userguide/create-ssm-document-api.html)
 21475  	//
 21476  	// Content is a required field
 21477  	Content *string `min:"1" type:"string" required:"true"`
 21478  
 21479  	// An optional field where you can specify a friendly name for the SSM document.
 21480  	// This value can differ for each version of the document. You can update this
 21481  	// value at a later time using the UpdateDocument operation.
 21482  	DisplayName *string `type:"string"`
 21483  
 21484  	// Specify the document format for the request. The document format can be JSON,
 21485  	// YAML, or TEXT. JSON is the default format.
 21486  	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
 21487  
 21488  	// The type of document to create.
 21489  	DocumentType *string `type:"string" enum:"DocumentType"`
 21490  
 21491  	// A name for the SSM document.
 21492  	//
 21493  	// You can't use the following strings as document name prefixes. These are
 21494  	// reserved by Amazon Web Services for use as document name prefixes:
 21495  	//
 21496  	//    * aws-
 21497  	//
 21498  	//    * amazon
 21499  	//
 21500  	//    * amzn
 21501  	//
 21502  	// Name is a required field
 21503  	Name *string `type:"string" required:"true"`
 21504  
 21505  	// A list of SSM documents required by a document. This parameter is used exclusively
 21506  	// by AppConfig. When a user creates an AppConfig configuration in an SSM document,
 21507  	// the user must also specify a required document for validation purposes. In
 21508  	// this case, an ApplicationConfiguration document requires an ApplicationConfigurationSchema
 21509  	// document for validation purposes. For more information, see What is AppConfig?
 21510  	// (https://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html)
 21511  	// in the AppConfig User Guide.
 21512  	Requires []*DocumentRequires `min:"1" type:"list"`
 21513  
 21514  	// Optional metadata that you assign to a resource. Tags enable you to categorize
 21515  	// a resource in different ways, such as by purpose, owner, or environment.
 21516  	// For example, you might want to tag an SSM document to identify the types
 21517  	// of targets or the environment where it will run. In this case, you could
 21518  	// specify the following key-value pairs:
 21519  	//
 21520  	//    * Key=OS,Value=Windows
 21521  	//
 21522  	//    * Key=Environment,Value=Production
 21523  	//
 21524  	// To add tags to an existing SSM document, use the AddTagsToResource operation.
 21525  	Tags []*Tag `type:"list"`
 21526  
 21527  	// Specify a target type to define the kinds of resources the document can run
 21528  	// on. For example, to run a document on EC2 instances, specify the following
 21529  	// value: /AWS::EC2::Instance. If you specify a value of '/' the document can
 21530  	// run on all types of resources. If you don't specify a value, the document
 21531  	// can't run on any resources. For a list of valid resource types, see Amazon
 21532  	// Web Services resource and property types reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
 21533  	// in the CloudFormation User Guide.
 21534  	TargetType *string `type:"string"`
 21535  
 21536  	// An optional field specifying the version of the artifact you are creating
 21537  	// with the document. For example, "Release 12, Update 6". This value is unique
 21538  	// across all versions of a document, and can't be changed.
 21539  	VersionName *string `type:"string"`
 21540  }
 21541  
 21542  // String returns the string representation.
 21543  //
 21544  // API parameter values that are decorated as "sensitive" in the API will not
 21545  // be included in the string output. The member name will be present, but the
 21546  // value will be replaced with "sensitive".
 21547  func (s CreateDocumentInput) String() string {
 21548  	return awsutil.Prettify(s)
 21549  }
 21550  
 21551  // GoString returns the string representation.
 21552  //
 21553  // API parameter values that are decorated as "sensitive" in the API will not
 21554  // be included in the string output. The member name will be present, but the
 21555  // value will be replaced with "sensitive".
 21556  func (s CreateDocumentInput) GoString() string {
 21557  	return s.String()
 21558  }
 21559  
 21560  // Validate inspects the fields of the type to determine if they are valid.
 21561  func (s *CreateDocumentInput) Validate() error {
 21562  	invalidParams := request.ErrInvalidParams{Context: "CreateDocumentInput"}
 21563  	if s.Content == nil {
 21564  		invalidParams.Add(request.NewErrParamRequired("Content"))
 21565  	}
 21566  	if s.Content != nil && len(*s.Content) < 1 {
 21567  		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
 21568  	}
 21569  	if s.Name == nil {
 21570  		invalidParams.Add(request.NewErrParamRequired("Name"))
 21571  	}
 21572  	if s.Requires != nil && len(s.Requires) < 1 {
 21573  		invalidParams.Add(request.NewErrParamMinLen("Requires", 1))
 21574  	}
 21575  	if s.Attachments != nil {
 21576  		for i, v := range s.Attachments {
 21577  			if v == nil {
 21578  				continue
 21579  			}
 21580  			if err := v.Validate(); err != nil {
 21581  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attachments", i), err.(request.ErrInvalidParams))
 21582  			}
 21583  		}
 21584  	}
 21585  	if s.Requires != nil {
 21586  		for i, v := range s.Requires {
 21587  			if v == nil {
 21588  				continue
 21589  			}
 21590  			if err := v.Validate(); err != nil {
 21591  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Requires", i), err.(request.ErrInvalidParams))
 21592  			}
 21593  		}
 21594  	}
 21595  	if s.Tags != nil {
 21596  		for i, v := range s.Tags {
 21597  			if v == nil {
 21598  				continue
 21599  			}
 21600  			if err := v.Validate(); err != nil {
 21601  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 21602  			}
 21603  		}
 21604  	}
 21605  
 21606  	if invalidParams.Len() > 0 {
 21607  		return invalidParams
 21608  	}
 21609  	return nil
 21610  }
 21611  
 21612  // SetAttachments sets the Attachments field's value.
 21613  func (s *CreateDocumentInput) SetAttachments(v []*AttachmentsSource) *CreateDocumentInput {
 21614  	s.Attachments = v
 21615  	return s
 21616  }
 21617  
 21618  // SetContent sets the Content field's value.
 21619  func (s *CreateDocumentInput) SetContent(v string) *CreateDocumentInput {
 21620  	s.Content = &v
 21621  	return s
 21622  }
 21623  
 21624  // SetDisplayName sets the DisplayName field's value.
 21625  func (s *CreateDocumentInput) SetDisplayName(v string) *CreateDocumentInput {
 21626  	s.DisplayName = &v
 21627  	return s
 21628  }
 21629  
 21630  // SetDocumentFormat sets the DocumentFormat field's value.
 21631  func (s *CreateDocumentInput) SetDocumentFormat(v string) *CreateDocumentInput {
 21632  	s.DocumentFormat = &v
 21633  	return s
 21634  }
 21635  
 21636  // SetDocumentType sets the DocumentType field's value.
 21637  func (s *CreateDocumentInput) SetDocumentType(v string) *CreateDocumentInput {
 21638  	s.DocumentType = &v
 21639  	return s
 21640  }
 21641  
 21642  // SetName sets the Name field's value.
 21643  func (s *CreateDocumentInput) SetName(v string) *CreateDocumentInput {
 21644  	s.Name = &v
 21645  	return s
 21646  }
 21647  
 21648  // SetRequires sets the Requires field's value.
 21649  func (s *CreateDocumentInput) SetRequires(v []*DocumentRequires) *CreateDocumentInput {
 21650  	s.Requires = v
 21651  	return s
 21652  }
 21653  
 21654  // SetTags sets the Tags field's value.
 21655  func (s *CreateDocumentInput) SetTags(v []*Tag) *CreateDocumentInput {
 21656  	s.Tags = v
 21657  	return s
 21658  }
 21659  
 21660  // SetTargetType sets the TargetType field's value.
 21661  func (s *CreateDocumentInput) SetTargetType(v string) *CreateDocumentInput {
 21662  	s.TargetType = &v
 21663  	return s
 21664  }
 21665  
 21666  // SetVersionName sets the VersionName field's value.
 21667  func (s *CreateDocumentInput) SetVersionName(v string) *CreateDocumentInput {
 21668  	s.VersionName = &v
 21669  	return s
 21670  }
 21671  
 21672  type CreateDocumentOutput struct {
 21673  	_ struct{} `type:"structure"`
 21674  
 21675  	// Information about the SSM document.
 21676  	DocumentDescription *DocumentDescription `type:"structure"`
 21677  }
 21678  
 21679  // String returns the string representation.
 21680  //
 21681  // API parameter values that are decorated as "sensitive" in the API will not
 21682  // be included in the string output. The member name will be present, but the
 21683  // value will be replaced with "sensitive".
 21684  func (s CreateDocumentOutput) String() string {
 21685  	return awsutil.Prettify(s)
 21686  }
 21687  
 21688  // GoString returns the string representation.
 21689  //
 21690  // API parameter values that are decorated as "sensitive" in the API will not
 21691  // be included in the string output. The member name will be present, but the
 21692  // value will be replaced with "sensitive".
 21693  func (s CreateDocumentOutput) GoString() string {
 21694  	return s.String()
 21695  }
 21696  
 21697  // SetDocumentDescription sets the DocumentDescription field's value.
 21698  func (s *CreateDocumentOutput) SetDocumentDescription(v *DocumentDescription) *CreateDocumentOutput {
 21699  	s.DocumentDescription = v
 21700  	return s
 21701  }
 21702  
 21703  type CreateMaintenanceWindowInput struct {
 21704  	_ struct{} `type:"structure"`
 21705  
 21706  	// Enables a maintenance window task to run on managed instances, even if you
 21707  	// haven't registered those instances as targets. If enabled, then you must
 21708  	// specify the unregistered instances (by instance ID) when you register a task
 21709  	// with the maintenance window.
 21710  	//
 21711  	// If you don't enable this option, then you must specify previously-registered
 21712  	// targets when you register a task with the maintenance window.
 21713  	//
 21714  	// AllowUnassociatedTargets is a required field
 21715  	AllowUnassociatedTargets *bool `type:"boolean" required:"true"`
 21716  
 21717  	// User-provided idempotency token.
 21718  	ClientToken *string `min:"1" type:"string" idempotencyToken:"true"`
 21719  
 21720  	// The number of hours before the end of the maintenance window that Amazon
 21721  	// Web Services Systems Manager stops scheduling new tasks for execution.
 21722  	//
 21723  	// Cutoff is a required field
 21724  	Cutoff *int64 `type:"integer" required:"true"`
 21725  
 21726  	// An optional description for the maintenance window. We recommend specifying
 21727  	// a description to help you organize your maintenance windows.
 21728  	//
 21729  	// Description is a sensitive parameter and its value will be
 21730  	// replaced with "sensitive" in string returned by CreateMaintenanceWindowInput's
 21731  	// String and GoString methods.
 21732  	Description *string `min:"1" type:"string" sensitive:"true"`
 21733  
 21734  	// The duration of the maintenance window in hours.
 21735  	//
 21736  	// Duration is a required field
 21737  	Duration *int64 `min:"1" type:"integer" required:"true"`
 21738  
 21739  	// The date and time, in ISO-8601 Extended format, for when you want the maintenance
 21740  	// window to become inactive. EndDate allows you to set a date and time in the
 21741  	// future when the maintenance window will no longer run.
 21742  	EndDate *string `type:"string"`
 21743  
 21744  	// The name of the maintenance window.
 21745  	//
 21746  	// Name is a required field
 21747  	Name *string `min:"3" type:"string" required:"true"`
 21748  
 21749  	// The schedule of the maintenance window in the form of a cron or rate expression.
 21750  	//
 21751  	// Schedule is a required field
 21752  	Schedule *string `min:"1" type:"string" required:"true"`
 21753  
 21754  	// The number of days to wait after the date and time specified by a cron expression
 21755  	// before running the maintenance window.
 21756  	//
 21757  	// For example, the following cron expression schedules a maintenance window
 21758  	// to run on the third Tuesday of every month at 11:30 PM.
 21759  	//
 21760  	// cron(30 23 ? * TUE#3 *)
 21761  	//
 21762  	// If the schedule offset is 2, the maintenance window won't run until two days
 21763  	// later.
 21764  	ScheduleOffset *int64 `min:"1" type:"integer"`
 21765  
 21766  	// The time zone that the scheduled maintenance window executions are based
 21767  	// on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles",
 21768  	// "UTC", or "Asia/Seoul". For more information, see the Time Zone Database
 21769  	// (https://www.iana.org/time-zones) on the IANA website.
 21770  	ScheduleTimezone *string `type:"string"`
 21771  
 21772  	// The date and time, in ISO-8601 Extended format, for when you want the maintenance
 21773  	// window to become active. StartDate allows you to delay activation of the
 21774  	// maintenance window until the specified future date.
 21775  	StartDate *string `type:"string"`
 21776  
 21777  	// Optional metadata that you assign to a resource. Tags enable you to categorize
 21778  	// a resource in different ways, such as by purpose, owner, or environment.
 21779  	// For example, you might want to tag a maintenance window to identify the type
 21780  	// of tasks it will run, the types of targets, and the environment it will run
 21781  	// in. In this case, you could specify the following key-value pairs:
 21782  	//
 21783  	//    * Key=TaskType,Value=AgentUpdate
 21784  	//
 21785  	//    * Key=OS,Value=Windows
 21786  	//
 21787  	//    * Key=Environment,Value=Production
 21788  	//
 21789  	// To add tags to an existing maintenance window, use the AddTagsToResource
 21790  	// operation.
 21791  	Tags []*Tag `type:"list"`
 21792  }
 21793  
 21794  // String returns the string representation.
 21795  //
 21796  // API parameter values that are decorated as "sensitive" in the API will not
 21797  // be included in the string output. The member name will be present, but the
 21798  // value will be replaced with "sensitive".
 21799  func (s CreateMaintenanceWindowInput) String() string {
 21800  	return awsutil.Prettify(s)
 21801  }
 21802  
 21803  // GoString returns the string representation.
 21804  //
 21805  // API parameter values that are decorated as "sensitive" in the API will not
 21806  // be included in the string output. The member name will be present, but the
 21807  // value will be replaced with "sensitive".
 21808  func (s CreateMaintenanceWindowInput) GoString() string {
 21809  	return s.String()
 21810  }
 21811  
 21812  // Validate inspects the fields of the type to determine if they are valid.
 21813  func (s *CreateMaintenanceWindowInput) Validate() error {
 21814  	invalidParams := request.ErrInvalidParams{Context: "CreateMaintenanceWindowInput"}
 21815  	if s.AllowUnassociatedTargets == nil {
 21816  		invalidParams.Add(request.NewErrParamRequired("AllowUnassociatedTargets"))
 21817  	}
 21818  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 21819  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 21820  	}
 21821  	if s.Cutoff == nil {
 21822  		invalidParams.Add(request.NewErrParamRequired("Cutoff"))
 21823  	}
 21824  	if s.Description != nil && len(*s.Description) < 1 {
 21825  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 21826  	}
 21827  	if s.Duration == nil {
 21828  		invalidParams.Add(request.NewErrParamRequired("Duration"))
 21829  	}
 21830  	if s.Duration != nil && *s.Duration < 1 {
 21831  		invalidParams.Add(request.NewErrParamMinValue("Duration", 1))
 21832  	}
 21833  	if s.Name == nil {
 21834  		invalidParams.Add(request.NewErrParamRequired("Name"))
 21835  	}
 21836  	if s.Name != nil && len(*s.Name) < 3 {
 21837  		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
 21838  	}
 21839  	if s.Schedule == nil {
 21840  		invalidParams.Add(request.NewErrParamRequired("Schedule"))
 21841  	}
 21842  	if s.Schedule != nil && len(*s.Schedule) < 1 {
 21843  		invalidParams.Add(request.NewErrParamMinLen("Schedule", 1))
 21844  	}
 21845  	if s.ScheduleOffset != nil && *s.ScheduleOffset < 1 {
 21846  		invalidParams.Add(request.NewErrParamMinValue("ScheduleOffset", 1))
 21847  	}
 21848  	if s.Tags != nil {
 21849  		for i, v := range s.Tags {
 21850  			if v == nil {
 21851  				continue
 21852  			}
 21853  			if err := v.Validate(); err != nil {
 21854  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 21855  			}
 21856  		}
 21857  	}
 21858  
 21859  	if invalidParams.Len() > 0 {
 21860  		return invalidParams
 21861  	}
 21862  	return nil
 21863  }
 21864  
 21865  // SetAllowUnassociatedTargets sets the AllowUnassociatedTargets field's value.
 21866  func (s *CreateMaintenanceWindowInput) SetAllowUnassociatedTargets(v bool) *CreateMaintenanceWindowInput {
 21867  	s.AllowUnassociatedTargets = &v
 21868  	return s
 21869  }
 21870  
 21871  // SetClientToken sets the ClientToken field's value.
 21872  func (s *CreateMaintenanceWindowInput) SetClientToken(v string) *CreateMaintenanceWindowInput {
 21873  	s.ClientToken = &v
 21874  	return s
 21875  }
 21876  
 21877  // SetCutoff sets the Cutoff field's value.
 21878  func (s *CreateMaintenanceWindowInput) SetCutoff(v int64) *CreateMaintenanceWindowInput {
 21879  	s.Cutoff = &v
 21880  	return s
 21881  }
 21882  
 21883  // SetDescription sets the Description field's value.
 21884  func (s *CreateMaintenanceWindowInput) SetDescription(v string) *CreateMaintenanceWindowInput {
 21885  	s.Description = &v
 21886  	return s
 21887  }
 21888  
 21889  // SetDuration sets the Duration field's value.
 21890  func (s *CreateMaintenanceWindowInput) SetDuration(v int64) *CreateMaintenanceWindowInput {
 21891  	s.Duration = &v
 21892  	return s
 21893  }
 21894  
 21895  // SetEndDate sets the EndDate field's value.
 21896  func (s *CreateMaintenanceWindowInput) SetEndDate(v string) *CreateMaintenanceWindowInput {
 21897  	s.EndDate = &v
 21898  	return s
 21899  }
 21900  
 21901  // SetName sets the Name field's value.
 21902  func (s *CreateMaintenanceWindowInput) SetName(v string) *CreateMaintenanceWindowInput {
 21903  	s.Name = &v
 21904  	return s
 21905  }
 21906  
 21907  // SetSchedule sets the Schedule field's value.
 21908  func (s *CreateMaintenanceWindowInput) SetSchedule(v string) *CreateMaintenanceWindowInput {
 21909  	s.Schedule = &v
 21910  	return s
 21911  }
 21912  
 21913  // SetScheduleOffset sets the ScheduleOffset field's value.
 21914  func (s *CreateMaintenanceWindowInput) SetScheduleOffset(v int64) *CreateMaintenanceWindowInput {
 21915  	s.ScheduleOffset = &v
 21916  	return s
 21917  }
 21918  
 21919  // SetScheduleTimezone sets the ScheduleTimezone field's value.
 21920  func (s *CreateMaintenanceWindowInput) SetScheduleTimezone(v string) *CreateMaintenanceWindowInput {
 21921  	s.ScheduleTimezone = &v
 21922  	return s
 21923  }
 21924  
 21925  // SetStartDate sets the StartDate field's value.
 21926  func (s *CreateMaintenanceWindowInput) SetStartDate(v string) *CreateMaintenanceWindowInput {
 21927  	s.StartDate = &v
 21928  	return s
 21929  }
 21930  
 21931  // SetTags sets the Tags field's value.
 21932  func (s *CreateMaintenanceWindowInput) SetTags(v []*Tag) *CreateMaintenanceWindowInput {
 21933  	s.Tags = v
 21934  	return s
 21935  }
 21936  
 21937  type CreateMaintenanceWindowOutput struct {
 21938  	_ struct{} `type:"structure"`
 21939  
 21940  	// The ID of the created maintenance window.
 21941  	WindowId *string `min:"20" type:"string"`
 21942  }
 21943  
 21944  // String returns the string representation.
 21945  //
 21946  // API parameter values that are decorated as "sensitive" in the API will not
 21947  // be included in the string output. The member name will be present, but the
 21948  // value will be replaced with "sensitive".
 21949  func (s CreateMaintenanceWindowOutput) String() string {
 21950  	return awsutil.Prettify(s)
 21951  }
 21952  
 21953  // GoString returns the string representation.
 21954  //
 21955  // API parameter values that are decorated as "sensitive" in the API will not
 21956  // be included in the string output. The member name will be present, but the
 21957  // value will be replaced with "sensitive".
 21958  func (s CreateMaintenanceWindowOutput) GoString() string {
 21959  	return s.String()
 21960  }
 21961  
 21962  // SetWindowId sets the WindowId field's value.
 21963  func (s *CreateMaintenanceWindowOutput) SetWindowId(v string) *CreateMaintenanceWindowOutput {
 21964  	s.WindowId = &v
 21965  	return s
 21966  }
 21967  
 21968  type CreateOpsItemInput struct {
 21969  	_ struct{} `type:"structure"`
 21970  
 21971  	// The time a runbook workflow ended. Currently reported only for the OpsItem
 21972  	// type /aws/changerequest.
 21973  	ActualEndTime *time.Time `type:"timestamp"`
 21974  
 21975  	// The time a runbook workflow started. Currently reported only for the OpsItem
 21976  	// type /aws/changerequest.
 21977  	ActualStartTime *time.Time `type:"timestamp"`
 21978  
 21979  	// Specify a category to assign to an OpsItem.
 21980  	Category *string `min:"1" type:"string"`
 21981  
 21982  	// Information about the OpsItem.
 21983  	//
 21984  	// Description is a required field
 21985  	Description *string `min:"1" type:"string" required:"true"`
 21986  
 21987  	// The Amazon Resource Name (ARN) of an SNS topic where notifications are sent
 21988  	// when this OpsItem is edited or changed.
 21989  	Notifications []*OpsItemNotification `type:"list"`
 21990  
 21991  	// Operational data is custom data that provides useful reference details about
 21992  	// the OpsItem. For example, you can specify log files, error strings, license
 21993  	// keys, troubleshooting tips, or other relevant data. You enter operational
 21994  	// data as key-value pairs. The key has a maximum length of 128 characters.
 21995  	// The value has a maximum size of 20 KB.
 21996  	//
 21997  	// Operational data keys can't begin with the following: amazon, aws, amzn,
 21998  	// ssm, /amazon, /aws, /amzn, /ssm.
 21999  	//
 22000  	// You can choose to make the data searchable by other users in the account
 22001  	// or you can restrict search access. Searchable data means that all users with
 22002  	// access to the OpsItem Overview page (as provided by the DescribeOpsItems
 22003  	// API operation) can view and search on the specified data. Operational data
 22004  	// that isn't searchable is only viewable by users who have access to the OpsItem
 22005  	// (as provided by the GetOpsItem API operation).
 22006  	//
 22007  	// Use the /aws/resources key in OperationalData to specify a related resource
 22008  	// in the request. Use the /aws/automations key in OperationalData to associate
 22009  	// an Automation runbook with the OpsItem. To view Amazon Web Services CLI example
 22010  	// commands that use these keys, see Creating OpsItems manually (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-creating-OpsItems.html#OpsCenter-manually-create-OpsItems)
 22011  	// in the Amazon Web Services Systems Manager User Guide.
 22012  	OperationalData map[string]*OpsItemDataValue `type:"map"`
 22013  
 22014  	// The type of OpsItem to create. Currently, the only valid values are /aws/changerequest
 22015  	// and /aws/issue.
 22016  	OpsItemType *string `type:"string"`
 22017  
 22018  	// The time specified in a change request for a runbook workflow to end. Currently
 22019  	// supported only for the OpsItem type /aws/changerequest.
 22020  	PlannedEndTime *time.Time `type:"timestamp"`
 22021  
 22022  	// The time specified in a change request for a runbook workflow to start. Currently
 22023  	// supported only for the OpsItem type /aws/changerequest.
 22024  	PlannedStartTime *time.Time `type:"timestamp"`
 22025  
 22026  	// The importance of this OpsItem in relation to other OpsItems in the system.
 22027  	Priority *int64 `min:"1" type:"integer"`
 22028  
 22029  	// One or more OpsItems that share something in common with the current OpsItems.
 22030  	// For example, related OpsItems can include OpsItems with similar error messages,
 22031  	// impacted resources, or statuses for the impacted resource.
 22032  	RelatedOpsItems []*RelatedOpsItem `type:"list"`
 22033  
 22034  	// Specify a severity to assign to an OpsItem.
 22035  	Severity *string `min:"1" type:"string"`
 22036  
 22037  	// The origin of the OpsItem, such as Amazon EC2 or Systems Manager.
 22038  	//
 22039  	// The source name can't contain the following strings: aws, amazon, and amzn.
 22040  	//
 22041  	// Source is a required field
 22042  	Source *string `min:"1" type:"string" required:"true"`
 22043  
 22044  	// Optional metadata that you assign to a resource. You can restrict access
 22045  	// to OpsItems by using an inline IAM policy that specifies tags. For more information,
 22046  	// see Getting started with OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-getting-started.html#OpsCenter-getting-started-user-permissions)
 22047  	// in the Amazon Web Services Systems Manager User Guide.
 22048  	//
 22049  	// Tags use a key-value pair. For example:
 22050  	//
 22051  	// Key=Department,Value=Finance
 22052  	//
 22053  	// To add tags to a new OpsItem, a user must have IAM permissions for both the
 22054  	// ssm:CreateOpsItems operation and the ssm:AddTagsToResource operation. To
 22055  	// add tags to an existing OpsItem, use the AddTagsToResource operation.
 22056  	Tags []*Tag `type:"list"`
 22057  
 22058  	// A short heading that describes the nature of the OpsItem and the impacted
 22059  	// resource.
 22060  	//
 22061  	// Title is a required field
 22062  	Title *string `min:"1" type:"string" required:"true"`
 22063  }
 22064  
 22065  // String returns the string representation.
 22066  //
 22067  // API parameter values that are decorated as "sensitive" in the API will not
 22068  // be included in the string output. The member name will be present, but the
 22069  // value will be replaced with "sensitive".
 22070  func (s CreateOpsItemInput) String() string {
 22071  	return awsutil.Prettify(s)
 22072  }
 22073  
 22074  // GoString returns the string representation.
 22075  //
 22076  // API parameter values that are decorated as "sensitive" in the API will not
 22077  // be included in the string output. The member name will be present, but the
 22078  // value will be replaced with "sensitive".
 22079  func (s CreateOpsItemInput) GoString() string {
 22080  	return s.String()
 22081  }
 22082  
 22083  // Validate inspects the fields of the type to determine if they are valid.
 22084  func (s *CreateOpsItemInput) Validate() error {
 22085  	invalidParams := request.ErrInvalidParams{Context: "CreateOpsItemInput"}
 22086  	if s.Category != nil && len(*s.Category) < 1 {
 22087  		invalidParams.Add(request.NewErrParamMinLen("Category", 1))
 22088  	}
 22089  	if s.Description == nil {
 22090  		invalidParams.Add(request.NewErrParamRequired("Description"))
 22091  	}
 22092  	if s.Description != nil && len(*s.Description) < 1 {
 22093  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 22094  	}
 22095  	if s.Priority != nil && *s.Priority < 1 {
 22096  		invalidParams.Add(request.NewErrParamMinValue("Priority", 1))
 22097  	}
 22098  	if s.Severity != nil && len(*s.Severity) < 1 {
 22099  		invalidParams.Add(request.NewErrParamMinLen("Severity", 1))
 22100  	}
 22101  	if s.Source == nil {
 22102  		invalidParams.Add(request.NewErrParamRequired("Source"))
 22103  	}
 22104  	if s.Source != nil && len(*s.Source) < 1 {
 22105  		invalidParams.Add(request.NewErrParamMinLen("Source", 1))
 22106  	}
 22107  	if s.Title == nil {
 22108  		invalidParams.Add(request.NewErrParamRequired("Title"))
 22109  	}
 22110  	if s.Title != nil && len(*s.Title) < 1 {
 22111  		invalidParams.Add(request.NewErrParamMinLen("Title", 1))
 22112  	}
 22113  	if s.RelatedOpsItems != nil {
 22114  		for i, v := range s.RelatedOpsItems {
 22115  			if v == nil {
 22116  				continue
 22117  			}
 22118  			if err := v.Validate(); err != nil {
 22119  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RelatedOpsItems", i), err.(request.ErrInvalidParams))
 22120  			}
 22121  		}
 22122  	}
 22123  	if s.Tags != nil {
 22124  		for i, v := range s.Tags {
 22125  			if v == nil {
 22126  				continue
 22127  			}
 22128  			if err := v.Validate(); err != nil {
 22129  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 22130  			}
 22131  		}
 22132  	}
 22133  
 22134  	if invalidParams.Len() > 0 {
 22135  		return invalidParams
 22136  	}
 22137  	return nil
 22138  }
 22139  
 22140  // SetActualEndTime sets the ActualEndTime field's value.
 22141  func (s *CreateOpsItemInput) SetActualEndTime(v time.Time) *CreateOpsItemInput {
 22142  	s.ActualEndTime = &v
 22143  	return s
 22144  }
 22145  
 22146  // SetActualStartTime sets the ActualStartTime field's value.
 22147  func (s *CreateOpsItemInput) SetActualStartTime(v time.Time) *CreateOpsItemInput {
 22148  	s.ActualStartTime = &v
 22149  	return s
 22150  }
 22151  
 22152  // SetCategory sets the Category field's value.
 22153  func (s *CreateOpsItemInput) SetCategory(v string) *CreateOpsItemInput {
 22154  	s.Category = &v
 22155  	return s
 22156  }
 22157  
 22158  // SetDescription sets the Description field's value.
 22159  func (s *CreateOpsItemInput) SetDescription(v string) *CreateOpsItemInput {
 22160  	s.Description = &v
 22161  	return s
 22162  }
 22163  
 22164  // SetNotifications sets the Notifications field's value.
 22165  func (s *CreateOpsItemInput) SetNotifications(v []*OpsItemNotification) *CreateOpsItemInput {
 22166  	s.Notifications = v
 22167  	return s
 22168  }
 22169  
 22170  // SetOperationalData sets the OperationalData field's value.
 22171  func (s *CreateOpsItemInput) SetOperationalData(v map[string]*OpsItemDataValue) *CreateOpsItemInput {
 22172  	s.OperationalData = v
 22173  	return s
 22174  }
 22175  
 22176  // SetOpsItemType sets the OpsItemType field's value.
 22177  func (s *CreateOpsItemInput) SetOpsItemType(v string) *CreateOpsItemInput {
 22178  	s.OpsItemType = &v
 22179  	return s
 22180  }
 22181  
 22182  // SetPlannedEndTime sets the PlannedEndTime field's value.
 22183  func (s *CreateOpsItemInput) SetPlannedEndTime(v time.Time) *CreateOpsItemInput {
 22184  	s.PlannedEndTime = &v
 22185  	return s
 22186  }
 22187  
 22188  // SetPlannedStartTime sets the PlannedStartTime field's value.
 22189  func (s *CreateOpsItemInput) SetPlannedStartTime(v time.Time) *CreateOpsItemInput {
 22190  	s.PlannedStartTime = &v
 22191  	return s
 22192  }
 22193  
 22194  // SetPriority sets the Priority field's value.
 22195  func (s *CreateOpsItemInput) SetPriority(v int64) *CreateOpsItemInput {
 22196  	s.Priority = &v
 22197  	return s
 22198  }
 22199  
 22200  // SetRelatedOpsItems sets the RelatedOpsItems field's value.
 22201  func (s *CreateOpsItemInput) SetRelatedOpsItems(v []*RelatedOpsItem) *CreateOpsItemInput {
 22202  	s.RelatedOpsItems = v
 22203  	return s
 22204  }
 22205  
 22206  // SetSeverity sets the Severity field's value.
 22207  func (s *CreateOpsItemInput) SetSeverity(v string) *CreateOpsItemInput {
 22208  	s.Severity = &v
 22209  	return s
 22210  }
 22211  
 22212  // SetSource sets the Source field's value.
 22213  func (s *CreateOpsItemInput) SetSource(v string) *CreateOpsItemInput {
 22214  	s.Source = &v
 22215  	return s
 22216  }
 22217  
 22218  // SetTags sets the Tags field's value.
 22219  func (s *CreateOpsItemInput) SetTags(v []*Tag) *CreateOpsItemInput {
 22220  	s.Tags = v
 22221  	return s
 22222  }
 22223  
 22224  // SetTitle sets the Title field's value.
 22225  func (s *CreateOpsItemInput) SetTitle(v string) *CreateOpsItemInput {
 22226  	s.Title = &v
 22227  	return s
 22228  }
 22229  
 22230  type CreateOpsItemOutput struct {
 22231  	_ struct{} `type:"structure"`
 22232  
 22233  	// The ID of the OpsItem.
 22234  	OpsItemId *string `type:"string"`
 22235  }
 22236  
 22237  // String returns the string representation.
 22238  //
 22239  // API parameter values that are decorated as "sensitive" in the API will not
 22240  // be included in the string output. The member name will be present, but the
 22241  // value will be replaced with "sensitive".
 22242  func (s CreateOpsItemOutput) String() string {
 22243  	return awsutil.Prettify(s)
 22244  }
 22245  
 22246  // GoString returns the string representation.
 22247  //
 22248  // API parameter values that are decorated as "sensitive" in the API will not
 22249  // be included in the string output. The member name will be present, but the
 22250  // value will be replaced with "sensitive".
 22251  func (s CreateOpsItemOutput) GoString() string {
 22252  	return s.String()
 22253  }
 22254  
 22255  // SetOpsItemId sets the OpsItemId field's value.
 22256  func (s *CreateOpsItemOutput) SetOpsItemId(v string) *CreateOpsItemOutput {
 22257  	s.OpsItemId = &v
 22258  	return s
 22259  }
 22260  
 22261  type CreateOpsMetadataInput struct {
 22262  	_ struct{} `type:"structure"`
 22263  
 22264  	// Metadata for a new Application Manager application.
 22265  	Metadata map[string]*MetadataValue `min:"1" type:"map"`
 22266  
 22267  	// A resource ID for a new Application Manager application.
 22268  	//
 22269  	// ResourceId is a required field
 22270  	ResourceId *string `min:"1" type:"string" required:"true"`
 22271  
 22272  	// Optional metadata that you assign to a resource. You can specify a maximum
 22273  	// of five tags for an OpsMetadata object. Tags enable you to categorize a resource
 22274  	// in different ways, such as by purpose, owner, or environment. For example,
 22275  	// you might want to tag an OpsMetadata object to identify an environment or
 22276  	// target Amazon Web Services Region. In this case, you could specify the following
 22277  	// key-value pairs:
 22278  	//
 22279  	//    * Key=Environment,Value=Production
 22280  	//
 22281  	//    * Key=Region,Value=us-east-2
 22282  	Tags []*Tag `type:"list"`
 22283  }
 22284  
 22285  // String returns the string representation.
 22286  //
 22287  // API parameter values that are decorated as "sensitive" in the API will not
 22288  // be included in the string output. The member name will be present, but the
 22289  // value will be replaced with "sensitive".
 22290  func (s CreateOpsMetadataInput) String() string {
 22291  	return awsutil.Prettify(s)
 22292  }
 22293  
 22294  // GoString returns the string representation.
 22295  //
 22296  // API parameter values that are decorated as "sensitive" in the API will not
 22297  // be included in the string output. The member name will be present, but the
 22298  // value will be replaced with "sensitive".
 22299  func (s CreateOpsMetadataInput) GoString() string {
 22300  	return s.String()
 22301  }
 22302  
 22303  // Validate inspects the fields of the type to determine if they are valid.
 22304  func (s *CreateOpsMetadataInput) Validate() error {
 22305  	invalidParams := request.ErrInvalidParams{Context: "CreateOpsMetadataInput"}
 22306  	if s.Metadata != nil && len(s.Metadata) < 1 {
 22307  		invalidParams.Add(request.NewErrParamMinLen("Metadata", 1))
 22308  	}
 22309  	if s.ResourceId == nil {
 22310  		invalidParams.Add(request.NewErrParamRequired("ResourceId"))
 22311  	}
 22312  	if s.ResourceId != nil && len(*s.ResourceId) < 1 {
 22313  		invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1))
 22314  	}
 22315  	if s.Metadata != nil {
 22316  		for i, v := range s.Metadata {
 22317  			if v == nil {
 22318  				continue
 22319  			}
 22320  			if err := v.Validate(); err != nil {
 22321  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metadata", i), err.(request.ErrInvalidParams))
 22322  			}
 22323  		}
 22324  	}
 22325  	if s.Tags != nil {
 22326  		for i, v := range s.Tags {
 22327  			if v == nil {
 22328  				continue
 22329  			}
 22330  			if err := v.Validate(); err != nil {
 22331  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 22332  			}
 22333  		}
 22334  	}
 22335  
 22336  	if invalidParams.Len() > 0 {
 22337  		return invalidParams
 22338  	}
 22339  	return nil
 22340  }
 22341  
 22342  // SetMetadata sets the Metadata field's value.
 22343  func (s *CreateOpsMetadataInput) SetMetadata(v map[string]*MetadataValue) *CreateOpsMetadataInput {
 22344  	s.Metadata = v
 22345  	return s
 22346  }
 22347  
 22348  // SetResourceId sets the ResourceId field's value.
 22349  func (s *CreateOpsMetadataInput) SetResourceId(v string) *CreateOpsMetadataInput {
 22350  	s.ResourceId = &v
 22351  	return s
 22352  }
 22353  
 22354  // SetTags sets the Tags field's value.
 22355  func (s *CreateOpsMetadataInput) SetTags(v []*Tag) *CreateOpsMetadataInput {
 22356  	s.Tags = v
 22357  	return s
 22358  }
 22359  
 22360  type CreateOpsMetadataOutput struct {
 22361  	_ struct{} `type:"structure"`
 22362  
 22363  	// The Amazon Resource Name (ARN) of the OpsMetadata Object or blob created
 22364  	// by the call.
 22365  	OpsMetadataArn *string `min:"1" type:"string"`
 22366  }
 22367  
 22368  // String returns the string representation.
 22369  //
 22370  // API parameter values that are decorated as "sensitive" in the API will not
 22371  // be included in the string output. The member name will be present, but the
 22372  // value will be replaced with "sensitive".
 22373  func (s CreateOpsMetadataOutput) String() string {
 22374  	return awsutil.Prettify(s)
 22375  }
 22376  
 22377  // GoString returns the string representation.
 22378  //
 22379  // API parameter values that are decorated as "sensitive" in the API will not
 22380  // be included in the string output. The member name will be present, but the
 22381  // value will be replaced with "sensitive".
 22382  func (s CreateOpsMetadataOutput) GoString() string {
 22383  	return s.String()
 22384  }
 22385  
 22386  // SetOpsMetadataArn sets the OpsMetadataArn field's value.
 22387  func (s *CreateOpsMetadataOutput) SetOpsMetadataArn(v string) *CreateOpsMetadataOutput {
 22388  	s.OpsMetadataArn = &v
 22389  	return s
 22390  }
 22391  
 22392  type CreatePatchBaselineInput struct {
 22393  	_ struct{} `type:"structure"`
 22394  
 22395  	// A set of rules used to include patches in the baseline.
 22396  	ApprovalRules *PatchRuleGroup `type:"structure"`
 22397  
 22398  	// A list of explicitly approved patches for the baseline.
 22399  	//
 22400  	// For information about accepted formats for lists of approved patches and
 22401  	// rejected patches, see About package name formats for approved and rejected
 22402  	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
 22403  	// in the Amazon Web Services Systems Manager User Guide.
 22404  	ApprovedPatches []*string `type:"list"`
 22405  
 22406  	// Defines the compliance level for approved patches. When an approved patch
 22407  	// is reported as missing, this value describes the severity of the compliance
 22408  	// violation. The default value is UNSPECIFIED.
 22409  	ApprovedPatchesComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
 22410  
 22411  	// Indicates whether the list of approved patches includes non-security updates
 22412  	// that should be applied to the instances. The default value is false. Applies
 22413  	// to Linux instances only.
 22414  	ApprovedPatchesEnableNonSecurity *bool `type:"boolean"`
 22415  
 22416  	// User-provided idempotency token.
 22417  	ClientToken *string `min:"1" type:"string" idempotencyToken:"true"`
 22418  
 22419  	// A description of the patch baseline.
 22420  	Description *string `min:"1" type:"string"`
 22421  
 22422  	// A set of global filters used to include patches in the baseline.
 22423  	GlobalFilters *PatchFilterGroup `type:"structure"`
 22424  
 22425  	// The name of the patch baseline.
 22426  	//
 22427  	// Name is a required field
 22428  	Name *string `min:"3" type:"string" required:"true"`
 22429  
 22430  	// Defines the operating system the patch baseline applies to. The default value
 22431  	// is WINDOWS.
 22432  	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
 22433  
 22434  	// A list of explicitly rejected patches for the baseline.
 22435  	//
 22436  	// For information about accepted formats for lists of approved patches and
 22437  	// rejected patches, see About package name formats for approved and rejected
 22438  	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
 22439  	// in the Amazon Web Services Systems Manager User Guide.
 22440  	RejectedPatches []*string `type:"list"`
 22441  
 22442  	// The action for Patch Manager to take on patches included in the RejectedPackages
 22443  	// list.
 22444  	//
 22445  	//    * ALLOW_AS_DEPENDENCY : A package in the Rejected patches list is installed
 22446  	//    only if it is a dependency of another package. It is considered compliant
 22447  	//    with the patch baseline, and its status is reported as InstalledOther.
 22448  	//    This is the default action if no option is specified.
 22449  	//
 22450  	//    * BLOCK : Packages in the RejectedPatches list, and packages that include
 22451  	//    them as dependencies, aren't installed under any circumstances. If a package
 22452  	//    was installed before it was added to the Rejected patches list, it is
 22453  	//    considered non-compliant with the patch baseline, and its status is reported
 22454  	//    as InstalledRejected.
 22455  	RejectedPatchesAction *string `type:"string" enum:"PatchAction"`
 22456  
 22457  	// Information about the patches to use to update the instances, including target
 22458  	// operating systems and source repositories. Applies to Linux instances only.
 22459  	Sources []*PatchSource `type:"list"`
 22460  
 22461  	// Optional metadata that you assign to a resource. Tags enable you to categorize
 22462  	// a resource in different ways, such as by purpose, owner, or environment.
 22463  	// For example, you might want to tag a patch baseline to identify the severity
 22464  	// level of patches it specifies and the operating system family it applies
 22465  	// to. In this case, you could specify the following key-value pairs:
 22466  	//
 22467  	//    * Key=PatchSeverity,Value=Critical
 22468  	//
 22469  	//    * Key=OS,Value=Windows
 22470  	//
 22471  	// To add tags to an existing patch baseline, use the AddTagsToResource operation.
 22472  	Tags []*Tag `type:"list"`
 22473  }
 22474  
 22475  // String returns the string representation.
 22476  //
 22477  // API parameter values that are decorated as "sensitive" in the API will not
 22478  // be included in the string output. The member name will be present, but the
 22479  // value will be replaced with "sensitive".
 22480  func (s CreatePatchBaselineInput) String() string {
 22481  	return awsutil.Prettify(s)
 22482  }
 22483  
 22484  // GoString returns the string representation.
 22485  //
 22486  // API parameter values that are decorated as "sensitive" in the API will not
 22487  // be included in the string output. The member name will be present, but the
 22488  // value will be replaced with "sensitive".
 22489  func (s CreatePatchBaselineInput) GoString() string {
 22490  	return s.String()
 22491  }
 22492  
 22493  // Validate inspects the fields of the type to determine if they are valid.
 22494  func (s *CreatePatchBaselineInput) Validate() error {
 22495  	invalidParams := request.ErrInvalidParams{Context: "CreatePatchBaselineInput"}
 22496  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 22497  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 22498  	}
 22499  	if s.Description != nil && len(*s.Description) < 1 {
 22500  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 22501  	}
 22502  	if s.Name == nil {
 22503  		invalidParams.Add(request.NewErrParamRequired("Name"))
 22504  	}
 22505  	if s.Name != nil && len(*s.Name) < 3 {
 22506  		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
 22507  	}
 22508  	if s.ApprovalRules != nil {
 22509  		if err := s.ApprovalRules.Validate(); err != nil {
 22510  			invalidParams.AddNested("ApprovalRules", err.(request.ErrInvalidParams))
 22511  		}
 22512  	}
 22513  	if s.GlobalFilters != nil {
 22514  		if err := s.GlobalFilters.Validate(); err != nil {
 22515  			invalidParams.AddNested("GlobalFilters", err.(request.ErrInvalidParams))
 22516  		}
 22517  	}
 22518  	if s.Sources != nil {
 22519  		for i, v := range s.Sources {
 22520  			if v == nil {
 22521  				continue
 22522  			}
 22523  			if err := v.Validate(); err != nil {
 22524  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
 22525  			}
 22526  		}
 22527  	}
 22528  	if s.Tags != nil {
 22529  		for i, v := range s.Tags {
 22530  			if v == nil {
 22531  				continue
 22532  			}
 22533  			if err := v.Validate(); err != nil {
 22534  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 22535  			}
 22536  		}
 22537  	}
 22538  
 22539  	if invalidParams.Len() > 0 {
 22540  		return invalidParams
 22541  	}
 22542  	return nil
 22543  }
 22544  
 22545  // SetApprovalRules sets the ApprovalRules field's value.
 22546  func (s *CreatePatchBaselineInput) SetApprovalRules(v *PatchRuleGroup) *CreatePatchBaselineInput {
 22547  	s.ApprovalRules = v
 22548  	return s
 22549  }
 22550  
 22551  // SetApprovedPatches sets the ApprovedPatches field's value.
 22552  func (s *CreatePatchBaselineInput) SetApprovedPatches(v []*string) *CreatePatchBaselineInput {
 22553  	s.ApprovedPatches = v
 22554  	return s
 22555  }
 22556  
 22557  // SetApprovedPatchesComplianceLevel sets the ApprovedPatchesComplianceLevel field's value.
 22558  func (s *CreatePatchBaselineInput) SetApprovedPatchesComplianceLevel(v string) *CreatePatchBaselineInput {
 22559  	s.ApprovedPatchesComplianceLevel = &v
 22560  	return s
 22561  }
 22562  
 22563  // SetApprovedPatchesEnableNonSecurity sets the ApprovedPatchesEnableNonSecurity field's value.
 22564  func (s *CreatePatchBaselineInput) SetApprovedPatchesEnableNonSecurity(v bool) *CreatePatchBaselineInput {
 22565  	s.ApprovedPatchesEnableNonSecurity = &v
 22566  	return s
 22567  }
 22568  
 22569  // SetClientToken sets the ClientToken field's value.
 22570  func (s *CreatePatchBaselineInput) SetClientToken(v string) *CreatePatchBaselineInput {
 22571  	s.ClientToken = &v
 22572  	return s
 22573  }
 22574  
 22575  // SetDescription sets the Description field's value.
 22576  func (s *CreatePatchBaselineInput) SetDescription(v string) *CreatePatchBaselineInput {
 22577  	s.Description = &v
 22578  	return s
 22579  }
 22580  
 22581  // SetGlobalFilters sets the GlobalFilters field's value.
 22582  func (s *CreatePatchBaselineInput) SetGlobalFilters(v *PatchFilterGroup) *CreatePatchBaselineInput {
 22583  	s.GlobalFilters = v
 22584  	return s
 22585  }
 22586  
 22587  // SetName sets the Name field's value.
 22588  func (s *CreatePatchBaselineInput) SetName(v string) *CreatePatchBaselineInput {
 22589  	s.Name = &v
 22590  	return s
 22591  }
 22592  
 22593  // SetOperatingSystem sets the OperatingSystem field's value.
 22594  func (s *CreatePatchBaselineInput) SetOperatingSystem(v string) *CreatePatchBaselineInput {
 22595  	s.OperatingSystem = &v
 22596  	return s
 22597  }
 22598  
 22599  // SetRejectedPatches sets the RejectedPatches field's value.
 22600  func (s *CreatePatchBaselineInput) SetRejectedPatches(v []*string) *CreatePatchBaselineInput {
 22601  	s.RejectedPatches = v
 22602  	return s
 22603  }
 22604  
 22605  // SetRejectedPatchesAction sets the RejectedPatchesAction field's value.
 22606  func (s *CreatePatchBaselineInput) SetRejectedPatchesAction(v string) *CreatePatchBaselineInput {
 22607  	s.RejectedPatchesAction = &v
 22608  	return s
 22609  }
 22610  
 22611  // SetSources sets the Sources field's value.
 22612  func (s *CreatePatchBaselineInput) SetSources(v []*PatchSource) *CreatePatchBaselineInput {
 22613  	s.Sources = v
 22614  	return s
 22615  }
 22616  
 22617  // SetTags sets the Tags field's value.
 22618  func (s *CreatePatchBaselineInput) SetTags(v []*Tag) *CreatePatchBaselineInput {
 22619  	s.Tags = v
 22620  	return s
 22621  }
 22622  
 22623  type CreatePatchBaselineOutput struct {
 22624  	_ struct{} `type:"structure"`
 22625  
 22626  	// The ID of the created patch baseline.
 22627  	BaselineId *string `min:"20" type:"string"`
 22628  }
 22629  
 22630  // String returns the string representation.
 22631  //
 22632  // API parameter values that are decorated as "sensitive" in the API will not
 22633  // be included in the string output. The member name will be present, but the
 22634  // value will be replaced with "sensitive".
 22635  func (s CreatePatchBaselineOutput) String() string {
 22636  	return awsutil.Prettify(s)
 22637  }
 22638  
 22639  // GoString returns the string representation.
 22640  //
 22641  // API parameter values that are decorated as "sensitive" in the API will not
 22642  // be included in the string output. The member name will be present, but the
 22643  // value will be replaced with "sensitive".
 22644  func (s CreatePatchBaselineOutput) GoString() string {
 22645  	return s.String()
 22646  }
 22647  
 22648  // SetBaselineId sets the BaselineId field's value.
 22649  func (s *CreatePatchBaselineOutput) SetBaselineId(v string) *CreatePatchBaselineOutput {
 22650  	s.BaselineId = &v
 22651  	return s
 22652  }
 22653  
 22654  type CreateResourceDataSyncInput struct {
 22655  	_ struct{} `type:"structure"`
 22656  
 22657  	// Amazon S3 configuration details for the sync. This parameter is required
 22658  	// if the SyncType value is SyncToDestination.
 22659  	S3Destination *ResourceDataSyncS3Destination `type:"structure"`
 22660  
 22661  	// A name for the configuration.
 22662  	//
 22663  	// SyncName is a required field
 22664  	SyncName *string `min:"1" type:"string" required:"true"`
 22665  
 22666  	// Specify information about the data sources to synchronize. This parameter
 22667  	// is required if the SyncType value is SyncFromSource.
 22668  	SyncSource *ResourceDataSyncSource `type:"structure"`
 22669  
 22670  	// Specify SyncToDestination to create a resource data sync that synchronizes
 22671  	// data to an S3 bucket for Inventory. If you specify SyncToDestination, you
 22672  	// must provide a value for S3Destination. Specify SyncFromSource to synchronize
 22673  	// data from a single account and multiple Regions, or multiple Amazon Web Services
 22674  	// accounts and Amazon Web Services Regions, as listed in Organizations for
 22675  	// Explorer. If you specify SyncFromSource, you must provide a value for SyncSource.
 22676  	// The default value is SyncToDestination.
 22677  	SyncType *string `min:"1" type:"string"`
 22678  }
 22679  
 22680  // String returns the string representation.
 22681  //
 22682  // API parameter values that are decorated as "sensitive" in the API will not
 22683  // be included in the string output. The member name will be present, but the
 22684  // value will be replaced with "sensitive".
 22685  func (s CreateResourceDataSyncInput) String() string {
 22686  	return awsutil.Prettify(s)
 22687  }
 22688  
 22689  // GoString returns the string representation.
 22690  //
 22691  // API parameter values that are decorated as "sensitive" in the API will not
 22692  // be included in the string output. The member name will be present, but the
 22693  // value will be replaced with "sensitive".
 22694  func (s CreateResourceDataSyncInput) GoString() string {
 22695  	return s.String()
 22696  }
 22697  
 22698  // Validate inspects the fields of the type to determine if they are valid.
 22699  func (s *CreateResourceDataSyncInput) Validate() error {
 22700  	invalidParams := request.ErrInvalidParams{Context: "CreateResourceDataSyncInput"}
 22701  	if s.SyncName == nil {
 22702  		invalidParams.Add(request.NewErrParamRequired("SyncName"))
 22703  	}
 22704  	if s.SyncName != nil && len(*s.SyncName) < 1 {
 22705  		invalidParams.Add(request.NewErrParamMinLen("SyncName", 1))
 22706  	}
 22707  	if s.SyncType != nil && len(*s.SyncType) < 1 {
 22708  		invalidParams.Add(request.NewErrParamMinLen("SyncType", 1))
 22709  	}
 22710  	if s.S3Destination != nil {
 22711  		if err := s.S3Destination.Validate(); err != nil {
 22712  			invalidParams.AddNested("S3Destination", err.(request.ErrInvalidParams))
 22713  		}
 22714  	}
 22715  	if s.SyncSource != nil {
 22716  		if err := s.SyncSource.Validate(); err != nil {
 22717  			invalidParams.AddNested("SyncSource", err.(request.ErrInvalidParams))
 22718  		}
 22719  	}
 22720  
 22721  	if invalidParams.Len() > 0 {
 22722  		return invalidParams
 22723  	}
 22724  	return nil
 22725  }
 22726  
 22727  // SetS3Destination sets the S3Destination field's value.
 22728  func (s *CreateResourceDataSyncInput) SetS3Destination(v *ResourceDataSyncS3Destination) *CreateResourceDataSyncInput {
 22729  	s.S3Destination = v
 22730  	return s
 22731  }
 22732  
 22733  // SetSyncName sets the SyncName field's value.
 22734  func (s *CreateResourceDataSyncInput) SetSyncName(v string) *CreateResourceDataSyncInput {
 22735  	s.SyncName = &v
 22736  	return s
 22737  }
 22738  
 22739  // SetSyncSource sets the SyncSource field's value.
 22740  func (s *CreateResourceDataSyncInput) SetSyncSource(v *ResourceDataSyncSource) *CreateResourceDataSyncInput {
 22741  	s.SyncSource = v
 22742  	return s
 22743  }
 22744  
 22745  // SetSyncType sets the SyncType field's value.
 22746  func (s *CreateResourceDataSyncInput) SetSyncType(v string) *CreateResourceDataSyncInput {
 22747  	s.SyncType = &v
 22748  	return s
 22749  }
 22750  
 22751  type CreateResourceDataSyncOutput struct {
 22752  	_ struct{} `type:"structure"`
 22753  }
 22754  
 22755  // String returns the string representation.
 22756  //
 22757  // API parameter values that are decorated as "sensitive" in the API will not
 22758  // be included in the string output. The member name will be present, but the
 22759  // value will be replaced with "sensitive".
 22760  func (s CreateResourceDataSyncOutput) String() string {
 22761  	return awsutil.Prettify(s)
 22762  }
 22763  
 22764  // GoString returns the string representation.
 22765  //
 22766  // API parameter values that are decorated as "sensitive" in the API will not
 22767  // be included in the string output. The member name will be present, but the
 22768  // value will be replaced with "sensitive".
 22769  func (s CreateResourceDataSyncOutput) GoString() string {
 22770  	return s.String()
 22771  }
 22772  
 22773  // You have exceeded the limit for custom schemas. Delete one or more custom
 22774  // schemas and try again.
 22775  type CustomSchemaCountLimitExceededException struct {
 22776  	_            struct{}                  `type:"structure"`
 22777  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 22778  
 22779  	Message_ *string `locationName:"Message" type:"string"`
 22780  }
 22781  
 22782  // String returns the string representation.
 22783  //
 22784  // API parameter values that are decorated as "sensitive" in the API will not
 22785  // be included in the string output. The member name will be present, but the
 22786  // value will be replaced with "sensitive".
 22787  func (s CustomSchemaCountLimitExceededException) String() string {
 22788  	return awsutil.Prettify(s)
 22789  }
 22790  
 22791  // GoString returns the string representation.
 22792  //
 22793  // API parameter values that are decorated as "sensitive" in the API will not
 22794  // be included in the string output. The member name will be present, but the
 22795  // value will be replaced with "sensitive".
 22796  func (s CustomSchemaCountLimitExceededException) GoString() string {
 22797  	return s.String()
 22798  }
 22799  
 22800  func newErrorCustomSchemaCountLimitExceededException(v protocol.ResponseMetadata) error {
 22801  	return &CustomSchemaCountLimitExceededException{
 22802  		RespMetadata: v,
 22803  	}
 22804  }
 22805  
 22806  // Code returns the exception type name.
 22807  func (s *CustomSchemaCountLimitExceededException) Code() string {
 22808  	return "CustomSchemaCountLimitExceededException"
 22809  }
 22810  
 22811  // Message returns the exception's message.
 22812  func (s *CustomSchemaCountLimitExceededException) Message() string {
 22813  	if s.Message_ != nil {
 22814  		return *s.Message_
 22815  	}
 22816  	return ""
 22817  }
 22818  
 22819  // OrigErr always returns nil, satisfies awserr.Error interface.
 22820  func (s *CustomSchemaCountLimitExceededException) OrigErr() error {
 22821  	return nil
 22822  }
 22823  
 22824  func (s *CustomSchemaCountLimitExceededException) Error() string {
 22825  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 22826  }
 22827  
 22828  // Status code returns the HTTP status code for the request's response error.
 22829  func (s *CustomSchemaCountLimitExceededException) StatusCode() int {
 22830  	return s.RespMetadata.StatusCode
 22831  }
 22832  
 22833  // RequestID returns the service's response RequestID for request.
 22834  func (s *CustomSchemaCountLimitExceededException) RequestID() string {
 22835  	return s.RespMetadata.RequestID
 22836  }
 22837  
 22838  type DeleteActivationInput struct {
 22839  	_ struct{} `type:"structure"`
 22840  
 22841  	// The ID of the activation that you want to delete.
 22842  	//
 22843  	// ActivationId is a required field
 22844  	ActivationId *string `type:"string" required:"true"`
 22845  }
 22846  
 22847  // String returns the string representation.
 22848  //
 22849  // API parameter values that are decorated as "sensitive" in the API will not
 22850  // be included in the string output. The member name will be present, but the
 22851  // value will be replaced with "sensitive".
 22852  func (s DeleteActivationInput) String() string {
 22853  	return awsutil.Prettify(s)
 22854  }
 22855  
 22856  // GoString returns the string representation.
 22857  //
 22858  // API parameter values that are decorated as "sensitive" in the API will not
 22859  // be included in the string output. The member name will be present, but the
 22860  // value will be replaced with "sensitive".
 22861  func (s DeleteActivationInput) GoString() string {
 22862  	return s.String()
 22863  }
 22864  
 22865  // Validate inspects the fields of the type to determine if they are valid.
 22866  func (s *DeleteActivationInput) Validate() error {
 22867  	invalidParams := request.ErrInvalidParams{Context: "DeleteActivationInput"}
 22868  	if s.ActivationId == nil {
 22869  		invalidParams.Add(request.NewErrParamRequired("ActivationId"))
 22870  	}
 22871  
 22872  	if invalidParams.Len() > 0 {
 22873  		return invalidParams
 22874  	}
 22875  	return nil
 22876  }
 22877  
 22878  // SetActivationId sets the ActivationId field's value.
 22879  func (s *DeleteActivationInput) SetActivationId(v string) *DeleteActivationInput {
 22880  	s.ActivationId = &v
 22881  	return s
 22882  }
 22883  
 22884  type DeleteActivationOutput struct {
 22885  	_ struct{} `type:"structure"`
 22886  }
 22887  
 22888  // String returns the string representation.
 22889  //
 22890  // API parameter values that are decorated as "sensitive" in the API will not
 22891  // be included in the string output. The member name will be present, but the
 22892  // value will be replaced with "sensitive".
 22893  func (s DeleteActivationOutput) String() string {
 22894  	return awsutil.Prettify(s)
 22895  }
 22896  
 22897  // GoString returns the string representation.
 22898  //
 22899  // API parameter values that are decorated as "sensitive" in the API will not
 22900  // be included in the string output. The member name will be present, but the
 22901  // value will be replaced with "sensitive".
 22902  func (s DeleteActivationOutput) GoString() string {
 22903  	return s.String()
 22904  }
 22905  
 22906  type DeleteAssociationInput struct {
 22907  	_ struct{} `type:"structure"`
 22908  
 22909  	// The association ID that you want to delete.
 22910  	AssociationId *string `type:"string"`
 22911  
 22912  	// The instance ID.
 22913  	//
 22914  	// InstanceId has been deprecated. To specify an instance ID for an association,
 22915  	// use the Targets parameter. Requests that include the parameter InstanceID
 22916  	// with Systems Manager documents (SSM documents) that use schema version 2.0
 22917  	// or later will fail. In addition, if you use the parameter InstanceId, you
 22918  	// can't use the parameters AssociationName, DocumentVersion, MaxErrors, MaxConcurrency,
 22919  	// OutputLocation, or ScheduleExpression. To use these parameters, you must
 22920  	// use the Targets parameter.
 22921  	InstanceId *string `type:"string"`
 22922  
 22923  	// The name of the SSM document.
 22924  	Name *string `type:"string"`
 22925  }
 22926  
 22927  // String returns the string representation.
 22928  //
 22929  // API parameter values that are decorated as "sensitive" in the API will not
 22930  // be included in the string output. The member name will be present, but the
 22931  // value will be replaced with "sensitive".
 22932  func (s DeleteAssociationInput) String() string {
 22933  	return awsutil.Prettify(s)
 22934  }
 22935  
 22936  // GoString returns the string representation.
 22937  //
 22938  // API parameter values that are decorated as "sensitive" in the API will not
 22939  // be included in the string output. The member name will be present, but the
 22940  // value will be replaced with "sensitive".
 22941  func (s DeleteAssociationInput) GoString() string {
 22942  	return s.String()
 22943  }
 22944  
 22945  // SetAssociationId sets the AssociationId field's value.
 22946  func (s *DeleteAssociationInput) SetAssociationId(v string) *DeleteAssociationInput {
 22947  	s.AssociationId = &v
 22948  	return s
 22949  }
 22950  
 22951  // SetInstanceId sets the InstanceId field's value.
 22952  func (s *DeleteAssociationInput) SetInstanceId(v string) *DeleteAssociationInput {
 22953  	s.InstanceId = &v
 22954  	return s
 22955  }
 22956  
 22957  // SetName sets the Name field's value.
 22958  func (s *DeleteAssociationInput) SetName(v string) *DeleteAssociationInput {
 22959  	s.Name = &v
 22960  	return s
 22961  }
 22962  
 22963  type DeleteAssociationOutput struct {
 22964  	_ struct{} `type:"structure"`
 22965  }
 22966  
 22967  // String returns the string representation.
 22968  //
 22969  // API parameter values that are decorated as "sensitive" in the API will not
 22970  // be included in the string output. The member name will be present, but the
 22971  // value will be replaced with "sensitive".
 22972  func (s DeleteAssociationOutput) String() string {
 22973  	return awsutil.Prettify(s)
 22974  }
 22975  
 22976  // GoString returns the string representation.
 22977  //
 22978  // API parameter values that are decorated as "sensitive" in the API will not
 22979  // be included in the string output. The member name will be present, but the
 22980  // value will be replaced with "sensitive".
 22981  func (s DeleteAssociationOutput) GoString() string {
 22982  	return s.String()
 22983  }
 22984  
 22985  type DeleteDocumentInput struct {
 22986  	_ struct{} `type:"structure"`
 22987  
 22988  	// The version of the document that you want to delete. If not provided, all
 22989  	// versions of the document are deleted.
 22990  	DocumentVersion *string `type:"string"`
 22991  
 22992  	// Some SSM document types require that you specify a Force flag before you
 22993  	// can delete the document. For example, you must specify a Force flag to delete
 22994  	// a document of type ApplicationConfigurationSchema. You can restrict access
 22995  	// to the Force flag in an Identity and Access Management (IAM) policy.
 22996  	Force *bool `type:"boolean"`
 22997  
 22998  	// The name of the document.
 22999  	//
 23000  	// Name is a required field
 23001  	Name *string `type:"string" required:"true"`
 23002  
 23003  	// The version name of the document that you want to delete. If not provided,
 23004  	// all versions of the document are deleted.
 23005  	VersionName *string `type:"string"`
 23006  }
 23007  
 23008  // String returns the string representation.
 23009  //
 23010  // API parameter values that are decorated as "sensitive" in the API will not
 23011  // be included in the string output. The member name will be present, but the
 23012  // value will be replaced with "sensitive".
 23013  func (s DeleteDocumentInput) String() string {
 23014  	return awsutil.Prettify(s)
 23015  }
 23016  
 23017  // GoString returns the string representation.
 23018  //
 23019  // API parameter values that are decorated as "sensitive" in the API will not
 23020  // be included in the string output. The member name will be present, but the
 23021  // value will be replaced with "sensitive".
 23022  func (s DeleteDocumentInput) GoString() string {
 23023  	return s.String()
 23024  }
 23025  
 23026  // Validate inspects the fields of the type to determine if they are valid.
 23027  func (s *DeleteDocumentInput) Validate() error {
 23028  	invalidParams := request.ErrInvalidParams{Context: "DeleteDocumentInput"}
 23029  	if s.Name == nil {
 23030  		invalidParams.Add(request.NewErrParamRequired("Name"))
 23031  	}
 23032  
 23033  	if invalidParams.Len() > 0 {
 23034  		return invalidParams
 23035  	}
 23036  	return nil
 23037  }
 23038  
 23039  // SetDocumentVersion sets the DocumentVersion field's value.
 23040  func (s *DeleteDocumentInput) SetDocumentVersion(v string) *DeleteDocumentInput {
 23041  	s.DocumentVersion = &v
 23042  	return s
 23043  }
 23044  
 23045  // SetForce sets the Force field's value.
 23046  func (s *DeleteDocumentInput) SetForce(v bool) *DeleteDocumentInput {
 23047  	s.Force = &v
 23048  	return s
 23049  }
 23050  
 23051  // SetName sets the Name field's value.
 23052  func (s *DeleteDocumentInput) SetName(v string) *DeleteDocumentInput {
 23053  	s.Name = &v
 23054  	return s
 23055  }
 23056  
 23057  // SetVersionName sets the VersionName field's value.
 23058  func (s *DeleteDocumentInput) SetVersionName(v string) *DeleteDocumentInput {
 23059  	s.VersionName = &v
 23060  	return s
 23061  }
 23062  
 23063  type DeleteDocumentOutput struct {
 23064  	_ struct{} `type:"structure"`
 23065  }
 23066  
 23067  // String returns the string representation.
 23068  //
 23069  // API parameter values that are decorated as "sensitive" in the API will not
 23070  // be included in the string output. The member name will be present, but the
 23071  // value will be replaced with "sensitive".
 23072  func (s DeleteDocumentOutput) String() string {
 23073  	return awsutil.Prettify(s)
 23074  }
 23075  
 23076  // GoString returns the string representation.
 23077  //
 23078  // API parameter values that are decorated as "sensitive" in the API will not
 23079  // be included in the string output. The member name will be present, but the
 23080  // value will be replaced with "sensitive".
 23081  func (s DeleteDocumentOutput) GoString() string {
 23082  	return s.String()
 23083  }
 23084  
 23085  type DeleteInventoryInput struct {
 23086  	_ struct{} `type:"structure"`
 23087  
 23088  	// User-provided idempotency token.
 23089  	ClientToken *string `type:"string" idempotencyToken:"true"`
 23090  
 23091  	// Use this option to view a summary of the deletion request without deleting
 23092  	// any data or the data type. This option is useful when you only want to understand
 23093  	// what will be deleted. Once you validate that the data to be deleted is what
 23094  	// you intend to delete, you can run the same command without specifying the
 23095  	// DryRun option.
 23096  	DryRun *bool `type:"boolean"`
 23097  
 23098  	// Use the SchemaDeleteOption to delete a custom inventory type (schema). If
 23099  	// you don't choose this option, the system only deletes existing inventory
 23100  	// data associated with the custom inventory type. Choose one of the following
 23101  	// options:
 23102  	//
 23103  	// DisableSchema: If you choose this option, the system ignores all inventory
 23104  	// data for the specified version, and any earlier versions. To enable this
 23105  	// schema again, you must call the PutInventory operation for a version greater
 23106  	// than the disabled version.
 23107  	//
 23108  	// DeleteSchema: This option deletes the specified custom type from the Inventory
 23109  	// service. You can recreate the schema later, if you want.
 23110  	SchemaDeleteOption *string `type:"string" enum:"InventorySchemaDeleteOption"`
 23111  
 23112  	// The name of the custom inventory type for which you want to delete either
 23113  	// all previously collected data or the inventory type itself.
 23114  	//
 23115  	// TypeName is a required field
 23116  	TypeName *string `min:"1" type:"string" required:"true"`
 23117  }
 23118  
 23119  // String returns the string representation.
 23120  //
 23121  // API parameter values that are decorated as "sensitive" in the API will not
 23122  // be included in the string output. The member name will be present, but the
 23123  // value will be replaced with "sensitive".
 23124  func (s DeleteInventoryInput) String() string {
 23125  	return awsutil.Prettify(s)
 23126  }
 23127  
 23128  // GoString returns the string representation.
 23129  //
 23130  // API parameter values that are decorated as "sensitive" in the API will not
 23131  // be included in the string output. The member name will be present, but the
 23132  // value will be replaced with "sensitive".
 23133  func (s DeleteInventoryInput) GoString() string {
 23134  	return s.String()
 23135  }
 23136  
 23137  // Validate inspects the fields of the type to determine if they are valid.
 23138  func (s *DeleteInventoryInput) Validate() error {
 23139  	invalidParams := request.ErrInvalidParams{Context: "DeleteInventoryInput"}
 23140  	if s.TypeName == nil {
 23141  		invalidParams.Add(request.NewErrParamRequired("TypeName"))
 23142  	}
 23143  	if s.TypeName != nil && len(*s.TypeName) < 1 {
 23144  		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
 23145  	}
 23146  
 23147  	if invalidParams.Len() > 0 {
 23148  		return invalidParams
 23149  	}
 23150  	return nil
 23151  }
 23152  
 23153  // SetClientToken sets the ClientToken field's value.
 23154  func (s *DeleteInventoryInput) SetClientToken(v string) *DeleteInventoryInput {
 23155  	s.ClientToken = &v
 23156  	return s
 23157  }
 23158  
 23159  // SetDryRun sets the DryRun field's value.
 23160  func (s *DeleteInventoryInput) SetDryRun(v bool) *DeleteInventoryInput {
 23161  	s.DryRun = &v
 23162  	return s
 23163  }
 23164  
 23165  // SetSchemaDeleteOption sets the SchemaDeleteOption field's value.
 23166  func (s *DeleteInventoryInput) SetSchemaDeleteOption(v string) *DeleteInventoryInput {
 23167  	s.SchemaDeleteOption = &v
 23168  	return s
 23169  }
 23170  
 23171  // SetTypeName sets the TypeName field's value.
 23172  func (s *DeleteInventoryInput) SetTypeName(v string) *DeleteInventoryInput {
 23173  	s.TypeName = &v
 23174  	return s
 23175  }
 23176  
 23177  type DeleteInventoryOutput struct {
 23178  	_ struct{} `type:"structure"`
 23179  
 23180  	// Every DeleteInventory operation is assigned a unique ID. This option returns
 23181  	// a unique ID. You can use this ID to query the status of a delete operation.
 23182  	// This option is useful for ensuring that a delete operation has completed
 23183  	// before you begin other operations.
 23184  	DeletionId *string `type:"string"`
 23185  
 23186  	// A summary of the delete operation. For more information about this summary,
 23187  	// see Deleting custom inventory (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-custom.html#sysman-inventory-delete-summary)
 23188  	// in the Amazon Web Services Systems Manager User Guide.
 23189  	DeletionSummary *InventoryDeletionSummary `type:"structure"`
 23190  
 23191  	// The name of the inventory data type specified in the request.
 23192  	TypeName *string `min:"1" type:"string"`
 23193  }
 23194  
 23195  // String returns the string representation.
 23196  //
 23197  // API parameter values that are decorated as "sensitive" in the API will not
 23198  // be included in the string output. The member name will be present, but the
 23199  // value will be replaced with "sensitive".
 23200  func (s DeleteInventoryOutput) String() string {
 23201  	return awsutil.Prettify(s)
 23202  }
 23203  
 23204  // GoString returns the string representation.
 23205  //
 23206  // API parameter values that are decorated as "sensitive" in the API will not
 23207  // be included in the string output. The member name will be present, but the
 23208  // value will be replaced with "sensitive".
 23209  func (s DeleteInventoryOutput) GoString() string {
 23210  	return s.String()
 23211  }
 23212  
 23213  // SetDeletionId sets the DeletionId field's value.
 23214  func (s *DeleteInventoryOutput) SetDeletionId(v string) *DeleteInventoryOutput {
 23215  	s.DeletionId = &v
 23216  	return s
 23217  }
 23218  
 23219  // SetDeletionSummary sets the DeletionSummary field's value.
 23220  func (s *DeleteInventoryOutput) SetDeletionSummary(v *InventoryDeletionSummary) *DeleteInventoryOutput {
 23221  	s.DeletionSummary = v
 23222  	return s
 23223  }
 23224  
 23225  // SetTypeName sets the TypeName field's value.
 23226  func (s *DeleteInventoryOutput) SetTypeName(v string) *DeleteInventoryOutput {
 23227  	s.TypeName = &v
 23228  	return s
 23229  }
 23230  
 23231  type DeleteMaintenanceWindowInput struct {
 23232  	_ struct{} `type:"structure"`
 23233  
 23234  	// The ID of the maintenance window to delete.
 23235  	//
 23236  	// WindowId is a required field
 23237  	WindowId *string `min:"20" type:"string" required:"true"`
 23238  }
 23239  
 23240  // String returns the string representation.
 23241  //
 23242  // API parameter values that are decorated as "sensitive" in the API will not
 23243  // be included in the string output. The member name will be present, but the
 23244  // value will be replaced with "sensitive".
 23245  func (s DeleteMaintenanceWindowInput) String() string {
 23246  	return awsutil.Prettify(s)
 23247  }
 23248  
 23249  // GoString returns the string representation.
 23250  //
 23251  // API parameter values that are decorated as "sensitive" in the API will not
 23252  // be included in the string output. The member name will be present, but the
 23253  // value will be replaced with "sensitive".
 23254  func (s DeleteMaintenanceWindowInput) GoString() string {
 23255  	return s.String()
 23256  }
 23257  
 23258  // Validate inspects the fields of the type to determine if they are valid.
 23259  func (s *DeleteMaintenanceWindowInput) Validate() error {
 23260  	invalidParams := request.ErrInvalidParams{Context: "DeleteMaintenanceWindowInput"}
 23261  	if s.WindowId == nil {
 23262  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 23263  	}
 23264  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 23265  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 23266  	}
 23267  
 23268  	if invalidParams.Len() > 0 {
 23269  		return invalidParams
 23270  	}
 23271  	return nil
 23272  }
 23273  
 23274  // SetWindowId sets the WindowId field's value.
 23275  func (s *DeleteMaintenanceWindowInput) SetWindowId(v string) *DeleteMaintenanceWindowInput {
 23276  	s.WindowId = &v
 23277  	return s
 23278  }
 23279  
 23280  type DeleteMaintenanceWindowOutput struct {
 23281  	_ struct{} `type:"structure"`
 23282  
 23283  	// The ID of the deleted maintenance window.
 23284  	WindowId *string `min:"20" type:"string"`
 23285  }
 23286  
 23287  // String returns the string representation.
 23288  //
 23289  // API parameter values that are decorated as "sensitive" in the API will not
 23290  // be included in the string output. The member name will be present, but the
 23291  // value will be replaced with "sensitive".
 23292  func (s DeleteMaintenanceWindowOutput) String() string {
 23293  	return awsutil.Prettify(s)
 23294  }
 23295  
 23296  // GoString returns the string representation.
 23297  //
 23298  // API parameter values that are decorated as "sensitive" in the API will not
 23299  // be included in the string output. The member name will be present, but the
 23300  // value will be replaced with "sensitive".
 23301  func (s DeleteMaintenanceWindowOutput) GoString() string {
 23302  	return s.String()
 23303  }
 23304  
 23305  // SetWindowId sets the WindowId field's value.
 23306  func (s *DeleteMaintenanceWindowOutput) SetWindowId(v string) *DeleteMaintenanceWindowOutput {
 23307  	s.WindowId = &v
 23308  	return s
 23309  }
 23310  
 23311  type DeleteOpsMetadataInput struct {
 23312  	_ struct{} `type:"structure"`
 23313  
 23314  	// The Amazon Resource Name (ARN) of an OpsMetadata Object to delete.
 23315  	//
 23316  	// OpsMetadataArn is a required field
 23317  	OpsMetadataArn *string `min:"1" type:"string" required:"true"`
 23318  }
 23319  
 23320  // String returns the string representation.
 23321  //
 23322  // API parameter values that are decorated as "sensitive" in the API will not
 23323  // be included in the string output. The member name will be present, but the
 23324  // value will be replaced with "sensitive".
 23325  func (s DeleteOpsMetadataInput) String() string {
 23326  	return awsutil.Prettify(s)
 23327  }
 23328  
 23329  // GoString returns the string representation.
 23330  //
 23331  // API parameter values that are decorated as "sensitive" in the API will not
 23332  // be included in the string output. The member name will be present, but the
 23333  // value will be replaced with "sensitive".
 23334  func (s DeleteOpsMetadataInput) GoString() string {
 23335  	return s.String()
 23336  }
 23337  
 23338  // Validate inspects the fields of the type to determine if they are valid.
 23339  func (s *DeleteOpsMetadataInput) Validate() error {
 23340  	invalidParams := request.ErrInvalidParams{Context: "DeleteOpsMetadataInput"}
 23341  	if s.OpsMetadataArn == nil {
 23342  		invalidParams.Add(request.NewErrParamRequired("OpsMetadataArn"))
 23343  	}
 23344  	if s.OpsMetadataArn != nil && len(*s.OpsMetadataArn) < 1 {
 23345  		invalidParams.Add(request.NewErrParamMinLen("OpsMetadataArn", 1))
 23346  	}
 23347  
 23348  	if invalidParams.Len() > 0 {
 23349  		return invalidParams
 23350  	}
 23351  	return nil
 23352  }
 23353  
 23354  // SetOpsMetadataArn sets the OpsMetadataArn field's value.
 23355  func (s *DeleteOpsMetadataInput) SetOpsMetadataArn(v string) *DeleteOpsMetadataInput {
 23356  	s.OpsMetadataArn = &v
 23357  	return s
 23358  }
 23359  
 23360  type DeleteOpsMetadataOutput struct {
 23361  	_ struct{} `type:"structure"`
 23362  }
 23363  
 23364  // String returns the string representation.
 23365  //
 23366  // API parameter values that are decorated as "sensitive" in the API will not
 23367  // be included in the string output. The member name will be present, but the
 23368  // value will be replaced with "sensitive".
 23369  func (s DeleteOpsMetadataOutput) String() string {
 23370  	return awsutil.Prettify(s)
 23371  }
 23372  
 23373  // GoString returns the string representation.
 23374  //
 23375  // API parameter values that are decorated as "sensitive" in the API will not
 23376  // be included in the string output. The member name will be present, but the
 23377  // value will be replaced with "sensitive".
 23378  func (s DeleteOpsMetadataOutput) GoString() string {
 23379  	return s.String()
 23380  }
 23381  
 23382  type DeleteParameterInput struct {
 23383  	_ struct{} `type:"structure"`
 23384  
 23385  	// The name of the parameter to delete.
 23386  	//
 23387  	// Name is a required field
 23388  	Name *string `min:"1" type:"string" required:"true"`
 23389  }
 23390  
 23391  // String returns the string representation.
 23392  //
 23393  // API parameter values that are decorated as "sensitive" in the API will not
 23394  // be included in the string output. The member name will be present, but the
 23395  // value will be replaced with "sensitive".
 23396  func (s DeleteParameterInput) String() string {
 23397  	return awsutil.Prettify(s)
 23398  }
 23399  
 23400  // GoString returns the string representation.
 23401  //
 23402  // API parameter values that are decorated as "sensitive" in the API will not
 23403  // be included in the string output. The member name will be present, but the
 23404  // value will be replaced with "sensitive".
 23405  func (s DeleteParameterInput) GoString() string {
 23406  	return s.String()
 23407  }
 23408  
 23409  // Validate inspects the fields of the type to determine if they are valid.
 23410  func (s *DeleteParameterInput) Validate() error {
 23411  	invalidParams := request.ErrInvalidParams{Context: "DeleteParameterInput"}
 23412  	if s.Name == nil {
 23413  		invalidParams.Add(request.NewErrParamRequired("Name"))
 23414  	}
 23415  	if s.Name != nil && len(*s.Name) < 1 {
 23416  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 23417  	}
 23418  
 23419  	if invalidParams.Len() > 0 {
 23420  		return invalidParams
 23421  	}
 23422  	return nil
 23423  }
 23424  
 23425  // SetName sets the Name field's value.
 23426  func (s *DeleteParameterInput) SetName(v string) *DeleteParameterInput {
 23427  	s.Name = &v
 23428  	return s
 23429  }
 23430  
 23431  type DeleteParameterOutput struct {
 23432  	_ struct{} `type:"structure"`
 23433  }
 23434  
 23435  // String returns the string representation.
 23436  //
 23437  // API parameter values that are decorated as "sensitive" in the API will not
 23438  // be included in the string output. The member name will be present, but the
 23439  // value will be replaced with "sensitive".
 23440  func (s DeleteParameterOutput) String() string {
 23441  	return awsutil.Prettify(s)
 23442  }
 23443  
 23444  // GoString returns the string representation.
 23445  //
 23446  // API parameter values that are decorated as "sensitive" in the API will not
 23447  // be included in the string output. The member name will be present, but the
 23448  // value will be replaced with "sensitive".
 23449  func (s DeleteParameterOutput) GoString() string {
 23450  	return s.String()
 23451  }
 23452  
 23453  type DeleteParametersInput struct {
 23454  	_ struct{} `type:"structure"`
 23455  
 23456  	// The names of the parameters to delete. After deleting a parameter, wait for
 23457  	// at least 30 seconds to create a parameter with the same name.
 23458  	//
 23459  	// Names is a required field
 23460  	Names []*string `min:"1" type:"list" required:"true"`
 23461  }
 23462  
 23463  // String returns the string representation.
 23464  //
 23465  // API parameter values that are decorated as "sensitive" in the API will not
 23466  // be included in the string output. The member name will be present, but the
 23467  // value will be replaced with "sensitive".
 23468  func (s DeleteParametersInput) String() string {
 23469  	return awsutil.Prettify(s)
 23470  }
 23471  
 23472  // GoString returns the string representation.
 23473  //
 23474  // API parameter values that are decorated as "sensitive" in the API will not
 23475  // be included in the string output. The member name will be present, but the
 23476  // value will be replaced with "sensitive".
 23477  func (s DeleteParametersInput) GoString() string {
 23478  	return s.String()
 23479  }
 23480  
 23481  // Validate inspects the fields of the type to determine if they are valid.
 23482  func (s *DeleteParametersInput) Validate() error {
 23483  	invalidParams := request.ErrInvalidParams{Context: "DeleteParametersInput"}
 23484  	if s.Names == nil {
 23485  		invalidParams.Add(request.NewErrParamRequired("Names"))
 23486  	}
 23487  	if s.Names != nil && len(s.Names) < 1 {
 23488  		invalidParams.Add(request.NewErrParamMinLen("Names", 1))
 23489  	}
 23490  
 23491  	if invalidParams.Len() > 0 {
 23492  		return invalidParams
 23493  	}
 23494  	return nil
 23495  }
 23496  
 23497  // SetNames sets the Names field's value.
 23498  func (s *DeleteParametersInput) SetNames(v []*string) *DeleteParametersInput {
 23499  	s.Names = v
 23500  	return s
 23501  }
 23502  
 23503  type DeleteParametersOutput struct {
 23504  	_ struct{} `type:"structure"`
 23505  
 23506  	// The names of the deleted parameters.
 23507  	DeletedParameters []*string `min:"1" type:"list"`
 23508  
 23509  	// The names of parameters that weren't deleted because the parameters aren't
 23510  	// valid.
 23511  	InvalidParameters []*string `min:"1" type:"list"`
 23512  }
 23513  
 23514  // String returns the string representation.
 23515  //
 23516  // API parameter values that are decorated as "sensitive" in the API will not
 23517  // be included in the string output. The member name will be present, but the
 23518  // value will be replaced with "sensitive".
 23519  func (s DeleteParametersOutput) String() string {
 23520  	return awsutil.Prettify(s)
 23521  }
 23522  
 23523  // GoString returns the string representation.
 23524  //
 23525  // API parameter values that are decorated as "sensitive" in the API will not
 23526  // be included in the string output. The member name will be present, but the
 23527  // value will be replaced with "sensitive".
 23528  func (s DeleteParametersOutput) GoString() string {
 23529  	return s.String()
 23530  }
 23531  
 23532  // SetDeletedParameters sets the DeletedParameters field's value.
 23533  func (s *DeleteParametersOutput) SetDeletedParameters(v []*string) *DeleteParametersOutput {
 23534  	s.DeletedParameters = v
 23535  	return s
 23536  }
 23537  
 23538  // SetInvalidParameters sets the InvalidParameters field's value.
 23539  func (s *DeleteParametersOutput) SetInvalidParameters(v []*string) *DeleteParametersOutput {
 23540  	s.InvalidParameters = v
 23541  	return s
 23542  }
 23543  
 23544  type DeletePatchBaselineInput struct {
 23545  	_ struct{} `type:"structure"`
 23546  
 23547  	// The ID of the patch baseline to delete.
 23548  	//
 23549  	// BaselineId is a required field
 23550  	BaselineId *string `min:"20" type:"string" required:"true"`
 23551  }
 23552  
 23553  // String returns the string representation.
 23554  //
 23555  // API parameter values that are decorated as "sensitive" in the API will not
 23556  // be included in the string output. The member name will be present, but the
 23557  // value will be replaced with "sensitive".
 23558  func (s DeletePatchBaselineInput) String() string {
 23559  	return awsutil.Prettify(s)
 23560  }
 23561  
 23562  // GoString returns the string representation.
 23563  //
 23564  // API parameter values that are decorated as "sensitive" in the API will not
 23565  // be included in the string output. The member name will be present, but the
 23566  // value will be replaced with "sensitive".
 23567  func (s DeletePatchBaselineInput) GoString() string {
 23568  	return s.String()
 23569  }
 23570  
 23571  // Validate inspects the fields of the type to determine if they are valid.
 23572  func (s *DeletePatchBaselineInput) Validate() error {
 23573  	invalidParams := request.ErrInvalidParams{Context: "DeletePatchBaselineInput"}
 23574  	if s.BaselineId == nil {
 23575  		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
 23576  	}
 23577  	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
 23578  		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
 23579  	}
 23580  
 23581  	if invalidParams.Len() > 0 {
 23582  		return invalidParams
 23583  	}
 23584  	return nil
 23585  }
 23586  
 23587  // SetBaselineId sets the BaselineId field's value.
 23588  func (s *DeletePatchBaselineInput) SetBaselineId(v string) *DeletePatchBaselineInput {
 23589  	s.BaselineId = &v
 23590  	return s
 23591  }
 23592  
 23593  type DeletePatchBaselineOutput struct {
 23594  	_ struct{} `type:"structure"`
 23595  
 23596  	// The ID of the deleted patch baseline.
 23597  	BaselineId *string `min:"20" type:"string"`
 23598  }
 23599  
 23600  // String returns the string representation.
 23601  //
 23602  // API parameter values that are decorated as "sensitive" in the API will not
 23603  // be included in the string output. The member name will be present, but the
 23604  // value will be replaced with "sensitive".
 23605  func (s DeletePatchBaselineOutput) String() string {
 23606  	return awsutil.Prettify(s)
 23607  }
 23608  
 23609  // GoString returns the string representation.
 23610  //
 23611  // API parameter values that are decorated as "sensitive" in the API will not
 23612  // be included in the string output. The member name will be present, but the
 23613  // value will be replaced with "sensitive".
 23614  func (s DeletePatchBaselineOutput) GoString() string {
 23615  	return s.String()
 23616  }
 23617  
 23618  // SetBaselineId sets the BaselineId field's value.
 23619  func (s *DeletePatchBaselineOutput) SetBaselineId(v string) *DeletePatchBaselineOutput {
 23620  	s.BaselineId = &v
 23621  	return s
 23622  }
 23623  
 23624  type DeleteResourceDataSyncInput struct {
 23625  	_ struct{} `type:"structure"`
 23626  
 23627  	// The name of the configuration to delete.
 23628  	//
 23629  	// SyncName is a required field
 23630  	SyncName *string `min:"1" type:"string" required:"true"`
 23631  
 23632  	// Specify the type of resource data sync to delete.
 23633  	SyncType *string `min:"1" type:"string"`
 23634  }
 23635  
 23636  // String returns the string representation.
 23637  //
 23638  // API parameter values that are decorated as "sensitive" in the API will not
 23639  // be included in the string output. The member name will be present, but the
 23640  // value will be replaced with "sensitive".
 23641  func (s DeleteResourceDataSyncInput) String() string {
 23642  	return awsutil.Prettify(s)
 23643  }
 23644  
 23645  // GoString returns the string representation.
 23646  //
 23647  // API parameter values that are decorated as "sensitive" in the API will not
 23648  // be included in the string output. The member name will be present, but the
 23649  // value will be replaced with "sensitive".
 23650  func (s DeleteResourceDataSyncInput) GoString() string {
 23651  	return s.String()
 23652  }
 23653  
 23654  // Validate inspects the fields of the type to determine if they are valid.
 23655  func (s *DeleteResourceDataSyncInput) Validate() error {
 23656  	invalidParams := request.ErrInvalidParams{Context: "DeleteResourceDataSyncInput"}
 23657  	if s.SyncName == nil {
 23658  		invalidParams.Add(request.NewErrParamRequired("SyncName"))
 23659  	}
 23660  	if s.SyncName != nil && len(*s.SyncName) < 1 {
 23661  		invalidParams.Add(request.NewErrParamMinLen("SyncName", 1))
 23662  	}
 23663  	if s.SyncType != nil && len(*s.SyncType) < 1 {
 23664  		invalidParams.Add(request.NewErrParamMinLen("SyncType", 1))
 23665  	}
 23666  
 23667  	if invalidParams.Len() > 0 {
 23668  		return invalidParams
 23669  	}
 23670  	return nil
 23671  }
 23672  
 23673  // SetSyncName sets the SyncName field's value.
 23674  func (s *DeleteResourceDataSyncInput) SetSyncName(v string) *DeleteResourceDataSyncInput {
 23675  	s.SyncName = &v
 23676  	return s
 23677  }
 23678  
 23679  // SetSyncType sets the SyncType field's value.
 23680  func (s *DeleteResourceDataSyncInput) SetSyncType(v string) *DeleteResourceDataSyncInput {
 23681  	s.SyncType = &v
 23682  	return s
 23683  }
 23684  
 23685  type DeleteResourceDataSyncOutput struct {
 23686  	_ struct{} `type:"structure"`
 23687  }
 23688  
 23689  // String returns the string representation.
 23690  //
 23691  // API parameter values that are decorated as "sensitive" in the API will not
 23692  // be included in the string output. The member name will be present, but the
 23693  // value will be replaced with "sensitive".
 23694  func (s DeleteResourceDataSyncOutput) String() string {
 23695  	return awsutil.Prettify(s)
 23696  }
 23697  
 23698  // GoString returns the string representation.
 23699  //
 23700  // API parameter values that are decorated as "sensitive" in the API will not
 23701  // be included in the string output. The member name will be present, but the
 23702  // value will be replaced with "sensitive".
 23703  func (s DeleteResourceDataSyncOutput) GoString() string {
 23704  	return s.String()
 23705  }
 23706  
 23707  type DeregisterManagedInstanceInput struct {
 23708  	_ struct{} `type:"structure"`
 23709  
 23710  	// The ID assigned to the managed instance when you registered it using the
 23711  	// activation process.
 23712  	//
 23713  	// InstanceId is a required field
 23714  	InstanceId *string `type:"string" required:"true"`
 23715  }
 23716  
 23717  // String returns the string representation.
 23718  //
 23719  // API parameter values that are decorated as "sensitive" in the API will not
 23720  // be included in the string output. The member name will be present, but the
 23721  // value will be replaced with "sensitive".
 23722  func (s DeregisterManagedInstanceInput) String() string {
 23723  	return awsutil.Prettify(s)
 23724  }
 23725  
 23726  // GoString returns the string representation.
 23727  //
 23728  // API parameter values that are decorated as "sensitive" in the API will not
 23729  // be included in the string output. The member name will be present, but the
 23730  // value will be replaced with "sensitive".
 23731  func (s DeregisterManagedInstanceInput) GoString() string {
 23732  	return s.String()
 23733  }
 23734  
 23735  // Validate inspects the fields of the type to determine if they are valid.
 23736  func (s *DeregisterManagedInstanceInput) Validate() error {
 23737  	invalidParams := request.ErrInvalidParams{Context: "DeregisterManagedInstanceInput"}
 23738  	if s.InstanceId == nil {
 23739  		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
 23740  	}
 23741  
 23742  	if invalidParams.Len() > 0 {
 23743  		return invalidParams
 23744  	}
 23745  	return nil
 23746  }
 23747  
 23748  // SetInstanceId sets the InstanceId field's value.
 23749  func (s *DeregisterManagedInstanceInput) SetInstanceId(v string) *DeregisterManagedInstanceInput {
 23750  	s.InstanceId = &v
 23751  	return s
 23752  }
 23753  
 23754  type DeregisterManagedInstanceOutput struct {
 23755  	_ struct{} `type:"structure"`
 23756  }
 23757  
 23758  // String returns the string representation.
 23759  //
 23760  // API parameter values that are decorated as "sensitive" in the API will not
 23761  // be included in the string output. The member name will be present, but the
 23762  // value will be replaced with "sensitive".
 23763  func (s DeregisterManagedInstanceOutput) String() string {
 23764  	return awsutil.Prettify(s)
 23765  }
 23766  
 23767  // GoString returns the string representation.
 23768  //
 23769  // API parameter values that are decorated as "sensitive" in the API will not
 23770  // be included in the string output. The member name will be present, but the
 23771  // value will be replaced with "sensitive".
 23772  func (s DeregisterManagedInstanceOutput) GoString() string {
 23773  	return s.String()
 23774  }
 23775  
 23776  type DeregisterPatchBaselineForPatchGroupInput struct {
 23777  	_ struct{} `type:"structure"`
 23778  
 23779  	// The ID of the patch baseline to deregister the patch group from.
 23780  	//
 23781  	// BaselineId is a required field
 23782  	BaselineId *string `min:"20" type:"string" required:"true"`
 23783  
 23784  	// The name of the patch group that should be deregistered from the patch baseline.
 23785  	//
 23786  	// PatchGroup is a required field
 23787  	PatchGroup *string `min:"1" type:"string" required:"true"`
 23788  }
 23789  
 23790  // String returns the string representation.
 23791  //
 23792  // API parameter values that are decorated as "sensitive" in the API will not
 23793  // be included in the string output. The member name will be present, but the
 23794  // value will be replaced with "sensitive".
 23795  func (s DeregisterPatchBaselineForPatchGroupInput) String() string {
 23796  	return awsutil.Prettify(s)
 23797  }
 23798  
 23799  // GoString returns the string representation.
 23800  //
 23801  // API parameter values that are decorated as "sensitive" in the API will not
 23802  // be included in the string output. The member name will be present, but the
 23803  // value will be replaced with "sensitive".
 23804  func (s DeregisterPatchBaselineForPatchGroupInput) GoString() string {
 23805  	return s.String()
 23806  }
 23807  
 23808  // Validate inspects the fields of the type to determine if they are valid.
 23809  func (s *DeregisterPatchBaselineForPatchGroupInput) Validate() error {
 23810  	invalidParams := request.ErrInvalidParams{Context: "DeregisterPatchBaselineForPatchGroupInput"}
 23811  	if s.BaselineId == nil {
 23812  		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
 23813  	}
 23814  	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
 23815  		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
 23816  	}
 23817  	if s.PatchGroup == nil {
 23818  		invalidParams.Add(request.NewErrParamRequired("PatchGroup"))
 23819  	}
 23820  	if s.PatchGroup != nil && len(*s.PatchGroup) < 1 {
 23821  		invalidParams.Add(request.NewErrParamMinLen("PatchGroup", 1))
 23822  	}
 23823  
 23824  	if invalidParams.Len() > 0 {
 23825  		return invalidParams
 23826  	}
 23827  	return nil
 23828  }
 23829  
 23830  // SetBaselineId sets the BaselineId field's value.
 23831  func (s *DeregisterPatchBaselineForPatchGroupInput) SetBaselineId(v string) *DeregisterPatchBaselineForPatchGroupInput {
 23832  	s.BaselineId = &v
 23833  	return s
 23834  }
 23835  
 23836  // SetPatchGroup sets the PatchGroup field's value.
 23837  func (s *DeregisterPatchBaselineForPatchGroupInput) SetPatchGroup(v string) *DeregisterPatchBaselineForPatchGroupInput {
 23838  	s.PatchGroup = &v
 23839  	return s
 23840  }
 23841  
 23842  type DeregisterPatchBaselineForPatchGroupOutput struct {
 23843  	_ struct{} `type:"structure"`
 23844  
 23845  	// The ID of the patch baseline the patch group was deregistered from.
 23846  	BaselineId *string `min:"20" type:"string"`
 23847  
 23848  	// The name of the patch group deregistered from the patch baseline.
 23849  	PatchGroup *string `min:"1" type:"string"`
 23850  }
 23851  
 23852  // String returns the string representation.
 23853  //
 23854  // API parameter values that are decorated as "sensitive" in the API will not
 23855  // be included in the string output. The member name will be present, but the
 23856  // value will be replaced with "sensitive".
 23857  func (s DeregisterPatchBaselineForPatchGroupOutput) String() string {
 23858  	return awsutil.Prettify(s)
 23859  }
 23860  
 23861  // GoString returns the string representation.
 23862  //
 23863  // API parameter values that are decorated as "sensitive" in the API will not
 23864  // be included in the string output. The member name will be present, but the
 23865  // value will be replaced with "sensitive".
 23866  func (s DeregisterPatchBaselineForPatchGroupOutput) GoString() string {
 23867  	return s.String()
 23868  }
 23869  
 23870  // SetBaselineId sets the BaselineId field's value.
 23871  func (s *DeregisterPatchBaselineForPatchGroupOutput) SetBaselineId(v string) *DeregisterPatchBaselineForPatchGroupOutput {
 23872  	s.BaselineId = &v
 23873  	return s
 23874  }
 23875  
 23876  // SetPatchGroup sets the PatchGroup field's value.
 23877  func (s *DeregisterPatchBaselineForPatchGroupOutput) SetPatchGroup(v string) *DeregisterPatchBaselineForPatchGroupOutput {
 23878  	s.PatchGroup = &v
 23879  	return s
 23880  }
 23881  
 23882  type DeregisterTargetFromMaintenanceWindowInput struct {
 23883  	_ struct{} `type:"structure"`
 23884  
 23885  	// The system checks if the target is being referenced by a task. If the target
 23886  	// is being referenced, the system returns an error and doesn't deregister the
 23887  	// target from the maintenance window.
 23888  	Safe *bool `type:"boolean"`
 23889  
 23890  	// The ID of the maintenance window the target should be removed from.
 23891  	//
 23892  	// WindowId is a required field
 23893  	WindowId *string `min:"20" type:"string" required:"true"`
 23894  
 23895  	// The ID of the target definition to remove.
 23896  	//
 23897  	// WindowTargetId is a required field
 23898  	WindowTargetId *string `min:"36" type:"string" required:"true"`
 23899  }
 23900  
 23901  // String returns the string representation.
 23902  //
 23903  // API parameter values that are decorated as "sensitive" in the API will not
 23904  // be included in the string output. The member name will be present, but the
 23905  // value will be replaced with "sensitive".
 23906  func (s DeregisterTargetFromMaintenanceWindowInput) String() string {
 23907  	return awsutil.Prettify(s)
 23908  }
 23909  
 23910  // GoString returns the string representation.
 23911  //
 23912  // API parameter values that are decorated as "sensitive" in the API will not
 23913  // be included in the string output. The member name will be present, but the
 23914  // value will be replaced with "sensitive".
 23915  func (s DeregisterTargetFromMaintenanceWindowInput) GoString() string {
 23916  	return s.String()
 23917  }
 23918  
 23919  // Validate inspects the fields of the type to determine if they are valid.
 23920  func (s *DeregisterTargetFromMaintenanceWindowInput) Validate() error {
 23921  	invalidParams := request.ErrInvalidParams{Context: "DeregisterTargetFromMaintenanceWindowInput"}
 23922  	if s.WindowId == nil {
 23923  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 23924  	}
 23925  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 23926  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 23927  	}
 23928  	if s.WindowTargetId == nil {
 23929  		invalidParams.Add(request.NewErrParamRequired("WindowTargetId"))
 23930  	}
 23931  	if s.WindowTargetId != nil && len(*s.WindowTargetId) < 36 {
 23932  		invalidParams.Add(request.NewErrParamMinLen("WindowTargetId", 36))
 23933  	}
 23934  
 23935  	if invalidParams.Len() > 0 {
 23936  		return invalidParams
 23937  	}
 23938  	return nil
 23939  }
 23940  
 23941  // SetSafe sets the Safe field's value.
 23942  func (s *DeregisterTargetFromMaintenanceWindowInput) SetSafe(v bool) *DeregisterTargetFromMaintenanceWindowInput {
 23943  	s.Safe = &v
 23944  	return s
 23945  }
 23946  
 23947  // SetWindowId sets the WindowId field's value.
 23948  func (s *DeregisterTargetFromMaintenanceWindowInput) SetWindowId(v string) *DeregisterTargetFromMaintenanceWindowInput {
 23949  	s.WindowId = &v
 23950  	return s
 23951  }
 23952  
 23953  // SetWindowTargetId sets the WindowTargetId field's value.
 23954  func (s *DeregisterTargetFromMaintenanceWindowInput) SetWindowTargetId(v string) *DeregisterTargetFromMaintenanceWindowInput {
 23955  	s.WindowTargetId = &v
 23956  	return s
 23957  }
 23958  
 23959  type DeregisterTargetFromMaintenanceWindowOutput struct {
 23960  	_ struct{} `type:"structure"`
 23961  
 23962  	// The ID of the maintenance window the target was removed from.
 23963  	WindowId *string `min:"20" type:"string"`
 23964  
 23965  	// The ID of the removed target definition.
 23966  	WindowTargetId *string `min:"36" type:"string"`
 23967  }
 23968  
 23969  // String returns the string representation.
 23970  //
 23971  // API parameter values that are decorated as "sensitive" in the API will not
 23972  // be included in the string output. The member name will be present, but the
 23973  // value will be replaced with "sensitive".
 23974  func (s DeregisterTargetFromMaintenanceWindowOutput) String() string {
 23975  	return awsutil.Prettify(s)
 23976  }
 23977  
 23978  // GoString returns the string representation.
 23979  //
 23980  // API parameter values that are decorated as "sensitive" in the API will not
 23981  // be included in the string output. The member name will be present, but the
 23982  // value will be replaced with "sensitive".
 23983  func (s DeregisterTargetFromMaintenanceWindowOutput) GoString() string {
 23984  	return s.String()
 23985  }
 23986  
 23987  // SetWindowId sets the WindowId field's value.
 23988  func (s *DeregisterTargetFromMaintenanceWindowOutput) SetWindowId(v string) *DeregisterTargetFromMaintenanceWindowOutput {
 23989  	s.WindowId = &v
 23990  	return s
 23991  }
 23992  
 23993  // SetWindowTargetId sets the WindowTargetId field's value.
 23994  func (s *DeregisterTargetFromMaintenanceWindowOutput) SetWindowTargetId(v string) *DeregisterTargetFromMaintenanceWindowOutput {
 23995  	s.WindowTargetId = &v
 23996  	return s
 23997  }
 23998  
 23999  type DeregisterTaskFromMaintenanceWindowInput struct {
 24000  	_ struct{} `type:"structure"`
 24001  
 24002  	// The ID of the maintenance window the task should be removed from.
 24003  	//
 24004  	// WindowId is a required field
 24005  	WindowId *string `min:"20" type:"string" required:"true"`
 24006  
 24007  	// The ID of the task to remove from the maintenance window.
 24008  	//
 24009  	// WindowTaskId is a required field
 24010  	WindowTaskId *string `min:"36" type:"string" required:"true"`
 24011  }
 24012  
 24013  // String returns the string representation.
 24014  //
 24015  // API parameter values that are decorated as "sensitive" in the API will not
 24016  // be included in the string output. The member name will be present, but the
 24017  // value will be replaced with "sensitive".
 24018  func (s DeregisterTaskFromMaintenanceWindowInput) String() string {
 24019  	return awsutil.Prettify(s)
 24020  }
 24021  
 24022  // GoString returns the string representation.
 24023  //
 24024  // API parameter values that are decorated as "sensitive" in the API will not
 24025  // be included in the string output. The member name will be present, but the
 24026  // value will be replaced with "sensitive".
 24027  func (s DeregisterTaskFromMaintenanceWindowInput) GoString() string {
 24028  	return s.String()
 24029  }
 24030  
 24031  // Validate inspects the fields of the type to determine if they are valid.
 24032  func (s *DeregisterTaskFromMaintenanceWindowInput) Validate() error {
 24033  	invalidParams := request.ErrInvalidParams{Context: "DeregisterTaskFromMaintenanceWindowInput"}
 24034  	if s.WindowId == nil {
 24035  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 24036  	}
 24037  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 24038  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 24039  	}
 24040  	if s.WindowTaskId == nil {
 24041  		invalidParams.Add(request.NewErrParamRequired("WindowTaskId"))
 24042  	}
 24043  	if s.WindowTaskId != nil && len(*s.WindowTaskId) < 36 {
 24044  		invalidParams.Add(request.NewErrParamMinLen("WindowTaskId", 36))
 24045  	}
 24046  
 24047  	if invalidParams.Len() > 0 {
 24048  		return invalidParams
 24049  	}
 24050  	return nil
 24051  }
 24052  
 24053  // SetWindowId sets the WindowId field's value.
 24054  func (s *DeregisterTaskFromMaintenanceWindowInput) SetWindowId(v string) *DeregisterTaskFromMaintenanceWindowInput {
 24055  	s.WindowId = &v
 24056  	return s
 24057  }
 24058  
 24059  // SetWindowTaskId sets the WindowTaskId field's value.
 24060  func (s *DeregisterTaskFromMaintenanceWindowInput) SetWindowTaskId(v string) *DeregisterTaskFromMaintenanceWindowInput {
 24061  	s.WindowTaskId = &v
 24062  	return s
 24063  }
 24064  
 24065  type DeregisterTaskFromMaintenanceWindowOutput struct {
 24066  	_ struct{} `type:"structure"`
 24067  
 24068  	// The ID of the maintenance window the task was removed from.
 24069  	WindowId *string `min:"20" type:"string"`
 24070  
 24071  	// The ID of the task removed from the maintenance window.
 24072  	WindowTaskId *string `min:"36" type:"string"`
 24073  }
 24074  
 24075  // String returns the string representation.
 24076  //
 24077  // API parameter values that are decorated as "sensitive" in the API will not
 24078  // be included in the string output. The member name will be present, but the
 24079  // value will be replaced with "sensitive".
 24080  func (s DeregisterTaskFromMaintenanceWindowOutput) String() string {
 24081  	return awsutil.Prettify(s)
 24082  }
 24083  
 24084  // GoString returns the string representation.
 24085  //
 24086  // API parameter values that are decorated as "sensitive" in the API will not
 24087  // be included in the string output. The member name will be present, but the
 24088  // value will be replaced with "sensitive".
 24089  func (s DeregisterTaskFromMaintenanceWindowOutput) GoString() string {
 24090  	return s.String()
 24091  }
 24092  
 24093  // SetWindowId sets the WindowId field's value.
 24094  func (s *DeregisterTaskFromMaintenanceWindowOutput) SetWindowId(v string) *DeregisterTaskFromMaintenanceWindowOutput {
 24095  	s.WindowId = &v
 24096  	return s
 24097  }
 24098  
 24099  // SetWindowTaskId sets the WindowTaskId field's value.
 24100  func (s *DeregisterTaskFromMaintenanceWindowOutput) SetWindowTaskId(v string) *DeregisterTaskFromMaintenanceWindowOutput {
 24101  	s.WindowTaskId = &v
 24102  	return s
 24103  }
 24104  
 24105  // Filter for the DescribeActivation API.
 24106  type DescribeActivationsFilter struct {
 24107  	_ struct{} `type:"structure"`
 24108  
 24109  	// The name of the filter.
 24110  	FilterKey *string `type:"string" enum:"DescribeActivationsFilterKeys"`
 24111  
 24112  	// The filter values.
 24113  	FilterValues []*string `type:"list"`
 24114  }
 24115  
 24116  // String returns the string representation.
 24117  //
 24118  // API parameter values that are decorated as "sensitive" in the API will not
 24119  // be included in the string output. The member name will be present, but the
 24120  // value will be replaced with "sensitive".
 24121  func (s DescribeActivationsFilter) String() string {
 24122  	return awsutil.Prettify(s)
 24123  }
 24124  
 24125  // GoString returns the string representation.
 24126  //
 24127  // API parameter values that are decorated as "sensitive" in the API will not
 24128  // be included in the string output. The member name will be present, but the
 24129  // value will be replaced with "sensitive".
 24130  func (s DescribeActivationsFilter) GoString() string {
 24131  	return s.String()
 24132  }
 24133  
 24134  // SetFilterKey sets the FilterKey field's value.
 24135  func (s *DescribeActivationsFilter) SetFilterKey(v string) *DescribeActivationsFilter {
 24136  	s.FilterKey = &v
 24137  	return s
 24138  }
 24139  
 24140  // SetFilterValues sets the FilterValues field's value.
 24141  func (s *DescribeActivationsFilter) SetFilterValues(v []*string) *DescribeActivationsFilter {
 24142  	s.FilterValues = v
 24143  	return s
 24144  }
 24145  
 24146  type DescribeActivationsInput struct {
 24147  	_ struct{} `type:"structure"`
 24148  
 24149  	// A filter to view information about your activations.
 24150  	Filters []*DescribeActivationsFilter `type:"list"`
 24151  
 24152  	// The maximum number of items to return for this call. The call also returns
 24153  	// a token that you can specify in a subsequent call to get the next set of
 24154  	// results.
 24155  	MaxResults *int64 `min:"1" type:"integer"`
 24156  
 24157  	// A token to start the list. Use this token to get the next set of results.
 24158  	NextToken *string `type:"string"`
 24159  }
 24160  
 24161  // String returns the string representation.
 24162  //
 24163  // API parameter values that are decorated as "sensitive" in the API will not
 24164  // be included in the string output. The member name will be present, but the
 24165  // value will be replaced with "sensitive".
 24166  func (s DescribeActivationsInput) String() string {
 24167  	return awsutil.Prettify(s)
 24168  }
 24169  
 24170  // GoString returns the string representation.
 24171  //
 24172  // API parameter values that are decorated as "sensitive" in the API will not
 24173  // be included in the string output. The member name will be present, but the
 24174  // value will be replaced with "sensitive".
 24175  func (s DescribeActivationsInput) GoString() string {
 24176  	return s.String()
 24177  }
 24178  
 24179  // Validate inspects the fields of the type to determine if they are valid.
 24180  func (s *DescribeActivationsInput) Validate() error {
 24181  	invalidParams := request.ErrInvalidParams{Context: "DescribeActivationsInput"}
 24182  	if s.MaxResults != nil && *s.MaxResults < 1 {
 24183  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 24184  	}
 24185  
 24186  	if invalidParams.Len() > 0 {
 24187  		return invalidParams
 24188  	}
 24189  	return nil
 24190  }
 24191  
 24192  // SetFilters sets the Filters field's value.
 24193  func (s *DescribeActivationsInput) SetFilters(v []*DescribeActivationsFilter) *DescribeActivationsInput {
 24194  	s.Filters = v
 24195  	return s
 24196  }
 24197  
 24198  // SetMaxResults sets the MaxResults field's value.
 24199  func (s *DescribeActivationsInput) SetMaxResults(v int64) *DescribeActivationsInput {
 24200  	s.MaxResults = &v
 24201  	return s
 24202  }
 24203  
 24204  // SetNextToken sets the NextToken field's value.
 24205  func (s *DescribeActivationsInput) SetNextToken(v string) *DescribeActivationsInput {
 24206  	s.NextToken = &v
 24207  	return s
 24208  }
 24209  
 24210  type DescribeActivationsOutput struct {
 24211  	_ struct{} `type:"structure"`
 24212  
 24213  	// A list of activations for your Amazon Web Services account.
 24214  	ActivationList []*Activation `type:"list"`
 24215  
 24216  	// The token for the next set of items to return. Use this token to get the
 24217  	// next set of results.
 24218  	NextToken *string `type:"string"`
 24219  }
 24220  
 24221  // String returns the string representation.
 24222  //
 24223  // API parameter values that are decorated as "sensitive" in the API will not
 24224  // be included in the string output. The member name will be present, but the
 24225  // value will be replaced with "sensitive".
 24226  func (s DescribeActivationsOutput) String() string {
 24227  	return awsutil.Prettify(s)
 24228  }
 24229  
 24230  // GoString returns the string representation.
 24231  //
 24232  // API parameter values that are decorated as "sensitive" in the API will not
 24233  // be included in the string output. The member name will be present, but the
 24234  // value will be replaced with "sensitive".
 24235  func (s DescribeActivationsOutput) GoString() string {
 24236  	return s.String()
 24237  }
 24238  
 24239  // SetActivationList sets the ActivationList field's value.
 24240  func (s *DescribeActivationsOutput) SetActivationList(v []*Activation) *DescribeActivationsOutput {
 24241  	s.ActivationList = v
 24242  	return s
 24243  }
 24244  
 24245  // SetNextToken sets the NextToken field's value.
 24246  func (s *DescribeActivationsOutput) SetNextToken(v string) *DescribeActivationsOutput {
 24247  	s.NextToken = &v
 24248  	return s
 24249  }
 24250  
 24251  type DescribeAssociationExecutionTargetsInput struct {
 24252  	_ struct{} `type:"structure"`
 24253  
 24254  	// The association ID that includes the execution for which you want to view
 24255  	// details.
 24256  	//
 24257  	// AssociationId is a required field
 24258  	AssociationId *string `type:"string" required:"true"`
 24259  
 24260  	// The execution ID for which you want to view details.
 24261  	//
 24262  	// ExecutionId is a required field
 24263  	ExecutionId *string `type:"string" required:"true"`
 24264  
 24265  	// Filters for the request. You can specify the following filters and values.
 24266  	//
 24267  	// Status (EQUAL)
 24268  	//
 24269  	// ResourceId (EQUAL)
 24270  	//
 24271  	// ResourceType (EQUAL)
 24272  	Filters []*AssociationExecutionTargetsFilter `min:"1" type:"list"`
 24273  
 24274  	// The maximum number of items to return for this call. The call also returns
 24275  	// a token that you can specify in a subsequent call to get the next set of
 24276  	// results.
 24277  	MaxResults *int64 `min:"1" type:"integer"`
 24278  
 24279  	// A token to start the list. Use this token to get the next set of results.
 24280  	NextToken *string `type:"string"`
 24281  }
 24282  
 24283  // String returns the string representation.
 24284  //
 24285  // API parameter values that are decorated as "sensitive" in the API will not
 24286  // be included in the string output. The member name will be present, but the
 24287  // value will be replaced with "sensitive".
 24288  func (s DescribeAssociationExecutionTargetsInput) String() string {
 24289  	return awsutil.Prettify(s)
 24290  }
 24291  
 24292  // GoString returns the string representation.
 24293  //
 24294  // API parameter values that are decorated as "sensitive" in the API will not
 24295  // be included in the string output. The member name will be present, but the
 24296  // value will be replaced with "sensitive".
 24297  func (s DescribeAssociationExecutionTargetsInput) GoString() string {
 24298  	return s.String()
 24299  }
 24300  
 24301  // Validate inspects the fields of the type to determine if they are valid.
 24302  func (s *DescribeAssociationExecutionTargetsInput) Validate() error {
 24303  	invalidParams := request.ErrInvalidParams{Context: "DescribeAssociationExecutionTargetsInput"}
 24304  	if s.AssociationId == nil {
 24305  		invalidParams.Add(request.NewErrParamRequired("AssociationId"))
 24306  	}
 24307  	if s.ExecutionId == nil {
 24308  		invalidParams.Add(request.NewErrParamRequired("ExecutionId"))
 24309  	}
 24310  	if s.Filters != nil && len(s.Filters) < 1 {
 24311  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 24312  	}
 24313  	if s.MaxResults != nil && *s.MaxResults < 1 {
 24314  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 24315  	}
 24316  	if s.Filters != nil {
 24317  		for i, v := range s.Filters {
 24318  			if v == nil {
 24319  				continue
 24320  			}
 24321  			if err := v.Validate(); err != nil {
 24322  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 24323  			}
 24324  		}
 24325  	}
 24326  
 24327  	if invalidParams.Len() > 0 {
 24328  		return invalidParams
 24329  	}
 24330  	return nil
 24331  }
 24332  
 24333  // SetAssociationId sets the AssociationId field's value.
 24334  func (s *DescribeAssociationExecutionTargetsInput) SetAssociationId(v string) *DescribeAssociationExecutionTargetsInput {
 24335  	s.AssociationId = &v
 24336  	return s
 24337  }
 24338  
 24339  // SetExecutionId sets the ExecutionId field's value.
 24340  func (s *DescribeAssociationExecutionTargetsInput) SetExecutionId(v string) *DescribeAssociationExecutionTargetsInput {
 24341  	s.ExecutionId = &v
 24342  	return s
 24343  }
 24344  
 24345  // SetFilters sets the Filters field's value.
 24346  func (s *DescribeAssociationExecutionTargetsInput) SetFilters(v []*AssociationExecutionTargetsFilter) *DescribeAssociationExecutionTargetsInput {
 24347  	s.Filters = v
 24348  	return s
 24349  }
 24350  
 24351  // SetMaxResults sets the MaxResults field's value.
 24352  func (s *DescribeAssociationExecutionTargetsInput) SetMaxResults(v int64) *DescribeAssociationExecutionTargetsInput {
 24353  	s.MaxResults = &v
 24354  	return s
 24355  }
 24356  
 24357  // SetNextToken sets the NextToken field's value.
 24358  func (s *DescribeAssociationExecutionTargetsInput) SetNextToken(v string) *DescribeAssociationExecutionTargetsInput {
 24359  	s.NextToken = &v
 24360  	return s
 24361  }
 24362  
 24363  type DescribeAssociationExecutionTargetsOutput struct {
 24364  	_ struct{} `type:"structure"`
 24365  
 24366  	// Information about the execution.
 24367  	AssociationExecutionTargets []*AssociationExecutionTarget `type:"list"`
 24368  
 24369  	// The token for the next set of items to return. Use this token to get the
 24370  	// next set of results.
 24371  	NextToken *string `type:"string"`
 24372  }
 24373  
 24374  // String returns the string representation.
 24375  //
 24376  // API parameter values that are decorated as "sensitive" in the API will not
 24377  // be included in the string output. The member name will be present, but the
 24378  // value will be replaced with "sensitive".
 24379  func (s DescribeAssociationExecutionTargetsOutput) String() string {
 24380  	return awsutil.Prettify(s)
 24381  }
 24382  
 24383  // GoString returns the string representation.
 24384  //
 24385  // API parameter values that are decorated as "sensitive" in the API will not
 24386  // be included in the string output. The member name will be present, but the
 24387  // value will be replaced with "sensitive".
 24388  func (s DescribeAssociationExecutionTargetsOutput) GoString() string {
 24389  	return s.String()
 24390  }
 24391  
 24392  // SetAssociationExecutionTargets sets the AssociationExecutionTargets field's value.
 24393  func (s *DescribeAssociationExecutionTargetsOutput) SetAssociationExecutionTargets(v []*AssociationExecutionTarget) *DescribeAssociationExecutionTargetsOutput {
 24394  	s.AssociationExecutionTargets = v
 24395  	return s
 24396  }
 24397  
 24398  // SetNextToken sets the NextToken field's value.
 24399  func (s *DescribeAssociationExecutionTargetsOutput) SetNextToken(v string) *DescribeAssociationExecutionTargetsOutput {
 24400  	s.NextToken = &v
 24401  	return s
 24402  }
 24403  
 24404  type DescribeAssociationExecutionsInput struct {
 24405  	_ struct{} `type:"structure"`
 24406  
 24407  	// The association ID for which you want to view execution history details.
 24408  	//
 24409  	// AssociationId is a required field
 24410  	AssociationId *string `type:"string" required:"true"`
 24411  
 24412  	// Filters for the request. You can specify the following filters and values.
 24413  	//
 24414  	// ExecutionId (EQUAL)
 24415  	//
 24416  	// Status (EQUAL)
 24417  	//
 24418  	// CreatedTime (EQUAL, GREATER_THAN, LESS_THAN)
 24419  	Filters []*AssociationExecutionFilter `min:"1" type:"list"`
 24420  
 24421  	// The maximum number of items to return for this call. The call also returns
 24422  	// a token that you can specify in a subsequent call to get the next set of
 24423  	// results.
 24424  	MaxResults *int64 `min:"1" type:"integer"`
 24425  
 24426  	// A token to start the list. Use this token to get the next set of results.
 24427  	NextToken *string `type:"string"`
 24428  }
 24429  
 24430  // String returns the string representation.
 24431  //
 24432  // API parameter values that are decorated as "sensitive" in the API will not
 24433  // be included in the string output. The member name will be present, but the
 24434  // value will be replaced with "sensitive".
 24435  func (s DescribeAssociationExecutionsInput) String() string {
 24436  	return awsutil.Prettify(s)
 24437  }
 24438  
 24439  // GoString returns the string representation.
 24440  //
 24441  // API parameter values that are decorated as "sensitive" in the API will not
 24442  // be included in the string output. The member name will be present, but the
 24443  // value will be replaced with "sensitive".
 24444  func (s DescribeAssociationExecutionsInput) GoString() string {
 24445  	return s.String()
 24446  }
 24447  
 24448  // Validate inspects the fields of the type to determine if they are valid.
 24449  func (s *DescribeAssociationExecutionsInput) Validate() error {
 24450  	invalidParams := request.ErrInvalidParams{Context: "DescribeAssociationExecutionsInput"}
 24451  	if s.AssociationId == nil {
 24452  		invalidParams.Add(request.NewErrParamRequired("AssociationId"))
 24453  	}
 24454  	if s.Filters != nil && len(s.Filters) < 1 {
 24455  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 24456  	}
 24457  	if s.MaxResults != nil && *s.MaxResults < 1 {
 24458  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 24459  	}
 24460  	if s.Filters != nil {
 24461  		for i, v := range s.Filters {
 24462  			if v == nil {
 24463  				continue
 24464  			}
 24465  			if err := v.Validate(); err != nil {
 24466  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 24467  			}
 24468  		}
 24469  	}
 24470  
 24471  	if invalidParams.Len() > 0 {
 24472  		return invalidParams
 24473  	}
 24474  	return nil
 24475  }
 24476  
 24477  // SetAssociationId sets the AssociationId field's value.
 24478  func (s *DescribeAssociationExecutionsInput) SetAssociationId(v string) *DescribeAssociationExecutionsInput {
 24479  	s.AssociationId = &v
 24480  	return s
 24481  }
 24482  
 24483  // SetFilters sets the Filters field's value.
 24484  func (s *DescribeAssociationExecutionsInput) SetFilters(v []*AssociationExecutionFilter) *DescribeAssociationExecutionsInput {
 24485  	s.Filters = v
 24486  	return s
 24487  }
 24488  
 24489  // SetMaxResults sets the MaxResults field's value.
 24490  func (s *DescribeAssociationExecutionsInput) SetMaxResults(v int64) *DescribeAssociationExecutionsInput {
 24491  	s.MaxResults = &v
 24492  	return s
 24493  }
 24494  
 24495  // SetNextToken sets the NextToken field's value.
 24496  func (s *DescribeAssociationExecutionsInput) SetNextToken(v string) *DescribeAssociationExecutionsInput {
 24497  	s.NextToken = &v
 24498  	return s
 24499  }
 24500  
 24501  type DescribeAssociationExecutionsOutput struct {
 24502  	_ struct{} `type:"structure"`
 24503  
 24504  	// A list of the executions for the specified association ID.
 24505  	AssociationExecutions []*AssociationExecution `type:"list"`
 24506  
 24507  	// The token for the next set of items to return. Use this token to get the
 24508  	// next set of results.
 24509  	NextToken *string `type:"string"`
 24510  }
 24511  
 24512  // String returns the string representation.
 24513  //
 24514  // API parameter values that are decorated as "sensitive" in the API will not
 24515  // be included in the string output. The member name will be present, but the
 24516  // value will be replaced with "sensitive".
 24517  func (s DescribeAssociationExecutionsOutput) String() string {
 24518  	return awsutil.Prettify(s)
 24519  }
 24520  
 24521  // GoString returns the string representation.
 24522  //
 24523  // API parameter values that are decorated as "sensitive" in the API will not
 24524  // be included in the string output. The member name will be present, but the
 24525  // value will be replaced with "sensitive".
 24526  func (s DescribeAssociationExecutionsOutput) GoString() string {
 24527  	return s.String()
 24528  }
 24529  
 24530  // SetAssociationExecutions sets the AssociationExecutions field's value.
 24531  func (s *DescribeAssociationExecutionsOutput) SetAssociationExecutions(v []*AssociationExecution) *DescribeAssociationExecutionsOutput {
 24532  	s.AssociationExecutions = v
 24533  	return s
 24534  }
 24535  
 24536  // SetNextToken sets the NextToken field's value.
 24537  func (s *DescribeAssociationExecutionsOutput) SetNextToken(v string) *DescribeAssociationExecutionsOutput {
 24538  	s.NextToken = &v
 24539  	return s
 24540  }
 24541  
 24542  type DescribeAssociationInput struct {
 24543  	_ struct{} `type:"structure"`
 24544  
 24545  	// The association ID for which you want information.
 24546  	AssociationId *string `type:"string"`
 24547  
 24548  	// Specify the association version to retrieve. To view the latest version,
 24549  	// either specify $LATEST for this parameter, or omit this parameter. To view
 24550  	// a list of all associations for an instance, use ListAssociations. To get
 24551  	// a list of versions for a specific association, use ListAssociationVersions.
 24552  	AssociationVersion *string `type:"string"`
 24553  
 24554  	// The instance ID.
 24555  	InstanceId *string `type:"string"`
 24556  
 24557  	// The name of the SSM document.
 24558  	Name *string `type:"string"`
 24559  }
 24560  
 24561  // String returns the string representation.
 24562  //
 24563  // API parameter values that are decorated as "sensitive" in the API will not
 24564  // be included in the string output. The member name will be present, but the
 24565  // value will be replaced with "sensitive".
 24566  func (s DescribeAssociationInput) String() string {
 24567  	return awsutil.Prettify(s)
 24568  }
 24569  
 24570  // GoString returns the string representation.
 24571  //
 24572  // API parameter values that are decorated as "sensitive" in the API will not
 24573  // be included in the string output. The member name will be present, but the
 24574  // value will be replaced with "sensitive".
 24575  func (s DescribeAssociationInput) GoString() string {
 24576  	return s.String()
 24577  }
 24578  
 24579  // SetAssociationId sets the AssociationId field's value.
 24580  func (s *DescribeAssociationInput) SetAssociationId(v string) *DescribeAssociationInput {
 24581  	s.AssociationId = &v
 24582  	return s
 24583  }
 24584  
 24585  // SetAssociationVersion sets the AssociationVersion field's value.
 24586  func (s *DescribeAssociationInput) SetAssociationVersion(v string) *DescribeAssociationInput {
 24587  	s.AssociationVersion = &v
 24588  	return s
 24589  }
 24590  
 24591  // SetInstanceId sets the InstanceId field's value.
 24592  func (s *DescribeAssociationInput) SetInstanceId(v string) *DescribeAssociationInput {
 24593  	s.InstanceId = &v
 24594  	return s
 24595  }
 24596  
 24597  // SetName sets the Name field's value.
 24598  func (s *DescribeAssociationInput) SetName(v string) *DescribeAssociationInput {
 24599  	s.Name = &v
 24600  	return s
 24601  }
 24602  
 24603  type DescribeAssociationOutput struct {
 24604  	_ struct{} `type:"structure"`
 24605  
 24606  	// Information about the association.
 24607  	AssociationDescription *AssociationDescription `type:"structure"`
 24608  }
 24609  
 24610  // String returns the string representation.
 24611  //
 24612  // API parameter values that are decorated as "sensitive" in the API will not
 24613  // be included in the string output. The member name will be present, but the
 24614  // value will be replaced with "sensitive".
 24615  func (s DescribeAssociationOutput) String() string {
 24616  	return awsutil.Prettify(s)
 24617  }
 24618  
 24619  // GoString returns the string representation.
 24620  //
 24621  // API parameter values that are decorated as "sensitive" in the API will not
 24622  // be included in the string output. The member name will be present, but the
 24623  // value will be replaced with "sensitive".
 24624  func (s DescribeAssociationOutput) GoString() string {
 24625  	return s.String()
 24626  }
 24627  
 24628  // SetAssociationDescription sets the AssociationDescription field's value.
 24629  func (s *DescribeAssociationOutput) SetAssociationDescription(v *AssociationDescription) *DescribeAssociationOutput {
 24630  	s.AssociationDescription = v
 24631  	return s
 24632  }
 24633  
 24634  type DescribeAutomationExecutionsInput struct {
 24635  	_ struct{} `type:"structure"`
 24636  
 24637  	// Filters used to limit the scope of executions that are requested.
 24638  	Filters []*AutomationExecutionFilter `min:"1" type:"list"`
 24639  
 24640  	// The maximum number of items to return for this call. The call also returns
 24641  	// a token that you can specify in a subsequent call to get the next set of
 24642  	// results.
 24643  	MaxResults *int64 `min:"1" type:"integer"`
 24644  
 24645  	// The token for the next set of items to return. (You received this token from
 24646  	// a previous call.)
 24647  	NextToken *string `type:"string"`
 24648  }
 24649  
 24650  // String returns the string representation.
 24651  //
 24652  // API parameter values that are decorated as "sensitive" in the API will not
 24653  // be included in the string output. The member name will be present, but the
 24654  // value will be replaced with "sensitive".
 24655  func (s DescribeAutomationExecutionsInput) String() string {
 24656  	return awsutil.Prettify(s)
 24657  }
 24658  
 24659  // GoString returns the string representation.
 24660  //
 24661  // API parameter values that are decorated as "sensitive" in the API will not
 24662  // be included in the string output. The member name will be present, but the
 24663  // value will be replaced with "sensitive".
 24664  func (s DescribeAutomationExecutionsInput) GoString() string {
 24665  	return s.String()
 24666  }
 24667  
 24668  // Validate inspects the fields of the type to determine if they are valid.
 24669  func (s *DescribeAutomationExecutionsInput) Validate() error {
 24670  	invalidParams := request.ErrInvalidParams{Context: "DescribeAutomationExecutionsInput"}
 24671  	if s.Filters != nil && len(s.Filters) < 1 {
 24672  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 24673  	}
 24674  	if s.MaxResults != nil && *s.MaxResults < 1 {
 24675  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 24676  	}
 24677  	if s.Filters != nil {
 24678  		for i, v := range s.Filters {
 24679  			if v == nil {
 24680  				continue
 24681  			}
 24682  			if err := v.Validate(); err != nil {
 24683  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 24684  			}
 24685  		}
 24686  	}
 24687  
 24688  	if invalidParams.Len() > 0 {
 24689  		return invalidParams
 24690  	}
 24691  	return nil
 24692  }
 24693  
 24694  // SetFilters sets the Filters field's value.
 24695  func (s *DescribeAutomationExecutionsInput) SetFilters(v []*AutomationExecutionFilter) *DescribeAutomationExecutionsInput {
 24696  	s.Filters = v
 24697  	return s
 24698  }
 24699  
 24700  // SetMaxResults sets the MaxResults field's value.
 24701  func (s *DescribeAutomationExecutionsInput) SetMaxResults(v int64) *DescribeAutomationExecutionsInput {
 24702  	s.MaxResults = &v
 24703  	return s
 24704  }
 24705  
 24706  // SetNextToken sets the NextToken field's value.
 24707  func (s *DescribeAutomationExecutionsInput) SetNextToken(v string) *DescribeAutomationExecutionsInput {
 24708  	s.NextToken = &v
 24709  	return s
 24710  }
 24711  
 24712  type DescribeAutomationExecutionsOutput struct {
 24713  	_ struct{} `type:"structure"`
 24714  
 24715  	// The list of details about each automation execution which has occurred which
 24716  	// matches the filter specification, if any.
 24717  	AutomationExecutionMetadataList []*AutomationExecutionMetadata `type:"list"`
 24718  
 24719  	// The token to use when requesting the next set of items. If there are no additional
 24720  	// items to return, the string is empty.
 24721  	NextToken *string `type:"string"`
 24722  }
 24723  
 24724  // String returns the string representation.
 24725  //
 24726  // API parameter values that are decorated as "sensitive" in the API will not
 24727  // be included in the string output. The member name will be present, but the
 24728  // value will be replaced with "sensitive".
 24729  func (s DescribeAutomationExecutionsOutput) String() string {
 24730  	return awsutil.Prettify(s)
 24731  }
 24732  
 24733  // GoString returns the string representation.
 24734  //
 24735  // API parameter values that are decorated as "sensitive" in the API will not
 24736  // be included in the string output. The member name will be present, but the
 24737  // value will be replaced with "sensitive".
 24738  func (s DescribeAutomationExecutionsOutput) GoString() string {
 24739  	return s.String()
 24740  }
 24741  
 24742  // SetAutomationExecutionMetadataList sets the AutomationExecutionMetadataList field's value.
 24743  func (s *DescribeAutomationExecutionsOutput) SetAutomationExecutionMetadataList(v []*AutomationExecutionMetadata) *DescribeAutomationExecutionsOutput {
 24744  	s.AutomationExecutionMetadataList = v
 24745  	return s
 24746  }
 24747  
 24748  // SetNextToken sets the NextToken field's value.
 24749  func (s *DescribeAutomationExecutionsOutput) SetNextToken(v string) *DescribeAutomationExecutionsOutput {
 24750  	s.NextToken = &v
 24751  	return s
 24752  }
 24753  
 24754  type DescribeAutomationStepExecutionsInput struct {
 24755  	_ struct{} `type:"structure"`
 24756  
 24757  	// The Automation execution ID for which you want step execution descriptions.
 24758  	//
 24759  	// AutomationExecutionId is a required field
 24760  	AutomationExecutionId *string `min:"36" type:"string" required:"true"`
 24761  
 24762  	// One or more filters to limit the number of step executions returned by the
 24763  	// request.
 24764  	Filters []*StepExecutionFilter `min:"1" type:"list"`
 24765  
 24766  	// The maximum number of items to return for this call. The call also returns
 24767  	// a token that you can specify in a subsequent call to get the next set of
 24768  	// results.
 24769  	MaxResults *int64 `min:"1" type:"integer"`
 24770  
 24771  	// The token for the next set of items to return. (You received this token from
 24772  	// a previous call.)
 24773  	NextToken *string `type:"string"`
 24774  
 24775  	// Indicates whether to list step executions in reverse order by start time.
 24776  	// The default value is 'false'.
 24777  	ReverseOrder *bool `type:"boolean"`
 24778  }
 24779  
 24780  // String returns the string representation.
 24781  //
 24782  // API parameter values that are decorated as "sensitive" in the API will not
 24783  // be included in the string output. The member name will be present, but the
 24784  // value will be replaced with "sensitive".
 24785  func (s DescribeAutomationStepExecutionsInput) String() string {
 24786  	return awsutil.Prettify(s)
 24787  }
 24788  
 24789  // GoString returns the string representation.
 24790  //
 24791  // API parameter values that are decorated as "sensitive" in the API will not
 24792  // be included in the string output. The member name will be present, but the
 24793  // value will be replaced with "sensitive".
 24794  func (s DescribeAutomationStepExecutionsInput) GoString() string {
 24795  	return s.String()
 24796  }
 24797  
 24798  // Validate inspects the fields of the type to determine if they are valid.
 24799  func (s *DescribeAutomationStepExecutionsInput) Validate() error {
 24800  	invalidParams := request.ErrInvalidParams{Context: "DescribeAutomationStepExecutionsInput"}
 24801  	if s.AutomationExecutionId == nil {
 24802  		invalidParams.Add(request.NewErrParamRequired("AutomationExecutionId"))
 24803  	}
 24804  	if s.AutomationExecutionId != nil && len(*s.AutomationExecutionId) < 36 {
 24805  		invalidParams.Add(request.NewErrParamMinLen("AutomationExecutionId", 36))
 24806  	}
 24807  	if s.Filters != nil && len(s.Filters) < 1 {
 24808  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 24809  	}
 24810  	if s.MaxResults != nil && *s.MaxResults < 1 {
 24811  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 24812  	}
 24813  	if s.Filters != nil {
 24814  		for i, v := range s.Filters {
 24815  			if v == nil {
 24816  				continue
 24817  			}
 24818  			if err := v.Validate(); err != nil {
 24819  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 24820  			}
 24821  		}
 24822  	}
 24823  
 24824  	if invalidParams.Len() > 0 {
 24825  		return invalidParams
 24826  	}
 24827  	return nil
 24828  }
 24829  
 24830  // SetAutomationExecutionId sets the AutomationExecutionId field's value.
 24831  func (s *DescribeAutomationStepExecutionsInput) SetAutomationExecutionId(v string) *DescribeAutomationStepExecutionsInput {
 24832  	s.AutomationExecutionId = &v
 24833  	return s
 24834  }
 24835  
 24836  // SetFilters sets the Filters field's value.
 24837  func (s *DescribeAutomationStepExecutionsInput) SetFilters(v []*StepExecutionFilter) *DescribeAutomationStepExecutionsInput {
 24838  	s.Filters = v
 24839  	return s
 24840  }
 24841  
 24842  // SetMaxResults sets the MaxResults field's value.
 24843  func (s *DescribeAutomationStepExecutionsInput) SetMaxResults(v int64) *DescribeAutomationStepExecutionsInput {
 24844  	s.MaxResults = &v
 24845  	return s
 24846  }
 24847  
 24848  // SetNextToken sets the NextToken field's value.
 24849  func (s *DescribeAutomationStepExecutionsInput) SetNextToken(v string) *DescribeAutomationStepExecutionsInput {
 24850  	s.NextToken = &v
 24851  	return s
 24852  }
 24853  
 24854  // SetReverseOrder sets the ReverseOrder field's value.
 24855  func (s *DescribeAutomationStepExecutionsInput) SetReverseOrder(v bool) *DescribeAutomationStepExecutionsInput {
 24856  	s.ReverseOrder = &v
 24857  	return s
 24858  }
 24859  
 24860  type DescribeAutomationStepExecutionsOutput struct {
 24861  	_ struct{} `type:"structure"`
 24862  
 24863  	// The token to use when requesting the next set of items. If there are no additional
 24864  	// items to return, the string is empty.
 24865  	NextToken *string `type:"string"`
 24866  
 24867  	// A list of details about the current state of all steps that make up an execution.
 24868  	StepExecutions []*StepExecution `type:"list"`
 24869  }
 24870  
 24871  // String returns the string representation.
 24872  //
 24873  // API parameter values that are decorated as "sensitive" in the API will not
 24874  // be included in the string output. The member name will be present, but the
 24875  // value will be replaced with "sensitive".
 24876  func (s DescribeAutomationStepExecutionsOutput) String() string {
 24877  	return awsutil.Prettify(s)
 24878  }
 24879  
 24880  // GoString returns the string representation.
 24881  //
 24882  // API parameter values that are decorated as "sensitive" in the API will not
 24883  // be included in the string output. The member name will be present, but the
 24884  // value will be replaced with "sensitive".
 24885  func (s DescribeAutomationStepExecutionsOutput) GoString() string {
 24886  	return s.String()
 24887  }
 24888  
 24889  // SetNextToken sets the NextToken field's value.
 24890  func (s *DescribeAutomationStepExecutionsOutput) SetNextToken(v string) *DescribeAutomationStepExecutionsOutput {
 24891  	s.NextToken = &v
 24892  	return s
 24893  }
 24894  
 24895  // SetStepExecutions sets the StepExecutions field's value.
 24896  func (s *DescribeAutomationStepExecutionsOutput) SetStepExecutions(v []*StepExecution) *DescribeAutomationStepExecutionsOutput {
 24897  	s.StepExecutions = v
 24898  	return s
 24899  }
 24900  
 24901  type DescribeAvailablePatchesInput struct {
 24902  	_ struct{} `type:"structure"`
 24903  
 24904  	// Each element in the array is a structure containing a key-value pair.
 24905  	//
 24906  	// Windows Server
 24907  	//
 24908  	// Supported keys for Windows Server instance patches include the following:
 24909  	//
 24910  	//    * PATCH_SET Sample values: OS | APPLICATION
 24911  	//
 24912  	//    * PRODUCT Sample values: WindowsServer2012 | Office 2010 | MicrosoftDefenderAntivirus
 24913  	//
 24914  	//    * PRODUCT_FAMILY Sample values: Windows | Office
 24915  	//
 24916  	//    * MSRC_SEVERITY Sample values: ServicePacks | Important | Moderate
 24917  	//
 24918  	//    * CLASSIFICATION Sample values: ServicePacks | SecurityUpdates | DefinitionUpdates
 24919  	//
 24920  	//    * PATCH_ID Sample values: KB123456 | KB4516046
 24921  	//
 24922  	// Linux
 24923  	//
 24924  	// When specifying filters for Linux patches, you must specify a key-pair for
 24925  	// PRODUCT. For example, using the Command Line Interface (CLI), the following
 24926  	// command fails:
 24927  	//
 24928  	// aws ssm describe-available-patches --filters Key=CVE_ID,Values=CVE-2018-3615
 24929  	//
 24930  	// However, the following command succeeds:
 24931  	//
 24932  	// aws ssm describe-available-patches --filters Key=PRODUCT,Values=AmazonLinux2018.03
 24933  	// Key=CVE_ID,Values=CVE-2018-3615
 24934  	//
 24935  	// Supported keys for Linux instance patches include the following:
 24936  	//
 24937  	//    * PRODUCT Sample values: AmazonLinux2018.03 | AmazonLinux2.0
 24938  	//
 24939  	//    * NAME Sample values: kernel-headers | samba-python | php
 24940  	//
 24941  	//    * SEVERITY Sample values: Critical | Important | Medium | Low
 24942  	//
 24943  	//    * EPOCH Sample values: 0 | 1
 24944  	//
 24945  	//    * VERSION Sample values: 78.6.1 | 4.10.16
 24946  	//
 24947  	//    * RELEASE Sample values: 9.56.amzn1 | 1.amzn2
 24948  	//
 24949  	//    * ARCH Sample values: i686 | x86_64
 24950  	//
 24951  	//    * REPOSITORY Sample values: Core | Updates
 24952  	//
 24953  	//    * ADVISORY_ID Sample values: ALAS-2018-1058 | ALAS2-2021-1594
 24954  	//
 24955  	//    * CVE_ID Sample values: CVE-2018-3615 | CVE-2020-1472
 24956  	//
 24957  	//    * BUGZILLA_ID Sample values: 1463241
 24958  	Filters []*PatchOrchestratorFilter `type:"list"`
 24959  
 24960  	// The maximum number of patches to return (per page).
 24961  	MaxResults *int64 `min:"1" type:"integer"`
 24962  
 24963  	// The token for the next set of items to return. (You received this token from
 24964  	// a previous call.)
 24965  	NextToken *string `type:"string"`
 24966  }
 24967  
 24968  // String returns the string representation.
 24969  //
 24970  // API parameter values that are decorated as "sensitive" in the API will not
 24971  // be included in the string output. The member name will be present, but the
 24972  // value will be replaced with "sensitive".
 24973  func (s DescribeAvailablePatchesInput) String() string {
 24974  	return awsutil.Prettify(s)
 24975  }
 24976  
 24977  // GoString returns the string representation.
 24978  //
 24979  // API parameter values that are decorated as "sensitive" in the API will not
 24980  // be included in the string output. The member name will be present, but the
 24981  // value will be replaced with "sensitive".
 24982  func (s DescribeAvailablePatchesInput) GoString() string {
 24983  	return s.String()
 24984  }
 24985  
 24986  // Validate inspects the fields of the type to determine if they are valid.
 24987  func (s *DescribeAvailablePatchesInput) Validate() error {
 24988  	invalidParams := request.ErrInvalidParams{Context: "DescribeAvailablePatchesInput"}
 24989  	if s.MaxResults != nil && *s.MaxResults < 1 {
 24990  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 24991  	}
 24992  	if s.Filters != nil {
 24993  		for i, v := range s.Filters {
 24994  			if v == nil {
 24995  				continue
 24996  			}
 24997  			if err := v.Validate(); err != nil {
 24998  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 24999  			}
 25000  		}
 25001  	}
 25002  
 25003  	if invalidParams.Len() > 0 {
 25004  		return invalidParams
 25005  	}
 25006  	return nil
 25007  }
 25008  
 25009  // SetFilters sets the Filters field's value.
 25010  func (s *DescribeAvailablePatchesInput) SetFilters(v []*PatchOrchestratorFilter) *DescribeAvailablePatchesInput {
 25011  	s.Filters = v
 25012  	return s
 25013  }
 25014  
 25015  // SetMaxResults sets the MaxResults field's value.
 25016  func (s *DescribeAvailablePatchesInput) SetMaxResults(v int64) *DescribeAvailablePatchesInput {
 25017  	s.MaxResults = &v
 25018  	return s
 25019  }
 25020  
 25021  // SetNextToken sets the NextToken field's value.
 25022  func (s *DescribeAvailablePatchesInput) SetNextToken(v string) *DescribeAvailablePatchesInput {
 25023  	s.NextToken = &v
 25024  	return s
 25025  }
 25026  
 25027  type DescribeAvailablePatchesOutput struct {
 25028  	_ struct{} `type:"structure"`
 25029  
 25030  	// The token to use when requesting the next set of items. If there are no additional
 25031  	// items to return, the string is empty.
 25032  	NextToken *string `type:"string"`
 25033  
 25034  	// An array of patches. Each entry in the array is a patch structure.
 25035  	Patches []*Patch `type:"list"`
 25036  }
 25037  
 25038  // String returns the string representation.
 25039  //
 25040  // API parameter values that are decorated as "sensitive" in the API will not
 25041  // be included in the string output. The member name will be present, but the
 25042  // value will be replaced with "sensitive".
 25043  func (s DescribeAvailablePatchesOutput) String() string {
 25044  	return awsutil.Prettify(s)
 25045  }
 25046  
 25047  // GoString returns the string representation.
 25048  //
 25049  // API parameter values that are decorated as "sensitive" in the API will not
 25050  // be included in the string output. The member name will be present, but the
 25051  // value will be replaced with "sensitive".
 25052  func (s DescribeAvailablePatchesOutput) GoString() string {
 25053  	return s.String()
 25054  }
 25055  
 25056  // SetNextToken sets the NextToken field's value.
 25057  func (s *DescribeAvailablePatchesOutput) SetNextToken(v string) *DescribeAvailablePatchesOutput {
 25058  	s.NextToken = &v
 25059  	return s
 25060  }
 25061  
 25062  // SetPatches sets the Patches field's value.
 25063  func (s *DescribeAvailablePatchesOutput) SetPatches(v []*Patch) *DescribeAvailablePatchesOutput {
 25064  	s.Patches = v
 25065  	return s
 25066  }
 25067  
 25068  type DescribeDocumentInput struct {
 25069  	_ struct{} `type:"structure"`
 25070  
 25071  	// The document version for which you want information. Can be a specific version
 25072  	// or the default version.
 25073  	DocumentVersion *string `type:"string"`
 25074  
 25075  	// The name of the SSM document.
 25076  	//
 25077  	// Name is a required field
 25078  	Name *string `type:"string" required:"true"`
 25079  
 25080  	// An optional field specifying the version of the artifact associated with
 25081  	// the document. For example, "Release 12, Update 6". This value is unique across
 25082  	// all versions of a document, and can't be changed.
 25083  	VersionName *string `type:"string"`
 25084  }
 25085  
 25086  // String returns the string representation.
 25087  //
 25088  // API parameter values that are decorated as "sensitive" in the API will not
 25089  // be included in the string output. The member name will be present, but the
 25090  // value will be replaced with "sensitive".
 25091  func (s DescribeDocumentInput) String() string {
 25092  	return awsutil.Prettify(s)
 25093  }
 25094  
 25095  // GoString returns the string representation.
 25096  //
 25097  // API parameter values that are decorated as "sensitive" in the API will not
 25098  // be included in the string output. The member name will be present, but the
 25099  // value will be replaced with "sensitive".
 25100  func (s DescribeDocumentInput) GoString() string {
 25101  	return s.String()
 25102  }
 25103  
 25104  // Validate inspects the fields of the type to determine if they are valid.
 25105  func (s *DescribeDocumentInput) Validate() error {
 25106  	invalidParams := request.ErrInvalidParams{Context: "DescribeDocumentInput"}
 25107  	if s.Name == nil {
 25108  		invalidParams.Add(request.NewErrParamRequired("Name"))
 25109  	}
 25110  
 25111  	if invalidParams.Len() > 0 {
 25112  		return invalidParams
 25113  	}
 25114  	return nil
 25115  }
 25116  
 25117  // SetDocumentVersion sets the DocumentVersion field's value.
 25118  func (s *DescribeDocumentInput) SetDocumentVersion(v string) *DescribeDocumentInput {
 25119  	s.DocumentVersion = &v
 25120  	return s
 25121  }
 25122  
 25123  // SetName sets the Name field's value.
 25124  func (s *DescribeDocumentInput) SetName(v string) *DescribeDocumentInput {
 25125  	s.Name = &v
 25126  	return s
 25127  }
 25128  
 25129  // SetVersionName sets the VersionName field's value.
 25130  func (s *DescribeDocumentInput) SetVersionName(v string) *DescribeDocumentInput {
 25131  	s.VersionName = &v
 25132  	return s
 25133  }
 25134  
 25135  type DescribeDocumentOutput struct {
 25136  	_ struct{} `type:"structure"`
 25137  
 25138  	// Information about the SSM document.
 25139  	Document *DocumentDescription `type:"structure"`
 25140  }
 25141  
 25142  // String returns the string representation.
 25143  //
 25144  // API parameter values that are decorated as "sensitive" in the API will not
 25145  // be included in the string output. The member name will be present, but the
 25146  // value will be replaced with "sensitive".
 25147  func (s DescribeDocumentOutput) String() string {
 25148  	return awsutil.Prettify(s)
 25149  }
 25150  
 25151  // GoString returns the string representation.
 25152  //
 25153  // API parameter values that are decorated as "sensitive" in the API will not
 25154  // be included in the string output. The member name will be present, but the
 25155  // value will be replaced with "sensitive".
 25156  func (s DescribeDocumentOutput) GoString() string {
 25157  	return s.String()
 25158  }
 25159  
 25160  // SetDocument sets the Document field's value.
 25161  func (s *DescribeDocumentOutput) SetDocument(v *DocumentDescription) *DescribeDocumentOutput {
 25162  	s.Document = v
 25163  	return s
 25164  }
 25165  
 25166  type DescribeDocumentPermissionInput struct {
 25167  	_ struct{} `type:"structure"`
 25168  
 25169  	// The maximum number of items to return for this call. The call also returns
 25170  	// a token that you can specify in a subsequent call to get the next set of
 25171  	// results.
 25172  	MaxResults *int64 `min:"1" type:"integer"`
 25173  
 25174  	// The name of the document for which you are the owner.
 25175  	//
 25176  	// Name is a required field
 25177  	Name *string `type:"string" required:"true"`
 25178  
 25179  	// The token for the next set of items to return. (You received this token from
 25180  	// a previous call.)
 25181  	NextToken *string `type:"string"`
 25182  
 25183  	// The permission type for the document. The permission type can be Share.
 25184  	//
 25185  	// PermissionType is a required field
 25186  	PermissionType *string `type:"string" required:"true" enum:"DocumentPermissionType"`
 25187  }
 25188  
 25189  // String returns the string representation.
 25190  //
 25191  // API parameter values that are decorated as "sensitive" in the API will not
 25192  // be included in the string output. The member name will be present, but the
 25193  // value will be replaced with "sensitive".
 25194  func (s DescribeDocumentPermissionInput) String() string {
 25195  	return awsutil.Prettify(s)
 25196  }
 25197  
 25198  // GoString returns the string representation.
 25199  //
 25200  // API parameter values that are decorated as "sensitive" in the API will not
 25201  // be included in the string output. The member name will be present, but the
 25202  // value will be replaced with "sensitive".
 25203  func (s DescribeDocumentPermissionInput) GoString() string {
 25204  	return s.String()
 25205  }
 25206  
 25207  // Validate inspects the fields of the type to determine if they are valid.
 25208  func (s *DescribeDocumentPermissionInput) Validate() error {
 25209  	invalidParams := request.ErrInvalidParams{Context: "DescribeDocumentPermissionInput"}
 25210  	if s.MaxResults != nil && *s.MaxResults < 1 {
 25211  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 25212  	}
 25213  	if s.Name == nil {
 25214  		invalidParams.Add(request.NewErrParamRequired("Name"))
 25215  	}
 25216  	if s.PermissionType == nil {
 25217  		invalidParams.Add(request.NewErrParamRequired("PermissionType"))
 25218  	}
 25219  
 25220  	if invalidParams.Len() > 0 {
 25221  		return invalidParams
 25222  	}
 25223  	return nil
 25224  }
 25225  
 25226  // SetMaxResults sets the MaxResults field's value.
 25227  func (s *DescribeDocumentPermissionInput) SetMaxResults(v int64) *DescribeDocumentPermissionInput {
 25228  	s.MaxResults = &v
 25229  	return s
 25230  }
 25231  
 25232  // SetName sets the Name field's value.
 25233  func (s *DescribeDocumentPermissionInput) SetName(v string) *DescribeDocumentPermissionInput {
 25234  	s.Name = &v
 25235  	return s
 25236  }
 25237  
 25238  // SetNextToken sets the NextToken field's value.
 25239  func (s *DescribeDocumentPermissionInput) SetNextToken(v string) *DescribeDocumentPermissionInput {
 25240  	s.NextToken = &v
 25241  	return s
 25242  }
 25243  
 25244  // SetPermissionType sets the PermissionType field's value.
 25245  func (s *DescribeDocumentPermissionInput) SetPermissionType(v string) *DescribeDocumentPermissionInput {
 25246  	s.PermissionType = &v
 25247  	return s
 25248  }
 25249  
 25250  type DescribeDocumentPermissionOutput struct {
 25251  	_ struct{} `type:"structure"`
 25252  
 25253  	// The account IDs that have permission to use this document. The ID can be
 25254  	// either an Amazon Web Services account or All.
 25255  	AccountIds []*string `type:"list"`
 25256  
 25257  	// A list of Amazon Web Services accounts where the current document is shared
 25258  	// and the version shared with each account.
 25259  	AccountSharingInfoList []*AccountSharingInfo `type:"list"`
 25260  
 25261  	// The token for the next set of items to return. Use this token to get the
 25262  	// next set of results.
 25263  	NextToken *string `type:"string"`
 25264  }
 25265  
 25266  // String returns the string representation.
 25267  //
 25268  // API parameter values that are decorated as "sensitive" in the API will not
 25269  // be included in the string output. The member name will be present, but the
 25270  // value will be replaced with "sensitive".
 25271  func (s DescribeDocumentPermissionOutput) String() string {
 25272  	return awsutil.Prettify(s)
 25273  }
 25274  
 25275  // GoString returns the string representation.
 25276  //
 25277  // API parameter values that are decorated as "sensitive" in the API will not
 25278  // be included in the string output. The member name will be present, but the
 25279  // value will be replaced with "sensitive".
 25280  func (s DescribeDocumentPermissionOutput) GoString() string {
 25281  	return s.String()
 25282  }
 25283  
 25284  // SetAccountIds sets the AccountIds field's value.
 25285  func (s *DescribeDocumentPermissionOutput) SetAccountIds(v []*string) *DescribeDocumentPermissionOutput {
 25286  	s.AccountIds = v
 25287  	return s
 25288  }
 25289  
 25290  // SetAccountSharingInfoList sets the AccountSharingInfoList field's value.
 25291  func (s *DescribeDocumentPermissionOutput) SetAccountSharingInfoList(v []*AccountSharingInfo) *DescribeDocumentPermissionOutput {
 25292  	s.AccountSharingInfoList = v
 25293  	return s
 25294  }
 25295  
 25296  // SetNextToken sets the NextToken field's value.
 25297  func (s *DescribeDocumentPermissionOutput) SetNextToken(v string) *DescribeDocumentPermissionOutput {
 25298  	s.NextToken = &v
 25299  	return s
 25300  }
 25301  
 25302  type DescribeEffectiveInstanceAssociationsInput struct {
 25303  	_ struct{} `type:"structure"`
 25304  
 25305  	// The instance ID for which you want to view all associations.
 25306  	//
 25307  	// InstanceId is a required field
 25308  	InstanceId *string `type:"string" required:"true"`
 25309  
 25310  	// The maximum number of items to return for this call. The call also returns
 25311  	// a token that you can specify in a subsequent call to get the next set of
 25312  	// results.
 25313  	MaxResults *int64 `min:"1" type:"integer"`
 25314  
 25315  	// The token for the next set of items to return. (You received this token from
 25316  	// a previous call.)
 25317  	NextToken *string `type:"string"`
 25318  }
 25319  
 25320  // String returns the string representation.
 25321  //
 25322  // API parameter values that are decorated as "sensitive" in the API will not
 25323  // be included in the string output. The member name will be present, but the
 25324  // value will be replaced with "sensitive".
 25325  func (s DescribeEffectiveInstanceAssociationsInput) String() string {
 25326  	return awsutil.Prettify(s)
 25327  }
 25328  
 25329  // GoString returns the string representation.
 25330  //
 25331  // API parameter values that are decorated as "sensitive" in the API will not
 25332  // be included in the string output. The member name will be present, but the
 25333  // value will be replaced with "sensitive".
 25334  func (s DescribeEffectiveInstanceAssociationsInput) GoString() string {
 25335  	return s.String()
 25336  }
 25337  
 25338  // Validate inspects the fields of the type to determine if they are valid.
 25339  func (s *DescribeEffectiveInstanceAssociationsInput) Validate() error {
 25340  	invalidParams := request.ErrInvalidParams{Context: "DescribeEffectiveInstanceAssociationsInput"}
 25341  	if s.InstanceId == nil {
 25342  		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
 25343  	}
 25344  	if s.MaxResults != nil && *s.MaxResults < 1 {
 25345  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 25346  	}
 25347  
 25348  	if invalidParams.Len() > 0 {
 25349  		return invalidParams
 25350  	}
 25351  	return nil
 25352  }
 25353  
 25354  // SetInstanceId sets the InstanceId field's value.
 25355  func (s *DescribeEffectiveInstanceAssociationsInput) SetInstanceId(v string) *DescribeEffectiveInstanceAssociationsInput {
 25356  	s.InstanceId = &v
 25357  	return s
 25358  }
 25359  
 25360  // SetMaxResults sets the MaxResults field's value.
 25361  func (s *DescribeEffectiveInstanceAssociationsInput) SetMaxResults(v int64) *DescribeEffectiveInstanceAssociationsInput {
 25362  	s.MaxResults = &v
 25363  	return s
 25364  }
 25365  
 25366  // SetNextToken sets the NextToken field's value.
 25367  func (s *DescribeEffectiveInstanceAssociationsInput) SetNextToken(v string) *DescribeEffectiveInstanceAssociationsInput {
 25368  	s.NextToken = &v
 25369  	return s
 25370  }
 25371  
 25372  type DescribeEffectiveInstanceAssociationsOutput struct {
 25373  	_ struct{} `type:"structure"`
 25374  
 25375  	// The associations for the requested instance.
 25376  	Associations []*InstanceAssociation `type:"list"`
 25377  
 25378  	// The token to use when requesting the next set of items. If there are no additional
 25379  	// items to return, the string is empty.
 25380  	NextToken *string `type:"string"`
 25381  }
 25382  
 25383  // String returns the string representation.
 25384  //
 25385  // API parameter values that are decorated as "sensitive" in the API will not
 25386  // be included in the string output. The member name will be present, but the
 25387  // value will be replaced with "sensitive".
 25388  func (s DescribeEffectiveInstanceAssociationsOutput) String() string {
 25389  	return awsutil.Prettify(s)
 25390  }
 25391  
 25392  // GoString returns the string representation.
 25393  //
 25394  // API parameter values that are decorated as "sensitive" in the API will not
 25395  // be included in the string output. The member name will be present, but the
 25396  // value will be replaced with "sensitive".
 25397  func (s DescribeEffectiveInstanceAssociationsOutput) GoString() string {
 25398  	return s.String()
 25399  }
 25400  
 25401  // SetAssociations sets the Associations field's value.
 25402  func (s *DescribeEffectiveInstanceAssociationsOutput) SetAssociations(v []*InstanceAssociation) *DescribeEffectiveInstanceAssociationsOutput {
 25403  	s.Associations = v
 25404  	return s
 25405  }
 25406  
 25407  // SetNextToken sets the NextToken field's value.
 25408  func (s *DescribeEffectiveInstanceAssociationsOutput) SetNextToken(v string) *DescribeEffectiveInstanceAssociationsOutput {
 25409  	s.NextToken = &v
 25410  	return s
 25411  }
 25412  
 25413  type DescribeEffectivePatchesForPatchBaselineInput struct {
 25414  	_ struct{} `type:"structure"`
 25415  
 25416  	// The ID of the patch baseline to retrieve the effective patches for.
 25417  	//
 25418  	// BaselineId is a required field
 25419  	BaselineId *string `min:"20" type:"string" required:"true"`
 25420  
 25421  	// The maximum number of patches to return (per page).
 25422  	MaxResults *int64 `min:"1" type:"integer"`
 25423  
 25424  	// The token for the next set of items to return. (You received this token from
 25425  	// a previous call.)
 25426  	NextToken *string `type:"string"`
 25427  }
 25428  
 25429  // String returns the string representation.
 25430  //
 25431  // API parameter values that are decorated as "sensitive" in the API will not
 25432  // be included in the string output. The member name will be present, but the
 25433  // value will be replaced with "sensitive".
 25434  func (s DescribeEffectivePatchesForPatchBaselineInput) String() string {
 25435  	return awsutil.Prettify(s)
 25436  }
 25437  
 25438  // GoString returns the string representation.
 25439  //
 25440  // API parameter values that are decorated as "sensitive" in the API will not
 25441  // be included in the string output. The member name will be present, but the
 25442  // value will be replaced with "sensitive".
 25443  func (s DescribeEffectivePatchesForPatchBaselineInput) GoString() string {
 25444  	return s.String()
 25445  }
 25446  
 25447  // Validate inspects the fields of the type to determine if they are valid.
 25448  func (s *DescribeEffectivePatchesForPatchBaselineInput) Validate() error {
 25449  	invalidParams := request.ErrInvalidParams{Context: "DescribeEffectivePatchesForPatchBaselineInput"}
 25450  	if s.BaselineId == nil {
 25451  		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
 25452  	}
 25453  	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
 25454  		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
 25455  	}
 25456  	if s.MaxResults != nil && *s.MaxResults < 1 {
 25457  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 25458  	}
 25459  
 25460  	if invalidParams.Len() > 0 {
 25461  		return invalidParams
 25462  	}
 25463  	return nil
 25464  }
 25465  
 25466  // SetBaselineId sets the BaselineId field's value.
 25467  func (s *DescribeEffectivePatchesForPatchBaselineInput) SetBaselineId(v string) *DescribeEffectivePatchesForPatchBaselineInput {
 25468  	s.BaselineId = &v
 25469  	return s
 25470  }
 25471  
 25472  // SetMaxResults sets the MaxResults field's value.
 25473  func (s *DescribeEffectivePatchesForPatchBaselineInput) SetMaxResults(v int64) *DescribeEffectivePatchesForPatchBaselineInput {
 25474  	s.MaxResults = &v
 25475  	return s
 25476  }
 25477  
 25478  // SetNextToken sets the NextToken field's value.
 25479  func (s *DescribeEffectivePatchesForPatchBaselineInput) SetNextToken(v string) *DescribeEffectivePatchesForPatchBaselineInput {
 25480  	s.NextToken = &v
 25481  	return s
 25482  }
 25483  
 25484  type DescribeEffectivePatchesForPatchBaselineOutput struct {
 25485  	_ struct{} `type:"structure"`
 25486  
 25487  	// An array of patches and patch status.
 25488  	EffectivePatches []*EffectivePatch `type:"list"`
 25489  
 25490  	// The token to use when requesting the next set of items. If there are no additional
 25491  	// items to return, the string is empty.
 25492  	NextToken *string `type:"string"`
 25493  }
 25494  
 25495  // String returns the string representation.
 25496  //
 25497  // API parameter values that are decorated as "sensitive" in the API will not
 25498  // be included in the string output. The member name will be present, but the
 25499  // value will be replaced with "sensitive".
 25500  func (s DescribeEffectivePatchesForPatchBaselineOutput) String() string {
 25501  	return awsutil.Prettify(s)
 25502  }
 25503  
 25504  // GoString returns the string representation.
 25505  //
 25506  // API parameter values that are decorated as "sensitive" in the API will not
 25507  // be included in the string output. The member name will be present, but the
 25508  // value will be replaced with "sensitive".
 25509  func (s DescribeEffectivePatchesForPatchBaselineOutput) GoString() string {
 25510  	return s.String()
 25511  }
 25512  
 25513  // SetEffectivePatches sets the EffectivePatches field's value.
 25514  func (s *DescribeEffectivePatchesForPatchBaselineOutput) SetEffectivePatches(v []*EffectivePatch) *DescribeEffectivePatchesForPatchBaselineOutput {
 25515  	s.EffectivePatches = v
 25516  	return s
 25517  }
 25518  
 25519  // SetNextToken sets the NextToken field's value.
 25520  func (s *DescribeEffectivePatchesForPatchBaselineOutput) SetNextToken(v string) *DescribeEffectivePatchesForPatchBaselineOutput {
 25521  	s.NextToken = &v
 25522  	return s
 25523  }
 25524  
 25525  type DescribeInstanceAssociationsStatusInput struct {
 25526  	_ struct{} `type:"structure"`
 25527  
 25528  	// The instance IDs for which you want association status information.
 25529  	//
 25530  	// InstanceId is a required field
 25531  	InstanceId *string `type:"string" required:"true"`
 25532  
 25533  	// The maximum number of items to return for this call. The call also returns
 25534  	// a token that you can specify in a subsequent call to get the next set of
 25535  	// results.
 25536  	MaxResults *int64 `min:"1" type:"integer"`
 25537  
 25538  	// The token for the next set of items to return. (You received this token from
 25539  	// a previous call.)
 25540  	NextToken *string `type:"string"`
 25541  }
 25542  
 25543  // String returns the string representation.
 25544  //
 25545  // API parameter values that are decorated as "sensitive" in the API will not
 25546  // be included in the string output. The member name will be present, but the
 25547  // value will be replaced with "sensitive".
 25548  func (s DescribeInstanceAssociationsStatusInput) String() string {
 25549  	return awsutil.Prettify(s)
 25550  }
 25551  
 25552  // GoString returns the string representation.
 25553  //
 25554  // API parameter values that are decorated as "sensitive" in the API will not
 25555  // be included in the string output. The member name will be present, but the
 25556  // value will be replaced with "sensitive".
 25557  func (s DescribeInstanceAssociationsStatusInput) GoString() string {
 25558  	return s.String()
 25559  }
 25560  
 25561  // Validate inspects the fields of the type to determine if they are valid.
 25562  func (s *DescribeInstanceAssociationsStatusInput) Validate() error {
 25563  	invalidParams := request.ErrInvalidParams{Context: "DescribeInstanceAssociationsStatusInput"}
 25564  	if s.InstanceId == nil {
 25565  		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
 25566  	}
 25567  	if s.MaxResults != nil && *s.MaxResults < 1 {
 25568  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 25569  	}
 25570  
 25571  	if invalidParams.Len() > 0 {
 25572  		return invalidParams
 25573  	}
 25574  	return nil
 25575  }
 25576  
 25577  // SetInstanceId sets the InstanceId field's value.
 25578  func (s *DescribeInstanceAssociationsStatusInput) SetInstanceId(v string) *DescribeInstanceAssociationsStatusInput {
 25579  	s.InstanceId = &v
 25580  	return s
 25581  }
 25582  
 25583  // SetMaxResults sets the MaxResults field's value.
 25584  func (s *DescribeInstanceAssociationsStatusInput) SetMaxResults(v int64) *DescribeInstanceAssociationsStatusInput {
 25585  	s.MaxResults = &v
 25586  	return s
 25587  }
 25588  
 25589  // SetNextToken sets the NextToken field's value.
 25590  func (s *DescribeInstanceAssociationsStatusInput) SetNextToken(v string) *DescribeInstanceAssociationsStatusInput {
 25591  	s.NextToken = &v
 25592  	return s
 25593  }
 25594  
 25595  type DescribeInstanceAssociationsStatusOutput struct {
 25596  	_ struct{} `type:"structure"`
 25597  
 25598  	// Status information about the association.
 25599  	InstanceAssociationStatusInfos []*InstanceAssociationStatusInfo `type:"list"`
 25600  
 25601  	// The token to use when requesting the next set of items. If there are no additional
 25602  	// items to return, the string is empty.
 25603  	NextToken *string `type:"string"`
 25604  }
 25605  
 25606  // String returns the string representation.
 25607  //
 25608  // API parameter values that are decorated as "sensitive" in the API will not
 25609  // be included in the string output. The member name will be present, but the
 25610  // value will be replaced with "sensitive".
 25611  func (s DescribeInstanceAssociationsStatusOutput) String() string {
 25612  	return awsutil.Prettify(s)
 25613  }
 25614  
 25615  // GoString returns the string representation.
 25616  //
 25617  // API parameter values that are decorated as "sensitive" in the API will not
 25618  // be included in the string output. The member name will be present, but the
 25619  // value will be replaced with "sensitive".
 25620  func (s DescribeInstanceAssociationsStatusOutput) GoString() string {
 25621  	return s.String()
 25622  }
 25623  
 25624  // SetInstanceAssociationStatusInfos sets the InstanceAssociationStatusInfos field's value.
 25625  func (s *DescribeInstanceAssociationsStatusOutput) SetInstanceAssociationStatusInfos(v []*InstanceAssociationStatusInfo) *DescribeInstanceAssociationsStatusOutput {
 25626  	s.InstanceAssociationStatusInfos = v
 25627  	return s
 25628  }
 25629  
 25630  // SetNextToken sets the NextToken field's value.
 25631  func (s *DescribeInstanceAssociationsStatusOutput) SetNextToken(v string) *DescribeInstanceAssociationsStatusOutput {
 25632  	s.NextToken = &v
 25633  	return s
 25634  }
 25635  
 25636  type DescribeInstanceInformationInput struct {
 25637  	_ struct{} `type:"structure"`
 25638  
 25639  	// One or more filters. Use a filter to return a more specific list of instances.
 25640  	// You can filter based on tags applied to EC2 instances. Use this Filters data
 25641  	// type instead of InstanceInformationFilterList, which is deprecated.
 25642  	Filters []*InstanceInformationStringFilter `type:"list"`
 25643  
 25644  	// This is a legacy method. We recommend that you don't use this method. Instead,
 25645  	// use the Filters data type. Filters enables you to return instance information
 25646  	// by filtering based on tags applied to managed instances.
 25647  	//
 25648  	// Attempting to use InstanceInformationFilterList and Filters leads to an exception
 25649  	// error.
 25650  	InstanceInformationFilterList []*InstanceInformationFilter `type:"list"`
 25651  
 25652  	// The maximum number of items to return for this call. The call also returns
 25653  	// a token that you can specify in a subsequent call to get the next set of
 25654  	// results.
 25655  	MaxResults *int64 `min:"5" type:"integer"`
 25656  
 25657  	// The token for the next set of items to return. (You received this token from
 25658  	// a previous call.)
 25659  	NextToken *string `type:"string"`
 25660  }
 25661  
 25662  // String returns the string representation.
 25663  //
 25664  // API parameter values that are decorated as "sensitive" in the API will not
 25665  // be included in the string output. The member name will be present, but the
 25666  // value will be replaced with "sensitive".
 25667  func (s DescribeInstanceInformationInput) String() string {
 25668  	return awsutil.Prettify(s)
 25669  }
 25670  
 25671  // GoString returns the string representation.
 25672  //
 25673  // API parameter values that are decorated as "sensitive" in the API will not
 25674  // be included in the string output. The member name will be present, but the
 25675  // value will be replaced with "sensitive".
 25676  func (s DescribeInstanceInformationInput) GoString() string {
 25677  	return s.String()
 25678  }
 25679  
 25680  // Validate inspects the fields of the type to determine if they are valid.
 25681  func (s *DescribeInstanceInformationInput) Validate() error {
 25682  	invalidParams := request.ErrInvalidParams{Context: "DescribeInstanceInformationInput"}
 25683  	if s.MaxResults != nil && *s.MaxResults < 5 {
 25684  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5))
 25685  	}
 25686  	if s.Filters != nil {
 25687  		for i, v := range s.Filters {
 25688  			if v == nil {
 25689  				continue
 25690  			}
 25691  			if err := v.Validate(); err != nil {
 25692  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 25693  			}
 25694  		}
 25695  	}
 25696  	if s.InstanceInformationFilterList != nil {
 25697  		for i, v := range s.InstanceInformationFilterList {
 25698  			if v == nil {
 25699  				continue
 25700  			}
 25701  			if err := v.Validate(); err != nil {
 25702  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceInformationFilterList", i), err.(request.ErrInvalidParams))
 25703  			}
 25704  		}
 25705  	}
 25706  
 25707  	if invalidParams.Len() > 0 {
 25708  		return invalidParams
 25709  	}
 25710  	return nil
 25711  }
 25712  
 25713  // SetFilters sets the Filters field's value.
 25714  func (s *DescribeInstanceInformationInput) SetFilters(v []*InstanceInformationStringFilter) *DescribeInstanceInformationInput {
 25715  	s.Filters = v
 25716  	return s
 25717  }
 25718  
 25719  // SetInstanceInformationFilterList sets the InstanceInformationFilterList field's value.
 25720  func (s *DescribeInstanceInformationInput) SetInstanceInformationFilterList(v []*InstanceInformationFilter) *DescribeInstanceInformationInput {
 25721  	s.InstanceInformationFilterList = v
 25722  	return s
 25723  }
 25724  
 25725  // SetMaxResults sets the MaxResults field's value.
 25726  func (s *DescribeInstanceInformationInput) SetMaxResults(v int64) *DescribeInstanceInformationInput {
 25727  	s.MaxResults = &v
 25728  	return s
 25729  }
 25730  
 25731  // SetNextToken sets the NextToken field's value.
 25732  func (s *DescribeInstanceInformationInput) SetNextToken(v string) *DescribeInstanceInformationInput {
 25733  	s.NextToken = &v
 25734  	return s
 25735  }
 25736  
 25737  type DescribeInstanceInformationOutput struct {
 25738  	_ struct{} `type:"structure"`
 25739  
 25740  	// The instance information list.
 25741  	InstanceInformationList []*InstanceInformation `type:"list"`
 25742  
 25743  	// The token to use when requesting the next set of items. If there are no additional
 25744  	// items to return, the string is empty.
 25745  	NextToken *string `type:"string"`
 25746  }
 25747  
 25748  // String returns the string representation.
 25749  //
 25750  // API parameter values that are decorated as "sensitive" in the API will not
 25751  // be included in the string output. The member name will be present, but the
 25752  // value will be replaced with "sensitive".
 25753  func (s DescribeInstanceInformationOutput) String() string {
 25754  	return awsutil.Prettify(s)
 25755  }
 25756  
 25757  // GoString returns the string representation.
 25758  //
 25759  // API parameter values that are decorated as "sensitive" in the API will not
 25760  // be included in the string output. The member name will be present, but the
 25761  // value will be replaced with "sensitive".
 25762  func (s DescribeInstanceInformationOutput) GoString() string {
 25763  	return s.String()
 25764  }
 25765  
 25766  // SetInstanceInformationList sets the InstanceInformationList field's value.
 25767  func (s *DescribeInstanceInformationOutput) SetInstanceInformationList(v []*InstanceInformation) *DescribeInstanceInformationOutput {
 25768  	s.InstanceInformationList = v
 25769  	return s
 25770  }
 25771  
 25772  // SetNextToken sets the NextToken field's value.
 25773  func (s *DescribeInstanceInformationOutput) SetNextToken(v string) *DescribeInstanceInformationOutput {
 25774  	s.NextToken = &v
 25775  	return s
 25776  }
 25777  
 25778  type DescribeInstancePatchStatesForPatchGroupInput struct {
 25779  	_ struct{} `type:"structure"`
 25780  
 25781  	// Each entry in the array is a structure containing:
 25782  	//
 25783  	//    * Key (string between 1 and 200 characters)
 25784  	//
 25785  	//    * Values (array containing a single string)
 25786  	//
 25787  	//    * Type (string "Equal", "NotEqual", "LessThan", "GreaterThan")
 25788  	Filters []*InstancePatchStateFilter `type:"list"`
 25789  
 25790  	// The maximum number of patches to return (per page).
 25791  	MaxResults *int64 `min:"10" type:"integer"`
 25792  
 25793  	// The token for the next set of items to return. (You received this token from
 25794  	// a previous call.)
 25795  	NextToken *string `type:"string"`
 25796  
 25797  	// The name of the patch group for which the patch state information should
 25798  	// be retrieved.
 25799  	//
 25800  	// PatchGroup is a required field
 25801  	PatchGroup *string `min:"1" type:"string" required:"true"`
 25802  }
 25803  
 25804  // String returns the string representation.
 25805  //
 25806  // API parameter values that are decorated as "sensitive" in the API will not
 25807  // be included in the string output. The member name will be present, but the
 25808  // value will be replaced with "sensitive".
 25809  func (s DescribeInstancePatchStatesForPatchGroupInput) String() string {
 25810  	return awsutil.Prettify(s)
 25811  }
 25812  
 25813  // GoString returns the string representation.
 25814  //
 25815  // API parameter values that are decorated as "sensitive" in the API will not
 25816  // be included in the string output. The member name will be present, but the
 25817  // value will be replaced with "sensitive".
 25818  func (s DescribeInstancePatchStatesForPatchGroupInput) GoString() string {
 25819  	return s.String()
 25820  }
 25821  
 25822  // Validate inspects the fields of the type to determine if they are valid.
 25823  func (s *DescribeInstancePatchStatesForPatchGroupInput) Validate() error {
 25824  	invalidParams := request.ErrInvalidParams{Context: "DescribeInstancePatchStatesForPatchGroupInput"}
 25825  	if s.MaxResults != nil && *s.MaxResults < 10 {
 25826  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
 25827  	}
 25828  	if s.PatchGroup == nil {
 25829  		invalidParams.Add(request.NewErrParamRequired("PatchGroup"))
 25830  	}
 25831  	if s.PatchGroup != nil && len(*s.PatchGroup) < 1 {
 25832  		invalidParams.Add(request.NewErrParamMinLen("PatchGroup", 1))
 25833  	}
 25834  	if s.Filters != nil {
 25835  		for i, v := range s.Filters {
 25836  			if v == nil {
 25837  				continue
 25838  			}
 25839  			if err := v.Validate(); err != nil {
 25840  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 25841  			}
 25842  		}
 25843  	}
 25844  
 25845  	if invalidParams.Len() > 0 {
 25846  		return invalidParams
 25847  	}
 25848  	return nil
 25849  }
 25850  
 25851  // SetFilters sets the Filters field's value.
 25852  func (s *DescribeInstancePatchStatesForPatchGroupInput) SetFilters(v []*InstancePatchStateFilter) *DescribeInstancePatchStatesForPatchGroupInput {
 25853  	s.Filters = v
 25854  	return s
 25855  }
 25856  
 25857  // SetMaxResults sets the MaxResults field's value.
 25858  func (s *DescribeInstancePatchStatesForPatchGroupInput) SetMaxResults(v int64) *DescribeInstancePatchStatesForPatchGroupInput {
 25859  	s.MaxResults = &v
 25860  	return s
 25861  }
 25862  
 25863  // SetNextToken sets the NextToken field's value.
 25864  func (s *DescribeInstancePatchStatesForPatchGroupInput) SetNextToken(v string) *DescribeInstancePatchStatesForPatchGroupInput {
 25865  	s.NextToken = &v
 25866  	return s
 25867  }
 25868  
 25869  // SetPatchGroup sets the PatchGroup field's value.
 25870  func (s *DescribeInstancePatchStatesForPatchGroupInput) SetPatchGroup(v string) *DescribeInstancePatchStatesForPatchGroupInput {
 25871  	s.PatchGroup = &v
 25872  	return s
 25873  }
 25874  
 25875  type DescribeInstancePatchStatesForPatchGroupOutput struct {
 25876  	_ struct{} `type:"structure"`
 25877  
 25878  	// The high-level patch state for the requested instances.
 25879  	InstancePatchStates []*InstancePatchState `min:"1" type:"list"`
 25880  
 25881  	// The token to use when requesting the next set of items. If there are no additional
 25882  	// items to return, the string is empty.
 25883  	NextToken *string `type:"string"`
 25884  }
 25885  
 25886  // String returns the string representation.
 25887  //
 25888  // API parameter values that are decorated as "sensitive" in the API will not
 25889  // be included in the string output. The member name will be present, but the
 25890  // value will be replaced with "sensitive".
 25891  func (s DescribeInstancePatchStatesForPatchGroupOutput) String() string {
 25892  	return awsutil.Prettify(s)
 25893  }
 25894  
 25895  // GoString returns the string representation.
 25896  //
 25897  // API parameter values that are decorated as "sensitive" in the API will not
 25898  // be included in the string output. The member name will be present, but the
 25899  // value will be replaced with "sensitive".
 25900  func (s DescribeInstancePatchStatesForPatchGroupOutput) GoString() string {
 25901  	return s.String()
 25902  }
 25903  
 25904  // SetInstancePatchStates sets the InstancePatchStates field's value.
 25905  func (s *DescribeInstancePatchStatesForPatchGroupOutput) SetInstancePatchStates(v []*InstancePatchState) *DescribeInstancePatchStatesForPatchGroupOutput {
 25906  	s.InstancePatchStates = v
 25907  	return s
 25908  }
 25909  
 25910  // SetNextToken sets the NextToken field's value.
 25911  func (s *DescribeInstancePatchStatesForPatchGroupOutput) SetNextToken(v string) *DescribeInstancePatchStatesForPatchGroupOutput {
 25912  	s.NextToken = &v
 25913  	return s
 25914  }
 25915  
 25916  type DescribeInstancePatchStatesInput struct {
 25917  	_ struct{} `type:"structure"`
 25918  
 25919  	// The ID of the instance for which patch state information should be retrieved.
 25920  	//
 25921  	// InstanceIds is a required field
 25922  	InstanceIds []*string `type:"list" required:"true"`
 25923  
 25924  	// The maximum number of instances to return (per page).
 25925  	MaxResults *int64 `min:"10" type:"integer"`
 25926  
 25927  	// The token for the next set of items to return. (You received this token from
 25928  	// a previous call.)
 25929  	NextToken *string `type:"string"`
 25930  }
 25931  
 25932  // String returns the string representation.
 25933  //
 25934  // API parameter values that are decorated as "sensitive" in the API will not
 25935  // be included in the string output. The member name will be present, but the
 25936  // value will be replaced with "sensitive".
 25937  func (s DescribeInstancePatchStatesInput) String() string {
 25938  	return awsutil.Prettify(s)
 25939  }
 25940  
 25941  // GoString returns the string representation.
 25942  //
 25943  // API parameter values that are decorated as "sensitive" in the API will not
 25944  // be included in the string output. The member name will be present, but the
 25945  // value will be replaced with "sensitive".
 25946  func (s DescribeInstancePatchStatesInput) GoString() string {
 25947  	return s.String()
 25948  }
 25949  
 25950  // Validate inspects the fields of the type to determine if they are valid.
 25951  func (s *DescribeInstancePatchStatesInput) Validate() error {
 25952  	invalidParams := request.ErrInvalidParams{Context: "DescribeInstancePatchStatesInput"}
 25953  	if s.InstanceIds == nil {
 25954  		invalidParams.Add(request.NewErrParamRequired("InstanceIds"))
 25955  	}
 25956  	if s.MaxResults != nil && *s.MaxResults < 10 {
 25957  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
 25958  	}
 25959  
 25960  	if invalidParams.Len() > 0 {
 25961  		return invalidParams
 25962  	}
 25963  	return nil
 25964  }
 25965  
 25966  // SetInstanceIds sets the InstanceIds field's value.
 25967  func (s *DescribeInstancePatchStatesInput) SetInstanceIds(v []*string) *DescribeInstancePatchStatesInput {
 25968  	s.InstanceIds = v
 25969  	return s
 25970  }
 25971  
 25972  // SetMaxResults sets the MaxResults field's value.
 25973  func (s *DescribeInstancePatchStatesInput) SetMaxResults(v int64) *DescribeInstancePatchStatesInput {
 25974  	s.MaxResults = &v
 25975  	return s
 25976  }
 25977  
 25978  // SetNextToken sets the NextToken field's value.
 25979  func (s *DescribeInstancePatchStatesInput) SetNextToken(v string) *DescribeInstancePatchStatesInput {
 25980  	s.NextToken = &v
 25981  	return s
 25982  }
 25983  
 25984  type DescribeInstancePatchStatesOutput struct {
 25985  	_ struct{} `type:"structure"`
 25986  
 25987  	// The high-level patch state for the requested instances.
 25988  	InstancePatchStates []*InstancePatchState `type:"list"`
 25989  
 25990  	// The token to use when requesting the next set of items. If there are no additional
 25991  	// items to return, the string is empty.
 25992  	NextToken *string `type:"string"`
 25993  }
 25994  
 25995  // String returns the string representation.
 25996  //
 25997  // API parameter values that are decorated as "sensitive" in the API will not
 25998  // be included in the string output. The member name will be present, but the
 25999  // value will be replaced with "sensitive".
 26000  func (s DescribeInstancePatchStatesOutput) String() string {
 26001  	return awsutil.Prettify(s)
 26002  }
 26003  
 26004  // GoString returns the string representation.
 26005  //
 26006  // API parameter values that are decorated as "sensitive" in the API will not
 26007  // be included in the string output. The member name will be present, but the
 26008  // value will be replaced with "sensitive".
 26009  func (s DescribeInstancePatchStatesOutput) GoString() string {
 26010  	return s.String()
 26011  }
 26012  
 26013  // SetInstancePatchStates sets the InstancePatchStates field's value.
 26014  func (s *DescribeInstancePatchStatesOutput) SetInstancePatchStates(v []*InstancePatchState) *DescribeInstancePatchStatesOutput {
 26015  	s.InstancePatchStates = v
 26016  	return s
 26017  }
 26018  
 26019  // SetNextToken sets the NextToken field's value.
 26020  func (s *DescribeInstancePatchStatesOutput) SetNextToken(v string) *DescribeInstancePatchStatesOutput {
 26021  	s.NextToken = &v
 26022  	return s
 26023  }
 26024  
 26025  type DescribeInstancePatchesInput struct {
 26026  	_ struct{} `type:"structure"`
 26027  
 26028  	// Each element in the array is a structure containing a key-value pair.
 26029  	//
 26030  	// Supported keys for DescribeInstancePatchesinclude the following:
 26031  	//
 26032  	//    * Classification Sample values: Security | SecurityUpdates
 26033  	//
 26034  	//    * KBId Sample values: KB4480056 | java-1.7.0-openjdk.x86_64
 26035  	//
 26036  	//    * Severity Sample values: Important | Medium | Low
 26037  	//
 26038  	//    * State Sample values: Installed | InstalledOther | InstalledPendingReboot
 26039  	Filters []*PatchOrchestratorFilter `type:"list"`
 26040  
 26041  	// The ID of the instance whose patch state information should be retrieved.
 26042  	//
 26043  	// InstanceId is a required field
 26044  	InstanceId *string `type:"string" required:"true"`
 26045  
 26046  	// The maximum number of patches to return (per page).
 26047  	MaxResults *int64 `min:"10" type:"integer"`
 26048  
 26049  	// The token for the next set of items to return. (You received this token from
 26050  	// a previous call.)
 26051  	NextToken *string `type:"string"`
 26052  }
 26053  
 26054  // String returns the string representation.
 26055  //
 26056  // API parameter values that are decorated as "sensitive" in the API will not
 26057  // be included in the string output. The member name will be present, but the
 26058  // value will be replaced with "sensitive".
 26059  func (s DescribeInstancePatchesInput) String() string {
 26060  	return awsutil.Prettify(s)
 26061  }
 26062  
 26063  // GoString returns the string representation.
 26064  //
 26065  // API parameter values that are decorated as "sensitive" in the API will not
 26066  // be included in the string output. The member name will be present, but the
 26067  // value will be replaced with "sensitive".
 26068  func (s DescribeInstancePatchesInput) GoString() string {
 26069  	return s.String()
 26070  }
 26071  
 26072  // Validate inspects the fields of the type to determine if they are valid.
 26073  func (s *DescribeInstancePatchesInput) Validate() error {
 26074  	invalidParams := request.ErrInvalidParams{Context: "DescribeInstancePatchesInput"}
 26075  	if s.InstanceId == nil {
 26076  		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
 26077  	}
 26078  	if s.MaxResults != nil && *s.MaxResults < 10 {
 26079  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
 26080  	}
 26081  	if s.Filters != nil {
 26082  		for i, v := range s.Filters {
 26083  			if v == nil {
 26084  				continue
 26085  			}
 26086  			if err := v.Validate(); err != nil {
 26087  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 26088  			}
 26089  		}
 26090  	}
 26091  
 26092  	if invalidParams.Len() > 0 {
 26093  		return invalidParams
 26094  	}
 26095  	return nil
 26096  }
 26097  
 26098  // SetFilters sets the Filters field's value.
 26099  func (s *DescribeInstancePatchesInput) SetFilters(v []*PatchOrchestratorFilter) *DescribeInstancePatchesInput {
 26100  	s.Filters = v
 26101  	return s
 26102  }
 26103  
 26104  // SetInstanceId sets the InstanceId field's value.
 26105  func (s *DescribeInstancePatchesInput) SetInstanceId(v string) *DescribeInstancePatchesInput {
 26106  	s.InstanceId = &v
 26107  	return s
 26108  }
 26109  
 26110  // SetMaxResults sets the MaxResults field's value.
 26111  func (s *DescribeInstancePatchesInput) SetMaxResults(v int64) *DescribeInstancePatchesInput {
 26112  	s.MaxResults = &v
 26113  	return s
 26114  }
 26115  
 26116  // SetNextToken sets the NextToken field's value.
 26117  func (s *DescribeInstancePatchesInput) SetNextToken(v string) *DescribeInstancePatchesInput {
 26118  	s.NextToken = &v
 26119  	return s
 26120  }
 26121  
 26122  type DescribeInstancePatchesOutput struct {
 26123  	_ struct{} `type:"structure"`
 26124  
 26125  	// The token to use when requesting the next set of items. If there are no additional
 26126  	// items to return, the string is empty.
 26127  	NextToken *string `type:"string"`
 26128  
 26129  	// Each entry in the array is a structure containing:
 26130  	//
 26131  	//    * Title (string)
 26132  	//
 26133  	//    * KBId (string)
 26134  	//
 26135  	//    * Classification (string)
 26136  	//
 26137  	//    * Severity (string)
 26138  	//
 26139  	//    * State (string, such as "INSTALLED" or "FAILED")
 26140  	//
 26141  	//    * InstalledTime (DateTime)
 26142  	//
 26143  	//    * InstalledBy (string)
 26144  	Patches []*PatchComplianceData `type:"list"`
 26145  }
 26146  
 26147  // String returns the string representation.
 26148  //
 26149  // API parameter values that are decorated as "sensitive" in the API will not
 26150  // be included in the string output. The member name will be present, but the
 26151  // value will be replaced with "sensitive".
 26152  func (s DescribeInstancePatchesOutput) String() string {
 26153  	return awsutil.Prettify(s)
 26154  }
 26155  
 26156  // GoString returns the string representation.
 26157  //
 26158  // API parameter values that are decorated as "sensitive" in the API will not
 26159  // be included in the string output. The member name will be present, but the
 26160  // value will be replaced with "sensitive".
 26161  func (s DescribeInstancePatchesOutput) GoString() string {
 26162  	return s.String()
 26163  }
 26164  
 26165  // SetNextToken sets the NextToken field's value.
 26166  func (s *DescribeInstancePatchesOutput) SetNextToken(v string) *DescribeInstancePatchesOutput {
 26167  	s.NextToken = &v
 26168  	return s
 26169  }
 26170  
 26171  // SetPatches sets the Patches field's value.
 26172  func (s *DescribeInstancePatchesOutput) SetPatches(v []*PatchComplianceData) *DescribeInstancePatchesOutput {
 26173  	s.Patches = v
 26174  	return s
 26175  }
 26176  
 26177  type DescribeInventoryDeletionsInput struct {
 26178  	_ struct{} `type:"structure"`
 26179  
 26180  	// Specify the delete inventory ID for which you want information. This ID was
 26181  	// returned by the DeleteInventory operation.
 26182  	DeletionId *string `type:"string"`
 26183  
 26184  	// The maximum number of items to return for this call. The call also returns
 26185  	// a token that you can specify in a subsequent call to get the next set of
 26186  	// results.
 26187  	MaxResults *int64 `min:"1" type:"integer"`
 26188  
 26189  	// A token to start the list. Use this token to get the next set of results.
 26190  	NextToken *string `type:"string"`
 26191  }
 26192  
 26193  // String returns the string representation.
 26194  //
 26195  // API parameter values that are decorated as "sensitive" in the API will not
 26196  // be included in the string output. The member name will be present, but the
 26197  // value will be replaced with "sensitive".
 26198  func (s DescribeInventoryDeletionsInput) String() string {
 26199  	return awsutil.Prettify(s)
 26200  }
 26201  
 26202  // GoString returns the string representation.
 26203  //
 26204  // API parameter values that are decorated as "sensitive" in the API will not
 26205  // be included in the string output. The member name will be present, but the
 26206  // value will be replaced with "sensitive".
 26207  func (s DescribeInventoryDeletionsInput) GoString() string {
 26208  	return s.String()
 26209  }
 26210  
 26211  // Validate inspects the fields of the type to determine if they are valid.
 26212  func (s *DescribeInventoryDeletionsInput) Validate() error {
 26213  	invalidParams := request.ErrInvalidParams{Context: "DescribeInventoryDeletionsInput"}
 26214  	if s.MaxResults != nil && *s.MaxResults < 1 {
 26215  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 26216  	}
 26217  
 26218  	if invalidParams.Len() > 0 {
 26219  		return invalidParams
 26220  	}
 26221  	return nil
 26222  }
 26223  
 26224  // SetDeletionId sets the DeletionId field's value.
 26225  func (s *DescribeInventoryDeletionsInput) SetDeletionId(v string) *DescribeInventoryDeletionsInput {
 26226  	s.DeletionId = &v
 26227  	return s
 26228  }
 26229  
 26230  // SetMaxResults sets the MaxResults field's value.
 26231  func (s *DescribeInventoryDeletionsInput) SetMaxResults(v int64) *DescribeInventoryDeletionsInput {
 26232  	s.MaxResults = &v
 26233  	return s
 26234  }
 26235  
 26236  // SetNextToken sets the NextToken field's value.
 26237  func (s *DescribeInventoryDeletionsInput) SetNextToken(v string) *DescribeInventoryDeletionsInput {
 26238  	s.NextToken = &v
 26239  	return s
 26240  }
 26241  
 26242  type DescribeInventoryDeletionsOutput struct {
 26243  	_ struct{} `type:"structure"`
 26244  
 26245  	// A list of status items for deleted inventory.
 26246  	InventoryDeletions []*InventoryDeletionStatusItem `type:"list"`
 26247  
 26248  	// The token for the next set of items to return. Use this token to get the
 26249  	// next set of results.
 26250  	NextToken *string `type:"string"`
 26251  }
 26252  
 26253  // String returns the string representation.
 26254  //
 26255  // API parameter values that are decorated as "sensitive" in the API will not
 26256  // be included in the string output. The member name will be present, but the
 26257  // value will be replaced with "sensitive".
 26258  func (s DescribeInventoryDeletionsOutput) String() string {
 26259  	return awsutil.Prettify(s)
 26260  }
 26261  
 26262  // GoString returns the string representation.
 26263  //
 26264  // API parameter values that are decorated as "sensitive" in the API will not
 26265  // be included in the string output. The member name will be present, but the
 26266  // value will be replaced with "sensitive".
 26267  func (s DescribeInventoryDeletionsOutput) GoString() string {
 26268  	return s.String()
 26269  }
 26270  
 26271  // SetInventoryDeletions sets the InventoryDeletions field's value.
 26272  func (s *DescribeInventoryDeletionsOutput) SetInventoryDeletions(v []*InventoryDeletionStatusItem) *DescribeInventoryDeletionsOutput {
 26273  	s.InventoryDeletions = v
 26274  	return s
 26275  }
 26276  
 26277  // SetNextToken sets the NextToken field's value.
 26278  func (s *DescribeInventoryDeletionsOutput) SetNextToken(v string) *DescribeInventoryDeletionsOutput {
 26279  	s.NextToken = &v
 26280  	return s
 26281  }
 26282  
 26283  type DescribeMaintenanceWindowExecutionTaskInvocationsInput struct {
 26284  	_ struct{} `type:"structure"`
 26285  
 26286  	// Optional filters used to scope down the returned task invocations. The supported
 26287  	// filter key is STATUS with the corresponding values PENDING, IN_PROGRESS,
 26288  	// SUCCESS, FAILED, TIMED_OUT, CANCELLING, and CANCELLED.
 26289  	Filters []*MaintenanceWindowFilter `type:"list"`
 26290  
 26291  	// The maximum number of items to return for this call. The call also returns
 26292  	// a token that you can specify in a subsequent call to get the next set of
 26293  	// results.
 26294  	MaxResults *int64 `min:"10" type:"integer"`
 26295  
 26296  	// The token for the next set of items to return. (You received this token from
 26297  	// a previous call.)
 26298  	NextToken *string `type:"string"`
 26299  
 26300  	// The ID of the specific task in the maintenance window task that should be
 26301  	// retrieved.
 26302  	//
 26303  	// TaskId is a required field
 26304  	TaskId *string `min:"36" type:"string" required:"true"`
 26305  
 26306  	// The ID of the maintenance window execution the task is part of.
 26307  	//
 26308  	// WindowExecutionId is a required field
 26309  	WindowExecutionId *string `min:"36" type:"string" required:"true"`
 26310  }
 26311  
 26312  // String returns the string representation.
 26313  //
 26314  // API parameter values that are decorated as "sensitive" in the API will not
 26315  // be included in the string output. The member name will be present, but the
 26316  // value will be replaced with "sensitive".
 26317  func (s DescribeMaintenanceWindowExecutionTaskInvocationsInput) String() string {
 26318  	return awsutil.Prettify(s)
 26319  }
 26320  
 26321  // GoString returns the string representation.
 26322  //
 26323  // API parameter values that are decorated as "sensitive" in the API will not
 26324  // be included in the string output. The member name will be present, but the
 26325  // value will be replaced with "sensitive".
 26326  func (s DescribeMaintenanceWindowExecutionTaskInvocationsInput) GoString() string {
 26327  	return s.String()
 26328  }
 26329  
 26330  // Validate inspects the fields of the type to determine if they are valid.
 26331  func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) Validate() error {
 26332  	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowExecutionTaskInvocationsInput"}
 26333  	if s.MaxResults != nil && *s.MaxResults < 10 {
 26334  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
 26335  	}
 26336  	if s.TaskId == nil {
 26337  		invalidParams.Add(request.NewErrParamRequired("TaskId"))
 26338  	}
 26339  	if s.TaskId != nil && len(*s.TaskId) < 36 {
 26340  		invalidParams.Add(request.NewErrParamMinLen("TaskId", 36))
 26341  	}
 26342  	if s.WindowExecutionId == nil {
 26343  		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
 26344  	}
 26345  	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
 26346  		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
 26347  	}
 26348  	if s.Filters != nil {
 26349  		for i, v := range s.Filters {
 26350  			if v == nil {
 26351  				continue
 26352  			}
 26353  			if err := v.Validate(); err != nil {
 26354  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 26355  			}
 26356  		}
 26357  	}
 26358  
 26359  	if invalidParams.Len() > 0 {
 26360  		return invalidParams
 26361  	}
 26362  	return nil
 26363  }
 26364  
 26365  // SetFilters sets the Filters field's value.
 26366  func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowExecutionTaskInvocationsInput {
 26367  	s.Filters = v
 26368  	return s
 26369  }
 26370  
 26371  // SetMaxResults sets the MaxResults field's value.
 26372  func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) SetMaxResults(v int64) *DescribeMaintenanceWindowExecutionTaskInvocationsInput {
 26373  	s.MaxResults = &v
 26374  	return s
 26375  }
 26376  
 26377  // SetNextToken sets the NextToken field's value.
 26378  func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionTaskInvocationsInput {
 26379  	s.NextToken = &v
 26380  	return s
 26381  }
 26382  
 26383  // SetTaskId sets the TaskId field's value.
 26384  func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) SetTaskId(v string) *DescribeMaintenanceWindowExecutionTaskInvocationsInput {
 26385  	s.TaskId = &v
 26386  	return s
 26387  }
 26388  
 26389  // SetWindowExecutionId sets the WindowExecutionId field's value.
 26390  func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) SetWindowExecutionId(v string) *DescribeMaintenanceWindowExecutionTaskInvocationsInput {
 26391  	s.WindowExecutionId = &v
 26392  	return s
 26393  }
 26394  
 26395  type DescribeMaintenanceWindowExecutionTaskInvocationsOutput struct {
 26396  	_ struct{} `type:"structure"`
 26397  
 26398  	// The token to use when requesting the next set of items. If there are no additional
 26399  	// items to return, the string is empty.
 26400  	NextToken *string `type:"string"`
 26401  
 26402  	// Information about the task invocation results per invocation.
 26403  	WindowExecutionTaskInvocationIdentities []*MaintenanceWindowExecutionTaskInvocationIdentity `type:"list"`
 26404  }
 26405  
 26406  // String returns the string representation.
 26407  //
 26408  // API parameter values that are decorated as "sensitive" in the API will not
 26409  // be included in the string output. The member name will be present, but the
 26410  // value will be replaced with "sensitive".
 26411  func (s DescribeMaintenanceWindowExecutionTaskInvocationsOutput) String() string {
 26412  	return awsutil.Prettify(s)
 26413  }
 26414  
 26415  // GoString returns the string representation.
 26416  //
 26417  // API parameter values that are decorated as "sensitive" in the API will not
 26418  // be included in the string output. The member name will be present, but the
 26419  // value will be replaced with "sensitive".
 26420  func (s DescribeMaintenanceWindowExecutionTaskInvocationsOutput) GoString() string {
 26421  	return s.String()
 26422  }
 26423  
 26424  // SetNextToken sets the NextToken field's value.
 26425  func (s *DescribeMaintenanceWindowExecutionTaskInvocationsOutput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionTaskInvocationsOutput {
 26426  	s.NextToken = &v
 26427  	return s
 26428  }
 26429  
 26430  // SetWindowExecutionTaskInvocationIdentities sets the WindowExecutionTaskInvocationIdentities field's value.
 26431  func (s *DescribeMaintenanceWindowExecutionTaskInvocationsOutput) SetWindowExecutionTaskInvocationIdentities(v []*MaintenanceWindowExecutionTaskInvocationIdentity) *DescribeMaintenanceWindowExecutionTaskInvocationsOutput {
 26432  	s.WindowExecutionTaskInvocationIdentities = v
 26433  	return s
 26434  }
 26435  
 26436  type DescribeMaintenanceWindowExecutionTasksInput struct {
 26437  	_ struct{} `type:"structure"`
 26438  
 26439  	// Optional filters used to scope down the returned tasks. The supported filter
 26440  	// key is STATUS with the corresponding values PENDING, IN_PROGRESS, SUCCESS,
 26441  	// FAILED, TIMED_OUT, CANCELLING, and CANCELLED.
 26442  	Filters []*MaintenanceWindowFilter `type:"list"`
 26443  
 26444  	// The maximum number of items to return for this call. The call also returns
 26445  	// a token that you can specify in a subsequent call to get the next set of
 26446  	// results.
 26447  	MaxResults *int64 `min:"10" type:"integer"`
 26448  
 26449  	// The token for the next set of items to return. (You received this token from
 26450  	// a previous call.)
 26451  	NextToken *string `type:"string"`
 26452  
 26453  	// The ID of the maintenance window execution whose task executions should be
 26454  	// retrieved.
 26455  	//
 26456  	// WindowExecutionId is a required field
 26457  	WindowExecutionId *string `min:"36" type:"string" required:"true"`
 26458  }
 26459  
 26460  // String returns the string representation.
 26461  //
 26462  // API parameter values that are decorated as "sensitive" in the API will not
 26463  // be included in the string output. The member name will be present, but the
 26464  // value will be replaced with "sensitive".
 26465  func (s DescribeMaintenanceWindowExecutionTasksInput) String() string {
 26466  	return awsutil.Prettify(s)
 26467  }
 26468  
 26469  // GoString returns the string representation.
 26470  //
 26471  // API parameter values that are decorated as "sensitive" in the API will not
 26472  // be included in the string output. The member name will be present, but the
 26473  // value will be replaced with "sensitive".
 26474  func (s DescribeMaintenanceWindowExecutionTasksInput) GoString() string {
 26475  	return s.String()
 26476  }
 26477  
 26478  // Validate inspects the fields of the type to determine if they are valid.
 26479  func (s *DescribeMaintenanceWindowExecutionTasksInput) Validate() error {
 26480  	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowExecutionTasksInput"}
 26481  	if s.MaxResults != nil && *s.MaxResults < 10 {
 26482  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
 26483  	}
 26484  	if s.WindowExecutionId == nil {
 26485  		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
 26486  	}
 26487  	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
 26488  		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
 26489  	}
 26490  	if s.Filters != nil {
 26491  		for i, v := range s.Filters {
 26492  			if v == nil {
 26493  				continue
 26494  			}
 26495  			if err := v.Validate(); err != nil {
 26496  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 26497  			}
 26498  		}
 26499  	}
 26500  
 26501  	if invalidParams.Len() > 0 {
 26502  		return invalidParams
 26503  	}
 26504  	return nil
 26505  }
 26506  
 26507  // SetFilters sets the Filters field's value.
 26508  func (s *DescribeMaintenanceWindowExecutionTasksInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowExecutionTasksInput {
 26509  	s.Filters = v
 26510  	return s
 26511  }
 26512  
 26513  // SetMaxResults sets the MaxResults field's value.
 26514  func (s *DescribeMaintenanceWindowExecutionTasksInput) SetMaxResults(v int64) *DescribeMaintenanceWindowExecutionTasksInput {
 26515  	s.MaxResults = &v
 26516  	return s
 26517  }
 26518  
 26519  // SetNextToken sets the NextToken field's value.
 26520  func (s *DescribeMaintenanceWindowExecutionTasksInput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionTasksInput {
 26521  	s.NextToken = &v
 26522  	return s
 26523  }
 26524  
 26525  // SetWindowExecutionId sets the WindowExecutionId field's value.
 26526  func (s *DescribeMaintenanceWindowExecutionTasksInput) SetWindowExecutionId(v string) *DescribeMaintenanceWindowExecutionTasksInput {
 26527  	s.WindowExecutionId = &v
 26528  	return s
 26529  }
 26530  
 26531  type DescribeMaintenanceWindowExecutionTasksOutput struct {
 26532  	_ struct{} `type:"structure"`
 26533  
 26534  	// The token to use when requesting the next set of items. If there are no additional
 26535  	// items to return, the string is empty.
 26536  	NextToken *string `type:"string"`
 26537  
 26538  	// Information about the task executions.
 26539  	WindowExecutionTaskIdentities []*MaintenanceWindowExecutionTaskIdentity `type:"list"`
 26540  }
 26541  
 26542  // String returns the string representation.
 26543  //
 26544  // API parameter values that are decorated as "sensitive" in the API will not
 26545  // be included in the string output. The member name will be present, but the
 26546  // value will be replaced with "sensitive".
 26547  func (s DescribeMaintenanceWindowExecutionTasksOutput) String() string {
 26548  	return awsutil.Prettify(s)
 26549  }
 26550  
 26551  // GoString returns the string representation.
 26552  //
 26553  // API parameter values that are decorated as "sensitive" in the API will not
 26554  // be included in the string output. The member name will be present, but the
 26555  // value will be replaced with "sensitive".
 26556  func (s DescribeMaintenanceWindowExecutionTasksOutput) GoString() string {
 26557  	return s.String()
 26558  }
 26559  
 26560  // SetNextToken sets the NextToken field's value.
 26561  func (s *DescribeMaintenanceWindowExecutionTasksOutput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionTasksOutput {
 26562  	s.NextToken = &v
 26563  	return s
 26564  }
 26565  
 26566  // SetWindowExecutionTaskIdentities sets the WindowExecutionTaskIdentities field's value.
 26567  func (s *DescribeMaintenanceWindowExecutionTasksOutput) SetWindowExecutionTaskIdentities(v []*MaintenanceWindowExecutionTaskIdentity) *DescribeMaintenanceWindowExecutionTasksOutput {
 26568  	s.WindowExecutionTaskIdentities = v
 26569  	return s
 26570  }
 26571  
 26572  type DescribeMaintenanceWindowExecutionsInput struct {
 26573  	_ struct{} `type:"structure"`
 26574  
 26575  	// Each entry in the array is a structure containing:
 26576  	//
 26577  	//    * Key. A string between 1 and 128 characters. Supported keys include ExecutedBefore
 26578  	//    and ExecutedAfter.
 26579  	//
 26580  	//    * Values. An array of strings, each between 1 and 256 characters. Supported
 26581  	//    values are date/time strings in a valid ISO 8601 date/time format, such
 26582  	//    as 2021-11-04T05:00:00Z.
 26583  	Filters []*MaintenanceWindowFilter `type:"list"`
 26584  
 26585  	// The maximum number of items to return for this call. The call also returns
 26586  	// a token that you can specify in a subsequent call to get the next set of
 26587  	// results.
 26588  	MaxResults *int64 `min:"10" type:"integer"`
 26589  
 26590  	// The token for the next set of items to return. (You received this token from
 26591  	// a previous call.)
 26592  	NextToken *string `type:"string"`
 26593  
 26594  	// The ID of the maintenance window whose executions should be retrieved.
 26595  	//
 26596  	// WindowId is a required field
 26597  	WindowId *string `min:"20" type:"string" required:"true"`
 26598  }
 26599  
 26600  // String returns the string representation.
 26601  //
 26602  // API parameter values that are decorated as "sensitive" in the API will not
 26603  // be included in the string output. The member name will be present, but the
 26604  // value will be replaced with "sensitive".
 26605  func (s DescribeMaintenanceWindowExecutionsInput) String() string {
 26606  	return awsutil.Prettify(s)
 26607  }
 26608  
 26609  // GoString returns the string representation.
 26610  //
 26611  // API parameter values that are decorated as "sensitive" in the API will not
 26612  // be included in the string output. The member name will be present, but the
 26613  // value will be replaced with "sensitive".
 26614  func (s DescribeMaintenanceWindowExecutionsInput) GoString() string {
 26615  	return s.String()
 26616  }
 26617  
 26618  // Validate inspects the fields of the type to determine if they are valid.
 26619  func (s *DescribeMaintenanceWindowExecutionsInput) Validate() error {
 26620  	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowExecutionsInput"}
 26621  	if s.MaxResults != nil && *s.MaxResults < 10 {
 26622  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
 26623  	}
 26624  	if s.WindowId == nil {
 26625  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 26626  	}
 26627  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 26628  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 26629  	}
 26630  	if s.Filters != nil {
 26631  		for i, v := range s.Filters {
 26632  			if v == nil {
 26633  				continue
 26634  			}
 26635  			if err := v.Validate(); err != nil {
 26636  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 26637  			}
 26638  		}
 26639  	}
 26640  
 26641  	if invalidParams.Len() > 0 {
 26642  		return invalidParams
 26643  	}
 26644  	return nil
 26645  }
 26646  
 26647  // SetFilters sets the Filters field's value.
 26648  func (s *DescribeMaintenanceWindowExecutionsInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowExecutionsInput {
 26649  	s.Filters = v
 26650  	return s
 26651  }
 26652  
 26653  // SetMaxResults sets the MaxResults field's value.
 26654  func (s *DescribeMaintenanceWindowExecutionsInput) SetMaxResults(v int64) *DescribeMaintenanceWindowExecutionsInput {
 26655  	s.MaxResults = &v
 26656  	return s
 26657  }
 26658  
 26659  // SetNextToken sets the NextToken field's value.
 26660  func (s *DescribeMaintenanceWindowExecutionsInput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionsInput {
 26661  	s.NextToken = &v
 26662  	return s
 26663  }
 26664  
 26665  // SetWindowId sets the WindowId field's value.
 26666  func (s *DescribeMaintenanceWindowExecutionsInput) SetWindowId(v string) *DescribeMaintenanceWindowExecutionsInput {
 26667  	s.WindowId = &v
 26668  	return s
 26669  }
 26670  
 26671  type DescribeMaintenanceWindowExecutionsOutput struct {
 26672  	_ struct{} `type:"structure"`
 26673  
 26674  	// The token to use when requesting the next set of items. If there are no additional
 26675  	// items to return, the string is empty.
 26676  	NextToken *string `type:"string"`
 26677  
 26678  	// Information about the maintenance window executions.
 26679  	WindowExecutions []*MaintenanceWindowExecution `type:"list"`
 26680  }
 26681  
 26682  // String returns the string representation.
 26683  //
 26684  // API parameter values that are decorated as "sensitive" in the API will not
 26685  // be included in the string output. The member name will be present, but the
 26686  // value will be replaced with "sensitive".
 26687  func (s DescribeMaintenanceWindowExecutionsOutput) String() string {
 26688  	return awsutil.Prettify(s)
 26689  }
 26690  
 26691  // GoString returns the string representation.
 26692  //
 26693  // API parameter values that are decorated as "sensitive" in the API will not
 26694  // be included in the string output. The member name will be present, but the
 26695  // value will be replaced with "sensitive".
 26696  func (s DescribeMaintenanceWindowExecutionsOutput) GoString() string {
 26697  	return s.String()
 26698  }
 26699  
 26700  // SetNextToken sets the NextToken field's value.
 26701  func (s *DescribeMaintenanceWindowExecutionsOutput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionsOutput {
 26702  	s.NextToken = &v
 26703  	return s
 26704  }
 26705  
 26706  // SetWindowExecutions sets the WindowExecutions field's value.
 26707  func (s *DescribeMaintenanceWindowExecutionsOutput) SetWindowExecutions(v []*MaintenanceWindowExecution) *DescribeMaintenanceWindowExecutionsOutput {
 26708  	s.WindowExecutions = v
 26709  	return s
 26710  }
 26711  
 26712  type DescribeMaintenanceWindowScheduleInput struct {
 26713  	_ struct{} `type:"structure"`
 26714  
 26715  	// Filters used to limit the range of results. For example, you can limit maintenance
 26716  	// window executions to only those scheduled before or after a certain date
 26717  	// and time.
 26718  	Filters []*PatchOrchestratorFilter `type:"list"`
 26719  
 26720  	// The maximum number of items to return for this call. The call also returns
 26721  	// a token that you can specify in a subsequent call to get the next set of
 26722  	// results.
 26723  	MaxResults *int64 `min:"1" type:"integer"`
 26724  
 26725  	// The token for the next set of items to return. (You received this token from
 26726  	// a previous call.)
 26727  	NextToken *string `type:"string"`
 26728  
 26729  	// The type of resource you want to retrieve information about. For example,
 26730  	// INSTANCE.
 26731  	ResourceType *string `type:"string" enum:"MaintenanceWindowResourceType"`
 26732  
 26733  	// The instance ID or key-value pair to retrieve information about.
 26734  	Targets []*Target `type:"list"`
 26735  
 26736  	// The ID of the maintenance window to retrieve information about.
 26737  	WindowId *string `min:"20" type:"string"`
 26738  }
 26739  
 26740  // String returns the string representation.
 26741  //
 26742  // API parameter values that are decorated as "sensitive" in the API will not
 26743  // be included in the string output. The member name will be present, but the
 26744  // value will be replaced with "sensitive".
 26745  func (s DescribeMaintenanceWindowScheduleInput) String() string {
 26746  	return awsutil.Prettify(s)
 26747  }
 26748  
 26749  // GoString returns the string representation.
 26750  //
 26751  // API parameter values that are decorated as "sensitive" in the API will not
 26752  // be included in the string output. The member name will be present, but the
 26753  // value will be replaced with "sensitive".
 26754  func (s DescribeMaintenanceWindowScheduleInput) GoString() string {
 26755  	return s.String()
 26756  }
 26757  
 26758  // Validate inspects the fields of the type to determine if they are valid.
 26759  func (s *DescribeMaintenanceWindowScheduleInput) Validate() error {
 26760  	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowScheduleInput"}
 26761  	if s.MaxResults != nil && *s.MaxResults < 1 {
 26762  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 26763  	}
 26764  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 26765  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 26766  	}
 26767  	if s.Filters != nil {
 26768  		for i, v := range s.Filters {
 26769  			if v == nil {
 26770  				continue
 26771  			}
 26772  			if err := v.Validate(); err != nil {
 26773  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 26774  			}
 26775  		}
 26776  	}
 26777  	if s.Targets != nil {
 26778  		for i, v := range s.Targets {
 26779  			if v == nil {
 26780  				continue
 26781  			}
 26782  			if err := v.Validate(); err != nil {
 26783  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 26784  			}
 26785  		}
 26786  	}
 26787  
 26788  	if invalidParams.Len() > 0 {
 26789  		return invalidParams
 26790  	}
 26791  	return nil
 26792  }
 26793  
 26794  // SetFilters sets the Filters field's value.
 26795  func (s *DescribeMaintenanceWindowScheduleInput) SetFilters(v []*PatchOrchestratorFilter) *DescribeMaintenanceWindowScheduleInput {
 26796  	s.Filters = v
 26797  	return s
 26798  }
 26799  
 26800  // SetMaxResults sets the MaxResults field's value.
 26801  func (s *DescribeMaintenanceWindowScheduleInput) SetMaxResults(v int64) *DescribeMaintenanceWindowScheduleInput {
 26802  	s.MaxResults = &v
 26803  	return s
 26804  }
 26805  
 26806  // SetNextToken sets the NextToken field's value.
 26807  func (s *DescribeMaintenanceWindowScheduleInput) SetNextToken(v string) *DescribeMaintenanceWindowScheduleInput {
 26808  	s.NextToken = &v
 26809  	return s
 26810  }
 26811  
 26812  // SetResourceType sets the ResourceType field's value.
 26813  func (s *DescribeMaintenanceWindowScheduleInput) SetResourceType(v string) *DescribeMaintenanceWindowScheduleInput {
 26814  	s.ResourceType = &v
 26815  	return s
 26816  }
 26817  
 26818  // SetTargets sets the Targets field's value.
 26819  func (s *DescribeMaintenanceWindowScheduleInput) SetTargets(v []*Target) *DescribeMaintenanceWindowScheduleInput {
 26820  	s.Targets = v
 26821  	return s
 26822  }
 26823  
 26824  // SetWindowId sets the WindowId field's value.
 26825  func (s *DescribeMaintenanceWindowScheduleInput) SetWindowId(v string) *DescribeMaintenanceWindowScheduleInput {
 26826  	s.WindowId = &v
 26827  	return s
 26828  }
 26829  
 26830  type DescribeMaintenanceWindowScheduleOutput struct {
 26831  	_ struct{} `type:"structure"`
 26832  
 26833  	// The token for the next set of items to return. (You use this token in the
 26834  	// next call.)
 26835  	NextToken *string `type:"string"`
 26836  
 26837  	// Information about maintenance window executions scheduled for the specified
 26838  	// time range.
 26839  	ScheduledWindowExecutions []*ScheduledWindowExecution `type:"list"`
 26840  }
 26841  
 26842  // String returns the string representation.
 26843  //
 26844  // API parameter values that are decorated as "sensitive" in the API will not
 26845  // be included in the string output. The member name will be present, but the
 26846  // value will be replaced with "sensitive".
 26847  func (s DescribeMaintenanceWindowScheduleOutput) String() string {
 26848  	return awsutil.Prettify(s)
 26849  }
 26850  
 26851  // GoString returns the string representation.
 26852  //
 26853  // API parameter values that are decorated as "sensitive" in the API will not
 26854  // be included in the string output. The member name will be present, but the
 26855  // value will be replaced with "sensitive".
 26856  func (s DescribeMaintenanceWindowScheduleOutput) GoString() string {
 26857  	return s.String()
 26858  }
 26859  
 26860  // SetNextToken sets the NextToken field's value.
 26861  func (s *DescribeMaintenanceWindowScheduleOutput) SetNextToken(v string) *DescribeMaintenanceWindowScheduleOutput {
 26862  	s.NextToken = &v
 26863  	return s
 26864  }
 26865  
 26866  // SetScheduledWindowExecutions sets the ScheduledWindowExecutions field's value.
 26867  func (s *DescribeMaintenanceWindowScheduleOutput) SetScheduledWindowExecutions(v []*ScheduledWindowExecution) *DescribeMaintenanceWindowScheduleOutput {
 26868  	s.ScheduledWindowExecutions = v
 26869  	return s
 26870  }
 26871  
 26872  type DescribeMaintenanceWindowTargetsInput struct {
 26873  	_ struct{} `type:"structure"`
 26874  
 26875  	// Optional filters that can be used to narrow down the scope of the returned
 26876  	// window targets. The supported filter keys are Type, WindowTargetId, and OwnerInformation.
 26877  	Filters []*MaintenanceWindowFilter `type:"list"`
 26878  
 26879  	// The maximum number of items to return for this call. The call also returns
 26880  	// a token that you can specify in a subsequent call to get the next set of
 26881  	// results.
 26882  	MaxResults *int64 `min:"10" type:"integer"`
 26883  
 26884  	// The token for the next set of items to return. (You received this token from
 26885  	// a previous call.)
 26886  	NextToken *string `type:"string"`
 26887  
 26888  	// The ID of the maintenance window whose targets should be retrieved.
 26889  	//
 26890  	// WindowId is a required field
 26891  	WindowId *string `min:"20" type:"string" required:"true"`
 26892  }
 26893  
 26894  // String returns the string representation.
 26895  //
 26896  // API parameter values that are decorated as "sensitive" in the API will not
 26897  // be included in the string output. The member name will be present, but the
 26898  // value will be replaced with "sensitive".
 26899  func (s DescribeMaintenanceWindowTargetsInput) String() string {
 26900  	return awsutil.Prettify(s)
 26901  }
 26902  
 26903  // GoString returns the string representation.
 26904  //
 26905  // API parameter values that are decorated as "sensitive" in the API will not
 26906  // be included in the string output. The member name will be present, but the
 26907  // value will be replaced with "sensitive".
 26908  func (s DescribeMaintenanceWindowTargetsInput) GoString() string {
 26909  	return s.String()
 26910  }
 26911  
 26912  // Validate inspects the fields of the type to determine if they are valid.
 26913  func (s *DescribeMaintenanceWindowTargetsInput) Validate() error {
 26914  	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowTargetsInput"}
 26915  	if s.MaxResults != nil && *s.MaxResults < 10 {
 26916  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
 26917  	}
 26918  	if s.WindowId == nil {
 26919  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 26920  	}
 26921  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 26922  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 26923  	}
 26924  	if s.Filters != nil {
 26925  		for i, v := range s.Filters {
 26926  			if v == nil {
 26927  				continue
 26928  			}
 26929  			if err := v.Validate(); err != nil {
 26930  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 26931  			}
 26932  		}
 26933  	}
 26934  
 26935  	if invalidParams.Len() > 0 {
 26936  		return invalidParams
 26937  	}
 26938  	return nil
 26939  }
 26940  
 26941  // SetFilters sets the Filters field's value.
 26942  func (s *DescribeMaintenanceWindowTargetsInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowTargetsInput {
 26943  	s.Filters = v
 26944  	return s
 26945  }
 26946  
 26947  // SetMaxResults sets the MaxResults field's value.
 26948  func (s *DescribeMaintenanceWindowTargetsInput) SetMaxResults(v int64) *DescribeMaintenanceWindowTargetsInput {
 26949  	s.MaxResults = &v
 26950  	return s
 26951  }
 26952  
 26953  // SetNextToken sets the NextToken field's value.
 26954  func (s *DescribeMaintenanceWindowTargetsInput) SetNextToken(v string) *DescribeMaintenanceWindowTargetsInput {
 26955  	s.NextToken = &v
 26956  	return s
 26957  }
 26958  
 26959  // SetWindowId sets the WindowId field's value.
 26960  func (s *DescribeMaintenanceWindowTargetsInput) SetWindowId(v string) *DescribeMaintenanceWindowTargetsInput {
 26961  	s.WindowId = &v
 26962  	return s
 26963  }
 26964  
 26965  type DescribeMaintenanceWindowTargetsOutput struct {
 26966  	_ struct{} `type:"structure"`
 26967  
 26968  	// The token to use when requesting the next set of items. If there are no additional
 26969  	// items to return, the string is empty.
 26970  	NextToken *string `type:"string"`
 26971  
 26972  	// Information about the targets in the maintenance window.
 26973  	Targets []*MaintenanceWindowTarget `type:"list"`
 26974  }
 26975  
 26976  // String returns the string representation.
 26977  //
 26978  // API parameter values that are decorated as "sensitive" in the API will not
 26979  // be included in the string output. The member name will be present, but the
 26980  // value will be replaced with "sensitive".
 26981  func (s DescribeMaintenanceWindowTargetsOutput) String() string {
 26982  	return awsutil.Prettify(s)
 26983  }
 26984  
 26985  // GoString returns the string representation.
 26986  //
 26987  // API parameter values that are decorated as "sensitive" in the API will not
 26988  // be included in the string output. The member name will be present, but the
 26989  // value will be replaced with "sensitive".
 26990  func (s DescribeMaintenanceWindowTargetsOutput) GoString() string {
 26991  	return s.String()
 26992  }
 26993  
 26994  // SetNextToken sets the NextToken field's value.
 26995  func (s *DescribeMaintenanceWindowTargetsOutput) SetNextToken(v string) *DescribeMaintenanceWindowTargetsOutput {
 26996  	s.NextToken = &v
 26997  	return s
 26998  }
 26999  
 27000  // SetTargets sets the Targets field's value.
 27001  func (s *DescribeMaintenanceWindowTargetsOutput) SetTargets(v []*MaintenanceWindowTarget) *DescribeMaintenanceWindowTargetsOutput {
 27002  	s.Targets = v
 27003  	return s
 27004  }
 27005  
 27006  type DescribeMaintenanceWindowTasksInput struct {
 27007  	_ struct{} `type:"structure"`
 27008  
 27009  	// Optional filters used to narrow down the scope of the returned tasks. The
 27010  	// supported filter keys are WindowTaskId, TaskArn, Priority, and TaskType.
 27011  	Filters []*MaintenanceWindowFilter `type:"list"`
 27012  
 27013  	// The maximum number of items to return for this call. The call also returns
 27014  	// a token that you can specify in a subsequent call to get the next set of
 27015  	// results.
 27016  	MaxResults *int64 `min:"10" type:"integer"`
 27017  
 27018  	// The token for the next set of items to return. (You received this token from
 27019  	// a previous call.)
 27020  	NextToken *string `type:"string"`
 27021  
 27022  	// The ID of the maintenance window whose tasks should be retrieved.
 27023  	//
 27024  	// WindowId is a required field
 27025  	WindowId *string `min:"20" type:"string" required:"true"`
 27026  }
 27027  
 27028  // String returns the string representation.
 27029  //
 27030  // API parameter values that are decorated as "sensitive" in the API will not
 27031  // be included in the string output. The member name will be present, but the
 27032  // value will be replaced with "sensitive".
 27033  func (s DescribeMaintenanceWindowTasksInput) String() string {
 27034  	return awsutil.Prettify(s)
 27035  }
 27036  
 27037  // GoString returns the string representation.
 27038  //
 27039  // API parameter values that are decorated as "sensitive" in the API will not
 27040  // be included in the string output. The member name will be present, but the
 27041  // value will be replaced with "sensitive".
 27042  func (s DescribeMaintenanceWindowTasksInput) GoString() string {
 27043  	return s.String()
 27044  }
 27045  
 27046  // Validate inspects the fields of the type to determine if they are valid.
 27047  func (s *DescribeMaintenanceWindowTasksInput) Validate() error {
 27048  	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowTasksInput"}
 27049  	if s.MaxResults != nil && *s.MaxResults < 10 {
 27050  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
 27051  	}
 27052  	if s.WindowId == nil {
 27053  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 27054  	}
 27055  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 27056  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 27057  	}
 27058  	if s.Filters != nil {
 27059  		for i, v := range s.Filters {
 27060  			if v == nil {
 27061  				continue
 27062  			}
 27063  			if err := v.Validate(); err != nil {
 27064  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 27065  			}
 27066  		}
 27067  	}
 27068  
 27069  	if invalidParams.Len() > 0 {
 27070  		return invalidParams
 27071  	}
 27072  	return nil
 27073  }
 27074  
 27075  // SetFilters sets the Filters field's value.
 27076  func (s *DescribeMaintenanceWindowTasksInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowTasksInput {
 27077  	s.Filters = v
 27078  	return s
 27079  }
 27080  
 27081  // SetMaxResults sets the MaxResults field's value.
 27082  func (s *DescribeMaintenanceWindowTasksInput) SetMaxResults(v int64) *DescribeMaintenanceWindowTasksInput {
 27083  	s.MaxResults = &v
 27084  	return s
 27085  }
 27086  
 27087  // SetNextToken sets the NextToken field's value.
 27088  func (s *DescribeMaintenanceWindowTasksInput) SetNextToken(v string) *DescribeMaintenanceWindowTasksInput {
 27089  	s.NextToken = &v
 27090  	return s
 27091  }
 27092  
 27093  // SetWindowId sets the WindowId field's value.
 27094  func (s *DescribeMaintenanceWindowTasksInput) SetWindowId(v string) *DescribeMaintenanceWindowTasksInput {
 27095  	s.WindowId = &v
 27096  	return s
 27097  }
 27098  
 27099  type DescribeMaintenanceWindowTasksOutput struct {
 27100  	_ struct{} `type:"structure"`
 27101  
 27102  	// The token to use when requesting the next set of items. If there are no additional
 27103  	// items to return, the string is empty.
 27104  	NextToken *string `type:"string"`
 27105  
 27106  	// Information about the tasks in the maintenance window.
 27107  	Tasks []*MaintenanceWindowTask `type:"list"`
 27108  }
 27109  
 27110  // String returns the string representation.
 27111  //
 27112  // API parameter values that are decorated as "sensitive" in the API will not
 27113  // be included in the string output. The member name will be present, but the
 27114  // value will be replaced with "sensitive".
 27115  func (s DescribeMaintenanceWindowTasksOutput) String() string {
 27116  	return awsutil.Prettify(s)
 27117  }
 27118  
 27119  // GoString returns the string representation.
 27120  //
 27121  // API parameter values that are decorated as "sensitive" in the API will not
 27122  // be included in the string output. The member name will be present, but the
 27123  // value will be replaced with "sensitive".
 27124  func (s DescribeMaintenanceWindowTasksOutput) GoString() string {
 27125  	return s.String()
 27126  }
 27127  
 27128  // SetNextToken sets the NextToken field's value.
 27129  func (s *DescribeMaintenanceWindowTasksOutput) SetNextToken(v string) *DescribeMaintenanceWindowTasksOutput {
 27130  	s.NextToken = &v
 27131  	return s
 27132  }
 27133  
 27134  // SetTasks sets the Tasks field's value.
 27135  func (s *DescribeMaintenanceWindowTasksOutput) SetTasks(v []*MaintenanceWindowTask) *DescribeMaintenanceWindowTasksOutput {
 27136  	s.Tasks = v
 27137  	return s
 27138  }
 27139  
 27140  type DescribeMaintenanceWindowsForTargetInput struct {
 27141  	_ struct{} `type:"structure"`
 27142  
 27143  	// The maximum number of items to return for this call. The call also returns
 27144  	// a token that you can specify in a subsequent call to get the next set of
 27145  	// results.
 27146  	MaxResults *int64 `min:"1" type:"integer"`
 27147  
 27148  	// The token for the next set of items to return. (You received this token from
 27149  	// a previous call.)
 27150  	NextToken *string `type:"string"`
 27151  
 27152  	// The type of resource you want to retrieve information about. For example,
 27153  	// INSTANCE.
 27154  	//
 27155  	// ResourceType is a required field
 27156  	ResourceType *string `type:"string" required:"true" enum:"MaintenanceWindowResourceType"`
 27157  
 27158  	// The instance ID or key-value pair to retrieve information about.
 27159  	//
 27160  	// Targets is a required field
 27161  	Targets []*Target `type:"list" required:"true"`
 27162  }
 27163  
 27164  // String returns the string representation.
 27165  //
 27166  // API parameter values that are decorated as "sensitive" in the API will not
 27167  // be included in the string output. The member name will be present, but the
 27168  // value will be replaced with "sensitive".
 27169  func (s DescribeMaintenanceWindowsForTargetInput) String() string {
 27170  	return awsutil.Prettify(s)
 27171  }
 27172  
 27173  // GoString returns the string representation.
 27174  //
 27175  // API parameter values that are decorated as "sensitive" in the API will not
 27176  // be included in the string output. The member name will be present, but the
 27177  // value will be replaced with "sensitive".
 27178  func (s DescribeMaintenanceWindowsForTargetInput) GoString() string {
 27179  	return s.String()
 27180  }
 27181  
 27182  // Validate inspects the fields of the type to determine if they are valid.
 27183  func (s *DescribeMaintenanceWindowsForTargetInput) Validate() error {
 27184  	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowsForTargetInput"}
 27185  	if s.MaxResults != nil && *s.MaxResults < 1 {
 27186  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 27187  	}
 27188  	if s.ResourceType == nil {
 27189  		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
 27190  	}
 27191  	if s.Targets == nil {
 27192  		invalidParams.Add(request.NewErrParamRequired("Targets"))
 27193  	}
 27194  	if s.Targets != nil {
 27195  		for i, v := range s.Targets {
 27196  			if v == nil {
 27197  				continue
 27198  			}
 27199  			if err := v.Validate(); err != nil {
 27200  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 27201  			}
 27202  		}
 27203  	}
 27204  
 27205  	if invalidParams.Len() > 0 {
 27206  		return invalidParams
 27207  	}
 27208  	return nil
 27209  }
 27210  
 27211  // SetMaxResults sets the MaxResults field's value.
 27212  func (s *DescribeMaintenanceWindowsForTargetInput) SetMaxResults(v int64) *DescribeMaintenanceWindowsForTargetInput {
 27213  	s.MaxResults = &v
 27214  	return s
 27215  }
 27216  
 27217  // SetNextToken sets the NextToken field's value.
 27218  func (s *DescribeMaintenanceWindowsForTargetInput) SetNextToken(v string) *DescribeMaintenanceWindowsForTargetInput {
 27219  	s.NextToken = &v
 27220  	return s
 27221  }
 27222  
 27223  // SetResourceType sets the ResourceType field's value.
 27224  func (s *DescribeMaintenanceWindowsForTargetInput) SetResourceType(v string) *DescribeMaintenanceWindowsForTargetInput {
 27225  	s.ResourceType = &v
 27226  	return s
 27227  }
 27228  
 27229  // SetTargets sets the Targets field's value.
 27230  func (s *DescribeMaintenanceWindowsForTargetInput) SetTargets(v []*Target) *DescribeMaintenanceWindowsForTargetInput {
 27231  	s.Targets = v
 27232  	return s
 27233  }
 27234  
 27235  type DescribeMaintenanceWindowsForTargetOutput struct {
 27236  	_ struct{} `type:"structure"`
 27237  
 27238  	// The token for the next set of items to return. (You use this token in the
 27239  	// next call.)
 27240  	NextToken *string `type:"string"`
 27241  
 27242  	// Information about the maintenance window targets and tasks an instance is
 27243  	// associated with.
 27244  	WindowIdentities []*MaintenanceWindowIdentityForTarget `type:"list"`
 27245  }
 27246  
 27247  // String returns the string representation.
 27248  //
 27249  // API parameter values that are decorated as "sensitive" in the API will not
 27250  // be included in the string output. The member name will be present, but the
 27251  // value will be replaced with "sensitive".
 27252  func (s DescribeMaintenanceWindowsForTargetOutput) String() string {
 27253  	return awsutil.Prettify(s)
 27254  }
 27255  
 27256  // GoString returns the string representation.
 27257  //
 27258  // API parameter values that are decorated as "sensitive" in the API will not
 27259  // be included in the string output. The member name will be present, but the
 27260  // value will be replaced with "sensitive".
 27261  func (s DescribeMaintenanceWindowsForTargetOutput) GoString() string {
 27262  	return s.String()
 27263  }
 27264  
 27265  // SetNextToken sets the NextToken field's value.
 27266  func (s *DescribeMaintenanceWindowsForTargetOutput) SetNextToken(v string) *DescribeMaintenanceWindowsForTargetOutput {
 27267  	s.NextToken = &v
 27268  	return s
 27269  }
 27270  
 27271  // SetWindowIdentities sets the WindowIdentities field's value.
 27272  func (s *DescribeMaintenanceWindowsForTargetOutput) SetWindowIdentities(v []*MaintenanceWindowIdentityForTarget) *DescribeMaintenanceWindowsForTargetOutput {
 27273  	s.WindowIdentities = v
 27274  	return s
 27275  }
 27276  
 27277  type DescribeMaintenanceWindowsInput struct {
 27278  	_ struct{} `type:"structure"`
 27279  
 27280  	// Optional filters used to narrow down the scope of the returned maintenance
 27281  	// windows. Supported filter keys are Name and Enabled. For example, Name=MyMaintenanceWindow
 27282  	// and Enabled=True.
 27283  	Filters []*MaintenanceWindowFilter `type:"list"`
 27284  
 27285  	// The maximum number of items to return for this call. The call also returns
 27286  	// a token that you can specify in a subsequent call to get the next set of
 27287  	// results.
 27288  	MaxResults *int64 `min:"10" type:"integer"`
 27289  
 27290  	// The token for the next set of items to return. (You received this token from
 27291  	// a previous call.)
 27292  	NextToken *string `type:"string"`
 27293  }
 27294  
 27295  // String returns the string representation.
 27296  //
 27297  // API parameter values that are decorated as "sensitive" in the API will not
 27298  // be included in the string output. The member name will be present, but the
 27299  // value will be replaced with "sensitive".
 27300  func (s DescribeMaintenanceWindowsInput) String() string {
 27301  	return awsutil.Prettify(s)
 27302  }
 27303  
 27304  // GoString returns the string representation.
 27305  //
 27306  // API parameter values that are decorated as "sensitive" in the API will not
 27307  // be included in the string output. The member name will be present, but the
 27308  // value will be replaced with "sensitive".
 27309  func (s DescribeMaintenanceWindowsInput) GoString() string {
 27310  	return s.String()
 27311  }
 27312  
 27313  // Validate inspects the fields of the type to determine if they are valid.
 27314  func (s *DescribeMaintenanceWindowsInput) Validate() error {
 27315  	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowsInput"}
 27316  	if s.MaxResults != nil && *s.MaxResults < 10 {
 27317  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
 27318  	}
 27319  	if s.Filters != nil {
 27320  		for i, v := range s.Filters {
 27321  			if v == nil {
 27322  				continue
 27323  			}
 27324  			if err := v.Validate(); err != nil {
 27325  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 27326  			}
 27327  		}
 27328  	}
 27329  
 27330  	if invalidParams.Len() > 0 {
 27331  		return invalidParams
 27332  	}
 27333  	return nil
 27334  }
 27335  
 27336  // SetFilters sets the Filters field's value.
 27337  func (s *DescribeMaintenanceWindowsInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowsInput {
 27338  	s.Filters = v
 27339  	return s
 27340  }
 27341  
 27342  // SetMaxResults sets the MaxResults field's value.
 27343  func (s *DescribeMaintenanceWindowsInput) SetMaxResults(v int64) *DescribeMaintenanceWindowsInput {
 27344  	s.MaxResults = &v
 27345  	return s
 27346  }
 27347  
 27348  // SetNextToken sets the NextToken field's value.
 27349  func (s *DescribeMaintenanceWindowsInput) SetNextToken(v string) *DescribeMaintenanceWindowsInput {
 27350  	s.NextToken = &v
 27351  	return s
 27352  }
 27353  
 27354  type DescribeMaintenanceWindowsOutput struct {
 27355  	_ struct{} `type:"structure"`
 27356  
 27357  	// The token to use when requesting the next set of items. If there are no additional
 27358  	// items to return, the string is empty.
 27359  	NextToken *string `type:"string"`
 27360  
 27361  	// Information about the maintenance windows.
 27362  	WindowIdentities []*MaintenanceWindowIdentity `type:"list"`
 27363  }
 27364  
 27365  // String returns the string representation.
 27366  //
 27367  // API parameter values that are decorated as "sensitive" in the API will not
 27368  // be included in the string output. The member name will be present, but the
 27369  // value will be replaced with "sensitive".
 27370  func (s DescribeMaintenanceWindowsOutput) String() string {
 27371  	return awsutil.Prettify(s)
 27372  }
 27373  
 27374  // GoString returns the string representation.
 27375  //
 27376  // API parameter values that are decorated as "sensitive" in the API will not
 27377  // be included in the string output. The member name will be present, but the
 27378  // value will be replaced with "sensitive".
 27379  func (s DescribeMaintenanceWindowsOutput) GoString() string {
 27380  	return s.String()
 27381  }
 27382  
 27383  // SetNextToken sets the NextToken field's value.
 27384  func (s *DescribeMaintenanceWindowsOutput) SetNextToken(v string) *DescribeMaintenanceWindowsOutput {
 27385  	s.NextToken = &v
 27386  	return s
 27387  }
 27388  
 27389  // SetWindowIdentities sets the WindowIdentities field's value.
 27390  func (s *DescribeMaintenanceWindowsOutput) SetWindowIdentities(v []*MaintenanceWindowIdentity) *DescribeMaintenanceWindowsOutput {
 27391  	s.WindowIdentities = v
 27392  	return s
 27393  }
 27394  
 27395  type DescribeOpsItemsInput struct {
 27396  	_ struct{} `type:"structure"`
 27397  
 27398  	// The maximum number of items to return for this call. The call also returns
 27399  	// a token that you can specify in a subsequent call to get the next set of
 27400  	// results.
 27401  	MaxResults *int64 `min:"1" type:"integer"`
 27402  
 27403  	// A token to start the list. Use this token to get the next set of results.
 27404  	NextToken *string `type:"string"`
 27405  
 27406  	// One or more filters to limit the response.
 27407  	//
 27408  	//    * Key: CreatedTime Operations: GreaterThan, LessThan
 27409  	//
 27410  	//    * Key: LastModifiedBy Operations: Contains, Equals
 27411  	//
 27412  	//    * Key: LastModifiedTime Operations: GreaterThan, LessThan
 27413  	//
 27414  	//    * Key: Priority Operations: Equals
 27415  	//
 27416  	//    * Key: Source Operations: Contains, Equals
 27417  	//
 27418  	//    * Key: Status Operations: Equals
 27419  	//
 27420  	//    * Key: Title* Operations: Equals,Contains
 27421  	//
 27422  	//    * Key: OperationalData** Operations: Equals
 27423  	//
 27424  	//    * Key: OperationalDataKey Operations: Equals
 27425  	//
 27426  	//    * Key: OperationalDataValue Operations: Equals, Contains
 27427  	//
 27428  	//    * Key: OpsItemId Operations: Equals
 27429  	//
 27430  	//    * Key: ResourceId Operations: Contains
 27431  	//
 27432  	//    * Key: AutomationId Operations: Equals
 27433  	//
 27434  	// *The Equals operator for Title matches the first 100 characters. If you specify
 27435  	// more than 100 characters, they system returns an error that the filter value
 27436  	// exceeds the length limit.
 27437  	//
 27438  	// **If you filter the response by using the OperationalData operator, specify
 27439  	// a key-value pair by using the following JSON format: {"key":"key_name","value":"a_value"}
 27440  	OpsItemFilters []*OpsItemFilter `type:"list"`
 27441  }
 27442  
 27443  // String returns the string representation.
 27444  //
 27445  // API parameter values that are decorated as "sensitive" in the API will not
 27446  // be included in the string output. The member name will be present, but the
 27447  // value will be replaced with "sensitive".
 27448  func (s DescribeOpsItemsInput) String() string {
 27449  	return awsutil.Prettify(s)
 27450  }
 27451  
 27452  // GoString returns the string representation.
 27453  //
 27454  // API parameter values that are decorated as "sensitive" in the API will not
 27455  // be included in the string output. The member name will be present, but the
 27456  // value will be replaced with "sensitive".
 27457  func (s DescribeOpsItemsInput) GoString() string {
 27458  	return s.String()
 27459  }
 27460  
 27461  // Validate inspects the fields of the type to determine if they are valid.
 27462  func (s *DescribeOpsItemsInput) Validate() error {
 27463  	invalidParams := request.ErrInvalidParams{Context: "DescribeOpsItemsInput"}
 27464  	if s.MaxResults != nil && *s.MaxResults < 1 {
 27465  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 27466  	}
 27467  	if s.OpsItemFilters != nil {
 27468  		for i, v := range s.OpsItemFilters {
 27469  			if v == nil {
 27470  				continue
 27471  			}
 27472  			if err := v.Validate(); err != nil {
 27473  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OpsItemFilters", i), err.(request.ErrInvalidParams))
 27474  			}
 27475  		}
 27476  	}
 27477  
 27478  	if invalidParams.Len() > 0 {
 27479  		return invalidParams
 27480  	}
 27481  	return nil
 27482  }
 27483  
 27484  // SetMaxResults sets the MaxResults field's value.
 27485  func (s *DescribeOpsItemsInput) SetMaxResults(v int64) *DescribeOpsItemsInput {
 27486  	s.MaxResults = &v
 27487  	return s
 27488  }
 27489  
 27490  // SetNextToken sets the NextToken field's value.
 27491  func (s *DescribeOpsItemsInput) SetNextToken(v string) *DescribeOpsItemsInput {
 27492  	s.NextToken = &v
 27493  	return s
 27494  }
 27495  
 27496  // SetOpsItemFilters sets the OpsItemFilters field's value.
 27497  func (s *DescribeOpsItemsInput) SetOpsItemFilters(v []*OpsItemFilter) *DescribeOpsItemsInput {
 27498  	s.OpsItemFilters = v
 27499  	return s
 27500  }
 27501  
 27502  type DescribeOpsItemsOutput struct {
 27503  	_ struct{} `type:"structure"`
 27504  
 27505  	// The token for the next set of items to return. Use this token to get the
 27506  	// next set of results.
 27507  	NextToken *string `type:"string"`
 27508  
 27509  	// A list of OpsItems.
 27510  	OpsItemSummaries []*OpsItemSummary `type:"list"`
 27511  }
 27512  
 27513  // String returns the string representation.
 27514  //
 27515  // API parameter values that are decorated as "sensitive" in the API will not
 27516  // be included in the string output. The member name will be present, but the
 27517  // value will be replaced with "sensitive".
 27518  func (s DescribeOpsItemsOutput) String() string {
 27519  	return awsutil.Prettify(s)
 27520  }
 27521  
 27522  // GoString returns the string representation.
 27523  //
 27524  // API parameter values that are decorated as "sensitive" in the API will not
 27525  // be included in the string output. The member name will be present, but the
 27526  // value will be replaced with "sensitive".
 27527  func (s DescribeOpsItemsOutput) GoString() string {
 27528  	return s.String()
 27529  }
 27530  
 27531  // SetNextToken sets the NextToken field's value.
 27532  func (s *DescribeOpsItemsOutput) SetNextToken(v string) *DescribeOpsItemsOutput {
 27533  	s.NextToken = &v
 27534  	return s
 27535  }
 27536  
 27537  // SetOpsItemSummaries sets the OpsItemSummaries field's value.
 27538  func (s *DescribeOpsItemsOutput) SetOpsItemSummaries(v []*OpsItemSummary) *DescribeOpsItemsOutput {
 27539  	s.OpsItemSummaries = v
 27540  	return s
 27541  }
 27542  
 27543  type DescribeParametersInput struct {
 27544  	_ struct{} `type:"structure"`
 27545  
 27546  	// This data type is deprecated. Instead, use ParameterFilters.
 27547  	Filters []*ParametersFilter `type:"list"`
 27548  
 27549  	// The maximum number of items to return for this call. The call also returns
 27550  	// a token that you can specify in a subsequent call to get the next set of
 27551  	// results.
 27552  	MaxResults *int64 `min:"1" type:"integer"`
 27553  
 27554  	// The token for the next set of items to return. (You received this token from
 27555  	// a previous call.)
 27556  	NextToken *string `type:"string"`
 27557  
 27558  	// Filters to limit the request results.
 27559  	ParameterFilters []*ParameterStringFilter `type:"list"`
 27560  }
 27561  
 27562  // String returns the string representation.
 27563  //
 27564  // API parameter values that are decorated as "sensitive" in the API will not
 27565  // be included in the string output. The member name will be present, but the
 27566  // value will be replaced with "sensitive".
 27567  func (s DescribeParametersInput) String() string {
 27568  	return awsutil.Prettify(s)
 27569  }
 27570  
 27571  // GoString returns the string representation.
 27572  //
 27573  // API parameter values that are decorated as "sensitive" in the API will not
 27574  // be included in the string output. The member name will be present, but the
 27575  // value will be replaced with "sensitive".
 27576  func (s DescribeParametersInput) GoString() string {
 27577  	return s.String()
 27578  }
 27579  
 27580  // Validate inspects the fields of the type to determine if they are valid.
 27581  func (s *DescribeParametersInput) Validate() error {
 27582  	invalidParams := request.ErrInvalidParams{Context: "DescribeParametersInput"}
 27583  	if s.MaxResults != nil && *s.MaxResults < 1 {
 27584  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 27585  	}
 27586  	if s.Filters != nil {
 27587  		for i, v := range s.Filters {
 27588  			if v == nil {
 27589  				continue
 27590  			}
 27591  			if err := v.Validate(); err != nil {
 27592  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 27593  			}
 27594  		}
 27595  	}
 27596  	if s.ParameterFilters != nil {
 27597  		for i, v := range s.ParameterFilters {
 27598  			if v == nil {
 27599  				continue
 27600  			}
 27601  			if err := v.Validate(); err != nil {
 27602  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParameterFilters", i), err.(request.ErrInvalidParams))
 27603  			}
 27604  		}
 27605  	}
 27606  
 27607  	if invalidParams.Len() > 0 {
 27608  		return invalidParams
 27609  	}
 27610  	return nil
 27611  }
 27612  
 27613  // SetFilters sets the Filters field's value.
 27614  func (s *DescribeParametersInput) SetFilters(v []*ParametersFilter) *DescribeParametersInput {
 27615  	s.Filters = v
 27616  	return s
 27617  }
 27618  
 27619  // SetMaxResults sets the MaxResults field's value.
 27620  func (s *DescribeParametersInput) SetMaxResults(v int64) *DescribeParametersInput {
 27621  	s.MaxResults = &v
 27622  	return s
 27623  }
 27624  
 27625  // SetNextToken sets the NextToken field's value.
 27626  func (s *DescribeParametersInput) SetNextToken(v string) *DescribeParametersInput {
 27627  	s.NextToken = &v
 27628  	return s
 27629  }
 27630  
 27631  // SetParameterFilters sets the ParameterFilters field's value.
 27632  func (s *DescribeParametersInput) SetParameterFilters(v []*ParameterStringFilter) *DescribeParametersInput {
 27633  	s.ParameterFilters = v
 27634  	return s
 27635  }
 27636  
 27637  type DescribeParametersOutput struct {
 27638  	_ struct{} `type:"structure"`
 27639  
 27640  	// The token to use when requesting the next set of items.
 27641  	NextToken *string `type:"string"`
 27642  
 27643  	// Parameters returned by the request.
 27644  	Parameters []*ParameterMetadata `type:"list"`
 27645  }
 27646  
 27647  // String returns the string representation.
 27648  //
 27649  // API parameter values that are decorated as "sensitive" in the API will not
 27650  // be included in the string output. The member name will be present, but the
 27651  // value will be replaced with "sensitive".
 27652  func (s DescribeParametersOutput) String() string {
 27653  	return awsutil.Prettify(s)
 27654  }
 27655  
 27656  // GoString returns the string representation.
 27657  //
 27658  // API parameter values that are decorated as "sensitive" in the API will not
 27659  // be included in the string output. The member name will be present, but the
 27660  // value will be replaced with "sensitive".
 27661  func (s DescribeParametersOutput) GoString() string {
 27662  	return s.String()
 27663  }
 27664  
 27665  // SetNextToken sets the NextToken field's value.
 27666  func (s *DescribeParametersOutput) SetNextToken(v string) *DescribeParametersOutput {
 27667  	s.NextToken = &v
 27668  	return s
 27669  }
 27670  
 27671  // SetParameters sets the Parameters field's value.
 27672  func (s *DescribeParametersOutput) SetParameters(v []*ParameterMetadata) *DescribeParametersOutput {
 27673  	s.Parameters = v
 27674  	return s
 27675  }
 27676  
 27677  type DescribePatchBaselinesInput struct {
 27678  	_ struct{} `type:"structure"`
 27679  
 27680  	// Each element in the array is a structure containing a key-value pair.
 27681  	//
 27682  	// Supported keys for DescribePatchBaselines include the following:
 27683  	//
 27684  	//    * NAME_PREFIX Sample values: AWS- | My-
 27685  	//
 27686  	//    * OWNER Sample values: AWS | Self
 27687  	//
 27688  	//    * OPERATING_SYSTEM Sample values: AMAZON_LINUX | SUSE | WINDOWS
 27689  	Filters []*PatchOrchestratorFilter `type:"list"`
 27690  
 27691  	// The maximum number of patch baselines to return (per page).
 27692  	MaxResults *int64 `min:"1" type:"integer"`
 27693  
 27694  	// The token for the next set of items to return. (You received this token from
 27695  	// a previous call.)
 27696  	NextToken *string `type:"string"`
 27697  }
 27698  
 27699  // String returns the string representation.
 27700  //
 27701  // API parameter values that are decorated as "sensitive" in the API will not
 27702  // be included in the string output. The member name will be present, but the
 27703  // value will be replaced with "sensitive".
 27704  func (s DescribePatchBaselinesInput) String() string {
 27705  	return awsutil.Prettify(s)
 27706  }
 27707  
 27708  // GoString returns the string representation.
 27709  //
 27710  // API parameter values that are decorated as "sensitive" in the API will not
 27711  // be included in the string output. The member name will be present, but the
 27712  // value will be replaced with "sensitive".
 27713  func (s DescribePatchBaselinesInput) GoString() string {
 27714  	return s.String()
 27715  }
 27716  
 27717  // Validate inspects the fields of the type to determine if they are valid.
 27718  func (s *DescribePatchBaselinesInput) Validate() error {
 27719  	invalidParams := request.ErrInvalidParams{Context: "DescribePatchBaselinesInput"}
 27720  	if s.MaxResults != nil && *s.MaxResults < 1 {
 27721  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 27722  	}
 27723  	if s.Filters != nil {
 27724  		for i, v := range s.Filters {
 27725  			if v == nil {
 27726  				continue
 27727  			}
 27728  			if err := v.Validate(); err != nil {
 27729  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 27730  			}
 27731  		}
 27732  	}
 27733  
 27734  	if invalidParams.Len() > 0 {
 27735  		return invalidParams
 27736  	}
 27737  	return nil
 27738  }
 27739  
 27740  // SetFilters sets the Filters field's value.
 27741  func (s *DescribePatchBaselinesInput) SetFilters(v []*PatchOrchestratorFilter) *DescribePatchBaselinesInput {
 27742  	s.Filters = v
 27743  	return s
 27744  }
 27745  
 27746  // SetMaxResults sets the MaxResults field's value.
 27747  func (s *DescribePatchBaselinesInput) SetMaxResults(v int64) *DescribePatchBaselinesInput {
 27748  	s.MaxResults = &v
 27749  	return s
 27750  }
 27751  
 27752  // SetNextToken sets the NextToken field's value.
 27753  func (s *DescribePatchBaselinesInput) SetNextToken(v string) *DescribePatchBaselinesInput {
 27754  	s.NextToken = &v
 27755  	return s
 27756  }
 27757  
 27758  type DescribePatchBaselinesOutput struct {
 27759  	_ struct{} `type:"structure"`
 27760  
 27761  	// An array of PatchBaselineIdentity elements.
 27762  	BaselineIdentities []*PatchBaselineIdentity `type:"list"`
 27763  
 27764  	// The token to use when requesting the next set of items. If there are no additional
 27765  	// items to return, the string is empty.
 27766  	NextToken *string `type:"string"`
 27767  }
 27768  
 27769  // String returns the string representation.
 27770  //
 27771  // API parameter values that are decorated as "sensitive" in the API will not
 27772  // be included in the string output. The member name will be present, but the
 27773  // value will be replaced with "sensitive".
 27774  func (s DescribePatchBaselinesOutput) String() string {
 27775  	return awsutil.Prettify(s)
 27776  }
 27777  
 27778  // GoString returns the string representation.
 27779  //
 27780  // API parameter values that are decorated as "sensitive" in the API will not
 27781  // be included in the string output. The member name will be present, but the
 27782  // value will be replaced with "sensitive".
 27783  func (s DescribePatchBaselinesOutput) GoString() string {
 27784  	return s.String()
 27785  }
 27786  
 27787  // SetBaselineIdentities sets the BaselineIdentities field's value.
 27788  func (s *DescribePatchBaselinesOutput) SetBaselineIdentities(v []*PatchBaselineIdentity) *DescribePatchBaselinesOutput {
 27789  	s.BaselineIdentities = v
 27790  	return s
 27791  }
 27792  
 27793  // SetNextToken sets the NextToken field's value.
 27794  func (s *DescribePatchBaselinesOutput) SetNextToken(v string) *DescribePatchBaselinesOutput {
 27795  	s.NextToken = &v
 27796  	return s
 27797  }
 27798  
 27799  type DescribePatchGroupStateInput struct {
 27800  	_ struct{} `type:"structure"`
 27801  
 27802  	// The name of the patch group whose patch snapshot should be retrieved.
 27803  	//
 27804  	// PatchGroup is a required field
 27805  	PatchGroup *string `min:"1" type:"string" required:"true"`
 27806  }
 27807  
 27808  // String returns the string representation.
 27809  //
 27810  // API parameter values that are decorated as "sensitive" in the API will not
 27811  // be included in the string output. The member name will be present, but the
 27812  // value will be replaced with "sensitive".
 27813  func (s DescribePatchGroupStateInput) String() string {
 27814  	return awsutil.Prettify(s)
 27815  }
 27816  
 27817  // GoString returns the string representation.
 27818  //
 27819  // API parameter values that are decorated as "sensitive" in the API will not
 27820  // be included in the string output. The member name will be present, but the
 27821  // value will be replaced with "sensitive".
 27822  func (s DescribePatchGroupStateInput) GoString() string {
 27823  	return s.String()
 27824  }
 27825  
 27826  // Validate inspects the fields of the type to determine if they are valid.
 27827  func (s *DescribePatchGroupStateInput) Validate() error {
 27828  	invalidParams := request.ErrInvalidParams{Context: "DescribePatchGroupStateInput"}
 27829  	if s.PatchGroup == nil {
 27830  		invalidParams.Add(request.NewErrParamRequired("PatchGroup"))
 27831  	}
 27832  	if s.PatchGroup != nil && len(*s.PatchGroup) < 1 {
 27833  		invalidParams.Add(request.NewErrParamMinLen("PatchGroup", 1))
 27834  	}
 27835  
 27836  	if invalidParams.Len() > 0 {
 27837  		return invalidParams
 27838  	}
 27839  	return nil
 27840  }
 27841  
 27842  // SetPatchGroup sets the PatchGroup field's value.
 27843  func (s *DescribePatchGroupStateInput) SetPatchGroup(v string) *DescribePatchGroupStateInput {
 27844  	s.PatchGroup = &v
 27845  	return s
 27846  }
 27847  
 27848  type DescribePatchGroupStateOutput struct {
 27849  	_ struct{} `type:"structure"`
 27850  
 27851  	// The number of instances in the patch group.
 27852  	Instances *int64 `type:"integer"`
 27853  
 27854  	// The number of instances where patches that are specified as Critical for
 27855  	// compliance reporting in the patch baseline aren't installed. These patches
 27856  	// might be missing, have failed installation, were rejected, or were installed
 27857  	// but awaiting a required instance reboot. The status of these instances is
 27858  	// NON_COMPLIANT.
 27859  	InstancesWithCriticalNonCompliantPatches *int64 `type:"integer"`
 27860  
 27861  	// The number of instances with patches from the patch baseline that failed
 27862  	// to install.
 27863  	InstancesWithFailedPatches *int64 `type:"integer"`
 27864  
 27865  	// The number of instances with patches installed that aren't defined in the
 27866  	// patch baseline.
 27867  	InstancesWithInstalledOtherPatches *int64 `type:"integer"`
 27868  
 27869  	// The number of instances with installed patches.
 27870  	InstancesWithInstalledPatches *int64 `type:"integer"`
 27871  
 27872  	// The number of instances with patches installed by Patch Manager that haven't
 27873  	// been rebooted after the patch installation. The status of these instances
 27874  	// is NON_COMPLIANT.
 27875  	InstancesWithInstalledPendingRebootPatches *int64 `type:"integer"`
 27876  
 27877  	// The number of instances with patches installed that are specified in a RejectedPatches
 27878  	// list. Patches with a status of INSTALLED_REJECTED were typically installed
 27879  	// before they were added to a RejectedPatches list.
 27880  	//
 27881  	// If ALLOW_AS_DEPENDENCY is the specified option for RejectedPatchesAction,
 27882  	// the value of InstancesWithInstalledRejectedPatches will always be 0 (zero).
 27883  	InstancesWithInstalledRejectedPatches *int64 `type:"integer"`
 27884  
 27885  	// The number of instances with missing patches from the patch baseline.
 27886  	InstancesWithMissingPatches *int64 `type:"integer"`
 27887  
 27888  	// The number of instances with patches that aren't applicable.
 27889  	InstancesWithNotApplicablePatches *int64 `type:"integer"`
 27890  
 27891  	// The number of instances with patches installed that are specified as other
 27892  	// than Critical or Security but aren't compliant with the patch baseline. The
 27893  	// status of these instances is NON_COMPLIANT.
 27894  	InstancesWithOtherNonCompliantPatches *int64 `type:"integer"`
 27895  
 27896  	// The number of instances where patches that are specified as Security in a
 27897  	// patch advisory aren't installed. These patches might be missing, have failed
 27898  	// installation, were rejected, or were installed but awaiting a required instance
 27899  	// reboot. The status of these instances is NON_COMPLIANT.
 27900  	InstancesWithSecurityNonCompliantPatches *int64 `type:"integer"`
 27901  
 27902  	// The number of instances with NotApplicable patches beyond the supported limit,
 27903  	// which aren't reported by name to Inventory. Inventory is a capability of
 27904  	// Amazon Web Services Systems Manager.
 27905  	InstancesWithUnreportedNotApplicablePatches *int64 `type:"integer"`
 27906  }
 27907  
 27908  // String returns the string representation.
 27909  //
 27910  // API parameter values that are decorated as "sensitive" in the API will not
 27911  // be included in the string output. The member name will be present, but the
 27912  // value will be replaced with "sensitive".
 27913  func (s DescribePatchGroupStateOutput) String() string {
 27914  	return awsutil.Prettify(s)
 27915  }
 27916  
 27917  // GoString returns the string representation.
 27918  //
 27919  // API parameter values that are decorated as "sensitive" in the API will not
 27920  // be included in the string output. The member name will be present, but the
 27921  // value will be replaced with "sensitive".
 27922  func (s DescribePatchGroupStateOutput) GoString() string {
 27923  	return s.String()
 27924  }
 27925  
 27926  // SetInstances sets the Instances field's value.
 27927  func (s *DescribePatchGroupStateOutput) SetInstances(v int64) *DescribePatchGroupStateOutput {
 27928  	s.Instances = &v
 27929  	return s
 27930  }
 27931  
 27932  // SetInstancesWithCriticalNonCompliantPatches sets the InstancesWithCriticalNonCompliantPatches field's value.
 27933  func (s *DescribePatchGroupStateOutput) SetInstancesWithCriticalNonCompliantPatches(v int64) *DescribePatchGroupStateOutput {
 27934  	s.InstancesWithCriticalNonCompliantPatches = &v
 27935  	return s
 27936  }
 27937  
 27938  // SetInstancesWithFailedPatches sets the InstancesWithFailedPatches field's value.
 27939  func (s *DescribePatchGroupStateOutput) SetInstancesWithFailedPatches(v int64) *DescribePatchGroupStateOutput {
 27940  	s.InstancesWithFailedPatches = &v
 27941  	return s
 27942  }
 27943  
 27944  // SetInstancesWithInstalledOtherPatches sets the InstancesWithInstalledOtherPatches field's value.
 27945  func (s *DescribePatchGroupStateOutput) SetInstancesWithInstalledOtherPatches(v int64) *DescribePatchGroupStateOutput {
 27946  	s.InstancesWithInstalledOtherPatches = &v
 27947  	return s
 27948  }
 27949  
 27950  // SetInstancesWithInstalledPatches sets the InstancesWithInstalledPatches field's value.
 27951  func (s *DescribePatchGroupStateOutput) SetInstancesWithInstalledPatches(v int64) *DescribePatchGroupStateOutput {
 27952  	s.InstancesWithInstalledPatches = &v
 27953  	return s
 27954  }
 27955  
 27956  // SetInstancesWithInstalledPendingRebootPatches sets the InstancesWithInstalledPendingRebootPatches field's value.
 27957  func (s *DescribePatchGroupStateOutput) SetInstancesWithInstalledPendingRebootPatches(v int64) *DescribePatchGroupStateOutput {
 27958  	s.InstancesWithInstalledPendingRebootPatches = &v
 27959  	return s
 27960  }
 27961  
 27962  // SetInstancesWithInstalledRejectedPatches sets the InstancesWithInstalledRejectedPatches field's value.
 27963  func (s *DescribePatchGroupStateOutput) SetInstancesWithInstalledRejectedPatches(v int64) *DescribePatchGroupStateOutput {
 27964  	s.InstancesWithInstalledRejectedPatches = &v
 27965  	return s
 27966  }
 27967  
 27968  // SetInstancesWithMissingPatches sets the InstancesWithMissingPatches field's value.
 27969  func (s *DescribePatchGroupStateOutput) SetInstancesWithMissingPatches(v int64) *DescribePatchGroupStateOutput {
 27970  	s.InstancesWithMissingPatches = &v
 27971  	return s
 27972  }
 27973  
 27974  // SetInstancesWithNotApplicablePatches sets the InstancesWithNotApplicablePatches field's value.
 27975  func (s *DescribePatchGroupStateOutput) SetInstancesWithNotApplicablePatches(v int64) *DescribePatchGroupStateOutput {
 27976  	s.InstancesWithNotApplicablePatches = &v
 27977  	return s
 27978  }
 27979  
 27980  // SetInstancesWithOtherNonCompliantPatches sets the InstancesWithOtherNonCompliantPatches field's value.
 27981  func (s *DescribePatchGroupStateOutput) SetInstancesWithOtherNonCompliantPatches(v int64) *DescribePatchGroupStateOutput {
 27982  	s.InstancesWithOtherNonCompliantPatches = &v
 27983  	return s
 27984  }
 27985  
 27986  // SetInstancesWithSecurityNonCompliantPatches sets the InstancesWithSecurityNonCompliantPatches field's value.
 27987  func (s *DescribePatchGroupStateOutput) SetInstancesWithSecurityNonCompliantPatches(v int64) *DescribePatchGroupStateOutput {
 27988  	s.InstancesWithSecurityNonCompliantPatches = &v
 27989  	return s
 27990  }
 27991  
 27992  // SetInstancesWithUnreportedNotApplicablePatches sets the InstancesWithUnreportedNotApplicablePatches field's value.
 27993  func (s *DescribePatchGroupStateOutput) SetInstancesWithUnreportedNotApplicablePatches(v int64) *DescribePatchGroupStateOutput {
 27994  	s.InstancesWithUnreportedNotApplicablePatches = &v
 27995  	return s
 27996  }
 27997  
 27998  type DescribePatchGroupsInput struct {
 27999  	_ struct{} `type:"structure"`
 28000  
 28001  	// Each element in the array is a structure containing a key-value pair.
 28002  	//
 28003  	// Supported keys for DescribePatchGroups include the following:
 28004  	//
 28005  	//    * NAME_PREFIX Sample values: AWS- | My-.
 28006  	//
 28007  	//    * OPERATING_SYSTEM Sample values: AMAZON_LINUX | SUSE | WINDOWS
 28008  	Filters []*PatchOrchestratorFilter `type:"list"`
 28009  
 28010  	// The maximum number of patch groups to return (per page).
 28011  	MaxResults *int64 `min:"1" type:"integer"`
 28012  
 28013  	// The token for the next set of items to return. (You received this token from
 28014  	// a previous call.)
 28015  	NextToken *string `type:"string"`
 28016  }
 28017  
 28018  // String returns the string representation.
 28019  //
 28020  // API parameter values that are decorated as "sensitive" in the API will not
 28021  // be included in the string output. The member name will be present, but the
 28022  // value will be replaced with "sensitive".
 28023  func (s DescribePatchGroupsInput) String() string {
 28024  	return awsutil.Prettify(s)
 28025  }
 28026  
 28027  // GoString returns the string representation.
 28028  //
 28029  // API parameter values that are decorated as "sensitive" in the API will not
 28030  // be included in the string output. The member name will be present, but the
 28031  // value will be replaced with "sensitive".
 28032  func (s DescribePatchGroupsInput) GoString() string {
 28033  	return s.String()
 28034  }
 28035  
 28036  // Validate inspects the fields of the type to determine if they are valid.
 28037  func (s *DescribePatchGroupsInput) Validate() error {
 28038  	invalidParams := request.ErrInvalidParams{Context: "DescribePatchGroupsInput"}
 28039  	if s.MaxResults != nil && *s.MaxResults < 1 {
 28040  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 28041  	}
 28042  	if s.Filters != nil {
 28043  		for i, v := range s.Filters {
 28044  			if v == nil {
 28045  				continue
 28046  			}
 28047  			if err := v.Validate(); err != nil {
 28048  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 28049  			}
 28050  		}
 28051  	}
 28052  
 28053  	if invalidParams.Len() > 0 {
 28054  		return invalidParams
 28055  	}
 28056  	return nil
 28057  }
 28058  
 28059  // SetFilters sets the Filters field's value.
 28060  func (s *DescribePatchGroupsInput) SetFilters(v []*PatchOrchestratorFilter) *DescribePatchGroupsInput {
 28061  	s.Filters = v
 28062  	return s
 28063  }
 28064  
 28065  // SetMaxResults sets the MaxResults field's value.
 28066  func (s *DescribePatchGroupsInput) SetMaxResults(v int64) *DescribePatchGroupsInput {
 28067  	s.MaxResults = &v
 28068  	return s
 28069  }
 28070  
 28071  // SetNextToken sets the NextToken field's value.
 28072  func (s *DescribePatchGroupsInput) SetNextToken(v string) *DescribePatchGroupsInput {
 28073  	s.NextToken = &v
 28074  	return s
 28075  }
 28076  
 28077  type DescribePatchGroupsOutput struct {
 28078  	_ struct{} `type:"structure"`
 28079  
 28080  	// Each entry in the array contains:
 28081  	//
 28082  	//    * PatchGroup: string (between 1 and 256 characters. Regex: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$)
 28083  	//
 28084  	//    * PatchBaselineIdentity: A PatchBaselineIdentity element.
 28085  	Mappings []*PatchGroupPatchBaselineMapping `type:"list"`
 28086  
 28087  	// The token to use when requesting the next set of items. If there are no additional
 28088  	// items to return, the string is empty.
 28089  	NextToken *string `type:"string"`
 28090  }
 28091  
 28092  // String returns the string representation.
 28093  //
 28094  // API parameter values that are decorated as "sensitive" in the API will not
 28095  // be included in the string output. The member name will be present, but the
 28096  // value will be replaced with "sensitive".
 28097  func (s DescribePatchGroupsOutput) String() string {
 28098  	return awsutil.Prettify(s)
 28099  }
 28100  
 28101  // GoString returns the string representation.
 28102  //
 28103  // API parameter values that are decorated as "sensitive" in the API will not
 28104  // be included in the string output. The member name will be present, but the
 28105  // value will be replaced with "sensitive".
 28106  func (s DescribePatchGroupsOutput) GoString() string {
 28107  	return s.String()
 28108  }
 28109  
 28110  // SetMappings sets the Mappings field's value.
 28111  func (s *DescribePatchGroupsOutput) SetMappings(v []*PatchGroupPatchBaselineMapping) *DescribePatchGroupsOutput {
 28112  	s.Mappings = v
 28113  	return s
 28114  }
 28115  
 28116  // SetNextToken sets the NextToken field's value.
 28117  func (s *DescribePatchGroupsOutput) SetNextToken(v string) *DescribePatchGroupsOutput {
 28118  	s.NextToken = &v
 28119  	return s
 28120  }
 28121  
 28122  type DescribePatchPropertiesInput struct {
 28123  	_ struct{} `type:"structure"`
 28124  
 28125  	// The maximum number of items to return for this call. The call also returns
 28126  	// a token that you can specify in a subsequent call to get the next set of
 28127  	// results.
 28128  	MaxResults *int64 `min:"1" type:"integer"`
 28129  
 28130  	// The token for the next set of items to return. (You received this token from
 28131  	// a previous call.)
 28132  	NextToken *string `type:"string"`
 28133  
 28134  	// The operating system type for which to list patches.
 28135  	//
 28136  	// OperatingSystem is a required field
 28137  	OperatingSystem *string `type:"string" required:"true" enum:"OperatingSystem"`
 28138  
 28139  	// Indicates whether to list patches for the Windows operating system or for
 28140  	// applications released by Microsoft. Not applicable for the Linux or macOS
 28141  	// operating systems.
 28142  	PatchSet *string `type:"string" enum:"PatchSet"`
 28143  
 28144  	// The patch property for which you want to view patch details.
 28145  	//
 28146  	// Property is a required field
 28147  	Property *string `type:"string" required:"true" enum:"PatchProperty"`
 28148  }
 28149  
 28150  // String returns the string representation.
 28151  //
 28152  // API parameter values that are decorated as "sensitive" in the API will not
 28153  // be included in the string output. The member name will be present, but the
 28154  // value will be replaced with "sensitive".
 28155  func (s DescribePatchPropertiesInput) String() string {
 28156  	return awsutil.Prettify(s)
 28157  }
 28158  
 28159  // GoString returns the string representation.
 28160  //
 28161  // API parameter values that are decorated as "sensitive" in the API will not
 28162  // be included in the string output. The member name will be present, but the
 28163  // value will be replaced with "sensitive".
 28164  func (s DescribePatchPropertiesInput) GoString() string {
 28165  	return s.String()
 28166  }
 28167  
 28168  // Validate inspects the fields of the type to determine if they are valid.
 28169  func (s *DescribePatchPropertiesInput) Validate() error {
 28170  	invalidParams := request.ErrInvalidParams{Context: "DescribePatchPropertiesInput"}
 28171  	if s.MaxResults != nil && *s.MaxResults < 1 {
 28172  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 28173  	}
 28174  	if s.OperatingSystem == nil {
 28175  		invalidParams.Add(request.NewErrParamRequired("OperatingSystem"))
 28176  	}
 28177  	if s.Property == nil {
 28178  		invalidParams.Add(request.NewErrParamRequired("Property"))
 28179  	}
 28180  
 28181  	if invalidParams.Len() > 0 {
 28182  		return invalidParams
 28183  	}
 28184  	return nil
 28185  }
 28186  
 28187  // SetMaxResults sets the MaxResults field's value.
 28188  func (s *DescribePatchPropertiesInput) SetMaxResults(v int64) *DescribePatchPropertiesInput {
 28189  	s.MaxResults = &v
 28190  	return s
 28191  }
 28192  
 28193  // SetNextToken sets the NextToken field's value.
 28194  func (s *DescribePatchPropertiesInput) SetNextToken(v string) *DescribePatchPropertiesInput {
 28195  	s.NextToken = &v
 28196  	return s
 28197  }
 28198  
 28199  // SetOperatingSystem sets the OperatingSystem field's value.
 28200  func (s *DescribePatchPropertiesInput) SetOperatingSystem(v string) *DescribePatchPropertiesInput {
 28201  	s.OperatingSystem = &v
 28202  	return s
 28203  }
 28204  
 28205  // SetPatchSet sets the PatchSet field's value.
 28206  func (s *DescribePatchPropertiesInput) SetPatchSet(v string) *DescribePatchPropertiesInput {
 28207  	s.PatchSet = &v
 28208  	return s
 28209  }
 28210  
 28211  // SetProperty sets the Property field's value.
 28212  func (s *DescribePatchPropertiesInput) SetProperty(v string) *DescribePatchPropertiesInput {
 28213  	s.Property = &v
 28214  	return s
 28215  }
 28216  
 28217  type DescribePatchPropertiesOutput struct {
 28218  	_ struct{} `type:"structure"`
 28219  
 28220  	// The token for the next set of items to return. (You use this token in the
 28221  	// next call.)
 28222  	NextToken *string `type:"string"`
 28223  
 28224  	// A list of the properties for patches matching the filter request parameters.
 28225  	Properties []map[string]*string `type:"list"`
 28226  }
 28227  
 28228  // String returns the string representation.
 28229  //
 28230  // API parameter values that are decorated as "sensitive" in the API will not
 28231  // be included in the string output. The member name will be present, but the
 28232  // value will be replaced with "sensitive".
 28233  func (s DescribePatchPropertiesOutput) String() string {
 28234  	return awsutil.Prettify(s)
 28235  }
 28236  
 28237  // GoString returns the string representation.
 28238  //
 28239  // API parameter values that are decorated as "sensitive" in the API will not
 28240  // be included in the string output. The member name will be present, but the
 28241  // value will be replaced with "sensitive".
 28242  func (s DescribePatchPropertiesOutput) GoString() string {
 28243  	return s.String()
 28244  }
 28245  
 28246  // SetNextToken sets the NextToken field's value.
 28247  func (s *DescribePatchPropertiesOutput) SetNextToken(v string) *DescribePatchPropertiesOutput {
 28248  	s.NextToken = &v
 28249  	return s
 28250  }
 28251  
 28252  // SetProperties sets the Properties field's value.
 28253  func (s *DescribePatchPropertiesOutput) SetProperties(v []map[string]*string) *DescribePatchPropertiesOutput {
 28254  	s.Properties = v
 28255  	return s
 28256  }
 28257  
 28258  type DescribeSessionsInput struct {
 28259  	_ struct{} `type:"structure"`
 28260  
 28261  	// One or more filters to limit the type of sessions returned by the request.
 28262  	Filters []*SessionFilter `min:"1" type:"list"`
 28263  
 28264  	// The maximum number of items to return for this call. The call also returns
 28265  	// a token that you can specify in a subsequent call to get the next set of
 28266  	// results.
 28267  	MaxResults *int64 `min:"1" type:"integer"`
 28268  
 28269  	// The token for the next set of items to return. (You received this token from
 28270  	// a previous call.)
 28271  	NextToken *string `type:"string"`
 28272  
 28273  	// The session status to retrieve a list of sessions for. For example, "Active".
 28274  	//
 28275  	// State is a required field
 28276  	State *string `type:"string" required:"true" enum:"SessionState"`
 28277  }
 28278  
 28279  // String returns the string representation.
 28280  //
 28281  // API parameter values that are decorated as "sensitive" in the API will not
 28282  // be included in the string output. The member name will be present, but the
 28283  // value will be replaced with "sensitive".
 28284  func (s DescribeSessionsInput) String() string {
 28285  	return awsutil.Prettify(s)
 28286  }
 28287  
 28288  // GoString returns the string representation.
 28289  //
 28290  // API parameter values that are decorated as "sensitive" in the API will not
 28291  // be included in the string output. The member name will be present, but the
 28292  // value will be replaced with "sensitive".
 28293  func (s DescribeSessionsInput) GoString() string {
 28294  	return s.String()
 28295  }
 28296  
 28297  // Validate inspects the fields of the type to determine if they are valid.
 28298  func (s *DescribeSessionsInput) Validate() error {
 28299  	invalidParams := request.ErrInvalidParams{Context: "DescribeSessionsInput"}
 28300  	if s.Filters != nil && len(s.Filters) < 1 {
 28301  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 28302  	}
 28303  	if s.MaxResults != nil && *s.MaxResults < 1 {
 28304  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 28305  	}
 28306  	if s.State == nil {
 28307  		invalidParams.Add(request.NewErrParamRequired("State"))
 28308  	}
 28309  	if s.Filters != nil {
 28310  		for i, v := range s.Filters {
 28311  			if v == nil {
 28312  				continue
 28313  			}
 28314  			if err := v.Validate(); err != nil {
 28315  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 28316  			}
 28317  		}
 28318  	}
 28319  
 28320  	if invalidParams.Len() > 0 {
 28321  		return invalidParams
 28322  	}
 28323  	return nil
 28324  }
 28325  
 28326  // SetFilters sets the Filters field's value.
 28327  func (s *DescribeSessionsInput) SetFilters(v []*SessionFilter) *DescribeSessionsInput {
 28328  	s.Filters = v
 28329  	return s
 28330  }
 28331  
 28332  // SetMaxResults sets the MaxResults field's value.
 28333  func (s *DescribeSessionsInput) SetMaxResults(v int64) *DescribeSessionsInput {
 28334  	s.MaxResults = &v
 28335  	return s
 28336  }
 28337  
 28338  // SetNextToken sets the NextToken field's value.
 28339  func (s *DescribeSessionsInput) SetNextToken(v string) *DescribeSessionsInput {
 28340  	s.NextToken = &v
 28341  	return s
 28342  }
 28343  
 28344  // SetState sets the State field's value.
 28345  func (s *DescribeSessionsInput) SetState(v string) *DescribeSessionsInput {
 28346  	s.State = &v
 28347  	return s
 28348  }
 28349  
 28350  type DescribeSessionsOutput struct {
 28351  	_ struct{} `type:"structure"`
 28352  
 28353  	// The token for the next set of items to return. (You received this token from
 28354  	// a previous call.)
 28355  	NextToken *string `type:"string"`
 28356  
 28357  	// A list of sessions meeting the request parameters.
 28358  	Sessions []*Session `type:"list"`
 28359  }
 28360  
 28361  // String returns the string representation.
 28362  //
 28363  // API parameter values that are decorated as "sensitive" in the API will not
 28364  // be included in the string output. The member name will be present, but the
 28365  // value will be replaced with "sensitive".
 28366  func (s DescribeSessionsOutput) String() string {
 28367  	return awsutil.Prettify(s)
 28368  }
 28369  
 28370  // GoString returns the string representation.
 28371  //
 28372  // API parameter values that are decorated as "sensitive" in the API will not
 28373  // be included in the string output. The member name will be present, but the
 28374  // value will be replaced with "sensitive".
 28375  func (s DescribeSessionsOutput) GoString() string {
 28376  	return s.String()
 28377  }
 28378  
 28379  // SetNextToken sets the NextToken field's value.
 28380  func (s *DescribeSessionsOutput) SetNextToken(v string) *DescribeSessionsOutput {
 28381  	s.NextToken = &v
 28382  	return s
 28383  }
 28384  
 28385  // SetSessions sets the Sessions field's value.
 28386  func (s *DescribeSessionsOutput) SetSessions(v []*Session) *DescribeSessionsOutput {
 28387  	s.Sessions = v
 28388  	return s
 28389  }
 28390  
 28391  type DisassociateOpsItemRelatedItemInput struct {
 28392  	_ struct{} `type:"structure"`
 28393  
 28394  	// The ID of the association for which you want to delete an association between
 28395  	// the OpsItem and a related item.
 28396  	//
 28397  	// AssociationId is a required field
 28398  	AssociationId *string `type:"string" required:"true"`
 28399  
 28400  	// The ID of the OpsItem for which you want to delete an association between
 28401  	// the OpsItem and a related item.
 28402  	//
 28403  	// OpsItemId is a required field
 28404  	OpsItemId *string `type:"string" required:"true"`
 28405  }
 28406  
 28407  // String returns the string representation.
 28408  //
 28409  // API parameter values that are decorated as "sensitive" in the API will not
 28410  // be included in the string output. The member name will be present, but the
 28411  // value will be replaced with "sensitive".
 28412  func (s DisassociateOpsItemRelatedItemInput) String() string {
 28413  	return awsutil.Prettify(s)
 28414  }
 28415  
 28416  // GoString returns the string representation.
 28417  //
 28418  // API parameter values that are decorated as "sensitive" in the API will not
 28419  // be included in the string output. The member name will be present, but the
 28420  // value will be replaced with "sensitive".
 28421  func (s DisassociateOpsItemRelatedItemInput) GoString() string {
 28422  	return s.String()
 28423  }
 28424  
 28425  // Validate inspects the fields of the type to determine if they are valid.
 28426  func (s *DisassociateOpsItemRelatedItemInput) Validate() error {
 28427  	invalidParams := request.ErrInvalidParams{Context: "DisassociateOpsItemRelatedItemInput"}
 28428  	if s.AssociationId == nil {
 28429  		invalidParams.Add(request.NewErrParamRequired("AssociationId"))
 28430  	}
 28431  	if s.OpsItemId == nil {
 28432  		invalidParams.Add(request.NewErrParamRequired("OpsItemId"))
 28433  	}
 28434  
 28435  	if invalidParams.Len() > 0 {
 28436  		return invalidParams
 28437  	}
 28438  	return nil
 28439  }
 28440  
 28441  // SetAssociationId sets the AssociationId field's value.
 28442  func (s *DisassociateOpsItemRelatedItemInput) SetAssociationId(v string) *DisassociateOpsItemRelatedItemInput {
 28443  	s.AssociationId = &v
 28444  	return s
 28445  }
 28446  
 28447  // SetOpsItemId sets the OpsItemId field's value.
 28448  func (s *DisassociateOpsItemRelatedItemInput) SetOpsItemId(v string) *DisassociateOpsItemRelatedItemInput {
 28449  	s.OpsItemId = &v
 28450  	return s
 28451  }
 28452  
 28453  type DisassociateOpsItemRelatedItemOutput struct {
 28454  	_ struct{} `type:"structure"`
 28455  }
 28456  
 28457  // String returns the string representation.
 28458  //
 28459  // API parameter values that are decorated as "sensitive" in the API will not
 28460  // be included in the string output. The member name will be present, but the
 28461  // value will be replaced with "sensitive".
 28462  func (s DisassociateOpsItemRelatedItemOutput) String() string {
 28463  	return awsutil.Prettify(s)
 28464  }
 28465  
 28466  // GoString returns the string representation.
 28467  //
 28468  // API parameter values that are decorated as "sensitive" in the API will not
 28469  // be included in the string output. The member name will be present, but the
 28470  // value will be replaced with "sensitive".
 28471  func (s DisassociateOpsItemRelatedItemOutput) GoString() string {
 28472  	return s.String()
 28473  }
 28474  
 28475  // The specified document already exists.
 28476  type DocumentAlreadyExists struct {
 28477  	_            struct{}                  `type:"structure"`
 28478  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 28479  
 28480  	Message_ *string `locationName:"Message" type:"string"`
 28481  }
 28482  
 28483  // String returns the string representation.
 28484  //
 28485  // API parameter values that are decorated as "sensitive" in the API will not
 28486  // be included in the string output. The member name will be present, but the
 28487  // value will be replaced with "sensitive".
 28488  func (s DocumentAlreadyExists) String() string {
 28489  	return awsutil.Prettify(s)
 28490  }
 28491  
 28492  // GoString returns the string representation.
 28493  //
 28494  // API parameter values that are decorated as "sensitive" in the API will not
 28495  // be included in the string output. The member name will be present, but the
 28496  // value will be replaced with "sensitive".
 28497  func (s DocumentAlreadyExists) GoString() string {
 28498  	return s.String()
 28499  }
 28500  
 28501  func newErrorDocumentAlreadyExists(v protocol.ResponseMetadata) error {
 28502  	return &DocumentAlreadyExists{
 28503  		RespMetadata: v,
 28504  	}
 28505  }
 28506  
 28507  // Code returns the exception type name.
 28508  func (s *DocumentAlreadyExists) Code() string {
 28509  	return "DocumentAlreadyExists"
 28510  }
 28511  
 28512  // Message returns the exception's message.
 28513  func (s *DocumentAlreadyExists) Message() string {
 28514  	if s.Message_ != nil {
 28515  		return *s.Message_
 28516  	}
 28517  	return ""
 28518  }
 28519  
 28520  // OrigErr always returns nil, satisfies awserr.Error interface.
 28521  func (s *DocumentAlreadyExists) OrigErr() error {
 28522  	return nil
 28523  }
 28524  
 28525  func (s *DocumentAlreadyExists) Error() string {
 28526  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 28527  }
 28528  
 28529  // Status code returns the HTTP status code for the request's response error.
 28530  func (s *DocumentAlreadyExists) StatusCode() int {
 28531  	return s.RespMetadata.StatusCode
 28532  }
 28533  
 28534  // RequestID returns the service's response RequestID for request.
 28535  func (s *DocumentAlreadyExists) RequestID() string {
 28536  	return s.RespMetadata.RequestID
 28537  }
 28538  
 28539  // A default version of a document.
 28540  type DocumentDefaultVersionDescription struct {
 28541  	_ struct{} `type:"structure"`
 28542  
 28543  	// The default version of the document.
 28544  	DefaultVersion *string `type:"string"`
 28545  
 28546  	// The default version of the artifact associated with the document.
 28547  	DefaultVersionName *string `type:"string"`
 28548  
 28549  	// The name of the document.
 28550  	Name *string `type:"string"`
 28551  }
 28552  
 28553  // String returns the string representation.
 28554  //
 28555  // API parameter values that are decorated as "sensitive" in the API will not
 28556  // be included in the string output. The member name will be present, but the
 28557  // value will be replaced with "sensitive".
 28558  func (s DocumentDefaultVersionDescription) String() string {
 28559  	return awsutil.Prettify(s)
 28560  }
 28561  
 28562  // GoString returns the string representation.
 28563  //
 28564  // API parameter values that are decorated as "sensitive" in the API will not
 28565  // be included in the string output. The member name will be present, but the
 28566  // value will be replaced with "sensitive".
 28567  func (s DocumentDefaultVersionDescription) GoString() string {
 28568  	return s.String()
 28569  }
 28570  
 28571  // SetDefaultVersion sets the DefaultVersion field's value.
 28572  func (s *DocumentDefaultVersionDescription) SetDefaultVersion(v string) *DocumentDefaultVersionDescription {
 28573  	s.DefaultVersion = &v
 28574  	return s
 28575  }
 28576  
 28577  // SetDefaultVersionName sets the DefaultVersionName field's value.
 28578  func (s *DocumentDefaultVersionDescription) SetDefaultVersionName(v string) *DocumentDefaultVersionDescription {
 28579  	s.DefaultVersionName = &v
 28580  	return s
 28581  }
 28582  
 28583  // SetName sets the Name field's value.
 28584  func (s *DocumentDefaultVersionDescription) SetName(v string) *DocumentDefaultVersionDescription {
 28585  	s.Name = &v
 28586  	return s
 28587  }
 28588  
 28589  // Describes a Amazon Web Services Systems Manager document (SSM document).
 28590  type DocumentDescription struct {
 28591  	_ struct{} `type:"structure"`
 28592  
 28593  	// The version of the document currently approved for use in the organization.
 28594  	ApprovedVersion *string `type:"string"`
 28595  
 28596  	// Details about the document attachments, including names, locations, sizes,
 28597  	// and so on.
 28598  	AttachmentsInformation []*AttachmentInformation `type:"list"`
 28599  
 28600  	// The user in your organization who created the document.
 28601  	Author *string `type:"string"`
 28602  
 28603  	// The date when the document was created.
 28604  	CreatedDate *time.Time `type:"timestamp"`
 28605  
 28606  	// The default version.
 28607  	DefaultVersion *string `type:"string"`
 28608  
 28609  	// A description of the document.
 28610  	Description *string `type:"string"`
 28611  
 28612  	// The friendly name of the SSM document. This value can differ for each version
 28613  	// of the document. If you want to update this value, see UpdateDocument.
 28614  	DisplayName *string `type:"string"`
 28615  
 28616  	// The document format, either JSON or YAML.
 28617  	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
 28618  
 28619  	// The type of document.
 28620  	DocumentType *string `type:"string" enum:"DocumentType"`
 28621  
 28622  	// The document version.
 28623  	DocumentVersion *string `type:"string"`
 28624  
 28625  	// The Sha256 or Sha1 hash created by the system when the document was created.
 28626  	//
 28627  	// Sha1 hashes have been deprecated.
 28628  	Hash *string `type:"string"`
 28629  
 28630  	// The hash type of the document. Valid values include Sha256 or Sha1.
 28631  	//
 28632  	// Sha1 hashes have been deprecated.
 28633  	HashType *string `type:"string" enum:"DocumentHashType"`
 28634  
 28635  	// The latest version of the document.
 28636  	LatestVersion *string `type:"string"`
 28637  
 28638  	// The name of the SSM document.
 28639  	Name *string `type:"string"`
 28640  
 28641  	// The Amazon Web Services user account that created the document.
 28642  	Owner *string `type:"string"`
 28643  
 28644  	// A description of the parameters for a document.
 28645  	Parameters []*DocumentParameter `type:"list"`
 28646  
 28647  	// The version of the document that is currently under review.
 28648  	PendingReviewVersion *string `type:"string"`
 28649  
 28650  	// The list of OS platforms compatible with this SSM document.
 28651  	PlatformTypes []*string `type:"list"`
 28652  
 28653  	// A list of SSM documents required by a document. For example, an ApplicationConfiguration
 28654  	// document requires an ApplicationConfigurationSchema document.
 28655  	Requires []*DocumentRequires `min:"1" type:"list"`
 28656  
 28657  	// Details about the review of a document.
 28658  	ReviewInformation []*ReviewInformation `min:"1" type:"list"`
 28659  
 28660  	// The current status of the review.
 28661  	ReviewStatus *string `type:"string" enum:"ReviewStatus"`
 28662  
 28663  	// The schema version.
 28664  	SchemaVersion *string `type:"string"`
 28665  
 28666  	// The SHA1 hash of the document, which you can use for verification.
 28667  	Sha1 *string `type:"string"`
 28668  
 28669  	// The status of the SSM document.
 28670  	Status *string `type:"string" enum:"DocumentStatus"`
 28671  
 28672  	// A message returned by Amazon Web Services Systems Manager that explains the
 28673  	// Status value. For example, a Failed status might be explained by the StatusInformation
 28674  	// message, "The specified S3 bucket doesn't exist. Verify that the URL of the
 28675  	// S3 bucket is correct."
 28676  	StatusInformation *string `type:"string"`
 28677  
 28678  	// The tags, or metadata, that have been applied to the document.
 28679  	Tags []*Tag `type:"list"`
 28680  
 28681  	// The target type which defines the kinds of resources the document can run
 28682  	// on. For example, /AWS::EC2::Instance. For a list of valid resource types,
 28683  	// see Amazon Web Services resource and property types reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
 28684  	// in the CloudFormation User Guide.
 28685  	TargetType *string `type:"string"`
 28686  
 28687  	// The version of the artifact associated with the document.
 28688  	VersionName *string `type:"string"`
 28689  }
 28690  
 28691  // String returns the string representation.
 28692  //
 28693  // API parameter values that are decorated as "sensitive" in the API will not
 28694  // be included in the string output. The member name will be present, but the
 28695  // value will be replaced with "sensitive".
 28696  func (s DocumentDescription) String() string {
 28697  	return awsutil.Prettify(s)
 28698  }
 28699  
 28700  // GoString returns the string representation.
 28701  //
 28702  // API parameter values that are decorated as "sensitive" in the API will not
 28703  // be included in the string output. The member name will be present, but the
 28704  // value will be replaced with "sensitive".
 28705  func (s DocumentDescription) GoString() string {
 28706  	return s.String()
 28707  }
 28708  
 28709  // SetApprovedVersion sets the ApprovedVersion field's value.
 28710  func (s *DocumentDescription) SetApprovedVersion(v string) *DocumentDescription {
 28711  	s.ApprovedVersion = &v
 28712  	return s
 28713  }
 28714  
 28715  // SetAttachmentsInformation sets the AttachmentsInformation field's value.
 28716  func (s *DocumentDescription) SetAttachmentsInformation(v []*AttachmentInformation) *DocumentDescription {
 28717  	s.AttachmentsInformation = v
 28718  	return s
 28719  }
 28720  
 28721  // SetAuthor sets the Author field's value.
 28722  func (s *DocumentDescription) SetAuthor(v string) *DocumentDescription {
 28723  	s.Author = &v
 28724  	return s
 28725  }
 28726  
 28727  // SetCreatedDate sets the CreatedDate field's value.
 28728  func (s *DocumentDescription) SetCreatedDate(v time.Time) *DocumentDescription {
 28729  	s.CreatedDate = &v
 28730  	return s
 28731  }
 28732  
 28733  // SetDefaultVersion sets the DefaultVersion field's value.
 28734  func (s *DocumentDescription) SetDefaultVersion(v string) *DocumentDescription {
 28735  	s.DefaultVersion = &v
 28736  	return s
 28737  }
 28738  
 28739  // SetDescription sets the Description field's value.
 28740  func (s *DocumentDescription) SetDescription(v string) *DocumentDescription {
 28741  	s.Description = &v
 28742  	return s
 28743  }
 28744  
 28745  // SetDisplayName sets the DisplayName field's value.
 28746  func (s *DocumentDescription) SetDisplayName(v string) *DocumentDescription {
 28747  	s.DisplayName = &v
 28748  	return s
 28749  }
 28750  
 28751  // SetDocumentFormat sets the DocumentFormat field's value.
 28752  func (s *DocumentDescription) SetDocumentFormat(v string) *DocumentDescription {
 28753  	s.DocumentFormat = &v
 28754  	return s
 28755  }
 28756  
 28757  // SetDocumentType sets the DocumentType field's value.
 28758  func (s *DocumentDescription) SetDocumentType(v string) *DocumentDescription {
 28759  	s.DocumentType = &v
 28760  	return s
 28761  }
 28762  
 28763  // SetDocumentVersion sets the DocumentVersion field's value.
 28764  func (s *DocumentDescription) SetDocumentVersion(v string) *DocumentDescription {
 28765  	s.DocumentVersion = &v
 28766  	return s
 28767  }
 28768  
 28769  // SetHash sets the Hash field's value.
 28770  func (s *DocumentDescription) SetHash(v string) *DocumentDescription {
 28771  	s.Hash = &v
 28772  	return s
 28773  }
 28774  
 28775  // SetHashType sets the HashType field's value.
 28776  func (s *DocumentDescription) SetHashType(v string) *DocumentDescription {
 28777  	s.HashType = &v
 28778  	return s
 28779  }
 28780  
 28781  // SetLatestVersion sets the LatestVersion field's value.
 28782  func (s *DocumentDescription) SetLatestVersion(v string) *DocumentDescription {
 28783  	s.LatestVersion = &v
 28784  	return s
 28785  }
 28786  
 28787  // SetName sets the Name field's value.
 28788  func (s *DocumentDescription) SetName(v string) *DocumentDescription {
 28789  	s.Name = &v
 28790  	return s
 28791  }
 28792  
 28793  // SetOwner sets the Owner field's value.
 28794  func (s *DocumentDescription) SetOwner(v string) *DocumentDescription {
 28795  	s.Owner = &v
 28796  	return s
 28797  }
 28798  
 28799  // SetParameters sets the Parameters field's value.
 28800  func (s *DocumentDescription) SetParameters(v []*DocumentParameter) *DocumentDescription {
 28801  	s.Parameters = v
 28802  	return s
 28803  }
 28804  
 28805  // SetPendingReviewVersion sets the PendingReviewVersion field's value.
 28806  func (s *DocumentDescription) SetPendingReviewVersion(v string) *DocumentDescription {
 28807  	s.PendingReviewVersion = &v
 28808  	return s
 28809  }
 28810  
 28811  // SetPlatformTypes sets the PlatformTypes field's value.
 28812  func (s *DocumentDescription) SetPlatformTypes(v []*string) *DocumentDescription {
 28813  	s.PlatformTypes = v
 28814  	return s
 28815  }
 28816  
 28817  // SetRequires sets the Requires field's value.
 28818  func (s *DocumentDescription) SetRequires(v []*DocumentRequires) *DocumentDescription {
 28819  	s.Requires = v
 28820  	return s
 28821  }
 28822  
 28823  // SetReviewInformation sets the ReviewInformation field's value.
 28824  func (s *DocumentDescription) SetReviewInformation(v []*ReviewInformation) *DocumentDescription {
 28825  	s.ReviewInformation = v
 28826  	return s
 28827  }
 28828  
 28829  // SetReviewStatus sets the ReviewStatus field's value.
 28830  func (s *DocumentDescription) SetReviewStatus(v string) *DocumentDescription {
 28831  	s.ReviewStatus = &v
 28832  	return s
 28833  }
 28834  
 28835  // SetSchemaVersion sets the SchemaVersion field's value.
 28836  func (s *DocumentDescription) SetSchemaVersion(v string) *DocumentDescription {
 28837  	s.SchemaVersion = &v
 28838  	return s
 28839  }
 28840  
 28841  // SetSha1 sets the Sha1 field's value.
 28842  func (s *DocumentDescription) SetSha1(v string) *DocumentDescription {
 28843  	s.Sha1 = &v
 28844  	return s
 28845  }
 28846  
 28847  // SetStatus sets the Status field's value.
 28848  func (s *DocumentDescription) SetStatus(v string) *DocumentDescription {
 28849  	s.Status = &v
 28850  	return s
 28851  }
 28852  
 28853  // SetStatusInformation sets the StatusInformation field's value.
 28854  func (s *DocumentDescription) SetStatusInformation(v string) *DocumentDescription {
 28855  	s.StatusInformation = &v
 28856  	return s
 28857  }
 28858  
 28859  // SetTags sets the Tags field's value.
 28860  func (s *DocumentDescription) SetTags(v []*Tag) *DocumentDescription {
 28861  	s.Tags = v
 28862  	return s
 28863  }
 28864  
 28865  // SetTargetType sets the TargetType field's value.
 28866  func (s *DocumentDescription) SetTargetType(v string) *DocumentDescription {
 28867  	s.TargetType = &v
 28868  	return s
 28869  }
 28870  
 28871  // SetVersionName sets the VersionName field's value.
 28872  func (s *DocumentDescription) SetVersionName(v string) *DocumentDescription {
 28873  	s.VersionName = &v
 28874  	return s
 28875  }
 28876  
 28877  // This data type is deprecated. Instead, use DocumentKeyValuesFilter.
 28878  type DocumentFilter struct {
 28879  	_ struct{} `type:"structure"`
 28880  
 28881  	// The name of the filter.
 28882  	//
 28883  	// Key is a required field
 28884  	Key *string `locationName:"key" type:"string" required:"true" enum:"DocumentFilterKey"`
 28885  
 28886  	// The value of the filter.
 28887  	//
 28888  	// Value is a required field
 28889  	Value *string `locationName:"value" min:"1" type:"string" required:"true"`
 28890  }
 28891  
 28892  // String returns the string representation.
 28893  //
 28894  // API parameter values that are decorated as "sensitive" in the API will not
 28895  // be included in the string output. The member name will be present, but the
 28896  // value will be replaced with "sensitive".
 28897  func (s DocumentFilter) String() string {
 28898  	return awsutil.Prettify(s)
 28899  }
 28900  
 28901  // GoString returns the string representation.
 28902  //
 28903  // API parameter values that are decorated as "sensitive" in the API will not
 28904  // be included in the string output. The member name will be present, but the
 28905  // value will be replaced with "sensitive".
 28906  func (s DocumentFilter) GoString() string {
 28907  	return s.String()
 28908  }
 28909  
 28910  // Validate inspects the fields of the type to determine if they are valid.
 28911  func (s *DocumentFilter) Validate() error {
 28912  	invalidParams := request.ErrInvalidParams{Context: "DocumentFilter"}
 28913  	if s.Key == nil {
 28914  		invalidParams.Add(request.NewErrParamRequired("Key"))
 28915  	}
 28916  	if s.Value == nil {
 28917  		invalidParams.Add(request.NewErrParamRequired("Value"))
 28918  	}
 28919  	if s.Value != nil && len(*s.Value) < 1 {
 28920  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 28921  	}
 28922  
 28923  	if invalidParams.Len() > 0 {
 28924  		return invalidParams
 28925  	}
 28926  	return nil
 28927  }
 28928  
 28929  // SetKey sets the Key field's value.
 28930  func (s *DocumentFilter) SetKey(v string) *DocumentFilter {
 28931  	s.Key = &v
 28932  	return s
 28933  }
 28934  
 28935  // SetValue sets the Value field's value.
 28936  func (s *DocumentFilter) SetValue(v string) *DocumentFilter {
 28937  	s.Value = &v
 28938  	return s
 28939  }
 28940  
 28941  // Describes the name of a SSM document.
 28942  type DocumentIdentifier struct {
 28943  	_ struct{} `type:"structure"`
 28944  
 28945  	// The user in your organization who created the document.
 28946  	Author *string `type:"string"`
 28947  
 28948  	// The date the SSM document was created.
 28949  	CreatedDate *time.Time `type:"timestamp"`
 28950  
 28951  	// An optional field where you can specify a friendly name for the SSM document.
 28952  	// This value can differ for each version of the document. If you want to update
 28953  	// this value, see UpdateDocument.
 28954  	DisplayName *string `type:"string"`
 28955  
 28956  	// The document format, either JSON or YAML.
 28957  	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
 28958  
 28959  	// The document type.
 28960  	DocumentType *string `type:"string" enum:"DocumentType"`
 28961  
 28962  	// The document version.
 28963  	DocumentVersion *string `type:"string"`
 28964  
 28965  	// The name of the SSM document.
 28966  	Name *string `type:"string"`
 28967  
 28968  	// The Amazon Web Services user account that created the document.
 28969  	Owner *string `type:"string"`
 28970  
 28971  	// The operating system platform.
 28972  	PlatformTypes []*string `type:"list"`
 28973  
 28974  	// A list of SSM documents required by a document. For example, an ApplicationConfiguration
 28975  	// document requires an ApplicationConfigurationSchema document.
 28976  	Requires []*DocumentRequires `min:"1" type:"list"`
 28977  
 28978  	// The current status of a document review.
 28979  	ReviewStatus *string `type:"string" enum:"ReviewStatus"`
 28980  
 28981  	// The schema version.
 28982  	SchemaVersion *string `type:"string"`
 28983  
 28984  	// The tags, or metadata, that have been applied to the document.
 28985  	Tags []*Tag `type:"list"`
 28986  
 28987  	// The target type which defines the kinds of resources the document can run
 28988  	// on. For example, /AWS::EC2::Instance. For a list of valid resource types,
 28989  	// see Amazon Web Services resource and property types reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
 28990  	// in the CloudFormation User Guide.
 28991  	TargetType *string `type:"string"`
 28992  
 28993  	// An optional field specifying the version of the artifact associated with
 28994  	// the document. For example, "Release 12, Update 6". This value is unique across
 28995  	// all versions of a document, and can't be changed.
 28996  	VersionName *string `type:"string"`
 28997  }
 28998  
 28999  // String returns the string representation.
 29000  //
 29001  // API parameter values that are decorated as "sensitive" in the API will not
 29002  // be included in the string output. The member name will be present, but the
 29003  // value will be replaced with "sensitive".
 29004  func (s DocumentIdentifier) String() string {
 29005  	return awsutil.Prettify(s)
 29006  }
 29007  
 29008  // GoString returns the string representation.
 29009  //
 29010  // API parameter values that are decorated as "sensitive" in the API will not
 29011  // be included in the string output. The member name will be present, but the
 29012  // value will be replaced with "sensitive".
 29013  func (s DocumentIdentifier) GoString() string {
 29014  	return s.String()
 29015  }
 29016  
 29017  // SetAuthor sets the Author field's value.
 29018  func (s *DocumentIdentifier) SetAuthor(v string) *DocumentIdentifier {
 29019  	s.Author = &v
 29020  	return s
 29021  }
 29022  
 29023  // SetCreatedDate sets the CreatedDate field's value.
 29024  func (s *DocumentIdentifier) SetCreatedDate(v time.Time) *DocumentIdentifier {
 29025  	s.CreatedDate = &v
 29026  	return s
 29027  }
 29028  
 29029  // SetDisplayName sets the DisplayName field's value.
 29030  func (s *DocumentIdentifier) SetDisplayName(v string) *DocumentIdentifier {
 29031  	s.DisplayName = &v
 29032  	return s
 29033  }
 29034  
 29035  // SetDocumentFormat sets the DocumentFormat field's value.
 29036  func (s *DocumentIdentifier) SetDocumentFormat(v string) *DocumentIdentifier {
 29037  	s.DocumentFormat = &v
 29038  	return s
 29039  }
 29040  
 29041  // SetDocumentType sets the DocumentType field's value.
 29042  func (s *DocumentIdentifier) SetDocumentType(v string) *DocumentIdentifier {
 29043  	s.DocumentType = &v
 29044  	return s
 29045  }
 29046  
 29047  // SetDocumentVersion sets the DocumentVersion field's value.
 29048  func (s *DocumentIdentifier) SetDocumentVersion(v string) *DocumentIdentifier {
 29049  	s.DocumentVersion = &v
 29050  	return s
 29051  }
 29052  
 29053  // SetName sets the Name field's value.
 29054  func (s *DocumentIdentifier) SetName(v string) *DocumentIdentifier {
 29055  	s.Name = &v
 29056  	return s
 29057  }
 29058  
 29059  // SetOwner sets the Owner field's value.
 29060  func (s *DocumentIdentifier) SetOwner(v string) *DocumentIdentifier {
 29061  	s.Owner = &v
 29062  	return s
 29063  }
 29064  
 29065  // SetPlatformTypes sets the PlatformTypes field's value.
 29066  func (s *DocumentIdentifier) SetPlatformTypes(v []*string) *DocumentIdentifier {
 29067  	s.PlatformTypes = v
 29068  	return s
 29069  }
 29070  
 29071  // SetRequires sets the Requires field's value.
 29072  func (s *DocumentIdentifier) SetRequires(v []*DocumentRequires) *DocumentIdentifier {
 29073  	s.Requires = v
 29074  	return s
 29075  }
 29076  
 29077  // SetReviewStatus sets the ReviewStatus field's value.
 29078  func (s *DocumentIdentifier) SetReviewStatus(v string) *DocumentIdentifier {
 29079  	s.ReviewStatus = &v
 29080  	return s
 29081  }
 29082  
 29083  // SetSchemaVersion sets the SchemaVersion field's value.
 29084  func (s *DocumentIdentifier) SetSchemaVersion(v string) *DocumentIdentifier {
 29085  	s.SchemaVersion = &v
 29086  	return s
 29087  }
 29088  
 29089  // SetTags sets the Tags field's value.
 29090  func (s *DocumentIdentifier) SetTags(v []*Tag) *DocumentIdentifier {
 29091  	s.Tags = v
 29092  	return s
 29093  }
 29094  
 29095  // SetTargetType sets the TargetType field's value.
 29096  func (s *DocumentIdentifier) SetTargetType(v string) *DocumentIdentifier {
 29097  	s.TargetType = &v
 29098  	return s
 29099  }
 29100  
 29101  // SetVersionName sets the VersionName field's value.
 29102  func (s *DocumentIdentifier) SetVersionName(v string) *DocumentIdentifier {
 29103  	s.VersionName = &v
 29104  	return s
 29105  }
 29106  
 29107  // One or more filters. Use a filter to return a more specific list of documents.
 29108  //
 29109  // For keys, you can specify one or more tags that have been applied to a document.
 29110  //
 29111  // You can also use Amazon Web Services-provided keys, some of which have specific
 29112  // allowed values. These keys and their associated values are as follows:
 29113  //
 29114  // DocumentType
 29115  //
 29116  //    * ApplicationConfiguration
 29117  //
 29118  //    * ApplicationConfigurationSchema
 29119  //
 29120  //    * Automation
 29121  //
 29122  //    * ChangeCalendar
 29123  //
 29124  //    * Command
 29125  //
 29126  //    * DeploymentStrategy
 29127  //
 29128  //    * Package
 29129  //
 29130  //    * Policy
 29131  //
 29132  //    * Session
 29133  //
 29134  // Owner
 29135  //
 29136  // Note that only one Owner can be specified in a request. For example: Key=Owner,Values=Self.
 29137  //
 29138  //    * Amazon
 29139  //
 29140  //    * Private
 29141  //
 29142  //    * Public
 29143  //
 29144  //    * Self
 29145  //
 29146  //    * ThirdParty
 29147  //
 29148  // PlatformTypes
 29149  //
 29150  //    * Linux
 29151  //
 29152  //    * Windows
 29153  //
 29154  // Name is another Amazon Web Services-provided key. If you use Name as a key,
 29155  // you can use a name prefix to return a list of documents. For example, in
 29156  // the Amazon Web Services CLI, to return a list of all documents that begin
 29157  // with Te, run the following command:
 29158  //
 29159  // aws ssm list-documents --filters Key=Name,Values=Te
 29160  //
 29161  // You can also use the TargetType Amazon Web Services-provided key. For a list
 29162  // of valid resource type values that can be used with this key, see Amazon
 29163  // Web Services resource and property types reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
 29164  // in the CloudFormation User Guide.
 29165  //
 29166  // If you specify more than two keys, only documents that are identified by
 29167  // all the tags are returned in the results. If you specify more than two values
 29168  // for a key, documents that are identified by any of the values are returned
 29169  // in the results.
 29170  //
 29171  // To specify a custom key-value pair, use the format Key=tag:tagName,Values=valueName.
 29172  //
 29173  // For example, if you created a key called region and are using the Amazon
 29174  // Web Services CLI to call the list-documents command:
 29175  //
 29176  // aws ssm list-documents --filters Key=tag:region,Values=east,west Key=Owner,Values=Self
 29177  type DocumentKeyValuesFilter struct {
 29178  	_ struct{} `type:"structure"`
 29179  
 29180  	// The name of the filter key.
 29181  	Key *string `min:"1" type:"string"`
 29182  
 29183  	// The value for the filter key.
 29184  	Values []*string `type:"list"`
 29185  }
 29186  
 29187  // String returns the string representation.
 29188  //
 29189  // API parameter values that are decorated as "sensitive" in the API will not
 29190  // be included in the string output. The member name will be present, but the
 29191  // value will be replaced with "sensitive".
 29192  func (s DocumentKeyValuesFilter) String() string {
 29193  	return awsutil.Prettify(s)
 29194  }
 29195  
 29196  // GoString returns the string representation.
 29197  //
 29198  // API parameter values that are decorated as "sensitive" in the API will not
 29199  // be included in the string output. The member name will be present, but the
 29200  // value will be replaced with "sensitive".
 29201  func (s DocumentKeyValuesFilter) GoString() string {
 29202  	return s.String()
 29203  }
 29204  
 29205  // Validate inspects the fields of the type to determine if they are valid.
 29206  func (s *DocumentKeyValuesFilter) Validate() error {
 29207  	invalidParams := request.ErrInvalidParams{Context: "DocumentKeyValuesFilter"}
 29208  	if s.Key != nil && len(*s.Key) < 1 {
 29209  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 29210  	}
 29211  
 29212  	if invalidParams.Len() > 0 {
 29213  		return invalidParams
 29214  	}
 29215  	return nil
 29216  }
 29217  
 29218  // SetKey sets the Key field's value.
 29219  func (s *DocumentKeyValuesFilter) SetKey(v string) *DocumentKeyValuesFilter {
 29220  	s.Key = &v
 29221  	return s
 29222  }
 29223  
 29224  // SetValues sets the Values field's value.
 29225  func (s *DocumentKeyValuesFilter) SetValues(v []*string) *DocumentKeyValuesFilter {
 29226  	s.Values = v
 29227  	return s
 29228  }
 29229  
 29230  // You can have at most 500 active SSM documents.
 29231  type DocumentLimitExceeded struct {
 29232  	_            struct{}                  `type:"structure"`
 29233  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 29234  
 29235  	Message_ *string `locationName:"Message" type:"string"`
 29236  }
 29237  
 29238  // String returns the string representation.
 29239  //
 29240  // API parameter values that are decorated as "sensitive" in the API will not
 29241  // be included in the string output. The member name will be present, but the
 29242  // value will be replaced with "sensitive".
 29243  func (s DocumentLimitExceeded) String() string {
 29244  	return awsutil.Prettify(s)
 29245  }
 29246  
 29247  // GoString returns the string representation.
 29248  //
 29249  // API parameter values that are decorated as "sensitive" in the API will not
 29250  // be included in the string output. The member name will be present, but the
 29251  // value will be replaced with "sensitive".
 29252  func (s DocumentLimitExceeded) GoString() string {
 29253  	return s.String()
 29254  }
 29255  
 29256  func newErrorDocumentLimitExceeded(v protocol.ResponseMetadata) error {
 29257  	return &DocumentLimitExceeded{
 29258  		RespMetadata: v,
 29259  	}
 29260  }
 29261  
 29262  // Code returns the exception type name.
 29263  func (s *DocumentLimitExceeded) Code() string {
 29264  	return "DocumentLimitExceeded"
 29265  }
 29266  
 29267  // Message returns the exception's message.
 29268  func (s *DocumentLimitExceeded) Message() string {
 29269  	if s.Message_ != nil {
 29270  		return *s.Message_
 29271  	}
 29272  	return ""
 29273  }
 29274  
 29275  // OrigErr always returns nil, satisfies awserr.Error interface.
 29276  func (s *DocumentLimitExceeded) OrigErr() error {
 29277  	return nil
 29278  }
 29279  
 29280  func (s *DocumentLimitExceeded) Error() string {
 29281  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 29282  }
 29283  
 29284  // Status code returns the HTTP status code for the request's response error.
 29285  func (s *DocumentLimitExceeded) StatusCode() int {
 29286  	return s.RespMetadata.StatusCode
 29287  }
 29288  
 29289  // RequestID returns the service's response RequestID for request.
 29290  func (s *DocumentLimitExceeded) RequestID() string {
 29291  	return s.RespMetadata.RequestID
 29292  }
 29293  
 29294  // Details about the response to a document review request.
 29295  type DocumentMetadataResponseInfo struct {
 29296  	_ struct{} `type:"structure"`
 29297  
 29298  	// Details about a reviewer's response to a document review request.
 29299  	ReviewerResponse []*DocumentReviewerResponseSource `type:"list"`
 29300  }
 29301  
 29302  // String returns the string representation.
 29303  //
 29304  // API parameter values that are decorated as "sensitive" in the API will not
 29305  // be included in the string output. The member name will be present, but the
 29306  // value will be replaced with "sensitive".
 29307  func (s DocumentMetadataResponseInfo) String() string {
 29308  	return awsutil.Prettify(s)
 29309  }
 29310  
 29311  // GoString returns the string representation.
 29312  //
 29313  // API parameter values that are decorated as "sensitive" in the API will not
 29314  // be included in the string output. The member name will be present, but the
 29315  // value will be replaced with "sensitive".
 29316  func (s DocumentMetadataResponseInfo) GoString() string {
 29317  	return s.String()
 29318  }
 29319  
 29320  // SetReviewerResponse sets the ReviewerResponse field's value.
 29321  func (s *DocumentMetadataResponseInfo) SetReviewerResponse(v []*DocumentReviewerResponseSource) *DocumentMetadataResponseInfo {
 29322  	s.ReviewerResponse = v
 29323  	return s
 29324  }
 29325  
 29326  // Parameters specified in a System Manager document that run on the server
 29327  // when the command is run.
 29328  type DocumentParameter struct {
 29329  	_ struct{} `type:"structure"`
 29330  
 29331  	// If specified, the default values for the parameters. Parameters without a
 29332  	// default value are required. Parameters with a default value are optional.
 29333  	DefaultValue *string `type:"string"`
 29334  
 29335  	// A description of what the parameter does, how to use it, the default value,
 29336  	// and whether or not the parameter is optional.
 29337  	Description *string `type:"string"`
 29338  
 29339  	// The name of the parameter.
 29340  	Name *string `type:"string"`
 29341  
 29342  	// The type of parameter. The type can be either String or StringList.
 29343  	Type *string `type:"string" enum:"DocumentParameterType"`
 29344  }
 29345  
 29346  // String returns the string representation.
 29347  //
 29348  // API parameter values that are decorated as "sensitive" in the API will not
 29349  // be included in the string output. The member name will be present, but the
 29350  // value will be replaced with "sensitive".
 29351  func (s DocumentParameter) String() string {
 29352  	return awsutil.Prettify(s)
 29353  }
 29354  
 29355  // GoString returns the string representation.
 29356  //
 29357  // API parameter values that are decorated as "sensitive" in the API will not
 29358  // be included in the string output. The member name will be present, but the
 29359  // value will be replaced with "sensitive".
 29360  func (s DocumentParameter) GoString() string {
 29361  	return s.String()
 29362  }
 29363  
 29364  // SetDefaultValue sets the DefaultValue field's value.
 29365  func (s *DocumentParameter) SetDefaultValue(v string) *DocumentParameter {
 29366  	s.DefaultValue = &v
 29367  	return s
 29368  }
 29369  
 29370  // SetDescription sets the Description field's value.
 29371  func (s *DocumentParameter) SetDescription(v string) *DocumentParameter {
 29372  	s.Description = &v
 29373  	return s
 29374  }
 29375  
 29376  // SetName sets the Name field's value.
 29377  func (s *DocumentParameter) SetName(v string) *DocumentParameter {
 29378  	s.Name = &v
 29379  	return s
 29380  }
 29381  
 29382  // SetType sets the Type field's value.
 29383  func (s *DocumentParameter) SetType(v string) *DocumentParameter {
 29384  	s.Type = &v
 29385  	return s
 29386  }
 29387  
 29388  // The document can't be shared with more Amazon Web Services user accounts.
 29389  // You can share a document with a maximum of 20 accounts. You can publicly
 29390  // share up to five documents. If you need to increase this limit, contact Amazon
 29391  // Web Services Support.
 29392  type DocumentPermissionLimit struct {
 29393  	_            struct{}                  `type:"structure"`
 29394  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 29395  
 29396  	Message_ *string `locationName:"Message" type:"string"`
 29397  }
 29398  
 29399  // String returns the string representation.
 29400  //
 29401  // API parameter values that are decorated as "sensitive" in the API will not
 29402  // be included in the string output. The member name will be present, but the
 29403  // value will be replaced with "sensitive".
 29404  func (s DocumentPermissionLimit) String() string {
 29405  	return awsutil.Prettify(s)
 29406  }
 29407  
 29408  // GoString returns the string representation.
 29409  //
 29410  // API parameter values that are decorated as "sensitive" in the API will not
 29411  // be included in the string output. The member name will be present, but the
 29412  // value will be replaced with "sensitive".
 29413  func (s DocumentPermissionLimit) GoString() string {
 29414  	return s.String()
 29415  }
 29416  
 29417  func newErrorDocumentPermissionLimit(v protocol.ResponseMetadata) error {
 29418  	return &DocumentPermissionLimit{
 29419  		RespMetadata: v,
 29420  	}
 29421  }
 29422  
 29423  // Code returns the exception type name.
 29424  func (s *DocumentPermissionLimit) Code() string {
 29425  	return "DocumentPermissionLimit"
 29426  }
 29427  
 29428  // Message returns the exception's message.
 29429  func (s *DocumentPermissionLimit) Message() string {
 29430  	if s.Message_ != nil {
 29431  		return *s.Message_
 29432  	}
 29433  	return ""
 29434  }
 29435  
 29436  // OrigErr always returns nil, satisfies awserr.Error interface.
 29437  func (s *DocumentPermissionLimit) OrigErr() error {
 29438  	return nil
 29439  }
 29440  
 29441  func (s *DocumentPermissionLimit) Error() string {
 29442  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 29443  }
 29444  
 29445  // Status code returns the HTTP status code for the request's response error.
 29446  func (s *DocumentPermissionLimit) StatusCode() int {
 29447  	return s.RespMetadata.StatusCode
 29448  }
 29449  
 29450  // RequestID returns the service's response RequestID for request.
 29451  func (s *DocumentPermissionLimit) RequestID() string {
 29452  	return s.RespMetadata.RequestID
 29453  }
 29454  
 29455  // An SSM document required by the current document.
 29456  type DocumentRequires struct {
 29457  	_ struct{} `type:"structure"`
 29458  
 29459  	// The name of the required SSM document. The name can be an Amazon Resource
 29460  	// Name (ARN).
 29461  	//
 29462  	// Name is a required field
 29463  	Name *string `type:"string" required:"true"`
 29464  
 29465  	// The document version required by the current document.
 29466  	Version *string `type:"string"`
 29467  }
 29468  
 29469  // String returns the string representation.
 29470  //
 29471  // API parameter values that are decorated as "sensitive" in the API will not
 29472  // be included in the string output. The member name will be present, but the
 29473  // value will be replaced with "sensitive".
 29474  func (s DocumentRequires) String() string {
 29475  	return awsutil.Prettify(s)
 29476  }
 29477  
 29478  // GoString returns the string representation.
 29479  //
 29480  // API parameter values that are decorated as "sensitive" in the API will not
 29481  // be included in the string output. The member name will be present, but the
 29482  // value will be replaced with "sensitive".
 29483  func (s DocumentRequires) GoString() string {
 29484  	return s.String()
 29485  }
 29486  
 29487  // Validate inspects the fields of the type to determine if they are valid.
 29488  func (s *DocumentRequires) Validate() error {
 29489  	invalidParams := request.ErrInvalidParams{Context: "DocumentRequires"}
 29490  	if s.Name == nil {
 29491  		invalidParams.Add(request.NewErrParamRequired("Name"))
 29492  	}
 29493  
 29494  	if invalidParams.Len() > 0 {
 29495  		return invalidParams
 29496  	}
 29497  	return nil
 29498  }
 29499  
 29500  // SetName sets the Name field's value.
 29501  func (s *DocumentRequires) SetName(v string) *DocumentRequires {
 29502  	s.Name = &v
 29503  	return s
 29504  }
 29505  
 29506  // SetVersion sets the Version field's value.
 29507  func (s *DocumentRequires) SetVersion(v string) *DocumentRequires {
 29508  	s.Version = &v
 29509  	return s
 29510  }
 29511  
 29512  // Information about comments added to a document review request.
 29513  type DocumentReviewCommentSource struct {
 29514  	_ struct{} `type:"structure"`
 29515  
 29516  	// The content of a comment entered by a user who requests a review of a new
 29517  	// document version, or who reviews the new version.
 29518  	Content *string `min:"1" type:"string"`
 29519  
 29520  	// The type of information added to a review request. Currently, only the value
 29521  	// Comment is supported.
 29522  	Type *string `type:"string" enum:"DocumentReviewCommentType"`
 29523  }
 29524  
 29525  // String returns the string representation.
 29526  //
 29527  // API parameter values that are decorated as "sensitive" in the API will not
 29528  // be included in the string output. The member name will be present, but the
 29529  // value will be replaced with "sensitive".
 29530  func (s DocumentReviewCommentSource) String() string {
 29531  	return awsutil.Prettify(s)
 29532  }
 29533  
 29534  // GoString returns the string representation.
 29535  //
 29536  // API parameter values that are decorated as "sensitive" in the API will not
 29537  // be included in the string output. The member name will be present, but the
 29538  // value will be replaced with "sensitive".
 29539  func (s DocumentReviewCommentSource) GoString() string {
 29540  	return s.String()
 29541  }
 29542  
 29543  // Validate inspects the fields of the type to determine if they are valid.
 29544  func (s *DocumentReviewCommentSource) Validate() error {
 29545  	invalidParams := request.ErrInvalidParams{Context: "DocumentReviewCommentSource"}
 29546  	if s.Content != nil && len(*s.Content) < 1 {
 29547  		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
 29548  	}
 29549  
 29550  	if invalidParams.Len() > 0 {
 29551  		return invalidParams
 29552  	}
 29553  	return nil
 29554  }
 29555  
 29556  // SetContent sets the Content field's value.
 29557  func (s *DocumentReviewCommentSource) SetContent(v string) *DocumentReviewCommentSource {
 29558  	s.Content = &v
 29559  	return s
 29560  }
 29561  
 29562  // SetType sets the Type field's value.
 29563  func (s *DocumentReviewCommentSource) SetType(v string) *DocumentReviewCommentSource {
 29564  	s.Type = &v
 29565  	return s
 29566  }
 29567  
 29568  // Information about a reviewer's response to a document review request.
 29569  type DocumentReviewerResponseSource struct {
 29570  	_ struct{} `type:"structure"`
 29571  
 29572  	// The comment entered by a reviewer as part of their document review response.
 29573  	Comment []*DocumentReviewCommentSource `type:"list"`
 29574  
 29575  	// The date and time that a reviewer entered a response to a document review
 29576  	// request.
 29577  	CreateTime *time.Time `type:"timestamp"`
 29578  
 29579  	// The current review status of a new custom SSM document created by a member
 29580  	// of your organization, or of the latest version of an existing SSM document.
 29581  	//
 29582  	// Only one version of a document can be in the APPROVED state at a time. When
 29583  	// a new version is approved, the status of the previous version changes to
 29584  	// REJECTED.
 29585  	//
 29586  	// Only one version of a document can be in review, or PENDING, at a time.
 29587  	ReviewStatus *string `type:"string" enum:"ReviewStatus"`
 29588  
 29589  	// The user in your organization assigned to review a document request.
 29590  	Reviewer *string `type:"string"`
 29591  
 29592  	// The date and time that a reviewer last updated a response to a document review
 29593  	// request.
 29594  	UpdatedTime *time.Time `type:"timestamp"`
 29595  }
 29596  
 29597  // String returns the string representation.
 29598  //
 29599  // API parameter values that are decorated as "sensitive" in the API will not
 29600  // be included in the string output. The member name will be present, but the
 29601  // value will be replaced with "sensitive".
 29602  func (s DocumentReviewerResponseSource) String() string {
 29603  	return awsutil.Prettify(s)
 29604  }
 29605  
 29606  // GoString returns the string representation.
 29607  //
 29608  // API parameter values that are decorated as "sensitive" in the API will not
 29609  // be included in the string output. The member name will be present, but the
 29610  // value will be replaced with "sensitive".
 29611  func (s DocumentReviewerResponseSource) GoString() string {
 29612  	return s.String()
 29613  }
 29614  
 29615  // SetComment sets the Comment field's value.
 29616  func (s *DocumentReviewerResponseSource) SetComment(v []*DocumentReviewCommentSource) *DocumentReviewerResponseSource {
 29617  	s.Comment = v
 29618  	return s
 29619  }
 29620  
 29621  // SetCreateTime sets the CreateTime field's value.
 29622  func (s *DocumentReviewerResponseSource) SetCreateTime(v time.Time) *DocumentReviewerResponseSource {
 29623  	s.CreateTime = &v
 29624  	return s
 29625  }
 29626  
 29627  // SetReviewStatus sets the ReviewStatus field's value.
 29628  func (s *DocumentReviewerResponseSource) SetReviewStatus(v string) *DocumentReviewerResponseSource {
 29629  	s.ReviewStatus = &v
 29630  	return s
 29631  }
 29632  
 29633  // SetReviewer sets the Reviewer field's value.
 29634  func (s *DocumentReviewerResponseSource) SetReviewer(v string) *DocumentReviewerResponseSource {
 29635  	s.Reviewer = &v
 29636  	return s
 29637  }
 29638  
 29639  // SetUpdatedTime sets the UpdatedTime field's value.
 29640  func (s *DocumentReviewerResponseSource) SetUpdatedTime(v time.Time) *DocumentReviewerResponseSource {
 29641  	s.UpdatedTime = &v
 29642  	return s
 29643  }
 29644  
 29645  // Information about a document approval review.
 29646  type DocumentReviews struct {
 29647  	_ struct{} `type:"structure"`
 29648  
 29649  	// The action to take on a document approval review request.
 29650  	//
 29651  	// Action is a required field
 29652  	Action *string `type:"string" required:"true" enum:"DocumentReviewAction"`
 29653  
 29654  	// A comment entered by a user in your organization about the document review
 29655  	// request.
 29656  	Comment []*DocumentReviewCommentSource `type:"list"`
 29657  }
 29658  
 29659  // String returns the string representation.
 29660  //
 29661  // API parameter values that are decorated as "sensitive" in the API will not
 29662  // be included in the string output. The member name will be present, but the
 29663  // value will be replaced with "sensitive".
 29664  func (s DocumentReviews) String() string {
 29665  	return awsutil.Prettify(s)
 29666  }
 29667  
 29668  // GoString returns the string representation.
 29669  //
 29670  // API parameter values that are decorated as "sensitive" in the API will not
 29671  // be included in the string output. The member name will be present, but the
 29672  // value will be replaced with "sensitive".
 29673  func (s DocumentReviews) GoString() string {
 29674  	return s.String()
 29675  }
 29676  
 29677  // Validate inspects the fields of the type to determine if they are valid.
 29678  func (s *DocumentReviews) Validate() error {
 29679  	invalidParams := request.ErrInvalidParams{Context: "DocumentReviews"}
 29680  	if s.Action == nil {
 29681  		invalidParams.Add(request.NewErrParamRequired("Action"))
 29682  	}
 29683  	if s.Comment != nil {
 29684  		for i, v := range s.Comment {
 29685  			if v == nil {
 29686  				continue
 29687  			}
 29688  			if err := v.Validate(); err != nil {
 29689  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Comment", i), err.(request.ErrInvalidParams))
 29690  			}
 29691  		}
 29692  	}
 29693  
 29694  	if invalidParams.Len() > 0 {
 29695  		return invalidParams
 29696  	}
 29697  	return nil
 29698  }
 29699  
 29700  // SetAction sets the Action field's value.
 29701  func (s *DocumentReviews) SetAction(v string) *DocumentReviews {
 29702  	s.Action = &v
 29703  	return s
 29704  }
 29705  
 29706  // SetComment sets the Comment field's value.
 29707  func (s *DocumentReviews) SetComment(v []*DocumentReviewCommentSource) *DocumentReviews {
 29708  	s.Comment = v
 29709  	return s
 29710  }
 29711  
 29712  // Version information about the document.
 29713  type DocumentVersionInfo struct {
 29714  	_ struct{} `type:"structure"`
 29715  
 29716  	// The date the document was created.
 29717  	CreatedDate *time.Time `type:"timestamp"`
 29718  
 29719  	// The friendly name of the SSM document. This value can differ for each version
 29720  	// of the document. If you want to update this value, see UpdateDocument.
 29721  	DisplayName *string `type:"string"`
 29722  
 29723  	// The document format, either JSON or YAML.
 29724  	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
 29725  
 29726  	// The document version.
 29727  	DocumentVersion *string `type:"string"`
 29728  
 29729  	// An identifier for the default version of the document.
 29730  	IsDefaultVersion *bool `type:"boolean"`
 29731  
 29732  	// The document name.
 29733  	Name *string `type:"string"`
 29734  
 29735  	// The current status of the approval review for the latest version of the document.
 29736  	ReviewStatus *string `type:"string" enum:"ReviewStatus"`
 29737  
 29738  	// The status of the SSM document, such as Creating, Active, Failed, and Deleting.
 29739  	Status *string `type:"string" enum:"DocumentStatus"`
 29740  
 29741  	// A message returned by Amazon Web Services Systems Manager that explains the
 29742  	// Status value. For example, a Failed status might be explained by the StatusInformation
 29743  	// message, "The specified S3 bucket doesn't exist. Verify that the URL of the
 29744  	// S3 bucket is correct."
 29745  	StatusInformation *string `type:"string"`
 29746  
 29747  	// The version of the artifact associated with the document. For example, "Release
 29748  	// 12, Update 6". This value is unique across all versions of a document, and
 29749  	// can't be changed.
 29750  	VersionName *string `type:"string"`
 29751  }
 29752  
 29753  // String returns the string representation.
 29754  //
 29755  // API parameter values that are decorated as "sensitive" in the API will not
 29756  // be included in the string output. The member name will be present, but the
 29757  // value will be replaced with "sensitive".
 29758  func (s DocumentVersionInfo) String() string {
 29759  	return awsutil.Prettify(s)
 29760  }
 29761  
 29762  // GoString returns the string representation.
 29763  //
 29764  // API parameter values that are decorated as "sensitive" in the API will not
 29765  // be included in the string output. The member name will be present, but the
 29766  // value will be replaced with "sensitive".
 29767  func (s DocumentVersionInfo) GoString() string {
 29768  	return s.String()
 29769  }
 29770  
 29771  // SetCreatedDate sets the CreatedDate field's value.
 29772  func (s *DocumentVersionInfo) SetCreatedDate(v time.Time) *DocumentVersionInfo {
 29773  	s.CreatedDate = &v
 29774  	return s
 29775  }
 29776  
 29777  // SetDisplayName sets the DisplayName field's value.
 29778  func (s *DocumentVersionInfo) SetDisplayName(v string) *DocumentVersionInfo {
 29779  	s.DisplayName = &v
 29780  	return s
 29781  }
 29782  
 29783  // SetDocumentFormat sets the DocumentFormat field's value.
 29784  func (s *DocumentVersionInfo) SetDocumentFormat(v string) *DocumentVersionInfo {
 29785  	s.DocumentFormat = &v
 29786  	return s
 29787  }
 29788  
 29789  // SetDocumentVersion sets the DocumentVersion field's value.
 29790  func (s *DocumentVersionInfo) SetDocumentVersion(v string) *DocumentVersionInfo {
 29791  	s.DocumentVersion = &v
 29792  	return s
 29793  }
 29794  
 29795  // SetIsDefaultVersion sets the IsDefaultVersion field's value.
 29796  func (s *DocumentVersionInfo) SetIsDefaultVersion(v bool) *DocumentVersionInfo {
 29797  	s.IsDefaultVersion = &v
 29798  	return s
 29799  }
 29800  
 29801  // SetName sets the Name field's value.
 29802  func (s *DocumentVersionInfo) SetName(v string) *DocumentVersionInfo {
 29803  	s.Name = &v
 29804  	return s
 29805  }
 29806  
 29807  // SetReviewStatus sets the ReviewStatus field's value.
 29808  func (s *DocumentVersionInfo) SetReviewStatus(v string) *DocumentVersionInfo {
 29809  	s.ReviewStatus = &v
 29810  	return s
 29811  }
 29812  
 29813  // SetStatus sets the Status field's value.
 29814  func (s *DocumentVersionInfo) SetStatus(v string) *DocumentVersionInfo {
 29815  	s.Status = &v
 29816  	return s
 29817  }
 29818  
 29819  // SetStatusInformation sets the StatusInformation field's value.
 29820  func (s *DocumentVersionInfo) SetStatusInformation(v string) *DocumentVersionInfo {
 29821  	s.StatusInformation = &v
 29822  	return s
 29823  }
 29824  
 29825  // SetVersionName sets the VersionName field's value.
 29826  func (s *DocumentVersionInfo) SetVersionName(v string) *DocumentVersionInfo {
 29827  	s.VersionName = &v
 29828  	return s
 29829  }
 29830  
 29831  // The document has too many versions. Delete one or more document versions
 29832  // and try again.
 29833  type DocumentVersionLimitExceeded struct {
 29834  	_            struct{}                  `type:"structure"`
 29835  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 29836  
 29837  	Message_ *string `locationName:"Message" type:"string"`
 29838  }
 29839  
 29840  // String returns the string representation.
 29841  //
 29842  // API parameter values that are decorated as "sensitive" in the API will not
 29843  // be included in the string output. The member name will be present, but the
 29844  // value will be replaced with "sensitive".
 29845  func (s DocumentVersionLimitExceeded) String() string {
 29846  	return awsutil.Prettify(s)
 29847  }
 29848  
 29849  // GoString returns the string representation.
 29850  //
 29851  // API parameter values that are decorated as "sensitive" in the API will not
 29852  // be included in the string output. The member name will be present, but the
 29853  // value will be replaced with "sensitive".
 29854  func (s DocumentVersionLimitExceeded) GoString() string {
 29855  	return s.String()
 29856  }
 29857  
 29858  func newErrorDocumentVersionLimitExceeded(v protocol.ResponseMetadata) error {
 29859  	return &DocumentVersionLimitExceeded{
 29860  		RespMetadata: v,
 29861  	}
 29862  }
 29863  
 29864  // Code returns the exception type name.
 29865  func (s *DocumentVersionLimitExceeded) Code() string {
 29866  	return "DocumentVersionLimitExceeded"
 29867  }
 29868  
 29869  // Message returns the exception's message.
 29870  func (s *DocumentVersionLimitExceeded) Message() string {
 29871  	if s.Message_ != nil {
 29872  		return *s.Message_
 29873  	}
 29874  	return ""
 29875  }
 29876  
 29877  // OrigErr always returns nil, satisfies awserr.Error interface.
 29878  func (s *DocumentVersionLimitExceeded) OrigErr() error {
 29879  	return nil
 29880  }
 29881  
 29882  func (s *DocumentVersionLimitExceeded) Error() string {
 29883  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 29884  }
 29885  
 29886  // Status code returns the HTTP status code for the request's response error.
 29887  func (s *DocumentVersionLimitExceeded) StatusCode() int {
 29888  	return s.RespMetadata.StatusCode
 29889  }
 29890  
 29891  // RequestID returns the service's response RequestID for request.
 29892  func (s *DocumentVersionLimitExceeded) RequestID() string {
 29893  	return s.RespMetadata.RequestID
 29894  }
 29895  
 29896  // Error returned when the ID specified for a resource, such as a maintenance
 29897  // window or patch baseline, doesn't exist.
 29898  //
 29899  // For information about resource quotas in Amazon Web Services Systems Manager,
 29900  // see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 29901  // in the Amazon Web Services General Reference.
 29902  type DoesNotExistException struct {
 29903  	_            struct{}                  `type:"structure"`
 29904  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 29905  
 29906  	Message_ *string `locationName:"Message" type:"string"`
 29907  }
 29908  
 29909  // String returns the string representation.
 29910  //
 29911  // API parameter values that are decorated as "sensitive" in the API will not
 29912  // be included in the string output. The member name will be present, but the
 29913  // value will be replaced with "sensitive".
 29914  func (s DoesNotExistException) String() string {
 29915  	return awsutil.Prettify(s)
 29916  }
 29917  
 29918  // GoString returns the string representation.
 29919  //
 29920  // API parameter values that are decorated as "sensitive" in the API will not
 29921  // be included in the string output. The member name will be present, but the
 29922  // value will be replaced with "sensitive".
 29923  func (s DoesNotExistException) GoString() string {
 29924  	return s.String()
 29925  }
 29926  
 29927  func newErrorDoesNotExistException(v protocol.ResponseMetadata) error {
 29928  	return &DoesNotExistException{
 29929  		RespMetadata: v,
 29930  	}
 29931  }
 29932  
 29933  // Code returns the exception type name.
 29934  func (s *DoesNotExistException) Code() string {
 29935  	return "DoesNotExistException"
 29936  }
 29937  
 29938  // Message returns the exception's message.
 29939  func (s *DoesNotExistException) Message() string {
 29940  	if s.Message_ != nil {
 29941  		return *s.Message_
 29942  	}
 29943  	return ""
 29944  }
 29945  
 29946  // OrigErr always returns nil, satisfies awserr.Error interface.
 29947  func (s *DoesNotExistException) OrigErr() error {
 29948  	return nil
 29949  }
 29950  
 29951  func (s *DoesNotExistException) Error() string {
 29952  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 29953  }
 29954  
 29955  // Status code returns the HTTP status code for the request's response error.
 29956  func (s *DoesNotExistException) StatusCode() int {
 29957  	return s.RespMetadata.StatusCode
 29958  }
 29959  
 29960  // RequestID returns the service's response RequestID for request.
 29961  func (s *DoesNotExistException) RequestID() string {
 29962  	return s.RespMetadata.RequestID
 29963  }
 29964  
 29965  // The content of the association document matches another document. Change
 29966  // the content of the document and try again.
 29967  type DuplicateDocumentContent struct {
 29968  	_            struct{}                  `type:"structure"`
 29969  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 29970  
 29971  	Message_ *string `locationName:"Message" type:"string"`
 29972  }
 29973  
 29974  // String returns the string representation.
 29975  //
 29976  // API parameter values that are decorated as "sensitive" in the API will not
 29977  // be included in the string output. The member name will be present, but the
 29978  // value will be replaced with "sensitive".
 29979  func (s DuplicateDocumentContent) String() string {
 29980  	return awsutil.Prettify(s)
 29981  }
 29982  
 29983  // GoString returns the string representation.
 29984  //
 29985  // API parameter values that are decorated as "sensitive" in the API will not
 29986  // be included in the string output. The member name will be present, but the
 29987  // value will be replaced with "sensitive".
 29988  func (s DuplicateDocumentContent) GoString() string {
 29989  	return s.String()
 29990  }
 29991  
 29992  func newErrorDuplicateDocumentContent(v protocol.ResponseMetadata) error {
 29993  	return &DuplicateDocumentContent{
 29994  		RespMetadata: v,
 29995  	}
 29996  }
 29997  
 29998  // Code returns the exception type name.
 29999  func (s *DuplicateDocumentContent) Code() string {
 30000  	return "DuplicateDocumentContent"
 30001  }
 30002  
 30003  // Message returns the exception's message.
 30004  func (s *DuplicateDocumentContent) Message() string {
 30005  	if s.Message_ != nil {
 30006  		return *s.Message_
 30007  	}
 30008  	return ""
 30009  }
 30010  
 30011  // OrigErr always returns nil, satisfies awserr.Error interface.
 30012  func (s *DuplicateDocumentContent) OrigErr() error {
 30013  	return nil
 30014  }
 30015  
 30016  func (s *DuplicateDocumentContent) Error() string {
 30017  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 30018  }
 30019  
 30020  // Status code returns the HTTP status code for the request's response error.
 30021  func (s *DuplicateDocumentContent) StatusCode() int {
 30022  	return s.RespMetadata.StatusCode
 30023  }
 30024  
 30025  // RequestID returns the service's response RequestID for request.
 30026  func (s *DuplicateDocumentContent) RequestID() string {
 30027  	return s.RespMetadata.RequestID
 30028  }
 30029  
 30030  // The version name has already been used in this document. Specify a different
 30031  // version name, and then try again.
 30032  type DuplicateDocumentVersionName struct {
 30033  	_            struct{}                  `type:"structure"`
 30034  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 30035  
 30036  	Message_ *string `locationName:"Message" type:"string"`
 30037  }
 30038  
 30039  // String returns the string representation.
 30040  //
 30041  // API parameter values that are decorated as "sensitive" in the API will not
 30042  // be included in the string output. The member name will be present, but the
 30043  // value will be replaced with "sensitive".
 30044  func (s DuplicateDocumentVersionName) String() string {
 30045  	return awsutil.Prettify(s)
 30046  }
 30047  
 30048  // GoString returns the string representation.
 30049  //
 30050  // API parameter values that are decorated as "sensitive" in the API will not
 30051  // be included in the string output. The member name will be present, but the
 30052  // value will be replaced with "sensitive".
 30053  func (s DuplicateDocumentVersionName) GoString() string {
 30054  	return s.String()
 30055  }
 30056  
 30057  func newErrorDuplicateDocumentVersionName(v protocol.ResponseMetadata) error {
 30058  	return &DuplicateDocumentVersionName{
 30059  		RespMetadata: v,
 30060  	}
 30061  }
 30062  
 30063  // Code returns the exception type name.
 30064  func (s *DuplicateDocumentVersionName) Code() string {
 30065  	return "DuplicateDocumentVersionName"
 30066  }
 30067  
 30068  // Message returns the exception's message.
 30069  func (s *DuplicateDocumentVersionName) Message() string {
 30070  	if s.Message_ != nil {
 30071  		return *s.Message_
 30072  	}
 30073  	return ""
 30074  }
 30075  
 30076  // OrigErr always returns nil, satisfies awserr.Error interface.
 30077  func (s *DuplicateDocumentVersionName) OrigErr() error {
 30078  	return nil
 30079  }
 30080  
 30081  func (s *DuplicateDocumentVersionName) Error() string {
 30082  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 30083  }
 30084  
 30085  // Status code returns the HTTP status code for the request's response error.
 30086  func (s *DuplicateDocumentVersionName) StatusCode() int {
 30087  	return s.RespMetadata.StatusCode
 30088  }
 30089  
 30090  // RequestID returns the service's response RequestID for request.
 30091  func (s *DuplicateDocumentVersionName) RequestID() string {
 30092  	return s.RespMetadata.RequestID
 30093  }
 30094  
 30095  // You can't specify an instance ID in more than one association.
 30096  type DuplicateInstanceId struct {
 30097  	_            struct{}                  `type:"structure"`
 30098  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 30099  
 30100  	Message_ *string `locationName:"message" type:"string"`
 30101  }
 30102  
 30103  // String returns the string representation.
 30104  //
 30105  // API parameter values that are decorated as "sensitive" in the API will not
 30106  // be included in the string output. The member name will be present, but the
 30107  // value will be replaced with "sensitive".
 30108  func (s DuplicateInstanceId) String() string {
 30109  	return awsutil.Prettify(s)
 30110  }
 30111  
 30112  // GoString returns the string representation.
 30113  //
 30114  // API parameter values that are decorated as "sensitive" in the API will not
 30115  // be included in the string output. The member name will be present, but the
 30116  // value will be replaced with "sensitive".
 30117  func (s DuplicateInstanceId) GoString() string {
 30118  	return s.String()
 30119  }
 30120  
 30121  func newErrorDuplicateInstanceId(v protocol.ResponseMetadata) error {
 30122  	return &DuplicateInstanceId{
 30123  		RespMetadata: v,
 30124  	}
 30125  }
 30126  
 30127  // Code returns the exception type name.
 30128  func (s *DuplicateInstanceId) Code() string {
 30129  	return "DuplicateInstanceId"
 30130  }
 30131  
 30132  // Message returns the exception's message.
 30133  func (s *DuplicateInstanceId) Message() string {
 30134  	if s.Message_ != nil {
 30135  		return *s.Message_
 30136  	}
 30137  	return ""
 30138  }
 30139  
 30140  // OrigErr always returns nil, satisfies awserr.Error interface.
 30141  func (s *DuplicateInstanceId) OrigErr() error {
 30142  	return nil
 30143  }
 30144  
 30145  func (s *DuplicateInstanceId) Error() string {
 30146  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 30147  }
 30148  
 30149  // Status code returns the HTTP status code for the request's response error.
 30150  func (s *DuplicateInstanceId) StatusCode() int {
 30151  	return s.RespMetadata.StatusCode
 30152  }
 30153  
 30154  // RequestID returns the service's response RequestID for request.
 30155  func (s *DuplicateInstanceId) RequestID() string {
 30156  	return s.RespMetadata.RequestID
 30157  }
 30158  
 30159  // The EffectivePatch structure defines metadata about a patch along with the
 30160  // approval state of the patch in a particular patch baseline. The approval
 30161  // state includes information about whether the patch is currently approved,
 30162  // due to be approved by a rule, explicitly approved, or explicitly rejected
 30163  // and the date the patch was or will be approved.
 30164  type EffectivePatch struct {
 30165  	_ struct{} `type:"structure"`
 30166  
 30167  	// Provides metadata for a patch, including information such as the KB ID, severity,
 30168  	// classification and a URL for where more information can be obtained about
 30169  	// the patch.
 30170  	Patch *Patch `type:"structure"`
 30171  
 30172  	// The status of the patch in a patch baseline. This includes information about
 30173  	// whether the patch is currently approved, due to be approved by a rule, explicitly
 30174  	// approved, or explicitly rejected and the date the patch was or will be approved.
 30175  	PatchStatus *PatchStatus `type:"structure"`
 30176  }
 30177  
 30178  // String returns the string representation.
 30179  //
 30180  // API parameter values that are decorated as "sensitive" in the API will not
 30181  // be included in the string output. The member name will be present, but the
 30182  // value will be replaced with "sensitive".
 30183  func (s EffectivePatch) String() string {
 30184  	return awsutil.Prettify(s)
 30185  }
 30186  
 30187  // GoString returns the string representation.
 30188  //
 30189  // API parameter values that are decorated as "sensitive" in the API will not
 30190  // be included in the string output. The member name will be present, but the
 30191  // value will be replaced with "sensitive".
 30192  func (s EffectivePatch) GoString() string {
 30193  	return s.String()
 30194  }
 30195  
 30196  // SetPatch sets the Patch field's value.
 30197  func (s *EffectivePatch) SetPatch(v *Patch) *EffectivePatch {
 30198  	s.Patch = v
 30199  	return s
 30200  }
 30201  
 30202  // SetPatchStatus sets the PatchStatus field's value.
 30203  func (s *EffectivePatch) SetPatchStatus(v *PatchStatus) *EffectivePatch {
 30204  	s.PatchStatus = v
 30205  	return s
 30206  }
 30207  
 30208  // Describes a failed association.
 30209  type FailedCreateAssociation struct {
 30210  	_ struct{} `type:"structure"`
 30211  
 30212  	// The association.
 30213  	Entry *CreateAssociationBatchRequestEntry `type:"structure"`
 30214  
 30215  	// The source of the failure.
 30216  	Fault *string `type:"string" enum:"Fault"`
 30217  
 30218  	// A description of the failure.
 30219  	Message *string `type:"string"`
 30220  }
 30221  
 30222  // String returns the string representation.
 30223  //
 30224  // API parameter values that are decorated as "sensitive" in the API will not
 30225  // be included in the string output. The member name will be present, but the
 30226  // value will be replaced with "sensitive".
 30227  func (s FailedCreateAssociation) String() string {
 30228  	return awsutil.Prettify(s)
 30229  }
 30230  
 30231  // GoString returns the string representation.
 30232  //
 30233  // API parameter values that are decorated as "sensitive" in the API will not
 30234  // be included in the string output. The member name will be present, but the
 30235  // value will be replaced with "sensitive".
 30236  func (s FailedCreateAssociation) GoString() string {
 30237  	return s.String()
 30238  }
 30239  
 30240  // SetEntry sets the Entry field's value.
 30241  func (s *FailedCreateAssociation) SetEntry(v *CreateAssociationBatchRequestEntry) *FailedCreateAssociation {
 30242  	s.Entry = v
 30243  	return s
 30244  }
 30245  
 30246  // SetFault sets the Fault field's value.
 30247  func (s *FailedCreateAssociation) SetFault(v string) *FailedCreateAssociation {
 30248  	s.Fault = &v
 30249  	return s
 30250  }
 30251  
 30252  // SetMessage sets the Message field's value.
 30253  func (s *FailedCreateAssociation) SetMessage(v string) *FailedCreateAssociation {
 30254  	s.Message = &v
 30255  	return s
 30256  }
 30257  
 30258  // Information about an Automation failure.
 30259  type FailureDetails struct {
 30260  	_ struct{} `type:"structure"`
 30261  
 30262  	// Detailed information about the Automation step failure.
 30263  	Details map[string][]*string `min:"1" type:"map"`
 30264  
 30265  	// The stage of the Automation execution when the failure occurred. The stages
 30266  	// include the following: InputValidation, PreVerification, Invocation, PostVerification.
 30267  	FailureStage *string `type:"string"`
 30268  
 30269  	// The type of Automation failure. Failure types include the following: Action,
 30270  	// Permission, Throttling, Verification, Internal.
 30271  	FailureType *string `type:"string"`
 30272  }
 30273  
 30274  // String returns the string representation.
 30275  //
 30276  // API parameter values that are decorated as "sensitive" in the API will not
 30277  // be included in the string output. The member name will be present, but the
 30278  // value will be replaced with "sensitive".
 30279  func (s FailureDetails) String() string {
 30280  	return awsutil.Prettify(s)
 30281  }
 30282  
 30283  // GoString returns the string representation.
 30284  //
 30285  // API parameter values that are decorated as "sensitive" in the API will not
 30286  // be included in the string output. The member name will be present, but the
 30287  // value will be replaced with "sensitive".
 30288  func (s FailureDetails) GoString() string {
 30289  	return s.String()
 30290  }
 30291  
 30292  // SetDetails sets the Details field's value.
 30293  func (s *FailureDetails) SetDetails(v map[string][]*string) *FailureDetails {
 30294  	s.Details = v
 30295  	return s
 30296  }
 30297  
 30298  // SetFailureStage sets the FailureStage field's value.
 30299  func (s *FailureDetails) SetFailureStage(v string) *FailureDetails {
 30300  	s.FailureStage = &v
 30301  	return s
 30302  }
 30303  
 30304  // SetFailureType sets the FailureType field's value.
 30305  func (s *FailureDetails) SetFailureType(v string) *FailureDetails {
 30306  	s.FailureType = &v
 30307  	return s
 30308  }
 30309  
 30310  // You attempted to register a LAMBDA or STEP_FUNCTIONS task in a region where
 30311  // the corresponding service isn't available.
 30312  type FeatureNotAvailableException struct {
 30313  	_            struct{}                  `type:"structure"`
 30314  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 30315  
 30316  	Message_ *string `locationName:"Message" type:"string"`
 30317  }
 30318  
 30319  // String returns the string representation.
 30320  //
 30321  // API parameter values that are decorated as "sensitive" in the API will not
 30322  // be included in the string output. The member name will be present, but the
 30323  // value will be replaced with "sensitive".
 30324  func (s FeatureNotAvailableException) String() string {
 30325  	return awsutil.Prettify(s)
 30326  }
 30327  
 30328  // GoString returns the string representation.
 30329  //
 30330  // API parameter values that are decorated as "sensitive" in the API will not
 30331  // be included in the string output. The member name will be present, but the
 30332  // value will be replaced with "sensitive".
 30333  func (s FeatureNotAvailableException) GoString() string {
 30334  	return s.String()
 30335  }
 30336  
 30337  func newErrorFeatureNotAvailableException(v protocol.ResponseMetadata) error {
 30338  	return &FeatureNotAvailableException{
 30339  		RespMetadata: v,
 30340  	}
 30341  }
 30342  
 30343  // Code returns the exception type name.
 30344  func (s *FeatureNotAvailableException) Code() string {
 30345  	return "FeatureNotAvailableException"
 30346  }
 30347  
 30348  // Message returns the exception's message.
 30349  func (s *FeatureNotAvailableException) Message() string {
 30350  	if s.Message_ != nil {
 30351  		return *s.Message_
 30352  	}
 30353  	return ""
 30354  }
 30355  
 30356  // OrigErr always returns nil, satisfies awserr.Error interface.
 30357  func (s *FeatureNotAvailableException) OrigErr() error {
 30358  	return nil
 30359  }
 30360  
 30361  func (s *FeatureNotAvailableException) Error() string {
 30362  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 30363  }
 30364  
 30365  // Status code returns the HTTP status code for the request's response error.
 30366  func (s *FeatureNotAvailableException) StatusCode() int {
 30367  	return s.RespMetadata.StatusCode
 30368  }
 30369  
 30370  // RequestID returns the service's response RequestID for request.
 30371  func (s *FeatureNotAvailableException) RequestID() string {
 30372  	return s.RespMetadata.RequestID
 30373  }
 30374  
 30375  type GetAutomationExecutionInput struct {
 30376  	_ struct{} `type:"structure"`
 30377  
 30378  	// The unique identifier for an existing automation execution to examine. The
 30379  	// execution ID is returned by StartAutomationExecution when the execution of
 30380  	// an Automation runbook is initiated.
 30381  	//
 30382  	// AutomationExecutionId is a required field
 30383  	AutomationExecutionId *string `min:"36" type:"string" required:"true"`
 30384  }
 30385  
 30386  // String returns the string representation.
 30387  //
 30388  // API parameter values that are decorated as "sensitive" in the API will not
 30389  // be included in the string output. The member name will be present, but the
 30390  // value will be replaced with "sensitive".
 30391  func (s GetAutomationExecutionInput) String() string {
 30392  	return awsutil.Prettify(s)
 30393  }
 30394  
 30395  // GoString returns the string representation.
 30396  //
 30397  // API parameter values that are decorated as "sensitive" in the API will not
 30398  // be included in the string output. The member name will be present, but the
 30399  // value will be replaced with "sensitive".
 30400  func (s GetAutomationExecutionInput) GoString() string {
 30401  	return s.String()
 30402  }
 30403  
 30404  // Validate inspects the fields of the type to determine if they are valid.
 30405  func (s *GetAutomationExecutionInput) Validate() error {
 30406  	invalidParams := request.ErrInvalidParams{Context: "GetAutomationExecutionInput"}
 30407  	if s.AutomationExecutionId == nil {
 30408  		invalidParams.Add(request.NewErrParamRequired("AutomationExecutionId"))
 30409  	}
 30410  	if s.AutomationExecutionId != nil && len(*s.AutomationExecutionId) < 36 {
 30411  		invalidParams.Add(request.NewErrParamMinLen("AutomationExecutionId", 36))
 30412  	}
 30413  
 30414  	if invalidParams.Len() > 0 {
 30415  		return invalidParams
 30416  	}
 30417  	return nil
 30418  }
 30419  
 30420  // SetAutomationExecutionId sets the AutomationExecutionId field's value.
 30421  func (s *GetAutomationExecutionInput) SetAutomationExecutionId(v string) *GetAutomationExecutionInput {
 30422  	s.AutomationExecutionId = &v
 30423  	return s
 30424  }
 30425  
 30426  type GetAutomationExecutionOutput struct {
 30427  	_ struct{} `type:"structure"`
 30428  
 30429  	// Detailed information about the current state of an automation execution.
 30430  	AutomationExecution *AutomationExecution `type:"structure"`
 30431  }
 30432  
 30433  // String returns the string representation.
 30434  //
 30435  // API parameter values that are decorated as "sensitive" in the API will not
 30436  // be included in the string output. The member name will be present, but the
 30437  // value will be replaced with "sensitive".
 30438  func (s GetAutomationExecutionOutput) String() string {
 30439  	return awsutil.Prettify(s)
 30440  }
 30441  
 30442  // GoString returns the string representation.
 30443  //
 30444  // API parameter values that are decorated as "sensitive" in the API will not
 30445  // be included in the string output. The member name will be present, but the
 30446  // value will be replaced with "sensitive".
 30447  func (s GetAutomationExecutionOutput) GoString() string {
 30448  	return s.String()
 30449  }
 30450  
 30451  // SetAutomationExecution sets the AutomationExecution field's value.
 30452  func (s *GetAutomationExecutionOutput) SetAutomationExecution(v *AutomationExecution) *GetAutomationExecutionOutput {
 30453  	s.AutomationExecution = v
 30454  	return s
 30455  }
 30456  
 30457  type GetCalendarStateInput struct {
 30458  	_ struct{} `type:"structure"`
 30459  
 30460  	// (Optional) The specific time for which you want to get calendar state information,
 30461  	// in ISO 8601 (https://en.wikipedia.org/wiki/ISO_8601) format. If you don't
 30462  	// specify a value or AtTime, the current time is used.
 30463  	AtTime *string `type:"string"`
 30464  
 30465  	// The names or Amazon Resource Names (ARNs) of the Systems Manager documents
 30466  	// (SSM documents) that represent the calendar entries for which you want to
 30467  	// get the state.
 30468  	//
 30469  	// CalendarNames is a required field
 30470  	CalendarNames []*string `type:"list" required:"true"`
 30471  }
 30472  
 30473  // String returns the string representation.
 30474  //
 30475  // API parameter values that are decorated as "sensitive" in the API will not
 30476  // be included in the string output. The member name will be present, but the
 30477  // value will be replaced with "sensitive".
 30478  func (s GetCalendarStateInput) String() string {
 30479  	return awsutil.Prettify(s)
 30480  }
 30481  
 30482  // GoString returns the string representation.
 30483  //
 30484  // API parameter values that are decorated as "sensitive" in the API will not
 30485  // be included in the string output. The member name will be present, but the
 30486  // value will be replaced with "sensitive".
 30487  func (s GetCalendarStateInput) GoString() string {
 30488  	return s.String()
 30489  }
 30490  
 30491  // Validate inspects the fields of the type to determine if they are valid.
 30492  func (s *GetCalendarStateInput) Validate() error {
 30493  	invalidParams := request.ErrInvalidParams{Context: "GetCalendarStateInput"}
 30494  	if s.CalendarNames == nil {
 30495  		invalidParams.Add(request.NewErrParamRequired("CalendarNames"))
 30496  	}
 30497  
 30498  	if invalidParams.Len() > 0 {
 30499  		return invalidParams
 30500  	}
 30501  	return nil
 30502  }
 30503  
 30504  // SetAtTime sets the AtTime field's value.
 30505  func (s *GetCalendarStateInput) SetAtTime(v string) *GetCalendarStateInput {
 30506  	s.AtTime = &v
 30507  	return s
 30508  }
 30509  
 30510  // SetCalendarNames sets the CalendarNames field's value.
 30511  func (s *GetCalendarStateInput) SetCalendarNames(v []*string) *GetCalendarStateInput {
 30512  	s.CalendarNames = v
 30513  	return s
 30514  }
 30515  
 30516  type GetCalendarStateOutput struct {
 30517  	_ struct{} `type:"structure"`
 30518  
 30519  	// The time, as an ISO 8601 (https://en.wikipedia.org/wiki/ISO_8601) string,
 30520  	// that you specified in your command. If you don't specify a time, GetCalendarState
 30521  	// uses the current time.
 30522  	AtTime *string `type:"string"`
 30523  
 30524  	// The time, as an ISO 8601 (https://en.wikipedia.org/wiki/ISO_8601) string,
 30525  	// that the calendar state will change. If the current calendar state is OPEN,
 30526  	// NextTransitionTime indicates when the calendar state changes to CLOSED, and
 30527  	// vice-versa.
 30528  	NextTransitionTime *string `type:"string"`
 30529  
 30530  	// The state of the calendar. An OPEN calendar indicates that actions are allowed
 30531  	// to proceed, and a CLOSED calendar indicates that actions aren't allowed to
 30532  	// proceed.
 30533  	State *string `type:"string" enum:"CalendarState"`
 30534  }
 30535  
 30536  // String returns the string representation.
 30537  //
 30538  // API parameter values that are decorated as "sensitive" in the API will not
 30539  // be included in the string output. The member name will be present, but the
 30540  // value will be replaced with "sensitive".
 30541  func (s GetCalendarStateOutput) String() string {
 30542  	return awsutil.Prettify(s)
 30543  }
 30544  
 30545  // GoString returns the string representation.
 30546  //
 30547  // API parameter values that are decorated as "sensitive" in the API will not
 30548  // be included in the string output. The member name will be present, but the
 30549  // value will be replaced with "sensitive".
 30550  func (s GetCalendarStateOutput) GoString() string {
 30551  	return s.String()
 30552  }
 30553  
 30554  // SetAtTime sets the AtTime field's value.
 30555  func (s *GetCalendarStateOutput) SetAtTime(v string) *GetCalendarStateOutput {
 30556  	s.AtTime = &v
 30557  	return s
 30558  }
 30559  
 30560  // SetNextTransitionTime sets the NextTransitionTime field's value.
 30561  func (s *GetCalendarStateOutput) SetNextTransitionTime(v string) *GetCalendarStateOutput {
 30562  	s.NextTransitionTime = &v
 30563  	return s
 30564  }
 30565  
 30566  // SetState sets the State field's value.
 30567  func (s *GetCalendarStateOutput) SetState(v string) *GetCalendarStateOutput {
 30568  	s.State = &v
 30569  	return s
 30570  }
 30571  
 30572  type GetCommandInvocationInput struct {
 30573  	_ struct{} `type:"structure"`
 30574  
 30575  	// (Required) The parent command ID of the invocation plugin.
 30576  	//
 30577  	// CommandId is a required field
 30578  	CommandId *string `min:"36" type:"string" required:"true"`
 30579  
 30580  	// (Required) The ID of the managed instance targeted by the command. A managed
 30581  	// instance can be an Amazon Elastic Compute Cloud (Amazon EC2) instance or
 30582  	// an instance in your hybrid environment that is configured for Amazon Web
 30583  	// Services Systems Manager.
 30584  	//
 30585  	// InstanceId is a required field
 30586  	InstanceId *string `type:"string" required:"true"`
 30587  
 30588  	// The name of the plugin for which you want detailed results. If the document
 30589  	// contains only one plugin, you can omit the name and details for that plugin.
 30590  	// If the document contains more than one plugin, you must specify the name
 30591  	// of the plugin for which you want to view details.
 30592  	//
 30593  	// Plugin names are also referred to as step names in Systems Manager documents
 30594  	// (SSM documents). For example, aws:RunShellScript is a plugin.
 30595  	//
 30596  	// To find the PluginName, check the document content and find the name of the
 30597  	// plugin. Alternatively, use ListCommandInvocations with the CommandId and
 30598  	// Details parameters. The PluginName is the Name attribute of the CommandPlugin
 30599  	// object in the CommandPlugins list.
 30600  	PluginName *string `min:"4" type:"string"`
 30601  }
 30602  
 30603  // String returns the string representation.
 30604  //
 30605  // API parameter values that are decorated as "sensitive" in the API will not
 30606  // be included in the string output. The member name will be present, but the
 30607  // value will be replaced with "sensitive".
 30608  func (s GetCommandInvocationInput) String() string {
 30609  	return awsutil.Prettify(s)
 30610  }
 30611  
 30612  // GoString returns the string representation.
 30613  //
 30614  // API parameter values that are decorated as "sensitive" in the API will not
 30615  // be included in the string output. The member name will be present, but the
 30616  // value will be replaced with "sensitive".
 30617  func (s GetCommandInvocationInput) GoString() string {
 30618  	return s.String()
 30619  }
 30620  
 30621  // Validate inspects the fields of the type to determine if they are valid.
 30622  func (s *GetCommandInvocationInput) Validate() error {
 30623  	invalidParams := request.ErrInvalidParams{Context: "GetCommandInvocationInput"}
 30624  	if s.CommandId == nil {
 30625  		invalidParams.Add(request.NewErrParamRequired("CommandId"))
 30626  	}
 30627  	if s.CommandId != nil && len(*s.CommandId) < 36 {
 30628  		invalidParams.Add(request.NewErrParamMinLen("CommandId", 36))
 30629  	}
 30630  	if s.InstanceId == nil {
 30631  		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
 30632  	}
 30633  	if s.PluginName != nil && len(*s.PluginName) < 4 {
 30634  		invalidParams.Add(request.NewErrParamMinLen("PluginName", 4))
 30635  	}
 30636  
 30637  	if invalidParams.Len() > 0 {
 30638  		return invalidParams
 30639  	}
 30640  	return nil
 30641  }
 30642  
 30643  // SetCommandId sets the CommandId field's value.
 30644  func (s *GetCommandInvocationInput) SetCommandId(v string) *GetCommandInvocationInput {
 30645  	s.CommandId = &v
 30646  	return s
 30647  }
 30648  
 30649  // SetInstanceId sets the InstanceId field's value.
 30650  func (s *GetCommandInvocationInput) SetInstanceId(v string) *GetCommandInvocationInput {
 30651  	s.InstanceId = &v
 30652  	return s
 30653  }
 30654  
 30655  // SetPluginName sets the PluginName field's value.
 30656  func (s *GetCommandInvocationInput) SetPluginName(v string) *GetCommandInvocationInput {
 30657  	s.PluginName = &v
 30658  	return s
 30659  }
 30660  
 30661  type GetCommandInvocationOutput struct {
 30662  	_ struct{} `type:"structure"`
 30663  
 30664  	// Amazon CloudWatch Logs information where Systems Manager sent the command
 30665  	// output.
 30666  	CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"`
 30667  
 30668  	// The parent command ID of the invocation plugin.
 30669  	CommandId *string `min:"36" type:"string"`
 30670  
 30671  	// The comment text for the command.
 30672  	Comment *string `type:"string"`
 30673  
 30674  	// The name of the document that was run. For example, AWS-RunShellScript.
 30675  	DocumentName *string `type:"string"`
 30676  
 30677  	// The Systems Manager document (SSM document) version used in the request.
 30678  	DocumentVersion *string `type:"string"`
 30679  
 30680  	// Duration since ExecutionStartDateTime.
 30681  	ExecutionElapsedTime *string `type:"string"`
 30682  
 30683  	// The date and time the plugin finished running. Date and time are written
 30684  	// in ISO 8601 format. For example, June 7, 2017 is represented as 2017-06-7.
 30685  	// The following sample Amazon Web Services CLI command uses the InvokedAfter
 30686  	// filter.
 30687  	//
 30688  	// aws ssm list-commands --filters key=InvokedAfter,value=2017-06-07T00:00:00Z
 30689  	//
 30690  	// If the plugin hasn't started to run, the string is empty.
 30691  	ExecutionEndDateTime *string `type:"string"`
 30692  
 30693  	// The date and time the plugin started running. Date and time are written in
 30694  	// ISO 8601 format. For example, June 7, 2017 is represented as 2017-06-7. The
 30695  	// following sample Amazon Web Services CLI command uses the InvokedBefore filter.
 30696  	//
 30697  	// aws ssm list-commands --filters key=InvokedBefore,value=2017-06-07T00:00:00Z
 30698  	//
 30699  	// If the plugin hasn't started to run, the string is empty.
 30700  	ExecutionStartDateTime *string `type:"string"`
 30701  
 30702  	// The ID of the managed instance targeted by the command. A managed instance
 30703  	// can be an EC2 instance or an instance in your hybrid environment that is
 30704  	// configured for Systems Manager.
 30705  	InstanceId *string `type:"string"`
 30706  
 30707  	// The name of the plugin, or step name, for which details are reported. For
 30708  	// example, aws:RunShellScript is a plugin.
 30709  	PluginName *string `min:"4" type:"string"`
 30710  
 30711  	// The error level response code for the plugin script. If the response code
 30712  	// is -1, then the command hasn't started running on the instance, or it wasn't
 30713  	// received by the instance.
 30714  	ResponseCode *int64 `type:"integer"`
 30715  
 30716  	// The first 8,000 characters written by the plugin to stderr. If the command
 30717  	// hasn't finished running, then this string is empty.
 30718  	StandardErrorContent *string `type:"string"`
 30719  
 30720  	// The URL for the complete text written by the plugin to stderr. If the command
 30721  	// hasn't finished running, then this string is empty.
 30722  	StandardErrorUrl *string `type:"string"`
 30723  
 30724  	// The first 24,000 characters written by the plugin to stdout. If the command
 30725  	// hasn't finished running, if ExecutionStatus is neither Succeeded nor Failed,
 30726  	// then this string is empty.
 30727  	StandardOutputContent *string `type:"string"`
 30728  
 30729  	// The URL for the complete text written by the plugin to stdout in Amazon Simple
 30730  	// Storage Service (Amazon S3). If an S3 bucket wasn't specified, then this
 30731  	// string is empty.
 30732  	StandardOutputUrl *string `type:"string"`
 30733  
 30734  	// The status of this invocation plugin. This status can be different than StatusDetails.
 30735  	Status *string `type:"string" enum:"CommandInvocationStatus"`
 30736  
 30737  	// A detailed status of the command execution for an invocation. StatusDetails
 30738  	// includes more information than Status because it includes states resulting
 30739  	// from error and concurrency control parameters. StatusDetails can show different
 30740  	// results than Status. For more information about these statuses, see Understanding
 30741  	// command statuses (https://docs.aws.amazon.com/systems-manager/latest/userguide/monitor-commands.html)
 30742  	// in the Amazon Web Services Systems Manager User Guide. StatusDetails can
 30743  	// be one of the following values:
 30744  	//
 30745  	//    * Pending: The command hasn't been sent to the instance.
 30746  	//
 30747  	//    * In Progress: The command has been sent to the instance but hasn't reached
 30748  	//    a terminal state.
 30749  	//
 30750  	//    * Delayed: The system attempted to send the command to the target, but
 30751  	//    the target wasn't available. The instance might not be available because
 30752  	//    of network issues, because the instance was stopped, or for similar reasons.
 30753  	//    The system will try to send the command again.
 30754  	//
 30755  	//    * Success: The command or plugin ran successfully. This is a terminal
 30756  	//    state.
 30757  	//
 30758  	//    * Delivery Timed Out: The command wasn't delivered to the instance before
 30759  	//    the delivery timeout expired. Delivery timeouts don't count against the
 30760  	//    parent command's MaxErrors limit, but they do contribute to whether the
 30761  	//    parent command status is Success or Incomplete. This is a terminal state.
 30762  	//
 30763  	//    * Execution Timed Out: The command started to run on the instance, but
 30764  	//    the execution wasn't complete before the timeout expired. Execution timeouts
 30765  	//    count against the MaxErrors limit of the parent command. This is a terminal
 30766  	//    state.
 30767  	//
 30768  	//    * Failed: The command wasn't run successfully on the instance. For a plugin,
 30769  	//    this indicates that the result code wasn't zero. For a command invocation,
 30770  	//    this indicates that the result code for one or more plugins wasn't zero.
 30771  	//    Invocation failures count against the MaxErrors limit of the parent command.
 30772  	//    This is a terminal state.
 30773  	//
 30774  	//    * Canceled: The command was terminated before it was completed. This is
 30775  	//    a terminal state.
 30776  	//
 30777  	//    * Undeliverable: The command can't be delivered to the instance. The instance
 30778  	//    might not exist or might not be responding. Undeliverable invocations
 30779  	//    don't count against the parent command's MaxErrors limit and don't contribute
 30780  	//    to whether the parent command status is Success or Incomplete. This is
 30781  	//    a terminal state.
 30782  	//
 30783  	//    * Terminated: The parent command exceeded its MaxErrors limit and subsequent
 30784  	//    command invocations were canceled by the system. This is a terminal state.
 30785  	StatusDetails *string `type:"string"`
 30786  }
 30787  
 30788  // String returns the string representation.
 30789  //
 30790  // API parameter values that are decorated as "sensitive" in the API will not
 30791  // be included in the string output. The member name will be present, but the
 30792  // value will be replaced with "sensitive".
 30793  func (s GetCommandInvocationOutput) String() string {
 30794  	return awsutil.Prettify(s)
 30795  }
 30796  
 30797  // GoString returns the string representation.
 30798  //
 30799  // API parameter values that are decorated as "sensitive" in the API will not
 30800  // be included in the string output. The member name will be present, but the
 30801  // value will be replaced with "sensitive".
 30802  func (s GetCommandInvocationOutput) GoString() string {
 30803  	return s.String()
 30804  }
 30805  
 30806  // SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value.
 30807  func (s *GetCommandInvocationOutput) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *GetCommandInvocationOutput {
 30808  	s.CloudWatchOutputConfig = v
 30809  	return s
 30810  }
 30811  
 30812  // SetCommandId sets the CommandId field's value.
 30813  func (s *GetCommandInvocationOutput) SetCommandId(v string) *GetCommandInvocationOutput {
 30814  	s.CommandId = &v
 30815  	return s
 30816  }
 30817  
 30818  // SetComment sets the Comment field's value.
 30819  func (s *GetCommandInvocationOutput) SetComment(v string) *GetCommandInvocationOutput {
 30820  	s.Comment = &v
 30821  	return s
 30822  }
 30823  
 30824  // SetDocumentName sets the DocumentName field's value.
 30825  func (s *GetCommandInvocationOutput) SetDocumentName(v string) *GetCommandInvocationOutput {
 30826  	s.DocumentName = &v
 30827  	return s
 30828  }
 30829  
 30830  // SetDocumentVersion sets the DocumentVersion field's value.
 30831  func (s *GetCommandInvocationOutput) SetDocumentVersion(v string) *GetCommandInvocationOutput {
 30832  	s.DocumentVersion = &v
 30833  	return s
 30834  }
 30835  
 30836  // SetExecutionElapsedTime sets the ExecutionElapsedTime field's value.
 30837  func (s *GetCommandInvocationOutput) SetExecutionElapsedTime(v string) *GetCommandInvocationOutput {
 30838  	s.ExecutionElapsedTime = &v
 30839  	return s
 30840  }
 30841  
 30842  // SetExecutionEndDateTime sets the ExecutionEndDateTime field's value.
 30843  func (s *GetCommandInvocationOutput) SetExecutionEndDateTime(v string) *GetCommandInvocationOutput {
 30844  	s.ExecutionEndDateTime = &v
 30845  	return s
 30846  }
 30847  
 30848  // SetExecutionStartDateTime sets the ExecutionStartDateTime field's value.
 30849  func (s *GetCommandInvocationOutput) SetExecutionStartDateTime(v string) *GetCommandInvocationOutput {
 30850  	s.ExecutionStartDateTime = &v
 30851  	return s
 30852  }
 30853  
 30854  // SetInstanceId sets the InstanceId field's value.
 30855  func (s *GetCommandInvocationOutput) SetInstanceId(v string) *GetCommandInvocationOutput {
 30856  	s.InstanceId = &v
 30857  	return s
 30858  }
 30859  
 30860  // SetPluginName sets the PluginName field's value.
 30861  func (s *GetCommandInvocationOutput) SetPluginName(v string) *GetCommandInvocationOutput {
 30862  	s.PluginName = &v
 30863  	return s
 30864  }
 30865  
 30866  // SetResponseCode sets the ResponseCode field's value.
 30867  func (s *GetCommandInvocationOutput) SetResponseCode(v int64) *GetCommandInvocationOutput {
 30868  	s.ResponseCode = &v
 30869  	return s
 30870  }
 30871  
 30872  // SetStandardErrorContent sets the StandardErrorContent field's value.
 30873  func (s *GetCommandInvocationOutput) SetStandardErrorContent(v string) *GetCommandInvocationOutput {
 30874  	s.StandardErrorContent = &v
 30875  	return s
 30876  }
 30877  
 30878  // SetStandardErrorUrl sets the StandardErrorUrl field's value.
 30879  func (s *GetCommandInvocationOutput) SetStandardErrorUrl(v string) *GetCommandInvocationOutput {
 30880  	s.StandardErrorUrl = &v
 30881  	return s
 30882  }
 30883  
 30884  // SetStandardOutputContent sets the StandardOutputContent field's value.
 30885  func (s *GetCommandInvocationOutput) SetStandardOutputContent(v string) *GetCommandInvocationOutput {
 30886  	s.StandardOutputContent = &v
 30887  	return s
 30888  }
 30889  
 30890  // SetStandardOutputUrl sets the StandardOutputUrl field's value.
 30891  func (s *GetCommandInvocationOutput) SetStandardOutputUrl(v string) *GetCommandInvocationOutput {
 30892  	s.StandardOutputUrl = &v
 30893  	return s
 30894  }
 30895  
 30896  // SetStatus sets the Status field's value.
 30897  func (s *GetCommandInvocationOutput) SetStatus(v string) *GetCommandInvocationOutput {
 30898  	s.Status = &v
 30899  	return s
 30900  }
 30901  
 30902  // SetStatusDetails sets the StatusDetails field's value.
 30903  func (s *GetCommandInvocationOutput) SetStatusDetails(v string) *GetCommandInvocationOutput {
 30904  	s.StatusDetails = &v
 30905  	return s
 30906  }
 30907  
 30908  type GetConnectionStatusInput struct {
 30909  	_ struct{} `type:"structure"`
 30910  
 30911  	// The instance ID.
 30912  	//
 30913  	// Target is a required field
 30914  	Target *string `min:"1" type:"string" required:"true"`
 30915  }
 30916  
 30917  // String returns the string representation.
 30918  //
 30919  // API parameter values that are decorated as "sensitive" in the API will not
 30920  // be included in the string output. The member name will be present, but the
 30921  // value will be replaced with "sensitive".
 30922  func (s GetConnectionStatusInput) String() string {
 30923  	return awsutil.Prettify(s)
 30924  }
 30925  
 30926  // GoString returns the string representation.
 30927  //
 30928  // API parameter values that are decorated as "sensitive" in the API will not
 30929  // be included in the string output. The member name will be present, but the
 30930  // value will be replaced with "sensitive".
 30931  func (s GetConnectionStatusInput) GoString() string {
 30932  	return s.String()
 30933  }
 30934  
 30935  // Validate inspects the fields of the type to determine if they are valid.
 30936  func (s *GetConnectionStatusInput) Validate() error {
 30937  	invalidParams := request.ErrInvalidParams{Context: "GetConnectionStatusInput"}
 30938  	if s.Target == nil {
 30939  		invalidParams.Add(request.NewErrParamRequired("Target"))
 30940  	}
 30941  	if s.Target != nil && len(*s.Target) < 1 {
 30942  		invalidParams.Add(request.NewErrParamMinLen("Target", 1))
 30943  	}
 30944  
 30945  	if invalidParams.Len() > 0 {
 30946  		return invalidParams
 30947  	}
 30948  	return nil
 30949  }
 30950  
 30951  // SetTarget sets the Target field's value.
 30952  func (s *GetConnectionStatusInput) SetTarget(v string) *GetConnectionStatusInput {
 30953  	s.Target = &v
 30954  	return s
 30955  }
 30956  
 30957  type GetConnectionStatusOutput struct {
 30958  	_ struct{} `type:"structure"`
 30959  
 30960  	// The status of the connection to the instance. For example, 'Connected' or
 30961  	// 'Not Connected'.
 30962  	Status *string `type:"string" enum:"ConnectionStatus"`
 30963  
 30964  	// The ID of the instance to check connection status.
 30965  	Target *string `min:"1" type:"string"`
 30966  }
 30967  
 30968  // String returns the string representation.
 30969  //
 30970  // API parameter values that are decorated as "sensitive" in the API will not
 30971  // be included in the string output. The member name will be present, but the
 30972  // value will be replaced with "sensitive".
 30973  func (s GetConnectionStatusOutput) String() string {
 30974  	return awsutil.Prettify(s)
 30975  }
 30976  
 30977  // GoString returns the string representation.
 30978  //
 30979  // API parameter values that are decorated as "sensitive" in the API will not
 30980  // be included in the string output. The member name will be present, but the
 30981  // value will be replaced with "sensitive".
 30982  func (s GetConnectionStatusOutput) GoString() string {
 30983  	return s.String()
 30984  }
 30985  
 30986  // SetStatus sets the Status field's value.
 30987  func (s *GetConnectionStatusOutput) SetStatus(v string) *GetConnectionStatusOutput {
 30988  	s.Status = &v
 30989  	return s
 30990  }
 30991  
 30992  // SetTarget sets the Target field's value.
 30993  func (s *GetConnectionStatusOutput) SetTarget(v string) *GetConnectionStatusOutput {
 30994  	s.Target = &v
 30995  	return s
 30996  }
 30997  
 30998  type GetDefaultPatchBaselineInput struct {
 30999  	_ struct{} `type:"structure"`
 31000  
 31001  	// Returns the default patch baseline for the specified operating system.
 31002  	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
 31003  }
 31004  
 31005  // String returns the string representation.
 31006  //
 31007  // API parameter values that are decorated as "sensitive" in the API will not
 31008  // be included in the string output. The member name will be present, but the
 31009  // value will be replaced with "sensitive".
 31010  func (s GetDefaultPatchBaselineInput) String() string {
 31011  	return awsutil.Prettify(s)
 31012  }
 31013  
 31014  // GoString returns the string representation.
 31015  //
 31016  // API parameter values that are decorated as "sensitive" in the API will not
 31017  // be included in the string output. The member name will be present, but the
 31018  // value will be replaced with "sensitive".
 31019  func (s GetDefaultPatchBaselineInput) GoString() string {
 31020  	return s.String()
 31021  }
 31022  
 31023  // SetOperatingSystem sets the OperatingSystem field's value.
 31024  func (s *GetDefaultPatchBaselineInput) SetOperatingSystem(v string) *GetDefaultPatchBaselineInput {
 31025  	s.OperatingSystem = &v
 31026  	return s
 31027  }
 31028  
 31029  type GetDefaultPatchBaselineOutput struct {
 31030  	_ struct{} `type:"structure"`
 31031  
 31032  	// The ID of the default patch baseline.
 31033  	BaselineId *string `min:"20" type:"string"`
 31034  
 31035  	// The operating system for the returned patch baseline.
 31036  	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
 31037  }
 31038  
 31039  // String returns the string representation.
 31040  //
 31041  // API parameter values that are decorated as "sensitive" in the API will not
 31042  // be included in the string output. The member name will be present, but the
 31043  // value will be replaced with "sensitive".
 31044  func (s GetDefaultPatchBaselineOutput) String() string {
 31045  	return awsutil.Prettify(s)
 31046  }
 31047  
 31048  // GoString returns the string representation.
 31049  //
 31050  // API parameter values that are decorated as "sensitive" in the API will not
 31051  // be included in the string output. The member name will be present, but the
 31052  // value will be replaced with "sensitive".
 31053  func (s GetDefaultPatchBaselineOutput) GoString() string {
 31054  	return s.String()
 31055  }
 31056  
 31057  // SetBaselineId sets the BaselineId field's value.
 31058  func (s *GetDefaultPatchBaselineOutput) SetBaselineId(v string) *GetDefaultPatchBaselineOutput {
 31059  	s.BaselineId = &v
 31060  	return s
 31061  }
 31062  
 31063  // SetOperatingSystem sets the OperatingSystem field's value.
 31064  func (s *GetDefaultPatchBaselineOutput) SetOperatingSystem(v string) *GetDefaultPatchBaselineOutput {
 31065  	s.OperatingSystem = &v
 31066  	return s
 31067  }
 31068  
 31069  type GetDeployablePatchSnapshotForInstanceInput struct {
 31070  	_ struct{} `type:"structure"`
 31071  
 31072  	// Defines the basic information about a patch baseline override.
 31073  	BaselineOverride *BaselineOverride `type:"structure"`
 31074  
 31075  	// The ID of the instance for which the appropriate patch snapshot should be
 31076  	// retrieved.
 31077  	//
 31078  	// InstanceId is a required field
 31079  	InstanceId *string `type:"string" required:"true"`
 31080  
 31081  	// The snapshot ID provided by the user when running AWS-RunPatchBaseline.
 31082  	//
 31083  	// SnapshotId is a required field
 31084  	SnapshotId *string `min:"36" type:"string" required:"true"`
 31085  }
 31086  
 31087  // String returns the string representation.
 31088  //
 31089  // API parameter values that are decorated as "sensitive" in the API will not
 31090  // be included in the string output. The member name will be present, but the
 31091  // value will be replaced with "sensitive".
 31092  func (s GetDeployablePatchSnapshotForInstanceInput) String() string {
 31093  	return awsutil.Prettify(s)
 31094  }
 31095  
 31096  // GoString returns the string representation.
 31097  //
 31098  // API parameter values that are decorated as "sensitive" in the API will not
 31099  // be included in the string output. The member name will be present, but the
 31100  // value will be replaced with "sensitive".
 31101  func (s GetDeployablePatchSnapshotForInstanceInput) GoString() string {
 31102  	return s.String()
 31103  }
 31104  
 31105  // Validate inspects the fields of the type to determine if they are valid.
 31106  func (s *GetDeployablePatchSnapshotForInstanceInput) Validate() error {
 31107  	invalidParams := request.ErrInvalidParams{Context: "GetDeployablePatchSnapshotForInstanceInput"}
 31108  	if s.InstanceId == nil {
 31109  		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
 31110  	}
 31111  	if s.SnapshotId == nil {
 31112  		invalidParams.Add(request.NewErrParamRequired("SnapshotId"))
 31113  	}
 31114  	if s.SnapshotId != nil && len(*s.SnapshotId) < 36 {
 31115  		invalidParams.Add(request.NewErrParamMinLen("SnapshotId", 36))
 31116  	}
 31117  	if s.BaselineOverride != nil {
 31118  		if err := s.BaselineOverride.Validate(); err != nil {
 31119  			invalidParams.AddNested("BaselineOverride", err.(request.ErrInvalidParams))
 31120  		}
 31121  	}
 31122  
 31123  	if invalidParams.Len() > 0 {
 31124  		return invalidParams
 31125  	}
 31126  	return nil
 31127  }
 31128  
 31129  // SetBaselineOverride sets the BaselineOverride field's value.
 31130  func (s *GetDeployablePatchSnapshotForInstanceInput) SetBaselineOverride(v *BaselineOverride) *GetDeployablePatchSnapshotForInstanceInput {
 31131  	s.BaselineOverride = v
 31132  	return s
 31133  }
 31134  
 31135  // SetInstanceId sets the InstanceId field's value.
 31136  func (s *GetDeployablePatchSnapshotForInstanceInput) SetInstanceId(v string) *GetDeployablePatchSnapshotForInstanceInput {
 31137  	s.InstanceId = &v
 31138  	return s
 31139  }
 31140  
 31141  // SetSnapshotId sets the SnapshotId field's value.
 31142  func (s *GetDeployablePatchSnapshotForInstanceInput) SetSnapshotId(v string) *GetDeployablePatchSnapshotForInstanceInput {
 31143  	s.SnapshotId = &v
 31144  	return s
 31145  }
 31146  
 31147  type GetDeployablePatchSnapshotForInstanceOutput struct {
 31148  	_ struct{} `type:"structure"`
 31149  
 31150  	// The instance ID.
 31151  	InstanceId *string `type:"string"`
 31152  
 31153  	// Returns the specific operating system (for example Windows Server 2012 or
 31154  	// Amazon Linux 2015.09) on the instance for the specified patch snapshot.
 31155  	Product *string `type:"string"`
 31156  
 31157  	// A pre-signed Amazon Simple Storage Service (Amazon S3) URL that can be used
 31158  	// to download the patch snapshot.
 31159  	SnapshotDownloadUrl *string `type:"string"`
 31160  
 31161  	// The user-defined snapshot ID.
 31162  	SnapshotId *string `min:"36" type:"string"`
 31163  }
 31164  
 31165  // String returns the string representation.
 31166  //
 31167  // API parameter values that are decorated as "sensitive" in the API will not
 31168  // be included in the string output. The member name will be present, but the
 31169  // value will be replaced with "sensitive".
 31170  func (s GetDeployablePatchSnapshotForInstanceOutput) String() string {
 31171  	return awsutil.Prettify(s)
 31172  }
 31173  
 31174  // GoString returns the string representation.
 31175  //
 31176  // API parameter values that are decorated as "sensitive" in the API will not
 31177  // be included in the string output. The member name will be present, but the
 31178  // value will be replaced with "sensitive".
 31179  func (s GetDeployablePatchSnapshotForInstanceOutput) GoString() string {
 31180  	return s.String()
 31181  }
 31182  
 31183  // SetInstanceId sets the InstanceId field's value.
 31184  func (s *GetDeployablePatchSnapshotForInstanceOutput) SetInstanceId(v string) *GetDeployablePatchSnapshotForInstanceOutput {
 31185  	s.InstanceId = &v
 31186  	return s
 31187  }
 31188  
 31189  // SetProduct sets the Product field's value.
 31190  func (s *GetDeployablePatchSnapshotForInstanceOutput) SetProduct(v string) *GetDeployablePatchSnapshotForInstanceOutput {
 31191  	s.Product = &v
 31192  	return s
 31193  }
 31194  
 31195  // SetSnapshotDownloadUrl sets the SnapshotDownloadUrl field's value.
 31196  func (s *GetDeployablePatchSnapshotForInstanceOutput) SetSnapshotDownloadUrl(v string) *GetDeployablePatchSnapshotForInstanceOutput {
 31197  	s.SnapshotDownloadUrl = &v
 31198  	return s
 31199  }
 31200  
 31201  // SetSnapshotId sets the SnapshotId field's value.
 31202  func (s *GetDeployablePatchSnapshotForInstanceOutput) SetSnapshotId(v string) *GetDeployablePatchSnapshotForInstanceOutput {
 31203  	s.SnapshotId = &v
 31204  	return s
 31205  }
 31206  
 31207  type GetDocumentInput struct {
 31208  	_ struct{} `type:"structure"`
 31209  
 31210  	// Returns the document in the specified format. The document format can be
 31211  	// either JSON or YAML. JSON is the default format.
 31212  	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
 31213  
 31214  	// The document version for which you want information.
 31215  	DocumentVersion *string `type:"string"`
 31216  
 31217  	// The name of the SSM document.
 31218  	//
 31219  	// Name is a required field
 31220  	Name *string `type:"string" required:"true"`
 31221  
 31222  	// An optional field specifying the version of the artifact associated with
 31223  	// the document. For example, "Release 12, Update 6". This value is unique across
 31224  	// all versions of a document and can't be changed.
 31225  	VersionName *string `type:"string"`
 31226  }
 31227  
 31228  // String returns the string representation.
 31229  //
 31230  // API parameter values that are decorated as "sensitive" in the API will not
 31231  // be included in the string output. The member name will be present, but the
 31232  // value will be replaced with "sensitive".
 31233  func (s GetDocumentInput) String() string {
 31234  	return awsutil.Prettify(s)
 31235  }
 31236  
 31237  // GoString returns the string representation.
 31238  //
 31239  // API parameter values that are decorated as "sensitive" in the API will not
 31240  // be included in the string output. The member name will be present, but the
 31241  // value will be replaced with "sensitive".
 31242  func (s GetDocumentInput) GoString() string {
 31243  	return s.String()
 31244  }
 31245  
 31246  // Validate inspects the fields of the type to determine if they are valid.
 31247  func (s *GetDocumentInput) Validate() error {
 31248  	invalidParams := request.ErrInvalidParams{Context: "GetDocumentInput"}
 31249  	if s.Name == nil {
 31250  		invalidParams.Add(request.NewErrParamRequired("Name"))
 31251  	}
 31252  
 31253  	if invalidParams.Len() > 0 {
 31254  		return invalidParams
 31255  	}
 31256  	return nil
 31257  }
 31258  
 31259  // SetDocumentFormat sets the DocumentFormat field's value.
 31260  func (s *GetDocumentInput) SetDocumentFormat(v string) *GetDocumentInput {
 31261  	s.DocumentFormat = &v
 31262  	return s
 31263  }
 31264  
 31265  // SetDocumentVersion sets the DocumentVersion field's value.
 31266  func (s *GetDocumentInput) SetDocumentVersion(v string) *GetDocumentInput {
 31267  	s.DocumentVersion = &v
 31268  	return s
 31269  }
 31270  
 31271  // SetName sets the Name field's value.
 31272  func (s *GetDocumentInput) SetName(v string) *GetDocumentInput {
 31273  	s.Name = &v
 31274  	return s
 31275  }
 31276  
 31277  // SetVersionName sets the VersionName field's value.
 31278  func (s *GetDocumentInput) SetVersionName(v string) *GetDocumentInput {
 31279  	s.VersionName = &v
 31280  	return s
 31281  }
 31282  
 31283  type GetDocumentOutput struct {
 31284  	_ struct{} `type:"structure"`
 31285  
 31286  	// A description of the document attachments, including names, locations, sizes,
 31287  	// and so on.
 31288  	AttachmentsContent []*AttachmentContent `type:"list"`
 31289  
 31290  	// The contents of the SSM document.
 31291  	Content *string `min:"1" type:"string"`
 31292  
 31293  	// The date the SSM document was created.
 31294  	CreatedDate *time.Time `type:"timestamp"`
 31295  
 31296  	// The friendly name of the SSM document. This value can differ for each version
 31297  	// of the document. If you want to update this value, see UpdateDocument.
 31298  	DisplayName *string `type:"string"`
 31299  
 31300  	// The document format, either JSON or YAML.
 31301  	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
 31302  
 31303  	// The document type.
 31304  	DocumentType *string `type:"string" enum:"DocumentType"`
 31305  
 31306  	// The document version.
 31307  	DocumentVersion *string `type:"string"`
 31308  
 31309  	// The name of the SSM document.
 31310  	Name *string `type:"string"`
 31311  
 31312  	// A list of SSM documents required by a document. For example, an ApplicationConfiguration
 31313  	// document requires an ApplicationConfigurationSchema document.
 31314  	Requires []*DocumentRequires `min:"1" type:"list"`
 31315  
 31316  	// The current review status of a new custom Systems Manager document (SSM document)
 31317  	// created by a member of your organization, or of the latest version of an
 31318  	// existing SSM document.
 31319  	//
 31320  	// Only one version of an SSM document can be in the APPROVED state at a time.
 31321  	// When a new version is approved, the status of the previous version changes
 31322  	// to REJECTED.
 31323  	//
 31324  	// Only one version of an SSM document can be in review, or PENDING, at a time.
 31325  	ReviewStatus *string `type:"string" enum:"ReviewStatus"`
 31326  
 31327  	// The status of the SSM document, such as Creating, Active, Updating, Failed,
 31328  	// and Deleting.
 31329  	Status *string `type:"string" enum:"DocumentStatus"`
 31330  
 31331  	// A message returned by Amazon Web Services Systems Manager that explains the
 31332  	// Status value. For example, a Failed status might be explained by the StatusInformation
 31333  	// message, "The specified S3 bucket doesn't exist. Verify that the URL of the
 31334  	// S3 bucket is correct."
 31335  	StatusInformation *string `type:"string"`
 31336  
 31337  	// The version of the artifact associated with the document. For example, "Release
 31338  	// 12, Update 6". This value is unique across all versions of a document, and
 31339  	// can't be changed.
 31340  	VersionName *string `type:"string"`
 31341  }
 31342  
 31343  // String returns the string representation.
 31344  //
 31345  // API parameter values that are decorated as "sensitive" in the API will not
 31346  // be included in the string output. The member name will be present, but the
 31347  // value will be replaced with "sensitive".
 31348  func (s GetDocumentOutput) String() string {
 31349  	return awsutil.Prettify(s)
 31350  }
 31351  
 31352  // GoString returns the string representation.
 31353  //
 31354  // API parameter values that are decorated as "sensitive" in the API will not
 31355  // be included in the string output. The member name will be present, but the
 31356  // value will be replaced with "sensitive".
 31357  func (s GetDocumentOutput) GoString() string {
 31358  	return s.String()
 31359  }
 31360  
 31361  // SetAttachmentsContent sets the AttachmentsContent field's value.
 31362  func (s *GetDocumentOutput) SetAttachmentsContent(v []*AttachmentContent) *GetDocumentOutput {
 31363  	s.AttachmentsContent = v
 31364  	return s
 31365  }
 31366  
 31367  // SetContent sets the Content field's value.
 31368  func (s *GetDocumentOutput) SetContent(v string) *GetDocumentOutput {
 31369  	s.Content = &v
 31370  	return s
 31371  }
 31372  
 31373  // SetCreatedDate sets the CreatedDate field's value.
 31374  func (s *GetDocumentOutput) SetCreatedDate(v time.Time) *GetDocumentOutput {
 31375  	s.CreatedDate = &v
 31376  	return s
 31377  }
 31378  
 31379  // SetDisplayName sets the DisplayName field's value.
 31380  func (s *GetDocumentOutput) SetDisplayName(v string) *GetDocumentOutput {
 31381  	s.DisplayName = &v
 31382  	return s
 31383  }
 31384  
 31385  // SetDocumentFormat sets the DocumentFormat field's value.
 31386  func (s *GetDocumentOutput) SetDocumentFormat(v string) *GetDocumentOutput {
 31387  	s.DocumentFormat = &v
 31388  	return s
 31389  }
 31390  
 31391  // SetDocumentType sets the DocumentType field's value.
 31392  func (s *GetDocumentOutput) SetDocumentType(v string) *GetDocumentOutput {
 31393  	s.DocumentType = &v
 31394  	return s
 31395  }
 31396  
 31397  // SetDocumentVersion sets the DocumentVersion field's value.
 31398  func (s *GetDocumentOutput) SetDocumentVersion(v string) *GetDocumentOutput {
 31399  	s.DocumentVersion = &v
 31400  	return s
 31401  }
 31402  
 31403  // SetName sets the Name field's value.
 31404  func (s *GetDocumentOutput) SetName(v string) *GetDocumentOutput {
 31405  	s.Name = &v
 31406  	return s
 31407  }
 31408  
 31409  // SetRequires sets the Requires field's value.
 31410  func (s *GetDocumentOutput) SetRequires(v []*DocumentRequires) *GetDocumentOutput {
 31411  	s.Requires = v
 31412  	return s
 31413  }
 31414  
 31415  // SetReviewStatus sets the ReviewStatus field's value.
 31416  func (s *GetDocumentOutput) SetReviewStatus(v string) *GetDocumentOutput {
 31417  	s.ReviewStatus = &v
 31418  	return s
 31419  }
 31420  
 31421  // SetStatus sets the Status field's value.
 31422  func (s *GetDocumentOutput) SetStatus(v string) *GetDocumentOutput {
 31423  	s.Status = &v
 31424  	return s
 31425  }
 31426  
 31427  // SetStatusInformation sets the StatusInformation field's value.
 31428  func (s *GetDocumentOutput) SetStatusInformation(v string) *GetDocumentOutput {
 31429  	s.StatusInformation = &v
 31430  	return s
 31431  }
 31432  
 31433  // SetVersionName sets the VersionName field's value.
 31434  func (s *GetDocumentOutput) SetVersionName(v string) *GetDocumentOutput {
 31435  	s.VersionName = &v
 31436  	return s
 31437  }
 31438  
 31439  type GetInventoryInput struct {
 31440  	_ struct{} `type:"structure"`
 31441  
 31442  	// Returns counts of inventory types based on one or more expressions. For example,
 31443  	// if you aggregate by using an expression that uses the AWS:InstanceInformation.PlatformType
 31444  	// type, you can see a count of how many Windows and Linux instances exist in
 31445  	// your inventoried fleet.
 31446  	Aggregators []*InventoryAggregator `min:"1" type:"list"`
 31447  
 31448  	// One or more filters. Use a filter to return a more specific list of results.
 31449  	Filters []*InventoryFilter `min:"1" type:"list"`
 31450  
 31451  	// The maximum number of items to return for this call. The call also returns
 31452  	// a token that you can specify in a subsequent call to get the next set of
 31453  	// results.
 31454  	MaxResults *int64 `min:"1" type:"integer"`
 31455  
 31456  	// The token for the next set of items to return. (You received this token from
 31457  	// a previous call.)
 31458  	NextToken *string `type:"string"`
 31459  
 31460  	// The list of inventory item types to return.
 31461  	ResultAttributes []*ResultAttribute `min:"1" type:"list"`
 31462  }
 31463  
 31464  // String returns the string representation.
 31465  //
 31466  // API parameter values that are decorated as "sensitive" in the API will not
 31467  // be included in the string output. The member name will be present, but the
 31468  // value will be replaced with "sensitive".
 31469  func (s GetInventoryInput) String() string {
 31470  	return awsutil.Prettify(s)
 31471  }
 31472  
 31473  // GoString returns the string representation.
 31474  //
 31475  // API parameter values that are decorated as "sensitive" in the API will not
 31476  // be included in the string output. The member name will be present, but the
 31477  // value will be replaced with "sensitive".
 31478  func (s GetInventoryInput) GoString() string {
 31479  	return s.String()
 31480  }
 31481  
 31482  // Validate inspects the fields of the type to determine if they are valid.
 31483  func (s *GetInventoryInput) Validate() error {
 31484  	invalidParams := request.ErrInvalidParams{Context: "GetInventoryInput"}
 31485  	if s.Aggregators != nil && len(s.Aggregators) < 1 {
 31486  		invalidParams.Add(request.NewErrParamMinLen("Aggregators", 1))
 31487  	}
 31488  	if s.Filters != nil && len(s.Filters) < 1 {
 31489  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 31490  	}
 31491  	if s.MaxResults != nil && *s.MaxResults < 1 {
 31492  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 31493  	}
 31494  	if s.ResultAttributes != nil && len(s.ResultAttributes) < 1 {
 31495  		invalidParams.Add(request.NewErrParamMinLen("ResultAttributes", 1))
 31496  	}
 31497  	if s.Aggregators != nil {
 31498  		for i, v := range s.Aggregators {
 31499  			if v == nil {
 31500  				continue
 31501  			}
 31502  			if err := v.Validate(); err != nil {
 31503  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Aggregators", i), err.(request.ErrInvalidParams))
 31504  			}
 31505  		}
 31506  	}
 31507  	if s.Filters != nil {
 31508  		for i, v := range s.Filters {
 31509  			if v == nil {
 31510  				continue
 31511  			}
 31512  			if err := v.Validate(); err != nil {
 31513  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 31514  			}
 31515  		}
 31516  	}
 31517  	if s.ResultAttributes != nil {
 31518  		for i, v := range s.ResultAttributes {
 31519  			if v == nil {
 31520  				continue
 31521  			}
 31522  			if err := v.Validate(); err != nil {
 31523  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResultAttributes", i), err.(request.ErrInvalidParams))
 31524  			}
 31525  		}
 31526  	}
 31527  
 31528  	if invalidParams.Len() > 0 {
 31529  		return invalidParams
 31530  	}
 31531  	return nil
 31532  }
 31533  
 31534  // SetAggregators sets the Aggregators field's value.
 31535  func (s *GetInventoryInput) SetAggregators(v []*InventoryAggregator) *GetInventoryInput {
 31536  	s.Aggregators = v
 31537  	return s
 31538  }
 31539  
 31540  // SetFilters sets the Filters field's value.
 31541  func (s *GetInventoryInput) SetFilters(v []*InventoryFilter) *GetInventoryInput {
 31542  	s.Filters = v
 31543  	return s
 31544  }
 31545  
 31546  // SetMaxResults sets the MaxResults field's value.
 31547  func (s *GetInventoryInput) SetMaxResults(v int64) *GetInventoryInput {
 31548  	s.MaxResults = &v
 31549  	return s
 31550  }
 31551  
 31552  // SetNextToken sets the NextToken field's value.
 31553  func (s *GetInventoryInput) SetNextToken(v string) *GetInventoryInput {
 31554  	s.NextToken = &v
 31555  	return s
 31556  }
 31557  
 31558  // SetResultAttributes sets the ResultAttributes field's value.
 31559  func (s *GetInventoryInput) SetResultAttributes(v []*ResultAttribute) *GetInventoryInput {
 31560  	s.ResultAttributes = v
 31561  	return s
 31562  }
 31563  
 31564  type GetInventoryOutput struct {
 31565  	_ struct{} `type:"structure"`
 31566  
 31567  	// Collection of inventory entities such as a collection of instance inventory.
 31568  	Entities []*InventoryResultEntity `type:"list"`
 31569  
 31570  	// The token to use when requesting the next set of items. If there are no additional
 31571  	// items to return, the string is empty.
 31572  	NextToken *string `type:"string"`
 31573  }
 31574  
 31575  // String returns the string representation.
 31576  //
 31577  // API parameter values that are decorated as "sensitive" in the API will not
 31578  // be included in the string output. The member name will be present, but the
 31579  // value will be replaced with "sensitive".
 31580  func (s GetInventoryOutput) String() string {
 31581  	return awsutil.Prettify(s)
 31582  }
 31583  
 31584  // GoString returns the string representation.
 31585  //
 31586  // API parameter values that are decorated as "sensitive" in the API will not
 31587  // be included in the string output. The member name will be present, but the
 31588  // value will be replaced with "sensitive".
 31589  func (s GetInventoryOutput) GoString() string {
 31590  	return s.String()
 31591  }
 31592  
 31593  // SetEntities sets the Entities field's value.
 31594  func (s *GetInventoryOutput) SetEntities(v []*InventoryResultEntity) *GetInventoryOutput {
 31595  	s.Entities = v
 31596  	return s
 31597  }
 31598  
 31599  // SetNextToken sets the NextToken field's value.
 31600  func (s *GetInventoryOutput) SetNextToken(v string) *GetInventoryOutput {
 31601  	s.NextToken = &v
 31602  	return s
 31603  }
 31604  
 31605  type GetInventorySchemaInput struct {
 31606  	_ struct{} `type:"structure"`
 31607  
 31608  	// Returns inventory schemas that support aggregation. For example, this call
 31609  	// returns the AWS:InstanceInformation type, because it supports aggregation
 31610  	// based on the PlatformName, PlatformType, and PlatformVersion attributes.
 31611  	Aggregator *bool `type:"boolean"`
 31612  
 31613  	// The maximum number of items to return for this call. The call also returns
 31614  	// a token that you can specify in a subsequent call to get the next set of
 31615  	// results.
 31616  	MaxResults *int64 `min:"50" type:"integer"`
 31617  
 31618  	// The token for the next set of items to return. (You received this token from
 31619  	// a previous call.)
 31620  	NextToken *string `type:"string"`
 31621  
 31622  	// Returns the sub-type schema for a specified inventory type.
 31623  	SubType *bool `type:"boolean"`
 31624  
 31625  	// The type of inventory item to return.
 31626  	TypeName *string `type:"string"`
 31627  }
 31628  
 31629  // String returns the string representation.
 31630  //
 31631  // API parameter values that are decorated as "sensitive" in the API will not
 31632  // be included in the string output. The member name will be present, but the
 31633  // value will be replaced with "sensitive".
 31634  func (s GetInventorySchemaInput) String() string {
 31635  	return awsutil.Prettify(s)
 31636  }
 31637  
 31638  // GoString returns the string representation.
 31639  //
 31640  // API parameter values that are decorated as "sensitive" in the API will not
 31641  // be included in the string output. The member name will be present, but the
 31642  // value will be replaced with "sensitive".
 31643  func (s GetInventorySchemaInput) GoString() string {
 31644  	return s.String()
 31645  }
 31646  
 31647  // Validate inspects the fields of the type to determine if they are valid.
 31648  func (s *GetInventorySchemaInput) Validate() error {
 31649  	invalidParams := request.ErrInvalidParams{Context: "GetInventorySchemaInput"}
 31650  	if s.MaxResults != nil && *s.MaxResults < 50 {
 31651  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 50))
 31652  	}
 31653  
 31654  	if invalidParams.Len() > 0 {
 31655  		return invalidParams
 31656  	}
 31657  	return nil
 31658  }
 31659  
 31660  // SetAggregator sets the Aggregator field's value.
 31661  func (s *GetInventorySchemaInput) SetAggregator(v bool) *GetInventorySchemaInput {
 31662  	s.Aggregator = &v
 31663  	return s
 31664  }
 31665  
 31666  // SetMaxResults sets the MaxResults field's value.
 31667  func (s *GetInventorySchemaInput) SetMaxResults(v int64) *GetInventorySchemaInput {
 31668  	s.MaxResults = &v
 31669  	return s
 31670  }
 31671  
 31672  // SetNextToken sets the NextToken field's value.
 31673  func (s *GetInventorySchemaInput) SetNextToken(v string) *GetInventorySchemaInput {
 31674  	s.NextToken = &v
 31675  	return s
 31676  }
 31677  
 31678  // SetSubType sets the SubType field's value.
 31679  func (s *GetInventorySchemaInput) SetSubType(v bool) *GetInventorySchemaInput {
 31680  	s.SubType = &v
 31681  	return s
 31682  }
 31683  
 31684  // SetTypeName sets the TypeName field's value.
 31685  func (s *GetInventorySchemaInput) SetTypeName(v string) *GetInventorySchemaInput {
 31686  	s.TypeName = &v
 31687  	return s
 31688  }
 31689  
 31690  type GetInventorySchemaOutput struct {
 31691  	_ struct{} `type:"structure"`
 31692  
 31693  	// The token to use when requesting the next set of items. If there are no additional
 31694  	// items to return, the string is empty.
 31695  	NextToken *string `type:"string"`
 31696  
 31697  	// Inventory schemas returned by the request.
 31698  	Schemas []*InventoryItemSchema `type:"list"`
 31699  }
 31700  
 31701  // String returns the string representation.
 31702  //
 31703  // API parameter values that are decorated as "sensitive" in the API will not
 31704  // be included in the string output. The member name will be present, but the
 31705  // value will be replaced with "sensitive".
 31706  func (s GetInventorySchemaOutput) String() string {
 31707  	return awsutil.Prettify(s)
 31708  }
 31709  
 31710  // GoString returns the string representation.
 31711  //
 31712  // API parameter values that are decorated as "sensitive" in the API will not
 31713  // be included in the string output. The member name will be present, but the
 31714  // value will be replaced with "sensitive".
 31715  func (s GetInventorySchemaOutput) GoString() string {
 31716  	return s.String()
 31717  }
 31718  
 31719  // SetNextToken sets the NextToken field's value.
 31720  func (s *GetInventorySchemaOutput) SetNextToken(v string) *GetInventorySchemaOutput {
 31721  	s.NextToken = &v
 31722  	return s
 31723  }
 31724  
 31725  // SetSchemas sets the Schemas field's value.
 31726  func (s *GetInventorySchemaOutput) SetSchemas(v []*InventoryItemSchema) *GetInventorySchemaOutput {
 31727  	s.Schemas = v
 31728  	return s
 31729  }
 31730  
 31731  type GetMaintenanceWindowExecutionInput struct {
 31732  	_ struct{} `type:"structure"`
 31733  
 31734  	// The ID of the maintenance window execution that includes the task.
 31735  	//
 31736  	// WindowExecutionId is a required field
 31737  	WindowExecutionId *string `min:"36" type:"string" required:"true"`
 31738  }
 31739  
 31740  // String returns the string representation.
 31741  //
 31742  // API parameter values that are decorated as "sensitive" in the API will not
 31743  // be included in the string output. The member name will be present, but the
 31744  // value will be replaced with "sensitive".
 31745  func (s GetMaintenanceWindowExecutionInput) String() string {
 31746  	return awsutil.Prettify(s)
 31747  }
 31748  
 31749  // GoString returns the string representation.
 31750  //
 31751  // API parameter values that are decorated as "sensitive" in the API will not
 31752  // be included in the string output. The member name will be present, but the
 31753  // value will be replaced with "sensitive".
 31754  func (s GetMaintenanceWindowExecutionInput) GoString() string {
 31755  	return s.String()
 31756  }
 31757  
 31758  // Validate inspects the fields of the type to determine if they are valid.
 31759  func (s *GetMaintenanceWindowExecutionInput) Validate() error {
 31760  	invalidParams := request.ErrInvalidParams{Context: "GetMaintenanceWindowExecutionInput"}
 31761  	if s.WindowExecutionId == nil {
 31762  		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
 31763  	}
 31764  	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
 31765  		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
 31766  	}
 31767  
 31768  	if invalidParams.Len() > 0 {
 31769  		return invalidParams
 31770  	}
 31771  	return nil
 31772  }
 31773  
 31774  // SetWindowExecutionId sets the WindowExecutionId field's value.
 31775  func (s *GetMaintenanceWindowExecutionInput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionInput {
 31776  	s.WindowExecutionId = &v
 31777  	return s
 31778  }
 31779  
 31780  type GetMaintenanceWindowExecutionOutput struct {
 31781  	_ struct{} `type:"structure"`
 31782  
 31783  	// The time the maintenance window finished running.
 31784  	EndTime *time.Time `type:"timestamp"`
 31785  
 31786  	// The time the maintenance window started running.
 31787  	StartTime *time.Time `type:"timestamp"`
 31788  
 31789  	// The status of the maintenance window execution.
 31790  	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
 31791  
 31792  	// The details explaining the status. Not available for all status values.
 31793  	StatusDetails *string `type:"string"`
 31794  
 31795  	// The ID of the task executions from the maintenance window execution.
 31796  	TaskIds []*string `type:"list"`
 31797  
 31798  	// The ID of the maintenance window execution.
 31799  	WindowExecutionId *string `min:"36" type:"string"`
 31800  }
 31801  
 31802  // String returns the string representation.
 31803  //
 31804  // API parameter values that are decorated as "sensitive" in the API will not
 31805  // be included in the string output. The member name will be present, but the
 31806  // value will be replaced with "sensitive".
 31807  func (s GetMaintenanceWindowExecutionOutput) String() string {
 31808  	return awsutil.Prettify(s)
 31809  }
 31810  
 31811  // GoString returns the string representation.
 31812  //
 31813  // API parameter values that are decorated as "sensitive" in the API will not
 31814  // be included in the string output. The member name will be present, but the
 31815  // value will be replaced with "sensitive".
 31816  func (s GetMaintenanceWindowExecutionOutput) GoString() string {
 31817  	return s.String()
 31818  }
 31819  
 31820  // SetEndTime sets the EndTime field's value.
 31821  func (s *GetMaintenanceWindowExecutionOutput) SetEndTime(v time.Time) *GetMaintenanceWindowExecutionOutput {
 31822  	s.EndTime = &v
 31823  	return s
 31824  }
 31825  
 31826  // SetStartTime sets the StartTime field's value.
 31827  func (s *GetMaintenanceWindowExecutionOutput) SetStartTime(v time.Time) *GetMaintenanceWindowExecutionOutput {
 31828  	s.StartTime = &v
 31829  	return s
 31830  }
 31831  
 31832  // SetStatus sets the Status field's value.
 31833  func (s *GetMaintenanceWindowExecutionOutput) SetStatus(v string) *GetMaintenanceWindowExecutionOutput {
 31834  	s.Status = &v
 31835  	return s
 31836  }
 31837  
 31838  // SetStatusDetails sets the StatusDetails field's value.
 31839  func (s *GetMaintenanceWindowExecutionOutput) SetStatusDetails(v string) *GetMaintenanceWindowExecutionOutput {
 31840  	s.StatusDetails = &v
 31841  	return s
 31842  }
 31843  
 31844  // SetTaskIds sets the TaskIds field's value.
 31845  func (s *GetMaintenanceWindowExecutionOutput) SetTaskIds(v []*string) *GetMaintenanceWindowExecutionOutput {
 31846  	s.TaskIds = v
 31847  	return s
 31848  }
 31849  
 31850  // SetWindowExecutionId sets the WindowExecutionId field's value.
 31851  func (s *GetMaintenanceWindowExecutionOutput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionOutput {
 31852  	s.WindowExecutionId = &v
 31853  	return s
 31854  }
 31855  
 31856  type GetMaintenanceWindowExecutionTaskInput struct {
 31857  	_ struct{} `type:"structure"`
 31858  
 31859  	// The ID of the specific task execution in the maintenance window task that
 31860  	// should be retrieved.
 31861  	//
 31862  	// TaskId is a required field
 31863  	TaskId *string `min:"36" type:"string" required:"true"`
 31864  
 31865  	// The ID of the maintenance window execution that includes the task.
 31866  	//
 31867  	// WindowExecutionId is a required field
 31868  	WindowExecutionId *string `min:"36" type:"string" required:"true"`
 31869  }
 31870  
 31871  // String returns the string representation.
 31872  //
 31873  // API parameter values that are decorated as "sensitive" in the API will not
 31874  // be included in the string output. The member name will be present, but the
 31875  // value will be replaced with "sensitive".
 31876  func (s GetMaintenanceWindowExecutionTaskInput) String() string {
 31877  	return awsutil.Prettify(s)
 31878  }
 31879  
 31880  // GoString returns the string representation.
 31881  //
 31882  // API parameter values that are decorated as "sensitive" in the API will not
 31883  // be included in the string output. The member name will be present, but the
 31884  // value will be replaced with "sensitive".
 31885  func (s GetMaintenanceWindowExecutionTaskInput) GoString() string {
 31886  	return s.String()
 31887  }
 31888  
 31889  // Validate inspects the fields of the type to determine if they are valid.
 31890  func (s *GetMaintenanceWindowExecutionTaskInput) Validate() error {
 31891  	invalidParams := request.ErrInvalidParams{Context: "GetMaintenanceWindowExecutionTaskInput"}
 31892  	if s.TaskId == nil {
 31893  		invalidParams.Add(request.NewErrParamRequired("TaskId"))
 31894  	}
 31895  	if s.TaskId != nil && len(*s.TaskId) < 36 {
 31896  		invalidParams.Add(request.NewErrParamMinLen("TaskId", 36))
 31897  	}
 31898  	if s.WindowExecutionId == nil {
 31899  		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
 31900  	}
 31901  	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
 31902  		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
 31903  	}
 31904  
 31905  	if invalidParams.Len() > 0 {
 31906  		return invalidParams
 31907  	}
 31908  	return nil
 31909  }
 31910  
 31911  // SetTaskId sets the TaskId field's value.
 31912  func (s *GetMaintenanceWindowExecutionTaskInput) SetTaskId(v string) *GetMaintenanceWindowExecutionTaskInput {
 31913  	s.TaskId = &v
 31914  	return s
 31915  }
 31916  
 31917  // SetWindowExecutionId sets the WindowExecutionId field's value.
 31918  func (s *GetMaintenanceWindowExecutionTaskInput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionTaskInput {
 31919  	s.WindowExecutionId = &v
 31920  	return s
 31921  }
 31922  
 31923  type GetMaintenanceWindowExecutionTaskInvocationInput struct {
 31924  	_ struct{} `type:"structure"`
 31925  
 31926  	// The invocation ID to retrieve.
 31927  	//
 31928  	// InvocationId is a required field
 31929  	InvocationId *string `min:"36" type:"string" required:"true"`
 31930  
 31931  	// The ID of the specific task in the maintenance window task that should be
 31932  	// retrieved.
 31933  	//
 31934  	// TaskId is a required field
 31935  	TaskId *string `min:"36" type:"string" required:"true"`
 31936  
 31937  	// The ID of the maintenance window execution for which the task is a part.
 31938  	//
 31939  	// WindowExecutionId is a required field
 31940  	WindowExecutionId *string `min:"36" type:"string" required:"true"`
 31941  }
 31942  
 31943  // String returns the string representation.
 31944  //
 31945  // API parameter values that are decorated as "sensitive" in the API will not
 31946  // be included in the string output. The member name will be present, but the
 31947  // value will be replaced with "sensitive".
 31948  func (s GetMaintenanceWindowExecutionTaskInvocationInput) String() string {
 31949  	return awsutil.Prettify(s)
 31950  }
 31951  
 31952  // GoString returns the string representation.
 31953  //
 31954  // API parameter values that are decorated as "sensitive" in the API will not
 31955  // be included in the string output. The member name will be present, but the
 31956  // value will be replaced with "sensitive".
 31957  func (s GetMaintenanceWindowExecutionTaskInvocationInput) GoString() string {
 31958  	return s.String()
 31959  }
 31960  
 31961  // Validate inspects the fields of the type to determine if they are valid.
 31962  func (s *GetMaintenanceWindowExecutionTaskInvocationInput) Validate() error {
 31963  	invalidParams := request.ErrInvalidParams{Context: "GetMaintenanceWindowExecutionTaskInvocationInput"}
 31964  	if s.InvocationId == nil {
 31965  		invalidParams.Add(request.NewErrParamRequired("InvocationId"))
 31966  	}
 31967  	if s.InvocationId != nil && len(*s.InvocationId) < 36 {
 31968  		invalidParams.Add(request.NewErrParamMinLen("InvocationId", 36))
 31969  	}
 31970  	if s.TaskId == nil {
 31971  		invalidParams.Add(request.NewErrParamRequired("TaskId"))
 31972  	}
 31973  	if s.TaskId != nil && len(*s.TaskId) < 36 {
 31974  		invalidParams.Add(request.NewErrParamMinLen("TaskId", 36))
 31975  	}
 31976  	if s.WindowExecutionId == nil {
 31977  		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
 31978  	}
 31979  	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
 31980  		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
 31981  	}
 31982  
 31983  	if invalidParams.Len() > 0 {
 31984  		return invalidParams
 31985  	}
 31986  	return nil
 31987  }
 31988  
 31989  // SetInvocationId sets the InvocationId field's value.
 31990  func (s *GetMaintenanceWindowExecutionTaskInvocationInput) SetInvocationId(v string) *GetMaintenanceWindowExecutionTaskInvocationInput {
 31991  	s.InvocationId = &v
 31992  	return s
 31993  }
 31994  
 31995  // SetTaskId sets the TaskId field's value.
 31996  func (s *GetMaintenanceWindowExecutionTaskInvocationInput) SetTaskId(v string) *GetMaintenanceWindowExecutionTaskInvocationInput {
 31997  	s.TaskId = &v
 31998  	return s
 31999  }
 32000  
 32001  // SetWindowExecutionId sets the WindowExecutionId field's value.
 32002  func (s *GetMaintenanceWindowExecutionTaskInvocationInput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionTaskInvocationInput {
 32003  	s.WindowExecutionId = &v
 32004  	return s
 32005  }
 32006  
 32007  type GetMaintenanceWindowExecutionTaskInvocationOutput struct {
 32008  	_ struct{} `type:"structure"`
 32009  
 32010  	// The time that the task finished running on the target.
 32011  	EndTime *time.Time `type:"timestamp"`
 32012  
 32013  	// The execution ID.
 32014  	ExecutionId *string `type:"string"`
 32015  
 32016  	// The invocation ID.
 32017  	InvocationId *string `min:"36" type:"string"`
 32018  
 32019  	// User-provided value to be included in any Amazon CloudWatch Events or Amazon
 32020  	// EventBridge events raised while running tasks for these targets in this maintenance
 32021  	// window.
 32022  	//
 32023  	// OwnerInformation is a sensitive parameter and its value will be
 32024  	// replaced with "sensitive" in string returned by GetMaintenanceWindowExecutionTaskInvocationOutput's
 32025  	// String and GoString methods.
 32026  	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
 32027  
 32028  	// The parameters used at the time that the task ran.
 32029  	//
 32030  	// Parameters is a sensitive parameter and its value will be
 32031  	// replaced with "sensitive" in string returned by GetMaintenanceWindowExecutionTaskInvocationOutput's
 32032  	// String and GoString methods.
 32033  	Parameters *string `type:"string" sensitive:"true"`
 32034  
 32035  	// The time that the task started running on the target.
 32036  	StartTime *time.Time `type:"timestamp"`
 32037  
 32038  	// The task status for an invocation.
 32039  	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
 32040  
 32041  	// The details explaining the status. Details are only available for certain
 32042  	// status values.
 32043  	StatusDetails *string `type:"string"`
 32044  
 32045  	// The task execution ID.
 32046  	TaskExecutionId *string `min:"36" type:"string"`
 32047  
 32048  	// Retrieves the task type for a maintenance window.
 32049  	TaskType *string `type:"string" enum:"MaintenanceWindowTaskType"`
 32050  
 32051  	// The maintenance window execution ID.
 32052  	WindowExecutionId *string `min:"36" type:"string"`
 32053  
 32054  	// The maintenance window target ID.
 32055  	WindowTargetId *string `type:"string"`
 32056  }
 32057  
 32058  // String returns the string representation.
 32059  //
 32060  // API parameter values that are decorated as "sensitive" in the API will not
 32061  // be included in the string output. The member name will be present, but the
 32062  // value will be replaced with "sensitive".
 32063  func (s GetMaintenanceWindowExecutionTaskInvocationOutput) String() string {
 32064  	return awsutil.Prettify(s)
 32065  }
 32066  
 32067  // GoString returns the string representation.
 32068  //
 32069  // API parameter values that are decorated as "sensitive" in the API will not
 32070  // be included in the string output. The member name will be present, but the
 32071  // value will be replaced with "sensitive".
 32072  func (s GetMaintenanceWindowExecutionTaskInvocationOutput) GoString() string {
 32073  	return s.String()
 32074  }
 32075  
 32076  // SetEndTime sets the EndTime field's value.
 32077  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetEndTime(v time.Time) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32078  	s.EndTime = &v
 32079  	return s
 32080  }
 32081  
 32082  // SetExecutionId sets the ExecutionId field's value.
 32083  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetExecutionId(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32084  	s.ExecutionId = &v
 32085  	return s
 32086  }
 32087  
 32088  // SetInvocationId sets the InvocationId field's value.
 32089  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetInvocationId(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32090  	s.InvocationId = &v
 32091  	return s
 32092  }
 32093  
 32094  // SetOwnerInformation sets the OwnerInformation field's value.
 32095  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetOwnerInformation(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32096  	s.OwnerInformation = &v
 32097  	return s
 32098  }
 32099  
 32100  // SetParameters sets the Parameters field's value.
 32101  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetParameters(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32102  	s.Parameters = &v
 32103  	return s
 32104  }
 32105  
 32106  // SetStartTime sets the StartTime field's value.
 32107  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetStartTime(v time.Time) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32108  	s.StartTime = &v
 32109  	return s
 32110  }
 32111  
 32112  // SetStatus sets the Status field's value.
 32113  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetStatus(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32114  	s.Status = &v
 32115  	return s
 32116  }
 32117  
 32118  // SetStatusDetails sets the StatusDetails field's value.
 32119  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetStatusDetails(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32120  	s.StatusDetails = &v
 32121  	return s
 32122  }
 32123  
 32124  // SetTaskExecutionId sets the TaskExecutionId field's value.
 32125  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetTaskExecutionId(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32126  	s.TaskExecutionId = &v
 32127  	return s
 32128  }
 32129  
 32130  // SetTaskType sets the TaskType field's value.
 32131  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetTaskType(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32132  	s.TaskType = &v
 32133  	return s
 32134  }
 32135  
 32136  // SetWindowExecutionId sets the WindowExecutionId field's value.
 32137  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32138  	s.WindowExecutionId = &v
 32139  	return s
 32140  }
 32141  
 32142  // SetWindowTargetId sets the WindowTargetId field's value.
 32143  func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetWindowTargetId(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
 32144  	s.WindowTargetId = &v
 32145  	return s
 32146  }
 32147  
 32148  type GetMaintenanceWindowExecutionTaskOutput struct {
 32149  	_ struct{} `type:"structure"`
 32150  
 32151  	// The time the task execution completed.
 32152  	EndTime *time.Time `type:"timestamp"`
 32153  
 32154  	// The defined maximum number of task executions that could be run in parallel.
 32155  	MaxConcurrency *string `min:"1" type:"string"`
 32156  
 32157  	// The defined maximum number of task execution errors allowed before scheduling
 32158  	// of the task execution would have been stopped.
 32159  	MaxErrors *string `min:"1" type:"string"`
 32160  
 32161  	// The priority of the task.
 32162  	Priority *int64 `type:"integer"`
 32163  
 32164  	// The role that was assumed when running the task.
 32165  	ServiceRole *string `type:"string"`
 32166  
 32167  	// The time the task execution started.
 32168  	StartTime *time.Time `type:"timestamp"`
 32169  
 32170  	// The status of the task.
 32171  	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
 32172  
 32173  	// The details explaining the status. Not available for all status values.
 32174  	StatusDetails *string `type:"string"`
 32175  
 32176  	// The Amazon Resource Name (ARN) of the task that ran.
 32177  	TaskArn *string `min:"1" type:"string"`
 32178  
 32179  	// The ID of the specific task execution in the maintenance window task that
 32180  	// was retrieved.
 32181  	TaskExecutionId *string `min:"36" type:"string"`
 32182  
 32183  	// The parameters passed to the task when it was run.
 32184  	//
 32185  	// TaskParameters has been deprecated. To specify parameters to pass to a task
 32186  	// when it runs, instead use the Parameters option in the TaskInvocationParameters
 32187  	// structure. For information about how Systems Manager handles these options
 32188  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 32189  	//
 32190  	// The map has the following format:
 32191  	//
 32192  	//    * Key: string, between 1 and 255 characters
 32193  	//
 32194  	//    * Value: an array of strings, each between 1 and 255 characters
 32195  	//
 32196  	// TaskParameters is a sensitive parameter and its value will be
 32197  	// replaced with "sensitive" in string returned by GetMaintenanceWindowExecutionTaskOutput's
 32198  	// String and GoString methods.
 32199  	TaskParameters []map[string]*MaintenanceWindowTaskParameterValueExpression `type:"list" sensitive:"true"`
 32200  
 32201  	// The type of task that was run.
 32202  	Type *string `type:"string" enum:"MaintenanceWindowTaskType"`
 32203  
 32204  	// The ID of the maintenance window execution that includes the task.
 32205  	WindowExecutionId *string `min:"36" type:"string"`
 32206  }
 32207  
 32208  // String returns the string representation.
 32209  //
 32210  // API parameter values that are decorated as "sensitive" in the API will not
 32211  // be included in the string output. The member name will be present, but the
 32212  // value will be replaced with "sensitive".
 32213  func (s GetMaintenanceWindowExecutionTaskOutput) String() string {
 32214  	return awsutil.Prettify(s)
 32215  }
 32216  
 32217  // GoString returns the string representation.
 32218  //
 32219  // API parameter values that are decorated as "sensitive" in the API will not
 32220  // be included in the string output. The member name will be present, but the
 32221  // value will be replaced with "sensitive".
 32222  func (s GetMaintenanceWindowExecutionTaskOutput) GoString() string {
 32223  	return s.String()
 32224  }
 32225  
 32226  // SetEndTime sets the EndTime field's value.
 32227  func (s *GetMaintenanceWindowExecutionTaskOutput) SetEndTime(v time.Time) *GetMaintenanceWindowExecutionTaskOutput {
 32228  	s.EndTime = &v
 32229  	return s
 32230  }
 32231  
 32232  // SetMaxConcurrency sets the MaxConcurrency field's value.
 32233  func (s *GetMaintenanceWindowExecutionTaskOutput) SetMaxConcurrency(v string) *GetMaintenanceWindowExecutionTaskOutput {
 32234  	s.MaxConcurrency = &v
 32235  	return s
 32236  }
 32237  
 32238  // SetMaxErrors sets the MaxErrors field's value.
 32239  func (s *GetMaintenanceWindowExecutionTaskOutput) SetMaxErrors(v string) *GetMaintenanceWindowExecutionTaskOutput {
 32240  	s.MaxErrors = &v
 32241  	return s
 32242  }
 32243  
 32244  // SetPriority sets the Priority field's value.
 32245  func (s *GetMaintenanceWindowExecutionTaskOutput) SetPriority(v int64) *GetMaintenanceWindowExecutionTaskOutput {
 32246  	s.Priority = &v
 32247  	return s
 32248  }
 32249  
 32250  // SetServiceRole sets the ServiceRole field's value.
 32251  func (s *GetMaintenanceWindowExecutionTaskOutput) SetServiceRole(v string) *GetMaintenanceWindowExecutionTaskOutput {
 32252  	s.ServiceRole = &v
 32253  	return s
 32254  }
 32255  
 32256  // SetStartTime sets the StartTime field's value.
 32257  func (s *GetMaintenanceWindowExecutionTaskOutput) SetStartTime(v time.Time) *GetMaintenanceWindowExecutionTaskOutput {
 32258  	s.StartTime = &v
 32259  	return s
 32260  }
 32261  
 32262  // SetStatus sets the Status field's value.
 32263  func (s *GetMaintenanceWindowExecutionTaskOutput) SetStatus(v string) *GetMaintenanceWindowExecutionTaskOutput {
 32264  	s.Status = &v
 32265  	return s
 32266  }
 32267  
 32268  // SetStatusDetails sets the StatusDetails field's value.
 32269  func (s *GetMaintenanceWindowExecutionTaskOutput) SetStatusDetails(v string) *GetMaintenanceWindowExecutionTaskOutput {
 32270  	s.StatusDetails = &v
 32271  	return s
 32272  }
 32273  
 32274  // SetTaskArn sets the TaskArn field's value.
 32275  func (s *GetMaintenanceWindowExecutionTaskOutput) SetTaskArn(v string) *GetMaintenanceWindowExecutionTaskOutput {
 32276  	s.TaskArn = &v
 32277  	return s
 32278  }
 32279  
 32280  // SetTaskExecutionId sets the TaskExecutionId field's value.
 32281  func (s *GetMaintenanceWindowExecutionTaskOutput) SetTaskExecutionId(v string) *GetMaintenanceWindowExecutionTaskOutput {
 32282  	s.TaskExecutionId = &v
 32283  	return s
 32284  }
 32285  
 32286  // SetTaskParameters sets the TaskParameters field's value.
 32287  func (s *GetMaintenanceWindowExecutionTaskOutput) SetTaskParameters(v []map[string]*MaintenanceWindowTaskParameterValueExpression) *GetMaintenanceWindowExecutionTaskOutput {
 32288  	s.TaskParameters = v
 32289  	return s
 32290  }
 32291  
 32292  // SetType sets the Type field's value.
 32293  func (s *GetMaintenanceWindowExecutionTaskOutput) SetType(v string) *GetMaintenanceWindowExecutionTaskOutput {
 32294  	s.Type = &v
 32295  	return s
 32296  }
 32297  
 32298  // SetWindowExecutionId sets the WindowExecutionId field's value.
 32299  func (s *GetMaintenanceWindowExecutionTaskOutput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionTaskOutput {
 32300  	s.WindowExecutionId = &v
 32301  	return s
 32302  }
 32303  
 32304  type GetMaintenanceWindowInput struct {
 32305  	_ struct{} `type:"structure"`
 32306  
 32307  	// The ID of the maintenance window for which you want to retrieve information.
 32308  	//
 32309  	// WindowId is a required field
 32310  	WindowId *string `min:"20" type:"string" required:"true"`
 32311  }
 32312  
 32313  // String returns the string representation.
 32314  //
 32315  // API parameter values that are decorated as "sensitive" in the API will not
 32316  // be included in the string output. The member name will be present, but the
 32317  // value will be replaced with "sensitive".
 32318  func (s GetMaintenanceWindowInput) String() string {
 32319  	return awsutil.Prettify(s)
 32320  }
 32321  
 32322  // GoString returns the string representation.
 32323  //
 32324  // API parameter values that are decorated as "sensitive" in the API will not
 32325  // be included in the string output. The member name will be present, but the
 32326  // value will be replaced with "sensitive".
 32327  func (s GetMaintenanceWindowInput) GoString() string {
 32328  	return s.String()
 32329  }
 32330  
 32331  // Validate inspects the fields of the type to determine if they are valid.
 32332  func (s *GetMaintenanceWindowInput) Validate() error {
 32333  	invalidParams := request.ErrInvalidParams{Context: "GetMaintenanceWindowInput"}
 32334  	if s.WindowId == nil {
 32335  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 32336  	}
 32337  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 32338  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 32339  	}
 32340  
 32341  	if invalidParams.Len() > 0 {
 32342  		return invalidParams
 32343  	}
 32344  	return nil
 32345  }
 32346  
 32347  // SetWindowId sets the WindowId field's value.
 32348  func (s *GetMaintenanceWindowInput) SetWindowId(v string) *GetMaintenanceWindowInput {
 32349  	s.WindowId = &v
 32350  	return s
 32351  }
 32352  
 32353  type GetMaintenanceWindowOutput struct {
 32354  	_ struct{} `type:"structure"`
 32355  
 32356  	// Whether targets must be registered with the maintenance window before tasks
 32357  	// can be defined for those targets.
 32358  	AllowUnassociatedTargets *bool `type:"boolean"`
 32359  
 32360  	// The date the maintenance window was created.
 32361  	CreatedDate *time.Time `type:"timestamp"`
 32362  
 32363  	// The number of hours before the end of the maintenance window that Amazon
 32364  	// Web Services Systems Manager stops scheduling new tasks for execution.
 32365  	Cutoff *int64 `type:"integer"`
 32366  
 32367  	// The description of the maintenance window.
 32368  	//
 32369  	// Description is a sensitive parameter and its value will be
 32370  	// replaced with "sensitive" in string returned by GetMaintenanceWindowOutput's
 32371  	// String and GoString methods.
 32372  	Description *string `min:"1" type:"string" sensitive:"true"`
 32373  
 32374  	// The duration of the maintenance window in hours.
 32375  	Duration *int64 `min:"1" type:"integer"`
 32376  
 32377  	// Indicates whether the maintenance window is enabled.
 32378  	Enabled *bool `type:"boolean"`
 32379  
 32380  	// The date and time, in ISO-8601 Extended format, for when the maintenance
 32381  	// window is scheduled to become inactive. The maintenance window won't run
 32382  	// after this specified time.
 32383  	EndDate *string `type:"string"`
 32384  
 32385  	// The date the maintenance window was last modified.
 32386  	ModifiedDate *time.Time `type:"timestamp"`
 32387  
 32388  	// The name of the maintenance window.
 32389  	Name *string `min:"3" type:"string"`
 32390  
 32391  	// The next time the maintenance window will actually run, taking into account
 32392  	// any specified times for the maintenance window to become active or inactive.
 32393  	NextExecutionTime *string `type:"string"`
 32394  
 32395  	// The schedule of the maintenance window in the form of a cron or rate expression.
 32396  	Schedule *string `min:"1" type:"string"`
 32397  
 32398  	// The number of days to wait to run a maintenance window after the scheduled
 32399  	// cron expression date and time.
 32400  	ScheduleOffset *int64 `min:"1" type:"integer"`
 32401  
 32402  	// The time zone that the scheduled maintenance window executions are based
 32403  	// on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles",
 32404  	// "UTC", or "Asia/Seoul". For more information, see the Time Zone Database
 32405  	// (https://www.iana.org/time-zones) on the IANA website.
 32406  	ScheduleTimezone *string `type:"string"`
 32407  
 32408  	// The date and time, in ISO-8601 Extended format, for when the maintenance
 32409  	// window is scheduled to become active. The maintenance window won't run before
 32410  	// this specified time.
 32411  	StartDate *string `type:"string"`
 32412  
 32413  	// The ID of the created maintenance window.
 32414  	WindowId *string `min:"20" type:"string"`
 32415  }
 32416  
 32417  // String returns the string representation.
 32418  //
 32419  // API parameter values that are decorated as "sensitive" in the API will not
 32420  // be included in the string output. The member name will be present, but the
 32421  // value will be replaced with "sensitive".
 32422  func (s GetMaintenanceWindowOutput) String() string {
 32423  	return awsutil.Prettify(s)
 32424  }
 32425  
 32426  // GoString returns the string representation.
 32427  //
 32428  // API parameter values that are decorated as "sensitive" in the API will not
 32429  // be included in the string output. The member name will be present, but the
 32430  // value will be replaced with "sensitive".
 32431  func (s GetMaintenanceWindowOutput) GoString() string {
 32432  	return s.String()
 32433  }
 32434  
 32435  // SetAllowUnassociatedTargets sets the AllowUnassociatedTargets field's value.
 32436  func (s *GetMaintenanceWindowOutput) SetAllowUnassociatedTargets(v bool) *GetMaintenanceWindowOutput {
 32437  	s.AllowUnassociatedTargets = &v
 32438  	return s
 32439  }
 32440  
 32441  // SetCreatedDate sets the CreatedDate field's value.
 32442  func (s *GetMaintenanceWindowOutput) SetCreatedDate(v time.Time) *GetMaintenanceWindowOutput {
 32443  	s.CreatedDate = &v
 32444  	return s
 32445  }
 32446  
 32447  // SetCutoff sets the Cutoff field's value.
 32448  func (s *GetMaintenanceWindowOutput) SetCutoff(v int64) *GetMaintenanceWindowOutput {
 32449  	s.Cutoff = &v
 32450  	return s
 32451  }
 32452  
 32453  // SetDescription sets the Description field's value.
 32454  func (s *GetMaintenanceWindowOutput) SetDescription(v string) *GetMaintenanceWindowOutput {
 32455  	s.Description = &v
 32456  	return s
 32457  }
 32458  
 32459  // SetDuration sets the Duration field's value.
 32460  func (s *GetMaintenanceWindowOutput) SetDuration(v int64) *GetMaintenanceWindowOutput {
 32461  	s.Duration = &v
 32462  	return s
 32463  }
 32464  
 32465  // SetEnabled sets the Enabled field's value.
 32466  func (s *GetMaintenanceWindowOutput) SetEnabled(v bool) *GetMaintenanceWindowOutput {
 32467  	s.Enabled = &v
 32468  	return s
 32469  }
 32470  
 32471  // SetEndDate sets the EndDate field's value.
 32472  func (s *GetMaintenanceWindowOutput) SetEndDate(v string) *GetMaintenanceWindowOutput {
 32473  	s.EndDate = &v
 32474  	return s
 32475  }
 32476  
 32477  // SetModifiedDate sets the ModifiedDate field's value.
 32478  func (s *GetMaintenanceWindowOutput) SetModifiedDate(v time.Time) *GetMaintenanceWindowOutput {
 32479  	s.ModifiedDate = &v
 32480  	return s
 32481  }
 32482  
 32483  // SetName sets the Name field's value.
 32484  func (s *GetMaintenanceWindowOutput) SetName(v string) *GetMaintenanceWindowOutput {
 32485  	s.Name = &v
 32486  	return s
 32487  }
 32488  
 32489  // SetNextExecutionTime sets the NextExecutionTime field's value.
 32490  func (s *GetMaintenanceWindowOutput) SetNextExecutionTime(v string) *GetMaintenanceWindowOutput {
 32491  	s.NextExecutionTime = &v
 32492  	return s
 32493  }
 32494  
 32495  // SetSchedule sets the Schedule field's value.
 32496  func (s *GetMaintenanceWindowOutput) SetSchedule(v string) *GetMaintenanceWindowOutput {
 32497  	s.Schedule = &v
 32498  	return s
 32499  }
 32500  
 32501  // SetScheduleOffset sets the ScheduleOffset field's value.
 32502  func (s *GetMaintenanceWindowOutput) SetScheduleOffset(v int64) *GetMaintenanceWindowOutput {
 32503  	s.ScheduleOffset = &v
 32504  	return s
 32505  }
 32506  
 32507  // SetScheduleTimezone sets the ScheduleTimezone field's value.
 32508  func (s *GetMaintenanceWindowOutput) SetScheduleTimezone(v string) *GetMaintenanceWindowOutput {
 32509  	s.ScheduleTimezone = &v
 32510  	return s
 32511  }
 32512  
 32513  // SetStartDate sets the StartDate field's value.
 32514  func (s *GetMaintenanceWindowOutput) SetStartDate(v string) *GetMaintenanceWindowOutput {
 32515  	s.StartDate = &v
 32516  	return s
 32517  }
 32518  
 32519  // SetWindowId sets the WindowId field's value.
 32520  func (s *GetMaintenanceWindowOutput) SetWindowId(v string) *GetMaintenanceWindowOutput {
 32521  	s.WindowId = &v
 32522  	return s
 32523  }
 32524  
 32525  type GetMaintenanceWindowTaskInput struct {
 32526  	_ struct{} `type:"structure"`
 32527  
 32528  	// The maintenance window ID that includes the task to retrieve.
 32529  	//
 32530  	// WindowId is a required field
 32531  	WindowId *string `min:"20" type:"string" required:"true"`
 32532  
 32533  	// The maintenance window task ID to retrieve.
 32534  	//
 32535  	// WindowTaskId is a required field
 32536  	WindowTaskId *string `min:"36" type:"string" required:"true"`
 32537  }
 32538  
 32539  // String returns the string representation.
 32540  //
 32541  // API parameter values that are decorated as "sensitive" in the API will not
 32542  // be included in the string output. The member name will be present, but the
 32543  // value will be replaced with "sensitive".
 32544  func (s GetMaintenanceWindowTaskInput) String() string {
 32545  	return awsutil.Prettify(s)
 32546  }
 32547  
 32548  // GoString returns the string representation.
 32549  //
 32550  // API parameter values that are decorated as "sensitive" in the API will not
 32551  // be included in the string output. The member name will be present, but the
 32552  // value will be replaced with "sensitive".
 32553  func (s GetMaintenanceWindowTaskInput) GoString() string {
 32554  	return s.String()
 32555  }
 32556  
 32557  // Validate inspects the fields of the type to determine if they are valid.
 32558  func (s *GetMaintenanceWindowTaskInput) Validate() error {
 32559  	invalidParams := request.ErrInvalidParams{Context: "GetMaintenanceWindowTaskInput"}
 32560  	if s.WindowId == nil {
 32561  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 32562  	}
 32563  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 32564  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 32565  	}
 32566  	if s.WindowTaskId == nil {
 32567  		invalidParams.Add(request.NewErrParamRequired("WindowTaskId"))
 32568  	}
 32569  	if s.WindowTaskId != nil && len(*s.WindowTaskId) < 36 {
 32570  		invalidParams.Add(request.NewErrParamMinLen("WindowTaskId", 36))
 32571  	}
 32572  
 32573  	if invalidParams.Len() > 0 {
 32574  		return invalidParams
 32575  	}
 32576  	return nil
 32577  }
 32578  
 32579  // SetWindowId sets the WindowId field's value.
 32580  func (s *GetMaintenanceWindowTaskInput) SetWindowId(v string) *GetMaintenanceWindowTaskInput {
 32581  	s.WindowId = &v
 32582  	return s
 32583  }
 32584  
 32585  // SetWindowTaskId sets the WindowTaskId field's value.
 32586  func (s *GetMaintenanceWindowTaskInput) SetWindowTaskId(v string) *GetMaintenanceWindowTaskInput {
 32587  	s.WindowTaskId = &v
 32588  	return s
 32589  }
 32590  
 32591  type GetMaintenanceWindowTaskOutput struct {
 32592  	_ struct{} `type:"structure"`
 32593  
 32594  	// The action to take on tasks when the maintenance window cutoff time is reached.
 32595  	// CONTINUE_TASK means that tasks continue to run. For Automation, Lambda, Step
 32596  	// Functions tasks, CANCEL_TASK means that currently running task invocations
 32597  	// continue, but no new task invocations are started. For Run Command tasks,
 32598  	// CANCEL_TASK means the system attempts to stop the task by sending a CancelCommand
 32599  	// operation.
 32600  	CutoffBehavior *string `type:"string" enum:"MaintenanceWindowTaskCutoffBehavior"`
 32601  
 32602  	// The retrieved task description.
 32603  	//
 32604  	// Description is a sensitive parameter and its value will be
 32605  	// replaced with "sensitive" in string returned by GetMaintenanceWindowTaskOutput's
 32606  	// String and GoString methods.
 32607  	Description *string `min:"1" type:"string" sensitive:"true"`
 32608  
 32609  	// The location in Amazon Simple Storage Service (Amazon S3) where the task
 32610  	// results are logged.
 32611  	//
 32612  	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
 32613  	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
 32614  	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
 32615  	// information about how Amazon Web Services Systems Manager handles these options
 32616  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 32617  	LoggingInfo *LoggingInfo `type:"structure"`
 32618  
 32619  	// The maximum number of targets allowed to run this task in parallel.
 32620  	//
 32621  	// For maintenance window tasks without a target specified, you can't supply
 32622  	// a value for this option. Instead, the system inserts a placeholder value
 32623  	// of 1, which may be reported in the response to this command. This value doesn't
 32624  	// affect the running of your task and can be ignored.
 32625  	MaxConcurrency *string `min:"1" type:"string"`
 32626  
 32627  	// The maximum number of errors allowed before the task stops being scheduled.
 32628  	//
 32629  	// For maintenance window tasks without a target specified, you can't supply
 32630  	// a value for this option. Instead, the system inserts a placeholder value
 32631  	// of 1, which may be reported in the response to this command. This value doesn't
 32632  	// affect the running of your task and can be ignored.
 32633  	MaxErrors *string `min:"1" type:"string"`
 32634  
 32635  	// The retrieved task name.
 32636  	Name *string `min:"3" type:"string"`
 32637  
 32638  	// The priority of the task when it runs. The lower the number, the higher the
 32639  	// priority. Tasks that have the same priority are scheduled in parallel.
 32640  	Priority *int64 `type:"integer"`
 32641  
 32642  	// The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
 32643  	// service role to use to publish Amazon Simple Notification Service (Amazon
 32644  	// SNS) notifications for maintenance window Run Command tasks.
 32645  	ServiceRoleArn *string `type:"string"`
 32646  
 32647  	// The targets where the task should run.
 32648  	Targets []*Target `type:"list"`
 32649  
 32650  	// The resource that the task used during execution. For RUN_COMMAND and AUTOMATION
 32651  	// task types, the value of TaskArn is the SSM document name/ARN. For LAMBDA
 32652  	// tasks, the value is the function name/ARN. For STEP_FUNCTIONS tasks, the
 32653  	// value is the state machine ARN.
 32654  	TaskArn *string `min:"1" type:"string"`
 32655  
 32656  	// The parameters to pass to the task when it runs.
 32657  	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters `type:"structure"`
 32658  
 32659  	// The parameters to pass to the task when it runs.
 32660  	//
 32661  	// TaskParameters has been deprecated. To specify parameters to pass to a task
 32662  	// when it runs, instead use the Parameters option in the TaskInvocationParameters
 32663  	// structure. For information about how Systems Manager handles these options
 32664  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 32665  	//
 32666  	// TaskParameters is a sensitive parameter and its value will be
 32667  	// replaced with "sensitive" in string returned by GetMaintenanceWindowTaskOutput's
 32668  	// String and GoString methods.
 32669  	TaskParameters map[string]*MaintenanceWindowTaskParameterValueExpression `type:"map" sensitive:"true"`
 32670  
 32671  	// The type of task to run.
 32672  	TaskType *string `type:"string" enum:"MaintenanceWindowTaskType"`
 32673  
 32674  	// The retrieved maintenance window ID.
 32675  	WindowId *string `min:"20" type:"string"`
 32676  
 32677  	// The retrieved maintenance window task ID.
 32678  	WindowTaskId *string `min:"36" type:"string"`
 32679  }
 32680  
 32681  // String returns the string representation.
 32682  //
 32683  // API parameter values that are decorated as "sensitive" in the API will not
 32684  // be included in the string output. The member name will be present, but the
 32685  // value will be replaced with "sensitive".
 32686  func (s GetMaintenanceWindowTaskOutput) String() string {
 32687  	return awsutil.Prettify(s)
 32688  }
 32689  
 32690  // GoString returns the string representation.
 32691  //
 32692  // API parameter values that are decorated as "sensitive" in the API will not
 32693  // be included in the string output. The member name will be present, but the
 32694  // value will be replaced with "sensitive".
 32695  func (s GetMaintenanceWindowTaskOutput) GoString() string {
 32696  	return s.String()
 32697  }
 32698  
 32699  // SetCutoffBehavior sets the CutoffBehavior field's value.
 32700  func (s *GetMaintenanceWindowTaskOutput) SetCutoffBehavior(v string) *GetMaintenanceWindowTaskOutput {
 32701  	s.CutoffBehavior = &v
 32702  	return s
 32703  }
 32704  
 32705  // SetDescription sets the Description field's value.
 32706  func (s *GetMaintenanceWindowTaskOutput) SetDescription(v string) *GetMaintenanceWindowTaskOutput {
 32707  	s.Description = &v
 32708  	return s
 32709  }
 32710  
 32711  // SetLoggingInfo sets the LoggingInfo field's value.
 32712  func (s *GetMaintenanceWindowTaskOutput) SetLoggingInfo(v *LoggingInfo) *GetMaintenanceWindowTaskOutput {
 32713  	s.LoggingInfo = v
 32714  	return s
 32715  }
 32716  
 32717  // SetMaxConcurrency sets the MaxConcurrency field's value.
 32718  func (s *GetMaintenanceWindowTaskOutput) SetMaxConcurrency(v string) *GetMaintenanceWindowTaskOutput {
 32719  	s.MaxConcurrency = &v
 32720  	return s
 32721  }
 32722  
 32723  // SetMaxErrors sets the MaxErrors field's value.
 32724  func (s *GetMaintenanceWindowTaskOutput) SetMaxErrors(v string) *GetMaintenanceWindowTaskOutput {
 32725  	s.MaxErrors = &v
 32726  	return s
 32727  }
 32728  
 32729  // SetName sets the Name field's value.
 32730  func (s *GetMaintenanceWindowTaskOutput) SetName(v string) *GetMaintenanceWindowTaskOutput {
 32731  	s.Name = &v
 32732  	return s
 32733  }
 32734  
 32735  // SetPriority sets the Priority field's value.
 32736  func (s *GetMaintenanceWindowTaskOutput) SetPriority(v int64) *GetMaintenanceWindowTaskOutput {
 32737  	s.Priority = &v
 32738  	return s
 32739  }
 32740  
 32741  // SetServiceRoleArn sets the ServiceRoleArn field's value.
 32742  func (s *GetMaintenanceWindowTaskOutput) SetServiceRoleArn(v string) *GetMaintenanceWindowTaskOutput {
 32743  	s.ServiceRoleArn = &v
 32744  	return s
 32745  }
 32746  
 32747  // SetTargets sets the Targets field's value.
 32748  func (s *GetMaintenanceWindowTaskOutput) SetTargets(v []*Target) *GetMaintenanceWindowTaskOutput {
 32749  	s.Targets = v
 32750  	return s
 32751  }
 32752  
 32753  // SetTaskArn sets the TaskArn field's value.
 32754  func (s *GetMaintenanceWindowTaskOutput) SetTaskArn(v string) *GetMaintenanceWindowTaskOutput {
 32755  	s.TaskArn = &v
 32756  	return s
 32757  }
 32758  
 32759  // SetTaskInvocationParameters sets the TaskInvocationParameters field's value.
 32760  func (s *GetMaintenanceWindowTaskOutput) SetTaskInvocationParameters(v *MaintenanceWindowTaskInvocationParameters) *GetMaintenanceWindowTaskOutput {
 32761  	s.TaskInvocationParameters = v
 32762  	return s
 32763  }
 32764  
 32765  // SetTaskParameters sets the TaskParameters field's value.
 32766  func (s *GetMaintenanceWindowTaskOutput) SetTaskParameters(v map[string]*MaintenanceWindowTaskParameterValueExpression) *GetMaintenanceWindowTaskOutput {
 32767  	s.TaskParameters = v
 32768  	return s
 32769  }
 32770  
 32771  // SetTaskType sets the TaskType field's value.
 32772  func (s *GetMaintenanceWindowTaskOutput) SetTaskType(v string) *GetMaintenanceWindowTaskOutput {
 32773  	s.TaskType = &v
 32774  	return s
 32775  }
 32776  
 32777  // SetWindowId sets the WindowId field's value.
 32778  func (s *GetMaintenanceWindowTaskOutput) SetWindowId(v string) *GetMaintenanceWindowTaskOutput {
 32779  	s.WindowId = &v
 32780  	return s
 32781  }
 32782  
 32783  // SetWindowTaskId sets the WindowTaskId field's value.
 32784  func (s *GetMaintenanceWindowTaskOutput) SetWindowTaskId(v string) *GetMaintenanceWindowTaskOutput {
 32785  	s.WindowTaskId = &v
 32786  	return s
 32787  }
 32788  
 32789  type GetOpsItemInput struct {
 32790  	_ struct{} `type:"structure"`
 32791  
 32792  	// The ID of the OpsItem that you want to get.
 32793  	//
 32794  	// OpsItemId is a required field
 32795  	OpsItemId *string `type:"string" required:"true"`
 32796  }
 32797  
 32798  // String returns the string representation.
 32799  //
 32800  // API parameter values that are decorated as "sensitive" in the API will not
 32801  // be included in the string output. The member name will be present, but the
 32802  // value will be replaced with "sensitive".
 32803  func (s GetOpsItemInput) String() string {
 32804  	return awsutil.Prettify(s)
 32805  }
 32806  
 32807  // GoString returns the string representation.
 32808  //
 32809  // API parameter values that are decorated as "sensitive" in the API will not
 32810  // be included in the string output. The member name will be present, but the
 32811  // value will be replaced with "sensitive".
 32812  func (s GetOpsItemInput) GoString() string {
 32813  	return s.String()
 32814  }
 32815  
 32816  // Validate inspects the fields of the type to determine if they are valid.
 32817  func (s *GetOpsItemInput) Validate() error {
 32818  	invalidParams := request.ErrInvalidParams{Context: "GetOpsItemInput"}
 32819  	if s.OpsItemId == nil {
 32820  		invalidParams.Add(request.NewErrParamRequired("OpsItemId"))
 32821  	}
 32822  
 32823  	if invalidParams.Len() > 0 {
 32824  		return invalidParams
 32825  	}
 32826  	return nil
 32827  }
 32828  
 32829  // SetOpsItemId sets the OpsItemId field's value.
 32830  func (s *GetOpsItemInput) SetOpsItemId(v string) *GetOpsItemInput {
 32831  	s.OpsItemId = &v
 32832  	return s
 32833  }
 32834  
 32835  type GetOpsItemOutput struct {
 32836  	_ struct{} `type:"structure"`
 32837  
 32838  	// The OpsItem.
 32839  	OpsItem *OpsItem `type:"structure"`
 32840  }
 32841  
 32842  // String returns the string representation.
 32843  //
 32844  // API parameter values that are decorated as "sensitive" in the API will not
 32845  // be included in the string output. The member name will be present, but the
 32846  // value will be replaced with "sensitive".
 32847  func (s GetOpsItemOutput) String() string {
 32848  	return awsutil.Prettify(s)
 32849  }
 32850  
 32851  // GoString returns the string representation.
 32852  //
 32853  // API parameter values that are decorated as "sensitive" in the API will not
 32854  // be included in the string output. The member name will be present, but the
 32855  // value will be replaced with "sensitive".
 32856  func (s GetOpsItemOutput) GoString() string {
 32857  	return s.String()
 32858  }
 32859  
 32860  // SetOpsItem sets the OpsItem field's value.
 32861  func (s *GetOpsItemOutput) SetOpsItem(v *OpsItem) *GetOpsItemOutput {
 32862  	s.OpsItem = v
 32863  	return s
 32864  }
 32865  
 32866  type GetOpsMetadataInput struct {
 32867  	_ struct{} `type:"structure"`
 32868  
 32869  	// The maximum number of items to return for this call. The call also returns
 32870  	// a token that you can specify in a subsequent call to get the next set of
 32871  	// results.
 32872  	MaxResults *int64 `min:"1" type:"integer"`
 32873  
 32874  	// A token to start the list. Use this token to get the next set of results.
 32875  	NextToken *string `type:"string"`
 32876  
 32877  	// The Amazon Resource Name (ARN) of an OpsMetadata Object to view.
 32878  	//
 32879  	// OpsMetadataArn is a required field
 32880  	OpsMetadataArn *string `min:"1" type:"string" required:"true"`
 32881  }
 32882  
 32883  // String returns the string representation.
 32884  //
 32885  // API parameter values that are decorated as "sensitive" in the API will not
 32886  // be included in the string output. The member name will be present, but the
 32887  // value will be replaced with "sensitive".
 32888  func (s GetOpsMetadataInput) String() string {
 32889  	return awsutil.Prettify(s)
 32890  }
 32891  
 32892  // GoString returns the string representation.
 32893  //
 32894  // API parameter values that are decorated as "sensitive" in the API will not
 32895  // be included in the string output. The member name will be present, but the
 32896  // value will be replaced with "sensitive".
 32897  func (s GetOpsMetadataInput) GoString() string {
 32898  	return s.String()
 32899  }
 32900  
 32901  // Validate inspects the fields of the type to determine if they are valid.
 32902  func (s *GetOpsMetadataInput) Validate() error {
 32903  	invalidParams := request.ErrInvalidParams{Context: "GetOpsMetadataInput"}
 32904  	if s.MaxResults != nil && *s.MaxResults < 1 {
 32905  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 32906  	}
 32907  	if s.OpsMetadataArn == nil {
 32908  		invalidParams.Add(request.NewErrParamRequired("OpsMetadataArn"))
 32909  	}
 32910  	if s.OpsMetadataArn != nil && len(*s.OpsMetadataArn) < 1 {
 32911  		invalidParams.Add(request.NewErrParamMinLen("OpsMetadataArn", 1))
 32912  	}
 32913  
 32914  	if invalidParams.Len() > 0 {
 32915  		return invalidParams
 32916  	}
 32917  	return nil
 32918  }
 32919  
 32920  // SetMaxResults sets the MaxResults field's value.
 32921  func (s *GetOpsMetadataInput) SetMaxResults(v int64) *GetOpsMetadataInput {
 32922  	s.MaxResults = &v
 32923  	return s
 32924  }
 32925  
 32926  // SetNextToken sets the NextToken field's value.
 32927  func (s *GetOpsMetadataInput) SetNextToken(v string) *GetOpsMetadataInput {
 32928  	s.NextToken = &v
 32929  	return s
 32930  }
 32931  
 32932  // SetOpsMetadataArn sets the OpsMetadataArn field's value.
 32933  func (s *GetOpsMetadataInput) SetOpsMetadataArn(v string) *GetOpsMetadataInput {
 32934  	s.OpsMetadataArn = &v
 32935  	return s
 32936  }
 32937  
 32938  type GetOpsMetadataOutput struct {
 32939  	_ struct{} `type:"structure"`
 32940  
 32941  	// OpsMetadata for an Application Manager application.
 32942  	Metadata map[string]*MetadataValue `min:"1" type:"map"`
 32943  
 32944  	// The token for the next set of items to return. Use this token to get the
 32945  	// next set of results.
 32946  	NextToken *string `type:"string"`
 32947  
 32948  	// The resource ID of the Application Manager application.
 32949  	ResourceId *string `min:"1" type:"string"`
 32950  }
 32951  
 32952  // String returns the string representation.
 32953  //
 32954  // API parameter values that are decorated as "sensitive" in the API will not
 32955  // be included in the string output. The member name will be present, but the
 32956  // value will be replaced with "sensitive".
 32957  func (s GetOpsMetadataOutput) String() string {
 32958  	return awsutil.Prettify(s)
 32959  }
 32960  
 32961  // GoString returns the string representation.
 32962  //
 32963  // API parameter values that are decorated as "sensitive" in the API will not
 32964  // be included in the string output. The member name will be present, but the
 32965  // value will be replaced with "sensitive".
 32966  func (s GetOpsMetadataOutput) GoString() string {
 32967  	return s.String()
 32968  }
 32969  
 32970  // SetMetadata sets the Metadata field's value.
 32971  func (s *GetOpsMetadataOutput) SetMetadata(v map[string]*MetadataValue) *GetOpsMetadataOutput {
 32972  	s.Metadata = v
 32973  	return s
 32974  }
 32975  
 32976  // SetNextToken sets the NextToken field's value.
 32977  func (s *GetOpsMetadataOutput) SetNextToken(v string) *GetOpsMetadataOutput {
 32978  	s.NextToken = &v
 32979  	return s
 32980  }
 32981  
 32982  // SetResourceId sets the ResourceId field's value.
 32983  func (s *GetOpsMetadataOutput) SetResourceId(v string) *GetOpsMetadataOutput {
 32984  	s.ResourceId = &v
 32985  	return s
 32986  }
 32987  
 32988  type GetOpsSummaryInput struct {
 32989  	_ struct{} `type:"structure"`
 32990  
 32991  	// Optional aggregators that return counts of OpsData based on one or more expressions.
 32992  	Aggregators []*OpsAggregator `min:"1" type:"list"`
 32993  
 32994  	// Optional filters used to scope down the returned OpsData.
 32995  	Filters []*OpsFilter `min:"1" type:"list"`
 32996  
 32997  	// The maximum number of items to return for this call. The call also returns
 32998  	// a token that you can specify in a subsequent call to get the next set of
 32999  	// results.
 33000  	MaxResults *int64 `min:"1" type:"integer"`
 33001  
 33002  	// A token to start the list. Use this token to get the next set of results.
 33003  	NextToken *string `type:"string"`
 33004  
 33005  	// The OpsData data type to return.
 33006  	ResultAttributes []*OpsResultAttribute `min:"1" type:"list"`
 33007  
 33008  	// Specify the name of a resource data sync to get.
 33009  	SyncName *string `min:"1" type:"string"`
 33010  }
 33011  
 33012  // String returns the string representation.
 33013  //
 33014  // API parameter values that are decorated as "sensitive" in the API will not
 33015  // be included in the string output. The member name will be present, but the
 33016  // value will be replaced with "sensitive".
 33017  func (s GetOpsSummaryInput) String() string {
 33018  	return awsutil.Prettify(s)
 33019  }
 33020  
 33021  // GoString returns the string representation.
 33022  //
 33023  // API parameter values that are decorated as "sensitive" in the API will not
 33024  // be included in the string output. The member name will be present, but the
 33025  // value will be replaced with "sensitive".
 33026  func (s GetOpsSummaryInput) GoString() string {
 33027  	return s.String()
 33028  }
 33029  
 33030  // Validate inspects the fields of the type to determine if they are valid.
 33031  func (s *GetOpsSummaryInput) Validate() error {
 33032  	invalidParams := request.ErrInvalidParams{Context: "GetOpsSummaryInput"}
 33033  	if s.Aggregators != nil && len(s.Aggregators) < 1 {
 33034  		invalidParams.Add(request.NewErrParamMinLen("Aggregators", 1))
 33035  	}
 33036  	if s.Filters != nil && len(s.Filters) < 1 {
 33037  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 33038  	}
 33039  	if s.MaxResults != nil && *s.MaxResults < 1 {
 33040  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 33041  	}
 33042  	if s.ResultAttributes != nil && len(s.ResultAttributes) < 1 {
 33043  		invalidParams.Add(request.NewErrParamMinLen("ResultAttributes", 1))
 33044  	}
 33045  	if s.SyncName != nil && len(*s.SyncName) < 1 {
 33046  		invalidParams.Add(request.NewErrParamMinLen("SyncName", 1))
 33047  	}
 33048  	if s.Aggregators != nil {
 33049  		for i, v := range s.Aggregators {
 33050  			if v == nil {
 33051  				continue
 33052  			}
 33053  			if err := v.Validate(); err != nil {
 33054  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Aggregators", i), err.(request.ErrInvalidParams))
 33055  			}
 33056  		}
 33057  	}
 33058  	if s.Filters != nil {
 33059  		for i, v := range s.Filters {
 33060  			if v == nil {
 33061  				continue
 33062  			}
 33063  			if err := v.Validate(); err != nil {
 33064  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 33065  			}
 33066  		}
 33067  	}
 33068  	if s.ResultAttributes != nil {
 33069  		for i, v := range s.ResultAttributes {
 33070  			if v == nil {
 33071  				continue
 33072  			}
 33073  			if err := v.Validate(); err != nil {
 33074  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResultAttributes", i), err.(request.ErrInvalidParams))
 33075  			}
 33076  		}
 33077  	}
 33078  
 33079  	if invalidParams.Len() > 0 {
 33080  		return invalidParams
 33081  	}
 33082  	return nil
 33083  }
 33084  
 33085  // SetAggregators sets the Aggregators field's value.
 33086  func (s *GetOpsSummaryInput) SetAggregators(v []*OpsAggregator) *GetOpsSummaryInput {
 33087  	s.Aggregators = v
 33088  	return s
 33089  }
 33090  
 33091  // SetFilters sets the Filters field's value.
 33092  func (s *GetOpsSummaryInput) SetFilters(v []*OpsFilter) *GetOpsSummaryInput {
 33093  	s.Filters = v
 33094  	return s
 33095  }
 33096  
 33097  // SetMaxResults sets the MaxResults field's value.
 33098  func (s *GetOpsSummaryInput) SetMaxResults(v int64) *GetOpsSummaryInput {
 33099  	s.MaxResults = &v
 33100  	return s
 33101  }
 33102  
 33103  // SetNextToken sets the NextToken field's value.
 33104  func (s *GetOpsSummaryInput) SetNextToken(v string) *GetOpsSummaryInput {
 33105  	s.NextToken = &v
 33106  	return s
 33107  }
 33108  
 33109  // SetResultAttributes sets the ResultAttributes field's value.
 33110  func (s *GetOpsSummaryInput) SetResultAttributes(v []*OpsResultAttribute) *GetOpsSummaryInput {
 33111  	s.ResultAttributes = v
 33112  	return s
 33113  }
 33114  
 33115  // SetSyncName sets the SyncName field's value.
 33116  func (s *GetOpsSummaryInput) SetSyncName(v string) *GetOpsSummaryInput {
 33117  	s.SyncName = &v
 33118  	return s
 33119  }
 33120  
 33121  type GetOpsSummaryOutput struct {
 33122  	_ struct{} `type:"structure"`
 33123  
 33124  	// The list of aggregated details and filtered OpsData.
 33125  	Entities []*OpsEntity `type:"list"`
 33126  
 33127  	// The token for the next set of items to return. Use this token to get the
 33128  	// next set of results.
 33129  	NextToken *string `type:"string"`
 33130  }
 33131  
 33132  // String returns the string representation.
 33133  //
 33134  // API parameter values that are decorated as "sensitive" in the API will not
 33135  // be included in the string output. The member name will be present, but the
 33136  // value will be replaced with "sensitive".
 33137  func (s GetOpsSummaryOutput) String() string {
 33138  	return awsutil.Prettify(s)
 33139  }
 33140  
 33141  // GoString returns the string representation.
 33142  //
 33143  // API parameter values that are decorated as "sensitive" in the API will not
 33144  // be included in the string output. The member name will be present, but the
 33145  // value will be replaced with "sensitive".
 33146  func (s GetOpsSummaryOutput) GoString() string {
 33147  	return s.String()
 33148  }
 33149  
 33150  // SetEntities sets the Entities field's value.
 33151  func (s *GetOpsSummaryOutput) SetEntities(v []*OpsEntity) *GetOpsSummaryOutput {
 33152  	s.Entities = v
 33153  	return s
 33154  }
 33155  
 33156  // SetNextToken sets the NextToken field's value.
 33157  func (s *GetOpsSummaryOutput) SetNextToken(v string) *GetOpsSummaryOutput {
 33158  	s.NextToken = &v
 33159  	return s
 33160  }
 33161  
 33162  type GetParameterHistoryInput struct {
 33163  	_ struct{} `type:"structure"`
 33164  
 33165  	// The maximum number of items to return for this call. The call also returns
 33166  	// a token that you can specify in a subsequent call to get the next set of
 33167  	// results.
 33168  	MaxResults *int64 `min:"1" type:"integer"`
 33169  
 33170  	// The name of the parameter for which you want to review history.
 33171  	//
 33172  	// Name is a required field
 33173  	Name *string `min:"1" type:"string" required:"true"`
 33174  
 33175  	// The token for the next set of items to return. (You received this token from
 33176  	// a previous call.)
 33177  	NextToken *string `type:"string"`
 33178  
 33179  	// Return decrypted values for secure string parameters. This flag is ignored
 33180  	// for String and StringList parameter types.
 33181  	WithDecryption *bool `type:"boolean"`
 33182  }
 33183  
 33184  // String returns the string representation.
 33185  //
 33186  // API parameter values that are decorated as "sensitive" in the API will not
 33187  // be included in the string output. The member name will be present, but the
 33188  // value will be replaced with "sensitive".
 33189  func (s GetParameterHistoryInput) String() string {
 33190  	return awsutil.Prettify(s)
 33191  }
 33192  
 33193  // GoString returns the string representation.
 33194  //
 33195  // API parameter values that are decorated as "sensitive" in the API will not
 33196  // be included in the string output. The member name will be present, but the
 33197  // value will be replaced with "sensitive".
 33198  func (s GetParameterHistoryInput) GoString() string {
 33199  	return s.String()
 33200  }
 33201  
 33202  // Validate inspects the fields of the type to determine if they are valid.
 33203  func (s *GetParameterHistoryInput) Validate() error {
 33204  	invalidParams := request.ErrInvalidParams{Context: "GetParameterHistoryInput"}
 33205  	if s.MaxResults != nil && *s.MaxResults < 1 {
 33206  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 33207  	}
 33208  	if s.Name == nil {
 33209  		invalidParams.Add(request.NewErrParamRequired("Name"))
 33210  	}
 33211  	if s.Name != nil && len(*s.Name) < 1 {
 33212  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 33213  	}
 33214  
 33215  	if invalidParams.Len() > 0 {
 33216  		return invalidParams
 33217  	}
 33218  	return nil
 33219  }
 33220  
 33221  // SetMaxResults sets the MaxResults field's value.
 33222  func (s *GetParameterHistoryInput) SetMaxResults(v int64) *GetParameterHistoryInput {
 33223  	s.MaxResults = &v
 33224  	return s
 33225  }
 33226  
 33227  // SetName sets the Name field's value.
 33228  func (s *GetParameterHistoryInput) SetName(v string) *GetParameterHistoryInput {
 33229  	s.Name = &v
 33230  	return s
 33231  }
 33232  
 33233  // SetNextToken sets the NextToken field's value.
 33234  func (s *GetParameterHistoryInput) SetNextToken(v string) *GetParameterHistoryInput {
 33235  	s.NextToken = &v
 33236  	return s
 33237  }
 33238  
 33239  // SetWithDecryption sets the WithDecryption field's value.
 33240  func (s *GetParameterHistoryInput) SetWithDecryption(v bool) *GetParameterHistoryInput {
 33241  	s.WithDecryption = &v
 33242  	return s
 33243  }
 33244  
 33245  type GetParameterHistoryOutput struct {
 33246  	_ struct{} `type:"structure"`
 33247  
 33248  	// The token to use when requesting the next set of items. If there are no additional
 33249  	// items to return, the string is empty.
 33250  	NextToken *string `type:"string"`
 33251  
 33252  	// A list of parameters returned by the request.
 33253  	Parameters []*ParameterHistory `type:"list"`
 33254  }
 33255  
 33256  // String returns the string representation.
 33257  //
 33258  // API parameter values that are decorated as "sensitive" in the API will not
 33259  // be included in the string output. The member name will be present, but the
 33260  // value will be replaced with "sensitive".
 33261  func (s GetParameterHistoryOutput) String() string {
 33262  	return awsutil.Prettify(s)
 33263  }
 33264  
 33265  // GoString returns the string representation.
 33266  //
 33267  // API parameter values that are decorated as "sensitive" in the API will not
 33268  // be included in the string output. The member name will be present, but the
 33269  // value will be replaced with "sensitive".
 33270  func (s GetParameterHistoryOutput) GoString() string {
 33271  	return s.String()
 33272  }
 33273  
 33274  // SetNextToken sets the NextToken field's value.
 33275  func (s *GetParameterHistoryOutput) SetNextToken(v string) *GetParameterHistoryOutput {
 33276  	s.NextToken = &v
 33277  	return s
 33278  }
 33279  
 33280  // SetParameters sets the Parameters field's value.
 33281  func (s *GetParameterHistoryOutput) SetParameters(v []*ParameterHistory) *GetParameterHistoryOutput {
 33282  	s.Parameters = v
 33283  	return s
 33284  }
 33285  
 33286  type GetParameterInput struct {
 33287  	_ struct{} `type:"structure"`
 33288  
 33289  	// The name of the parameter you want to query.
 33290  	//
 33291  	// To query by parameter label, use "Name": "name:label". To query by parameter
 33292  	// version, use "Name": "name:version".
 33293  	//
 33294  	// Name is a required field
 33295  	Name *string `min:"1" type:"string" required:"true"`
 33296  
 33297  	// Return decrypted values for secure string parameters. This flag is ignored
 33298  	// for String and StringList parameter types.
 33299  	WithDecryption *bool `type:"boolean"`
 33300  }
 33301  
 33302  // String returns the string representation.
 33303  //
 33304  // API parameter values that are decorated as "sensitive" in the API will not
 33305  // be included in the string output. The member name will be present, but the
 33306  // value will be replaced with "sensitive".
 33307  func (s GetParameterInput) String() string {
 33308  	return awsutil.Prettify(s)
 33309  }
 33310  
 33311  // GoString returns the string representation.
 33312  //
 33313  // API parameter values that are decorated as "sensitive" in the API will not
 33314  // be included in the string output. The member name will be present, but the
 33315  // value will be replaced with "sensitive".
 33316  func (s GetParameterInput) GoString() string {
 33317  	return s.String()
 33318  }
 33319  
 33320  // Validate inspects the fields of the type to determine if they are valid.
 33321  func (s *GetParameterInput) Validate() error {
 33322  	invalidParams := request.ErrInvalidParams{Context: "GetParameterInput"}
 33323  	if s.Name == nil {
 33324  		invalidParams.Add(request.NewErrParamRequired("Name"))
 33325  	}
 33326  	if s.Name != nil && len(*s.Name) < 1 {
 33327  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 33328  	}
 33329  
 33330  	if invalidParams.Len() > 0 {
 33331  		return invalidParams
 33332  	}
 33333  	return nil
 33334  }
 33335  
 33336  // SetName sets the Name field's value.
 33337  func (s *GetParameterInput) SetName(v string) *GetParameterInput {
 33338  	s.Name = &v
 33339  	return s
 33340  }
 33341  
 33342  // SetWithDecryption sets the WithDecryption field's value.
 33343  func (s *GetParameterInput) SetWithDecryption(v bool) *GetParameterInput {
 33344  	s.WithDecryption = &v
 33345  	return s
 33346  }
 33347  
 33348  type GetParameterOutput struct {
 33349  	_ struct{} `type:"structure"`
 33350  
 33351  	// Information about a parameter.
 33352  	Parameter *Parameter `type:"structure"`
 33353  }
 33354  
 33355  // String returns the string representation.
 33356  //
 33357  // API parameter values that are decorated as "sensitive" in the API will not
 33358  // be included in the string output. The member name will be present, but the
 33359  // value will be replaced with "sensitive".
 33360  func (s GetParameterOutput) String() string {
 33361  	return awsutil.Prettify(s)
 33362  }
 33363  
 33364  // GoString returns the string representation.
 33365  //
 33366  // API parameter values that are decorated as "sensitive" in the API will not
 33367  // be included in the string output. The member name will be present, but the
 33368  // value will be replaced with "sensitive".
 33369  func (s GetParameterOutput) GoString() string {
 33370  	return s.String()
 33371  }
 33372  
 33373  // SetParameter sets the Parameter field's value.
 33374  func (s *GetParameterOutput) SetParameter(v *Parameter) *GetParameterOutput {
 33375  	s.Parameter = v
 33376  	return s
 33377  }
 33378  
 33379  type GetParametersByPathInput struct {
 33380  	_ struct{} `type:"structure"`
 33381  
 33382  	// The maximum number of items to return for this call. The call also returns
 33383  	// a token that you can specify in a subsequent call to get the next set of
 33384  	// results.
 33385  	MaxResults *int64 `min:"1" type:"integer"`
 33386  
 33387  	// A token to start the list. Use this token to get the next set of results.
 33388  	NextToken *string `type:"string"`
 33389  
 33390  	// Filters to limit the request results.
 33391  	//
 33392  	// The following Key values are supported for GetParametersByPath: Type, KeyId,
 33393  	// and Label.
 33394  	//
 33395  	// The following Key values aren't supported for GetParametersByPath: tag, DataType,
 33396  	// Name, Path, and Tier.
 33397  	ParameterFilters []*ParameterStringFilter `type:"list"`
 33398  
 33399  	// The hierarchy for the parameter. Hierarchies start with a forward slash (/).
 33400  	// The hierachy is the parameter name except the last part of the parameter.
 33401  	// For the API call to succeeed, the last part of the parameter name can't be
 33402  	// in the path. A parameter name hierarchy can have a maximum of 15 levels.
 33403  	// Here is an example of a hierarchy: /Finance/Prod/IAD/WinServ2016/license33
 33404  	//
 33405  	// Path is a required field
 33406  	Path *string `min:"1" type:"string" required:"true"`
 33407  
 33408  	// Retrieve all parameters within a hierarchy.
 33409  	//
 33410  	// If a user has access to a path, then the user can access all levels of that
 33411  	// path. For example, if a user has permission to access path /a, then the user
 33412  	// can also access /a/b. Even if a user has explicitly been denied access in
 33413  	// IAM for parameter /a/b, they can still call the GetParametersByPath API operation
 33414  	// recursively for /a and view /a/b.
 33415  	Recursive *bool `type:"boolean"`
 33416  
 33417  	// Retrieve all parameters in a hierarchy with their value decrypted.
 33418  	WithDecryption *bool `type:"boolean"`
 33419  }
 33420  
 33421  // String returns the string representation.
 33422  //
 33423  // API parameter values that are decorated as "sensitive" in the API will not
 33424  // be included in the string output. The member name will be present, but the
 33425  // value will be replaced with "sensitive".
 33426  func (s GetParametersByPathInput) String() string {
 33427  	return awsutil.Prettify(s)
 33428  }
 33429  
 33430  // GoString returns the string representation.
 33431  //
 33432  // API parameter values that are decorated as "sensitive" in the API will not
 33433  // be included in the string output. The member name will be present, but the
 33434  // value will be replaced with "sensitive".
 33435  func (s GetParametersByPathInput) GoString() string {
 33436  	return s.String()
 33437  }
 33438  
 33439  // Validate inspects the fields of the type to determine if they are valid.
 33440  func (s *GetParametersByPathInput) Validate() error {
 33441  	invalidParams := request.ErrInvalidParams{Context: "GetParametersByPathInput"}
 33442  	if s.MaxResults != nil && *s.MaxResults < 1 {
 33443  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 33444  	}
 33445  	if s.Path == nil {
 33446  		invalidParams.Add(request.NewErrParamRequired("Path"))
 33447  	}
 33448  	if s.Path != nil && len(*s.Path) < 1 {
 33449  		invalidParams.Add(request.NewErrParamMinLen("Path", 1))
 33450  	}
 33451  	if s.ParameterFilters != nil {
 33452  		for i, v := range s.ParameterFilters {
 33453  			if v == nil {
 33454  				continue
 33455  			}
 33456  			if err := v.Validate(); err != nil {
 33457  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParameterFilters", i), err.(request.ErrInvalidParams))
 33458  			}
 33459  		}
 33460  	}
 33461  
 33462  	if invalidParams.Len() > 0 {
 33463  		return invalidParams
 33464  	}
 33465  	return nil
 33466  }
 33467  
 33468  // SetMaxResults sets the MaxResults field's value.
 33469  func (s *GetParametersByPathInput) SetMaxResults(v int64) *GetParametersByPathInput {
 33470  	s.MaxResults = &v
 33471  	return s
 33472  }
 33473  
 33474  // SetNextToken sets the NextToken field's value.
 33475  func (s *GetParametersByPathInput) SetNextToken(v string) *GetParametersByPathInput {
 33476  	s.NextToken = &v
 33477  	return s
 33478  }
 33479  
 33480  // SetParameterFilters sets the ParameterFilters field's value.
 33481  func (s *GetParametersByPathInput) SetParameterFilters(v []*ParameterStringFilter) *GetParametersByPathInput {
 33482  	s.ParameterFilters = v
 33483  	return s
 33484  }
 33485  
 33486  // SetPath sets the Path field's value.
 33487  func (s *GetParametersByPathInput) SetPath(v string) *GetParametersByPathInput {
 33488  	s.Path = &v
 33489  	return s
 33490  }
 33491  
 33492  // SetRecursive sets the Recursive field's value.
 33493  func (s *GetParametersByPathInput) SetRecursive(v bool) *GetParametersByPathInput {
 33494  	s.Recursive = &v
 33495  	return s
 33496  }
 33497  
 33498  // SetWithDecryption sets the WithDecryption field's value.
 33499  func (s *GetParametersByPathInput) SetWithDecryption(v bool) *GetParametersByPathInput {
 33500  	s.WithDecryption = &v
 33501  	return s
 33502  }
 33503  
 33504  type GetParametersByPathOutput struct {
 33505  	_ struct{} `type:"structure"`
 33506  
 33507  	// The token for the next set of items to return. Use this token to get the
 33508  	// next set of results.
 33509  	NextToken *string `type:"string"`
 33510  
 33511  	// A list of parameters found in the specified hierarchy.
 33512  	Parameters []*Parameter `type:"list"`
 33513  }
 33514  
 33515  // String returns the string representation.
 33516  //
 33517  // API parameter values that are decorated as "sensitive" in the API will not
 33518  // be included in the string output. The member name will be present, but the
 33519  // value will be replaced with "sensitive".
 33520  func (s GetParametersByPathOutput) String() string {
 33521  	return awsutil.Prettify(s)
 33522  }
 33523  
 33524  // GoString returns the string representation.
 33525  //
 33526  // API parameter values that are decorated as "sensitive" in the API will not
 33527  // be included in the string output. The member name will be present, but the
 33528  // value will be replaced with "sensitive".
 33529  func (s GetParametersByPathOutput) GoString() string {
 33530  	return s.String()
 33531  }
 33532  
 33533  // SetNextToken sets the NextToken field's value.
 33534  func (s *GetParametersByPathOutput) SetNextToken(v string) *GetParametersByPathOutput {
 33535  	s.NextToken = &v
 33536  	return s
 33537  }
 33538  
 33539  // SetParameters sets the Parameters field's value.
 33540  func (s *GetParametersByPathOutput) SetParameters(v []*Parameter) *GetParametersByPathOutput {
 33541  	s.Parameters = v
 33542  	return s
 33543  }
 33544  
 33545  type GetParametersInput struct {
 33546  	_ struct{} `type:"structure"`
 33547  
 33548  	// Names of the parameters for which you want to query information.
 33549  	//
 33550  	// To query by parameter label, use "Name": "name:label". To query by parameter
 33551  	// version, use "Name": "name:version".
 33552  	//
 33553  	// Names is a required field
 33554  	Names []*string `min:"1" type:"list" required:"true"`
 33555  
 33556  	// Return decrypted secure string value. Return decrypted values for secure
 33557  	// string parameters. This flag is ignored for String and StringList parameter
 33558  	// types.
 33559  	WithDecryption *bool `type:"boolean"`
 33560  }
 33561  
 33562  // String returns the string representation.
 33563  //
 33564  // API parameter values that are decorated as "sensitive" in the API will not
 33565  // be included in the string output. The member name will be present, but the
 33566  // value will be replaced with "sensitive".
 33567  func (s GetParametersInput) String() string {
 33568  	return awsutil.Prettify(s)
 33569  }
 33570  
 33571  // GoString returns the string representation.
 33572  //
 33573  // API parameter values that are decorated as "sensitive" in the API will not
 33574  // be included in the string output. The member name will be present, but the
 33575  // value will be replaced with "sensitive".
 33576  func (s GetParametersInput) GoString() string {
 33577  	return s.String()
 33578  }
 33579  
 33580  // Validate inspects the fields of the type to determine if they are valid.
 33581  func (s *GetParametersInput) Validate() error {
 33582  	invalidParams := request.ErrInvalidParams{Context: "GetParametersInput"}
 33583  	if s.Names == nil {
 33584  		invalidParams.Add(request.NewErrParamRequired("Names"))
 33585  	}
 33586  	if s.Names != nil && len(s.Names) < 1 {
 33587  		invalidParams.Add(request.NewErrParamMinLen("Names", 1))
 33588  	}
 33589  
 33590  	if invalidParams.Len() > 0 {
 33591  		return invalidParams
 33592  	}
 33593  	return nil
 33594  }
 33595  
 33596  // SetNames sets the Names field's value.
 33597  func (s *GetParametersInput) SetNames(v []*string) *GetParametersInput {
 33598  	s.Names = v
 33599  	return s
 33600  }
 33601  
 33602  // SetWithDecryption sets the WithDecryption field's value.
 33603  func (s *GetParametersInput) SetWithDecryption(v bool) *GetParametersInput {
 33604  	s.WithDecryption = &v
 33605  	return s
 33606  }
 33607  
 33608  type GetParametersOutput struct {
 33609  	_ struct{} `type:"structure"`
 33610  
 33611  	// A list of parameters that aren't formatted correctly or don't run during
 33612  	// an execution.
 33613  	InvalidParameters []*string `min:"1" type:"list"`
 33614  
 33615  	// A list of details for a parameter.
 33616  	Parameters []*Parameter `type:"list"`
 33617  }
 33618  
 33619  // String returns the string representation.
 33620  //
 33621  // API parameter values that are decorated as "sensitive" in the API will not
 33622  // be included in the string output. The member name will be present, but the
 33623  // value will be replaced with "sensitive".
 33624  func (s GetParametersOutput) String() string {
 33625  	return awsutil.Prettify(s)
 33626  }
 33627  
 33628  // GoString returns the string representation.
 33629  //
 33630  // API parameter values that are decorated as "sensitive" in the API will not
 33631  // be included in the string output. The member name will be present, but the
 33632  // value will be replaced with "sensitive".
 33633  func (s GetParametersOutput) GoString() string {
 33634  	return s.String()
 33635  }
 33636  
 33637  // SetInvalidParameters sets the InvalidParameters field's value.
 33638  func (s *GetParametersOutput) SetInvalidParameters(v []*string) *GetParametersOutput {
 33639  	s.InvalidParameters = v
 33640  	return s
 33641  }
 33642  
 33643  // SetParameters sets the Parameters field's value.
 33644  func (s *GetParametersOutput) SetParameters(v []*Parameter) *GetParametersOutput {
 33645  	s.Parameters = v
 33646  	return s
 33647  }
 33648  
 33649  type GetPatchBaselineForPatchGroupInput struct {
 33650  	_ struct{} `type:"structure"`
 33651  
 33652  	// Returns he operating system rule specified for patch groups using the patch
 33653  	// baseline.
 33654  	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
 33655  
 33656  	// The name of the patch group whose patch baseline should be retrieved.
 33657  	//
 33658  	// PatchGroup is a required field
 33659  	PatchGroup *string `min:"1" type:"string" required:"true"`
 33660  }
 33661  
 33662  // String returns the string representation.
 33663  //
 33664  // API parameter values that are decorated as "sensitive" in the API will not
 33665  // be included in the string output. The member name will be present, but the
 33666  // value will be replaced with "sensitive".
 33667  func (s GetPatchBaselineForPatchGroupInput) String() string {
 33668  	return awsutil.Prettify(s)
 33669  }
 33670  
 33671  // GoString returns the string representation.
 33672  //
 33673  // API parameter values that are decorated as "sensitive" in the API will not
 33674  // be included in the string output. The member name will be present, but the
 33675  // value will be replaced with "sensitive".
 33676  func (s GetPatchBaselineForPatchGroupInput) GoString() string {
 33677  	return s.String()
 33678  }
 33679  
 33680  // Validate inspects the fields of the type to determine if they are valid.
 33681  func (s *GetPatchBaselineForPatchGroupInput) Validate() error {
 33682  	invalidParams := request.ErrInvalidParams{Context: "GetPatchBaselineForPatchGroupInput"}
 33683  	if s.PatchGroup == nil {
 33684  		invalidParams.Add(request.NewErrParamRequired("PatchGroup"))
 33685  	}
 33686  	if s.PatchGroup != nil && len(*s.PatchGroup) < 1 {
 33687  		invalidParams.Add(request.NewErrParamMinLen("PatchGroup", 1))
 33688  	}
 33689  
 33690  	if invalidParams.Len() > 0 {
 33691  		return invalidParams
 33692  	}
 33693  	return nil
 33694  }
 33695  
 33696  // SetOperatingSystem sets the OperatingSystem field's value.
 33697  func (s *GetPatchBaselineForPatchGroupInput) SetOperatingSystem(v string) *GetPatchBaselineForPatchGroupInput {
 33698  	s.OperatingSystem = &v
 33699  	return s
 33700  }
 33701  
 33702  // SetPatchGroup sets the PatchGroup field's value.
 33703  func (s *GetPatchBaselineForPatchGroupInput) SetPatchGroup(v string) *GetPatchBaselineForPatchGroupInput {
 33704  	s.PatchGroup = &v
 33705  	return s
 33706  }
 33707  
 33708  type GetPatchBaselineForPatchGroupOutput struct {
 33709  	_ struct{} `type:"structure"`
 33710  
 33711  	// The ID of the patch baseline that should be used for the patch group.
 33712  	BaselineId *string `min:"20" type:"string"`
 33713  
 33714  	// The operating system rule specified for patch groups using the patch baseline.
 33715  	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
 33716  
 33717  	// The name of the patch group.
 33718  	PatchGroup *string `min:"1" type:"string"`
 33719  }
 33720  
 33721  // String returns the string representation.
 33722  //
 33723  // API parameter values that are decorated as "sensitive" in the API will not
 33724  // be included in the string output. The member name will be present, but the
 33725  // value will be replaced with "sensitive".
 33726  func (s GetPatchBaselineForPatchGroupOutput) String() string {
 33727  	return awsutil.Prettify(s)
 33728  }
 33729  
 33730  // GoString returns the string representation.
 33731  //
 33732  // API parameter values that are decorated as "sensitive" in the API will not
 33733  // be included in the string output. The member name will be present, but the
 33734  // value will be replaced with "sensitive".
 33735  func (s GetPatchBaselineForPatchGroupOutput) GoString() string {
 33736  	return s.String()
 33737  }
 33738  
 33739  // SetBaselineId sets the BaselineId field's value.
 33740  func (s *GetPatchBaselineForPatchGroupOutput) SetBaselineId(v string) *GetPatchBaselineForPatchGroupOutput {
 33741  	s.BaselineId = &v
 33742  	return s
 33743  }
 33744  
 33745  // SetOperatingSystem sets the OperatingSystem field's value.
 33746  func (s *GetPatchBaselineForPatchGroupOutput) SetOperatingSystem(v string) *GetPatchBaselineForPatchGroupOutput {
 33747  	s.OperatingSystem = &v
 33748  	return s
 33749  }
 33750  
 33751  // SetPatchGroup sets the PatchGroup field's value.
 33752  func (s *GetPatchBaselineForPatchGroupOutput) SetPatchGroup(v string) *GetPatchBaselineForPatchGroupOutput {
 33753  	s.PatchGroup = &v
 33754  	return s
 33755  }
 33756  
 33757  type GetPatchBaselineInput struct {
 33758  	_ struct{} `type:"structure"`
 33759  
 33760  	// The ID of the patch baseline to retrieve.
 33761  	//
 33762  	// To retrieve information about an Amazon Web Services managed patch baseline,
 33763  	// specify the full Amazon Resource Name (ARN) of the baseline. For example,
 33764  	// for the baseline AWS-AmazonLinuxDefaultPatchBaseline, specify arn:aws:ssm:us-east-2:733109147000:patchbaseline/pb-0e392de35e7c563b7
 33765  	// instead of pb-0e392de35e7c563b7.
 33766  	//
 33767  	// BaselineId is a required field
 33768  	BaselineId *string `min:"20" type:"string" required:"true"`
 33769  }
 33770  
 33771  // String returns the string representation.
 33772  //
 33773  // API parameter values that are decorated as "sensitive" in the API will not
 33774  // be included in the string output. The member name will be present, but the
 33775  // value will be replaced with "sensitive".
 33776  func (s GetPatchBaselineInput) String() string {
 33777  	return awsutil.Prettify(s)
 33778  }
 33779  
 33780  // GoString returns the string representation.
 33781  //
 33782  // API parameter values that are decorated as "sensitive" in the API will not
 33783  // be included in the string output. The member name will be present, but the
 33784  // value will be replaced with "sensitive".
 33785  func (s GetPatchBaselineInput) GoString() string {
 33786  	return s.String()
 33787  }
 33788  
 33789  // Validate inspects the fields of the type to determine if they are valid.
 33790  func (s *GetPatchBaselineInput) Validate() error {
 33791  	invalidParams := request.ErrInvalidParams{Context: "GetPatchBaselineInput"}
 33792  	if s.BaselineId == nil {
 33793  		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
 33794  	}
 33795  	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
 33796  		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
 33797  	}
 33798  
 33799  	if invalidParams.Len() > 0 {
 33800  		return invalidParams
 33801  	}
 33802  	return nil
 33803  }
 33804  
 33805  // SetBaselineId sets the BaselineId field's value.
 33806  func (s *GetPatchBaselineInput) SetBaselineId(v string) *GetPatchBaselineInput {
 33807  	s.BaselineId = &v
 33808  	return s
 33809  }
 33810  
 33811  type GetPatchBaselineOutput struct {
 33812  	_ struct{} `type:"structure"`
 33813  
 33814  	// A set of rules used to include patches in the baseline.
 33815  	ApprovalRules *PatchRuleGroup `type:"structure"`
 33816  
 33817  	// A list of explicitly approved patches for the baseline.
 33818  	ApprovedPatches []*string `type:"list"`
 33819  
 33820  	// Returns the specified compliance severity level for approved patches in the
 33821  	// patch baseline.
 33822  	ApprovedPatchesComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
 33823  
 33824  	// Indicates whether the list of approved patches includes non-security updates
 33825  	// that should be applied to the instances. The default value is false. Applies
 33826  	// to Linux instances only.
 33827  	ApprovedPatchesEnableNonSecurity *bool `type:"boolean"`
 33828  
 33829  	// The ID of the retrieved patch baseline.
 33830  	BaselineId *string `min:"20" type:"string"`
 33831  
 33832  	// The date the patch baseline was created.
 33833  	CreatedDate *time.Time `type:"timestamp"`
 33834  
 33835  	// A description of the patch baseline.
 33836  	Description *string `min:"1" type:"string"`
 33837  
 33838  	// A set of global filters used to exclude patches from the baseline.
 33839  	GlobalFilters *PatchFilterGroup `type:"structure"`
 33840  
 33841  	// The date the patch baseline was last modified.
 33842  	ModifiedDate *time.Time `type:"timestamp"`
 33843  
 33844  	// The name of the patch baseline.
 33845  	Name *string `min:"3" type:"string"`
 33846  
 33847  	// Returns the operating system specified for the patch baseline.
 33848  	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
 33849  
 33850  	// Patch groups included in the patch baseline.
 33851  	PatchGroups []*string `type:"list"`
 33852  
 33853  	// A list of explicitly rejected patches for the baseline.
 33854  	RejectedPatches []*string `type:"list"`
 33855  
 33856  	// The action specified to take on patches included in the RejectedPatches list.
 33857  	// A patch can be allowed only if it is a dependency of another package, or
 33858  	// blocked entirely along with packages that include it as a dependency.
 33859  	RejectedPatchesAction *string `type:"string" enum:"PatchAction"`
 33860  
 33861  	// Information about the patches to use to update the instances, including target
 33862  	// operating systems and source repositories. Applies to Linux instances only.
 33863  	Sources []*PatchSource `type:"list"`
 33864  }
 33865  
 33866  // String returns the string representation.
 33867  //
 33868  // API parameter values that are decorated as "sensitive" in the API will not
 33869  // be included in the string output. The member name will be present, but the
 33870  // value will be replaced with "sensitive".
 33871  func (s GetPatchBaselineOutput) String() string {
 33872  	return awsutil.Prettify(s)
 33873  }
 33874  
 33875  // GoString returns the string representation.
 33876  //
 33877  // API parameter values that are decorated as "sensitive" in the API will not
 33878  // be included in the string output. The member name will be present, but the
 33879  // value will be replaced with "sensitive".
 33880  func (s GetPatchBaselineOutput) GoString() string {
 33881  	return s.String()
 33882  }
 33883  
 33884  // SetApprovalRules sets the ApprovalRules field's value.
 33885  func (s *GetPatchBaselineOutput) SetApprovalRules(v *PatchRuleGroup) *GetPatchBaselineOutput {
 33886  	s.ApprovalRules = v
 33887  	return s
 33888  }
 33889  
 33890  // SetApprovedPatches sets the ApprovedPatches field's value.
 33891  func (s *GetPatchBaselineOutput) SetApprovedPatches(v []*string) *GetPatchBaselineOutput {
 33892  	s.ApprovedPatches = v
 33893  	return s
 33894  }
 33895  
 33896  // SetApprovedPatchesComplianceLevel sets the ApprovedPatchesComplianceLevel field's value.
 33897  func (s *GetPatchBaselineOutput) SetApprovedPatchesComplianceLevel(v string) *GetPatchBaselineOutput {
 33898  	s.ApprovedPatchesComplianceLevel = &v
 33899  	return s
 33900  }
 33901  
 33902  // SetApprovedPatchesEnableNonSecurity sets the ApprovedPatchesEnableNonSecurity field's value.
 33903  func (s *GetPatchBaselineOutput) SetApprovedPatchesEnableNonSecurity(v bool) *GetPatchBaselineOutput {
 33904  	s.ApprovedPatchesEnableNonSecurity = &v
 33905  	return s
 33906  }
 33907  
 33908  // SetBaselineId sets the BaselineId field's value.
 33909  func (s *GetPatchBaselineOutput) SetBaselineId(v string) *GetPatchBaselineOutput {
 33910  	s.BaselineId = &v
 33911  	return s
 33912  }
 33913  
 33914  // SetCreatedDate sets the CreatedDate field's value.
 33915  func (s *GetPatchBaselineOutput) SetCreatedDate(v time.Time) *GetPatchBaselineOutput {
 33916  	s.CreatedDate = &v
 33917  	return s
 33918  }
 33919  
 33920  // SetDescription sets the Description field's value.
 33921  func (s *GetPatchBaselineOutput) SetDescription(v string) *GetPatchBaselineOutput {
 33922  	s.Description = &v
 33923  	return s
 33924  }
 33925  
 33926  // SetGlobalFilters sets the GlobalFilters field's value.
 33927  func (s *GetPatchBaselineOutput) SetGlobalFilters(v *PatchFilterGroup) *GetPatchBaselineOutput {
 33928  	s.GlobalFilters = v
 33929  	return s
 33930  }
 33931  
 33932  // SetModifiedDate sets the ModifiedDate field's value.
 33933  func (s *GetPatchBaselineOutput) SetModifiedDate(v time.Time) *GetPatchBaselineOutput {
 33934  	s.ModifiedDate = &v
 33935  	return s
 33936  }
 33937  
 33938  // SetName sets the Name field's value.
 33939  func (s *GetPatchBaselineOutput) SetName(v string) *GetPatchBaselineOutput {
 33940  	s.Name = &v
 33941  	return s
 33942  }
 33943  
 33944  // SetOperatingSystem sets the OperatingSystem field's value.
 33945  func (s *GetPatchBaselineOutput) SetOperatingSystem(v string) *GetPatchBaselineOutput {
 33946  	s.OperatingSystem = &v
 33947  	return s
 33948  }
 33949  
 33950  // SetPatchGroups sets the PatchGroups field's value.
 33951  func (s *GetPatchBaselineOutput) SetPatchGroups(v []*string) *GetPatchBaselineOutput {
 33952  	s.PatchGroups = v
 33953  	return s
 33954  }
 33955  
 33956  // SetRejectedPatches sets the RejectedPatches field's value.
 33957  func (s *GetPatchBaselineOutput) SetRejectedPatches(v []*string) *GetPatchBaselineOutput {
 33958  	s.RejectedPatches = v
 33959  	return s
 33960  }
 33961  
 33962  // SetRejectedPatchesAction sets the RejectedPatchesAction field's value.
 33963  func (s *GetPatchBaselineOutput) SetRejectedPatchesAction(v string) *GetPatchBaselineOutput {
 33964  	s.RejectedPatchesAction = &v
 33965  	return s
 33966  }
 33967  
 33968  // SetSources sets the Sources field's value.
 33969  func (s *GetPatchBaselineOutput) SetSources(v []*PatchSource) *GetPatchBaselineOutput {
 33970  	s.Sources = v
 33971  	return s
 33972  }
 33973  
 33974  // The request body of the GetServiceSetting API operation.
 33975  type GetServiceSettingInput struct {
 33976  	_ struct{} `type:"structure"`
 33977  
 33978  	// The ID of the service setting to get. The setting ID can be one of the following.
 33979  	//
 33980  	//    * /ssm/automation/customer-script-log-destination
 33981  	//
 33982  	//    * /ssm/automation/customer-script-log-group-name
 33983  	//
 33984  	//    * /ssm/documents/console/public-sharing-permission
 33985  	//
 33986  	//    * /ssm/parameter-store/default-parameter-tier
 33987  	//
 33988  	//    * /ssm/parameter-store/high-throughput-enabled
 33989  	//
 33990  	//    * /ssm/managed-instance/activation-tier
 33991  	//
 33992  	// SettingId is a required field
 33993  	SettingId *string `min:"1" type:"string" required:"true"`
 33994  }
 33995  
 33996  // String returns the string representation.
 33997  //
 33998  // API parameter values that are decorated as "sensitive" in the API will not
 33999  // be included in the string output. The member name will be present, but the
 34000  // value will be replaced with "sensitive".
 34001  func (s GetServiceSettingInput) String() string {
 34002  	return awsutil.Prettify(s)
 34003  }
 34004  
 34005  // GoString returns the string representation.
 34006  //
 34007  // API parameter values that are decorated as "sensitive" in the API will not
 34008  // be included in the string output. The member name will be present, but the
 34009  // value will be replaced with "sensitive".
 34010  func (s GetServiceSettingInput) GoString() string {
 34011  	return s.String()
 34012  }
 34013  
 34014  // Validate inspects the fields of the type to determine if they are valid.
 34015  func (s *GetServiceSettingInput) Validate() error {
 34016  	invalidParams := request.ErrInvalidParams{Context: "GetServiceSettingInput"}
 34017  	if s.SettingId == nil {
 34018  		invalidParams.Add(request.NewErrParamRequired("SettingId"))
 34019  	}
 34020  	if s.SettingId != nil && len(*s.SettingId) < 1 {
 34021  		invalidParams.Add(request.NewErrParamMinLen("SettingId", 1))
 34022  	}
 34023  
 34024  	if invalidParams.Len() > 0 {
 34025  		return invalidParams
 34026  	}
 34027  	return nil
 34028  }
 34029  
 34030  // SetSettingId sets the SettingId field's value.
 34031  func (s *GetServiceSettingInput) SetSettingId(v string) *GetServiceSettingInput {
 34032  	s.SettingId = &v
 34033  	return s
 34034  }
 34035  
 34036  // The query result body of the GetServiceSetting API operation.
 34037  type GetServiceSettingOutput struct {
 34038  	_ struct{} `type:"structure"`
 34039  
 34040  	// The query result of the current service setting.
 34041  	ServiceSetting *ServiceSetting `type:"structure"`
 34042  }
 34043  
 34044  // String returns the string representation.
 34045  //
 34046  // API parameter values that are decorated as "sensitive" in the API will not
 34047  // be included in the string output. The member name will be present, but the
 34048  // value will be replaced with "sensitive".
 34049  func (s GetServiceSettingOutput) String() string {
 34050  	return awsutil.Prettify(s)
 34051  }
 34052  
 34053  // GoString returns the string representation.
 34054  //
 34055  // API parameter values that are decorated as "sensitive" in the API will not
 34056  // be included in the string output. The member name will be present, but the
 34057  // value will be replaced with "sensitive".
 34058  func (s GetServiceSettingOutput) GoString() string {
 34059  	return s.String()
 34060  }
 34061  
 34062  // SetServiceSetting sets the ServiceSetting field's value.
 34063  func (s *GetServiceSettingOutput) SetServiceSetting(v *ServiceSetting) *GetServiceSettingOutput {
 34064  	s.ServiceSetting = v
 34065  	return s
 34066  }
 34067  
 34068  // A hierarchy can have a maximum of 15 levels. For more information, see Requirements
 34069  // and constraints for parameter names (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html)
 34070  // in the Amazon Web Services Systems Manager User Guide.
 34071  type HierarchyLevelLimitExceededException struct {
 34072  	_            struct{}                  `type:"structure"`
 34073  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 34074  
 34075  	// A hierarchy can have a maximum of 15 levels. For more information, see Requirements
 34076  	// and constraints for parameter names (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html)
 34077  	// in the Amazon Web Services Systems Manager User Guide.
 34078  	Message_ *string `locationName:"message" type:"string"`
 34079  }
 34080  
 34081  // String returns the string representation.
 34082  //
 34083  // API parameter values that are decorated as "sensitive" in the API will not
 34084  // be included in the string output. The member name will be present, but the
 34085  // value will be replaced with "sensitive".
 34086  func (s HierarchyLevelLimitExceededException) String() string {
 34087  	return awsutil.Prettify(s)
 34088  }
 34089  
 34090  // GoString returns the string representation.
 34091  //
 34092  // API parameter values that are decorated as "sensitive" in the API will not
 34093  // be included in the string output. The member name will be present, but the
 34094  // value will be replaced with "sensitive".
 34095  func (s HierarchyLevelLimitExceededException) GoString() string {
 34096  	return s.String()
 34097  }
 34098  
 34099  func newErrorHierarchyLevelLimitExceededException(v protocol.ResponseMetadata) error {
 34100  	return &HierarchyLevelLimitExceededException{
 34101  		RespMetadata: v,
 34102  	}
 34103  }
 34104  
 34105  // Code returns the exception type name.
 34106  func (s *HierarchyLevelLimitExceededException) Code() string {
 34107  	return "HierarchyLevelLimitExceededException"
 34108  }
 34109  
 34110  // Message returns the exception's message.
 34111  func (s *HierarchyLevelLimitExceededException) Message() string {
 34112  	if s.Message_ != nil {
 34113  		return *s.Message_
 34114  	}
 34115  	return ""
 34116  }
 34117  
 34118  // OrigErr always returns nil, satisfies awserr.Error interface.
 34119  func (s *HierarchyLevelLimitExceededException) OrigErr() error {
 34120  	return nil
 34121  }
 34122  
 34123  func (s *HierarchyLevelLimitExceededException) Error() string {
 34124  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 34125  }
 34126  
 34127  // Status code returns the HTTP status code for the request's response error.
 34128  func (s *HierarchyLevelLimitExceededException) StatusCode() int {
 34129  	return s.RespMetadata.StatusCode
 34130  }
 34131  
 34132  // RequestID returns the service's response RequestID for request.
 34133  func (s *HierarchyLevelLimitExceededException) RequestID() string {
 34134  	return s.RespMetadata.RequestID
 34135  }
 34136  
 34137  // Parameter Store doesn't support changing a parameter type in a hierarchy.
 34138  // For example, you can't change a parameter from a String type to a SecureString
 34139  // type. You must create a new, unique parameter.
 34140  type HierarchyTypeMismatchException struct {
 34141  	_            struct{}                  `type:"structure"`
 34142  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 34143  
 34144  	// Parameter Store doesn't support changing a parameter type in a hierarchy.
 34145  	// For example, you can't change a parameter from a String type to a SecureString
 34146  	// type. You must create a new, unique parameter.
 34147  	Message_ *string `locationName:"message" type:"string"`
 34148  }
 34149  
 34150  // String returns the string representation.
 34151  //
 34152  // API parameter values that are decorated as "sensitive" in the API will not
 34153  // be included in the string output. The member name will be present, but the
 34154  // value will be replaced with "sensitive".
 34155  func (s HierarchyTypeMismatchException) String() string {
 34156  	return awsutil.Prettify(s)
 34157  }
 34158  
 34159  // GoString returns the string representation.
 34160  //
 34161  // API parameter values that are decorated as "sensitive" in the API will not
 34162  // be included in the string output. The member name will be present, but the
 34163  // value will be replaced with "sensitive".
 34164  func (s HierarchyTypeMismatchException) GoString() string {
 34165  	return s.String()
 34166  }
 34167  
 34168  func newErrorHierarchyTypeMismatchException(v protocol.ResponseMetadata) error {
 34169  	return &HierarchyTypeMismatchException{
 34170  		RespMetadata: v,
 34171  	}
 34172  }
 34173  
 34174  // Code returns the exception type name.
 34175  func (s *HierarchyTypeMismatchException) Code() string {
 34176  	return "HierarchyTypeMismatchException"
 34177  }
 34178  
 34179  // Message returns the exception's message.
 34180  func (s *HierarchyTypeMismatchException) Message() string {
 34181  	if s.Message_ != nil {
 34182  		return *s.Message_
 34183  	}
 34184  	return ""
 34185  }
 34186  
 34187  // OrigErr always returns nil, satisfies awserr.Error interface.
 34188  func (s *HierarchyTypeMismatchException) OrigErr() error {
 34189  	return nil
 34190  }
 34191  
 34192  func (s *HierarchyTypeMismatchException) Error() string {
 34193  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 34194  }
 34195  
 34196  // Status code returns the HTTP status code for the request's response error.
 34197  func (s *HierarchyTypeMismatchException) StatusCode() int {
 34198  	return s.RespMetadata.StatusCode
 34199  }
 34200  
 34201  // RequestID returns the service's response RequestID for request.
 34202  func (s *HierarchyTypeMismatchException) RequestID() string {
 34203  	return s.RespMetadata.RequestID
 34204  }
 34205  
 34206  // Error returned when an idempotent operation is retried and the parameters
 34207  // don't match the original call to the API with the same idempotency token.
 34208  type IdempotentParameterMismatch struct {
 34209  	_            struct{}                  `type:"structure"`
 34210  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 34211  
 34212  	Message_ *string `locationName:"Message" type:"string"`
 34213  }
 34214  
 34215  // String returns the string representation.
 34216  //
 34217  // API parameter values that are decorated as "sensitive" in the API will not
 34218  // be included in the string output. The member name will be present, but the
 34219  // value will be replaced with "sensitive".
 34220  func (s IdempotentParameterMismatch) String() string {
 34221  	return awsutil.Prettify(s)
 34222  }
 34223  
 34224  // GoString returns the string representation.
 34225  //
 34226  // API parameter values that are decorated as "sensitive" in the API will not
 34227  // be included in the string output. The member name will be present, but the
 34228  // value will be replaced with "sensitive".
 34229  func (s IdempotentParameterMismatch) GoString() string {
 34230  	return s.String()
 34231  }
 34232  
 34233  func newErrorIdempotentParameterMismatch(v protocol.ResponseMetadata) error {
 34234  	return &IdempotentParameterMismatch{
 34235  		RespMetadata: v,
 34236  	}
 34237  }
 34238  
 34239  // Code returns the exception type name.
 34240  func (s *IdempotentParameterMismatch) Code() string {
 34241  	return "IdempotentParameterMismatch"
 34242  }
 34243  
 34244  // Message returns the exception's message.
 34245  func (s *IdempotentParameterMismatch) Message() string {
 34246  	if s.Message_ != nil {
 34247  		return *s.Message_
 34248  	}
 34249  	return ""
 34250  }
 34251  
 34252  // OrigErr always returns nil, satisfies awserr.Error interface.
 34253  func (s *IdempotentParameterMismatch) OrigErr() error {
 34254  	return nil
 34255  }
 34256  
 34257  func (s *IdempotentParameterMismatch) Error() string {
 34258  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 34259  }
 34260  
 34261  // Status code returns the HTTP status code for the request's response error.
 34262  func (s *IdempotentParameterMismatch) StatusCode() int {
 34263  	return s.RespMetadata.StatusCode
 34264  }
 34265  
 34266  // RequestID returns the service's response RequestID for request.
 34267  func (s *IdempotentParameterMismatch) RequestID() string {
 34268  	return s.RespMetadata.RequestID
 34269  }
 34270  
 34271  // There is a conflict in the policies specified for this parameter. You can't,
 34272  // for example, specify two Expiration policies for a parameter. Review your
 34273  // policies, and try again.
 34274  type IncompatiblePolicyException struct {
 34275  	_            struct{}                  `type:"structure"`
 34276  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 34277  
 34278  	Message_ *string `locationName:"message" type:"string"`
 34279  }
 34280  
 34281  // String returns the string representation.
 34282  //
 34283  // API parameter values that are decorated as "sensitive" in the API will not
 34284  // be included in the string output. The member name will be present, but the
 34285  // value will be replaced with "sensitive".
 34286  func (s IncompatiblePolicyException) String() string {
 34287  	return awsutil.Prettify(s)
 34288  }
 34289  
 34290  // GoString returns the string representation.
 34291  //
 34292  // API parameter values that are decorated as "sensitive" in the API will not
 34293  // be included in the string output. The member name will be present, but the
 34294  // value will be replaced with "sensitive".
 34295  func (s IncompatiblePolicyException) GoString() string {
 34296  	return s.String()
 34297  }
 34298  
 34299  func newErrorIncompatiblePolicyException(v protocol.ResponseMetadata) error {
 34300  	return &IncompatiblePolicyException{
 34301  		RespMetadata: v,
 34302  	}
 34303  }
 34304  
 34305  // Code returns the exception type name.
 34306  func (s *IncompatiblePolicyException) Code() string {
 34307  	return "IncompatiblePolicyException"
 34308  }
 34309  
 34310  // Message returns the exception's message.
 34311  func (s *IncompatiblePolicyException) Message() string {
 34312  	if s.Message_ != nil {
 34313  		return *s.Message_
 34314  	}
 34315  	return ""
 34316  }
 34317  
 34318  // OrigErr always returns nil, satisfies awserr.Error interface.
 34319  func (s *IncompatiblePolicyException) OrigErr() error {
 34320  	return nil
 34321  }
 34322  
 34323  func (s *IncompatiblePolicyException) Error() string {
 34324  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 34325  }
 34326  
 34327  // Status code returns the HTTP status code for the request's response error.
 34328  func (s *IncompatiblePolicyException) StatusCode() int {
 34329  	return s.RespMetadata.StatusCode
 34330  }
 34331  
 34332  // RequestID returns the service's response RequestID for request.
 34333  func (s *IncompatiblePolicyException) RequestID() string {
 34334  	return s.RespMetadata.RequestID
 34335  }
 34336  
 34337  // Status information about the aggregated associations.
 34338  type InstanceAggregatedAssociationOverview struct {
 34339  	_ struct{} `type:"structure"`
 34340  
 34341  	// Detailed status information about the aggregated associations.
 34342  	DetailedStatus *string `type:"string"`
 34343  
 34344  	// The number of associations for the instance(s).
 34345  	InstanceAssociationStatusAggregatedCount map[string]*int64 `type:"map"`
 34346  }
 34347  
 34348  // String returns the string representation.
 34349  //
 34350  // API parameter values that are decorated as "sensitive" in the API will not
 34351  // be included in the string output. The member name will be present, but the
 34352  // value will be replaced with "sensitive".
 34353  func (s InstanceAggregatedAssociationOverview) String() string {
 34354  	return awsutil.Prettify(s)
 34355  }
 34356  
 34357  // GoString returns the string representation.
 34358  //
 34359  // API parameter values that are decorated as "sensitive" in the API will not
 34360  // be included in the string output. The member name will be present, but the
 34361  // value will be replaced with "sensitive".
 34362  func (s InstanceAggregatedAssociationOverview) GoString() string {
 34363  	return s.String()
 34364  }
 34365  
 34366  // SetDetailedStatus sets the DetailedStatus field's value.
 34367  func (s *InstanceAggregatedAssociationOverview) SetDetailedStatus(v string) *InstanceAggregatedAssociationOverview {
 34368  	s.DetailedStatus = &v
 34369  	return s
 34370  }
 34371  
 34372  // SetInstanceAssociationStatusAggregatedCount sets the InstanceAssociationStatusAggregatedCount field's value.
 34373  func (s *InstanceAggregatedAssociationOverview) SetInstanceAssociationStatusAggregatedCount(v map[string]*int64) *InstanceAggregatedAssociationOverview {
 34374  	s.InstanceAssociationStatusAggregatedCount = v
 34375  	return s
 34376  }
 34377  
 34378  // One or more association documents on the instance.
 34379  type InstanceAssociation struct {
 34380  	_ struct{} `type:"structure"`
 34381  
 34382  	// The association ID.
 34383  	AssociationId *string `type:"string"`
 34384  
 34385  	// Version information for the association on the instance.
 34386  	AssociationVersion *string `type:"string"`
 34387  
 34388  	// The content of the association document for the instance(s).
 34389  	Content *string `min:"1" type:"string"`
 34390  
 34391  	// The instance ID.
 34392  	InstanceId *string `type:"string"`
 34393  }
 34394  
 34395  // String returns the string representation.
 34396  //
 34397  // API parameter values that are decorated as "sensitive" in the API will not
 34398  // be included in the string output. The member name will be present, but the
 34399  // value will be replaced with "sensitive".
 34400  func (s InstanceAssociation) String() string {
 34401  	return awsutil.Prettify(s)
 34402  }
 34403  
 34404  // GoString returns the string representation.
 34405  //
 34406  // API parameter values that are decorated as "sensitive" in the API will not
 34407  // be included in the string output. The member name will be present, but the
 34408  // value will be replaced with "sensitive".
 34409  func (s InstanceAssociation) GoString() string {
 34410  	return s.String()
 34411  }
 34412  
 34413  // SetAssociationId sets the AssociationId field's value.
 34414  func (s *InstanceAssociation) SetAssociationId(v string) *InstanceAssociation {
 34415  	s.AssociationId = &v
 34416  	return s
 34417  }
 34418  
 34419  // SetAssociationVersion sets the AssociationVersion field's value.
 34420  func (s *InstanceAssociation) SetAssociationVersion(v string) *InstanceAssociation {
 34421  	s.AssociationVersion = &v
 34422  	return s
 34423  }
 34424  
 34425  // SetContent sets the Content field's value.
 34426  func (s *InstanceAssociation) SetContent(v string) *InstanceAssociation {
 34427  	s.Content = &v
 34428  	return s
 34429  }
 34430  
 34431  // SetInstanceId sets the InstanceId field's value.
 34432  func (s *InstanceAssociation) SetInstanceId(v string) *InstanceAssociation {
 34433  	s.InstanceId = &v
 34434  	return s
 34435  }
 34436  
 34437  // An S3 bucket where you want to store the results of this request.
 34438  //
 34439  // For the minimal permissions required to enable Amazon S3 output for an association,
 34440  // see Creating associations (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-state-assoc.html)
 34441  // in the Systems Manager User Guide.
 34442  type InstanceAssociationOutputLocation struct {
 34443  	_ struct{} `type:"structure"`
 34444  
 34445  	// An S3 bucket where you want to store the results of this request.
 34446  	S3Location *S3OutputLocation `type:"structure"`
 34447  }
 34448  
 34449  // String returns the string representation.
 34450  //
 34451  // API parameter values that are decorated as "sensitive" in the API will not
 34452  // be included in the string output. The member name will be present, but the
 34453  // value will be replaced with "sensitive".
 34454  func (s InstanceAssociationOutputLocation) String() string {
 34455  	return awsutil.Prettify(s)
 34456  }
 34457  
 34458  // GoString returns the string representation.
 34459  //
 34460  // API parameter values that are decorated as "sensitive" in the API will not
 34461  // be included in the string output. The member name will be present, but the
 34462  // value will be replaced with "sensitive".
 34463  func (s InstanceAssociationOutputLocation) GoString() string {
 34464  	return s.String()
 34465  }
 34466  
 34467  // Validate inspects the fields of the type to determine if they are valid.
 34468  func (s *InstanceAssociationOutputLocation) Validate() error {
 34469  	invalidParams := request.ErrInvalidParams{Context: "InstanceAssociationOutputLocation"}
 34470  	if s.S3Location != nil {
 34471  		if err := s.S3Location.Validate(); err != nil {
 34472  			invalidParams.AddNested("S3Location", err.(request.ErrInvalidParams))
 34473  		}
 34474  	}
 34475  
 34476  	if invalidParams.Len() > 0 {
 34477  		return invalidParams
 34478  	}
 34479  	return nil
 34480  }
 34481  
 34482  // SetS3Location sets the S3Location field's value.
 34483  func (s *InstanceAssociationOutputLocation) SetS3Location(v *S3OutputLocation) *InstanceAssociationOutputLocation {
 34484  	s.S3Location = v
 34485  	return s
 34486  }
 34487  
 34488  // The URL of S3 bucket where you want to store the results of this request.
 34489  type InstanceAssociationOutputUrl struct {
 34490  	_ struct{} `type:"structure"`
 34491  
 34492  	// The URL of S3 bucket where you want to store the results of this request.
 34493  	S3OutputUrl *S3OutputUrl `type:"structure"`
 34494  }
 34495  
 34496  // String returns the string representation.
 34497  //
 34498  // API parameter values that are decorated as "sensitive" in the API will not
 34499  // be included in the string output. The member name will be present, but the
 34500  // value will be replaced with "sensitive".
 34501  func (s InstanceAssociationOutputUrl) String() string {
 34502  	return awsutil.Prettify(s)
 34503  }
 34504  
 34505  // GoString returns the string representation.
 34506  //
 34507  // API parameter values that are decorated as "sensitive" in the API will not
 34508  // be included in the string output. The member name will be present, but the
 34509  // value will be replaced with "sensitive".
 34510  func (s InstanceAssociationOutputUrl) GoString() string {
 34511  	return s.String()
 34512  }
 34513  
 34514  // SetS3OutputUrl sets the S3OutputUrl field's value.
 34515  func (s *InstanceAssociationOutputUrl) SetS3OutputUrl(v *S3OutputUrl) *InstanceAssociationOutputUrl {
 34516  	s.S3OutputUrl = v
 34517  	return s
 34518  }
 34519  
 34520  // Status information about the instance association.
 34521  type InstanceAssociationStatusInfo struct {
 34522  	_ struct{} `type:"structure"`
 34523  
 34524  	// The association ID.
 34525  	AssociationId *string `type:"string"`
 34526  
 34527  	// The name of the association applied to the instance.
 34528  	AssociationName *string `type:"string"`
 34529  
 34530  	// The version of the association applied to the instance.
 34531  	AssociationVersion *string `type:"string"`
 34532  
 34533  	// Detailed status information about the instance association.
 34534  	DetailedStatus *string `type:"string"`
 34535  
 34536  	// The association document versions.
 34537  	DocumentVersion *string `type:"string"`
 34538  
 34539  	// An error code returned by the request to create the association.
 34540  	ErrorCode *string `type:"string"`
 34541  
 34542  	// The date the instance association ran.
 34543  	ExecutionDate *time.Time `type:"timestamp"`
 34544  
 34545  	// Summary information about association execution.
 34546  	ExecutionSummary *string `min:"1" type:"string"`
 34547  
 34548  	// The instance ID where the association was created.
 34549  	InstanceId *string `type:"string"`
 34550  
 34551  	// The name of the association.
 34552  	Name *string `type:"string"`
 34553  
 34554  	// A URL for an S3 bucket where you want to store the results of this request.
 34555  	OutputUrl *InstanceAssociationOutputUrl `type:"structure"`
 34556  
 34557  	// Status information about the instance association.
 34558  	Status *string `type:"string"`
 34559  }
 34560  
 34561  // String returns the string representation.
 34562  //
 34563  // API parameter values that are decorated as "sensitive" in the API will not
 34564  // be included in the string output. The member name will be present, but the
 34565  // value will be replaced with "sensitive".
 34566  func (s InstanceAssociationStatusInfo) String() string {
 34567  	return awsutil.Prettify(s)
 34568  }
 34569  
 34570  // GoString returns the string representation.
 34571  //
 34572  // API parameter values that are decorated as "sensitive" in the API will not
 34573  // be included in the string output. The member name will be present, but the
 34574  // value will be replaced with "sensitive".
 34575  func (s InstanceAssociationStatusInfo) GoString() string {
 34576  	return s.String()
 34577  }
 34578  
 34579  // SetAssociationId sets the AssociationId field's value.
 34580  func (s *InstanceAssociationStatusInfo) SetAssociationId(v string) *InstanceAssociationStatusInfo {
 34581  	s.AssociationId = &v
 34582  	return s
 34583  }
 34584  
 34585  // SetAssociationName sets the AssociationName field's value.
 34586  func (s *InstanceAssociationStatusInfo) SetAssociationName(v string) *InstanceAssociationStatusInfo {
 34587  	s.AssociationName = &v
 34588  	return s
 34589  }
 34590  
 34591  // SetAssociationVersion sets the AssociationVersion field's value.
 34592  func (s *InstanceAssociationStatusInfo) SetAssociationVersion(v string) *InstanceAssociationStatusInfo {
 34593  	s.AssociationVersion = &v
 34594  	return s
 34595  }
 34596  
 34597  // SetDetailedStatus sets the DetailedStatus field's value.
 34598  func (s *InstanceAssociationStatusInfo) SetDetailedStatus(v string) *InstanceAssociationStatusInfo {
 34599  	s.DetailedStatus = &v
 34600  	return s
 34601  }
 34602  
 34603  // SetDocumentVersion sets the DocumentVersion field's value.
 34604  func (s *InstanceAssociationStatusInfo) SetDocumentVersion(v string) *InstanceAssociationStatusInfo {
 34605  	s.DocumentVersion = &v
 34606  	return s
 34607  }
 34608  
 34609  // SetErrorCode sets the ErrorCode field's value.
 34610  func (s *InstanceAssociationStatusInfo) SetErrorCode(v string) *InstanceAssociationStatusInfo {
 34611  	s.ErrorCode = &v
 34612  	return s
 34613  }
 34614  
 34615  // SetExecutionDate sets the ExecutionDate field's value.
 34616  func (s *InstanceAssociationStatusInfo) SetExecutionDate(v time.Time) *InstanceAssociationStatusInfo {
 34617  	s.ExecutionDate = &v
 34618  	return s
 34619  }
 34620  
 34621  // SetExecutionSummary sets the ExecutionSummary field's value.
 34622  func (s *InstanceAssociationStatusInfo) SetExecutionSummary(v string) *InstanceAssociationStatusInfo {
 34623  	s.ExecutionSummary = &v
 34624  	return s
 34625  }
 34626  
 34627  // SetInstanceId sets the InstanceId field's value.
 34628  func (s *InstanceAssociationStatusInfo) SetInstanceId(v string) *InstanceAssociationStatusInfo {
 34629  	s.InstanceId = &v
 34630  	return s
 34631  }
 34632  
 34633  // SetName sets the Name field's value.
 34634  func (s *InstanceAssociationStatusInfo) SetName(v string) *InstanceAssociationStatusInfo {
 34635  	s.Name = &v
 34636  	return s
 34637  }
 34638  
 34639  // SetOutputUrl sets the OutputUrl field's value.
 34640  func (s *InstanceAssociationStatusInfo) SetOutputUrl(v *InstanceAssociationOutputUrl) *InstanceAssociationStatusInfo {
 34641  	s.OutputUrl = v
 34642  	return s
 34643  }
 34644  
 34645  // SetStatus sets the Status field's value.
 34646  func (s *InstanceAssociationStatusInfo) SetStatus(v string) *InstanceAssociationStatusInfo {
 34647  	s.Status = &v
 34648  	return s
 34649  }
 34650  
 34651  // Describes a filter for a specific list of instances.
 34652  type InstanceInformation struct {
 34653  	_ struct{} `type:"structure"`
 34654  
 34655  	// The activation ID created by Amazon Web Services Systems Manager when the
 34656  	// server or virtual machine (VM) was registered.
 34657  	ActivationId *string `type:"string"`
 34658  
 34659  	// The version of SSM Agent running on your Linux instance.
 34660  	AgentVersion *string `type:"string"`
 34661  
 34662  	// Information about the association.
 34663  	AssociationOverview *InstanceAggregatedAssociationOverview `type:"structure"`
 34664  
 34665  	// The status of the association.
 34666  	AssociationStatus *string `type:"string"`
 34667  
 34668  	// The fully qualified host name of the managed instance.
 34669  	ComputerName *string `min:"1" type:"string"`
 34670  
 34671  	// The IP address of the managed instance.
 34672  	IPAddress *string `min:"1" type:"string"`
 34673  
 34674  	// The Identity and Access Management (IAM) role assigned to the on-premises
 34675  	// Systems Manager managed instance. This call doesn't return the IAM role for
 34676  	// Amazon Elastic Compute Cloud (Amazon EC2) instances. To retrieve the IAM
 34677  	// role for an EC2 instance, use the Amazon EC2 DescribeInstances operation.
 34678  	// For information, see DescribeInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html)
 34679  	// in the Amazon EC2 API Reference or describe-instances (https://docs.aws.amazon.com/cli/latest/ec2/describe-instances.html)
 34680  	// in the Amazon Web Services CLI Command Reference.
 34681  	IamRole *string `type:"string"`
 34682  
 34683  	// The instance ID.
 34684  	InstanceId *string `type:"string"`
 34685  
 34686  	// Indicates whether the latest version of SSM Agent is running on your Linux
 34687  	// Managed Instance. This field doesn't indicate whether or not the latest version
 34688  	// is installed on Windows managed instances, because some older versions of
 34689  	// Windows Server use the EC2Config service to process Systems Manager requests.
 34690  	IsLatestVersion *bool `type:"boolean"`
 34691  
 34692  	// The date the association was last run.
 34693  	LastAssociationExecutionDate *time.Time `type:"timestamp"`
 34694  
 34695  	// The date and time when the agent last pinged the Systems Manager service.
 34696  	LastPingDateTime *time.Time `type:"timestamp"`
 34697  
 34698  	// The last date the association was successfully run.
 34699  	LastSuccessfulAssociationExecutionDate *time.Time `type:"timestamp"`
 34700  
 34701  	// The name assigned to an on-premises server or virtual machine (VM) when it
 34702  	// is activated as a Systems Manager managed instance. The name is specified
 34703  	// as the DefaultInstanceName property using the CreateActivation command. It
 34704  	// is applied to the managed instance by specifying the Activation Code and
 34705  	// Activation ID when you install SSM Agent on the instance, as explained in
 34706  	// Install SSM Agent for a hybrid environment (Linux) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-install-managed-linux.html)
 34707  	// and Install SSM Agent for a hybrid environment (Windows) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-install-managed-win.html).
 34708  	// To retrieve the Name tag of an EC2 instance, use the Amazon EC2 DescribeInstances
 34709  	// operation. For information, see DescribeInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html)
 34710  	// in the Amazon EC2 API Reference or describe-instances (https://docs.aws.amazon.com/cli/latest/ec2/describe-instances.html)
 34711  	// in the Amazon Web Services CLI Command Reference.
 34712  	Name *string `type:"string"`
 34713  
 34714  	// Connection status of SSM Agent.
 34715  	//
 34716  	// The status Inactive has been deprecated and is no longer in use.
 34717  	PingStatus *string `type:"string" enum:"PingStatus"`
 34718  
 34719  	// The name of the operating system platform running on your instance.
 34720  	PlatformName *string `type:"string"`
 34721  
 34722  	// The operating system platform type.
 34723  	PlatformType *string `type:"string" enum:"PlatformType"`
 34724  
 34725  	// The version of the OS platform running on your instance.
 34726  	PlatformVersion *string `type:"string"`
 34727  
 34728  	// The date the server or VM was registered with Amazon Web Services as a managed
 34729  	// instance.
 34730  	RegistrationDate *time.Time `type:"timestamp"`
 34731  
 34732  	// The type of instance. Instances are either EC2 instances or managed instances.
 34733  	ResourceType *string `type:"string" enum:"ResourceType"`
 34734  }
 34735  
 34736  // String returns the string representation.
 34737  //
 34738  // API parameter values that are decorated as "sensitive" in the API will not
 34739  // be included in the string output. The member name will be present, but the
 34740  // value will be replaced with "sensitive".
 34741  func (s InstanceInformation) String() string {
 34742  	return awsutil.Prettify(s)
 34743  }
 34744  
 34745  // GoString returns the string representation.
 34746  //
 34747  // API parameter values that are decorated as "sensitive" in the API will not
 34748  // be included in the string output. The member name will be present, but the
 34749  // value will be replaced with "sensitive".
 34750  func (s InstanceInformation) GoString() string {
 34751  	return s.String()
 34752  }
 34753  
 34754  // SetActivationId sets the ActivationId field's value.
 34755  func (s *InstanceInformation) SetActivationId(v string) *InstanceInformation {
 34756  	s.ActivationId = &v
 34757  	return s
 34758  }
 34759  
 34760  // SetAgentVersion sets the AgentVersion field's value.
 34761  func (s *InstanceInformation) SetAgentVersion(v string) *InstanceInformation {
 34762  	s.AgentVersion = &v
 34763  	return s
 34764  }
 34765  
 34766  // SetAssociationOverview sets the AssociationOverview field's value.
 34767  func (s *InstanceInformation) SetAssociationOverview(v *InstanceAggregatedAssociationOverview) *InstanceInformation {
 34768  	s.AssociationOverview = v
 34769  	return s
 34770  }
 34771  
 34772  // SetAssociationStatus sets the AssociationStatus field's value.
 34773  func (s *InstanceInformation) SetAssociationStatus(v string) *InstanceInformation {
 34774  	s.AssociationStatus = &v
 34775  	return s
 34776  }
 34777  
 34778  // SetComputerName sets the ComputerName field's value.
 34779  func (s *InstanceInformation) SetComputerName(v string) *InstanceInformation {
 34780  	s.ComputerName = &v
 34781  	return s
 34782  }
 34783  
 34784  // SetIPAddress sets the IPAddress field's value.
 34785  func (s *InstanceInformation) SetIPAddress(v string) *InstanceInformation {
 34786  	s.IPAddress = &v
 34787  	return s
 34788  }
 34789  
 34790  // SetIamRole sets the IamRole field's value.
 34791  func (s *InstanceInformation) SetIamRole(v string) *InstanceInformation {
 34792  	s.IamRole = &v
 34793  	return s
 34794  }
 34795  
 34796  // SetInstanceId sets the InstanceId field's value.
 34797  func (s *InstanceInformation) SetInstanceId(v string) *InstanceInformation {
 34798  	s.InstanceId = &v
 34799  	return s
 34800  }
 34801  
 34802  // SetIsLatestVersion sets the IsLatestVersion field's value.
 34803  func (s *InstanceInformation) SetIsLatestVersion(v bool) *InstanceInformation {
 34804  	s.IsLatestVersion = &v
 34805  	return s
 34806  }
 34807  
 34808  // SetLastAssociationExecutionDate sets the LastAssociationExecutionDate field's value.
 34809  func (s *InstanceInformation) SetLastAssociationExecutionDate(v time.Time) *InstanceInformation {
 34810  	s.LastAssociationExecutionDate = &v
 34811  	return s
 34812  }
 34813  
 34814  // SetLastPingDateTime sets the LastPingDateTime field's value.
 34815  func (s *InstanceInformation) SetLastPingDateTime(v time.Time) *InstanceInformation {
 34816  	s.LastPingDateTime = &v
 34817  	return s
 34818  }
 34819  
 34820  // SetLastSuccessfulAssociationExecutionDate sets the LastSuccessfulAssociationExecutionDate field's value.
 34821  func (s *InstanceInformation) SetLastSuccessfulAssociationExecutionDate(v time.Time) *InstanceInformation {
 34822  	s.LastSuccessfulAssociationExecutionDate = &v
 34823  	return s
 34824  }
 34825  
 34826  // SetName sets the Name field's value.
 34827  func (s *InstanceInformation) SetName(v string) *InstanceInformation {
 34828  	s.Name = &v
 34829  	return s
 34830  }
 34831  
 34832  // SetPingStatus sets the PingStatus field's value.
 34833  func (s *InstanceInformation) SetPingStatus(v string) *InstanceInformation {
 34834  	s.PingStatus = &v
 34835  	return s
 34836  }
 34837  
 34838  // SetPlatformName sets the PlatformName field's value.
 34839  func (s *InstanceInformation) SetPlatformName(v string) *InstanceInformation {
 34840  	s.PlatformName = &v
 34841  	return s
 34842  }
 34843  
 34844  // SetPlatformType sets the PlatformType field's value.
 34845  func (s *InstanceInformation) SetPlatformType(v string) *InstanceInformation {
 34846  	s.PlatformType = &v
 34847  	return s
 34848  }
 34849  
 34850  // SetPlatformVersion sets the PlatformVersion field's value.
 34851  func (s *InstanceInformation) SetPlatformVersion(v string) *InstanceInformation {
 34852  	s.PlatformVersion = &v
 34853  	return s
 34854  }
 34855  
 34856  // SetRegistrationDate sets the RegistrationDate field's value.
 34857  func (s *InstanceInformation) SetRegistrationDate(v time.Time) *InstanceInformation {
 34858  	s.RegistrationDate = &v
 34859  	return s
 34860  }
 34861  
 34862  // SetResourceType sets the ResourceType field's value.
 34863  func (s *InstanceInformation) SetResourceType(v string) *InstanceInformation {
 34864  	s.ResourceType = &v
 34865  	return s
 34866  }
 34867  
 34868  // Describes a filter for a specific list of instances. You can filter instances
 34869  // information by using tags. You specify tags by using a key-value mapping.
 34870  //
 34871  // Use this operation instead of the DescribeInstanceInformationRequest$InstanceInformationFilterList
 34872  // method. The InstanceInformationFilterList method is a legacy method and doesn't
 34873  // support tags.
 34874  type InstanceInformationFilter struct {
 34875  	_ struct{} `type:"structure"`
 34876  
 34877  	// The name of the filter.
 34878  	//
 34879  	// Key is a required field
 34880  	Key *string `locationName:"key" type:"string" required:"true" enum:"InstanceInformationFilterKey"`
 34881  
 34882  	// The filter values.
 34883  	//
 34884  	// ValueSet is a required field
 34885  	ValueSet []*string `locationName:"valueSet" min:"1" type:"list" required:"true"`
 34886  }
 34887  
 34888  // String returns the string representation.
 34889  //
 34890  // API parameter values that are decorated as "sensitive" in the API will not
 34891  // be included in the string output. The member name will be present, but the
 34892  // value will be replaced with "sensitive".
 34893  func (s InstanceInformationFilter) String() string {
 34894  	return awsutil.Prettify(s)
 34895  }
 34896  
 34897  // GoString returns the string representation.
 34898  //
 34899  // API parameter values that are decorated as "sensitive" in the API will not
 34900  // be included in the string output. The member name will be present, but the
 34901  // value will be replaced with "sensitive".
 34902  func (s InstanceInformationFilter) GoString() string {
 34903  	return s.String()
 34904  }
 34905  
 34906  // Validate inspects the fields of the type to determine if they are valid.
 34907  func (s *InstanceInformationFilter) Validate() error {
 34908  	invalidParams := request.ErrInvalidParams{Context: "InstanceInformationFilter"}
 34909  	if s.Key == nil {
 34910  		invalidParams.Add(request.NewErrParamRequired("Key"))
 34911  	}
 34912  	if s.ValueSet == nil {
 34913  		invalidParams.Add(request.NewErrParamRequired("ValueSet"))
 34914  	}
 34915  	if s.ValueSet != nil && len(s.ValueSet) < 1 {
 34916  		invalidParams.Add(request.NewErrParamMinLen("ValueSet", 1))
 34917  	}
 34918  
 34919  	if invalidParams.Len() > 0 {
 34920  		return invalidParams
 34921  	}
 34922  	return nil
 34923  }
 34924  
 34925  // SetKey sets the Key field's value.
 34926  func (s *InstanceInformationFilter) SetKey(v string) *InstanceInformationFilter {
 34927  	s.Key = &v
 34928  	return s
 34929  }
 34930  
 34931  // SetValueSet sets the ValueSet field's value.
 34932  func (s *InstanceInformationFilter) SetValueSet(v []*string) *InstanceInformationFilter {
 34933  	s.ValueSet = v
 34934  	return s
 34935  }
 34936  
 34937  // The filters to describe or get information about your managed instances.
 34938  type InstanceInformationStringFilter struct {
 34939  	_ struct{} `type:"structure"`
 34940  
 34941  	// The filter key name to describe your instances. For example:
 34942  	//
 34943  	// "InstanceIds"|"AgentVersion"|"PingStatus"|"PlatformTypes"|"ActivationIds"|"IamRole"|"ResourceType"|"AssociationStatus"|"Tag
 34944  	// Key"
 34945  	//
 34946  	// Tag key isn't a valid filter. You must specify either tag-key or tag:keyname
 34947  	// and a string. Here are some valid examples: tag-key, tag:123, tag:al!, tag:Windows.
 34948  	// Here are some invalid examples: tag-keys, Tag Key, tag:, tagKey, abc:keyname.
 34949  	//
 34950  	// Key is a required field
 34951  	Key *string `min:"1" type:"string" required:"true"`
 34952  
 34953  	// The filter values.
 34954  	//
 34955  	// Values is a required field
 34956  	Values []*string `min:"1" type:"list" required:"true"`
 34957  }
 34958  
 34959  // String returns the string representation.
 34960  //
 34961  // API parameter values that are decorated as "sensitive" in the API will not
 34962  // be included in the string output. The member name will be present, but the
 34963  // value will be replaced with "sensitive".
 34964  func (s InstanceInformationStringFilter) String() string {
 34965  	return awsutil.Prettify(s)
 34966  }
 34967  
 34968  // GoString returns the string representation.
 34969  //
 34970  // API parameter values that are decorated as "sensitive" in the API will not
 34971  // be included in the string output. The member name will be present, but the
 34972  // value will be replaced with "sensitive".
 34973  func (s InstanceInformationStringFilter) GoString() string {
 34974  	return s.String()
 34975  }
 34976  
 34977  // Validate inspects the fields of the type to determine if they are valid.
 34978  func (s *InstanceInformationStringFilter) Validate() error {
 34979  	invalidParams := request.ErrInvalidParams{Context: "InstanceInformationStringFilter"}
 34980  	if s.Key == nil {
 34981  		invalidParams.Add(request.NewErrParamRequired("Key"))
 34982  	}
 34983  	if s.Key != nil && len(*s.Key) < 1 {
 34984  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 34985  	}
 34986  	if s.Values == nil {
 34987  		invalidParams.Add(request.NewErrParamRequired("Values"))
 34988  	}
 34989  	if s.Values != nil && len(s.Values) < 1 {
 34990  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 34991  	}
 34992  
 34993  	if invalidParams.Len() > 0 {
 34994  		return invalidParams
 34995  	}
 34996  	return nil
 34997  }
 34998  
 34999  // SetKey sets the Key field's value.
 35000  func (s *InstanceInformationStringFilter) SetKey(v string) *InstanceInformationStringFilter {
 35001  	s.Key = &v
 35002  	return s
 35003  }
 35004  
 35005  // SetValues sets the Values field's value.
 35006  func (s *InstanceInformationStringFilter) SetValues(v []*string) *InstanceInformationStringFilter {
 35007  	s.Values = v
 35008  	return s
 35009  }
 35010  
 35011  // Defines the high-level patch compliance state for a managed instance, providing
 35012  // information about the number of installed, missing, not applicable, and failed
 35013  // patches along with metadata about the operation when this information was
 35014  // gathered for the instance.
 35015  type InstancePatchState struct {
 35016  	_ struct{} `type:"structure"`
 35017  
 35018  	// The ID of the patch baseline used to patch the instance.
 35019  	//
 35020  	// BaselineId is a required field
 35021  	BaselineId *string `min:"20" type:"string" required:"true"`
 35022  
 35023  	// The number of instances where patches that are specified as Critical for
 35024  	// compliance reporting in the patch baseline aren't installed. These patches
 35025  	// might be missing, have failed installation, were rejected, or were installed
 35026  	// but awaiting a required instance reboot. The status of these instances is
 35027  	// NON_COMPLIANT.
 35028  	CriticalNonCompliantCount *int64 `type:"integer"`
 35029  
 35030  	// The number of patches from the patch baseline that were attempted to be installed
 35031  	// during the last patching operation, but failed to install.
 35032  	FailedCount *int64 `type:"integer"`
 35033  
 35034  	// An https URL or an Amazon Simple Storage Service (Amazon S3) path-style URL
 35035  	// to a list of patches to be installed. This patch installation list, which
 35036  	// you maintain in an S3 bucket in YAML format and specify in the SSM document
 35037  	// AWS-RunPatchBaseline, overrides the patches specified by the default patch
 35038  	// baseline.
 35039  	//
 35040  	// For more information about the InstallOverrideList parameter, see About the
 35041  	// AWS-RunPatchBaseline (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-about-aws-runpatchbaseline.html)
 35042  	// SSM document in the Amazon Web Services Systems Manager User Guide.
 35043  	InstallOverrideList *string `min:"1" type:"string"`
 35044  
 35045  	// The number of patches from the patch baseline that are installed on the instance.
 35046  	InstalledCount *int64 `type:"integer"`
 35047  
 35048  	// The number of patches not specified in the patch baseline that are installed
 35049  	// on the instance.
 35050  	InstalledOtherCount *int64 `type:"integer"`
 35051  
 35052  	// The number of patches installed by Patch Manager since the last time the
 35053  	// instance was rebooted.
 35054  	InstalledPendingRebootCount *int64 `type:"integer"`
 35055  
 35056  	// The number of patches installed on an instance that are specified in a RejectedPatches
 35057  	// list. Patches with a status of InstalledRejected were typically installed
 35058  	// before they were added to a RejectedPatches list.
 35059  	//
 35060  	// If ALLOW_AS_DEPENDENCY is the specified option for RejectedPatchesAction,
 35061  	// the value of InstalledRejectedCount will always be 0 (zero).
 35062  	InstalledRejectedCount *int64 `type:"integer"`
 35063  
 35064  	// The ID of the managed instance the high-level patch compliance information
 35065  	// was collected for.
 35066  	//
 35067  	// InstanceId is a required field
 35068  	InstanceId *string `type:"string" required:"true"`
 35069  
 35070  	// The time of the last attempt to patch the instance with NoReboot specified
 35071  	// as the reboot option.
 35072  	LastNoRebootInstallOperationTime *time.Time `type:"timestamp"`
 35073  
 35074  	// The number of patches from the patch baseline that are applicable for the
 35075  	// instance but aren't currently installed.
 35076  	MissingCount *int64 `type:"integer"`
 35077  
 35078  	// The number of patches from the patch baseline that aren't applicable for
 35079  	// the instance and therefore aren't installed on the instance. This number
 35080  	// may be truncated if the list of patch names is very large. The number of
 35081  	// patches beyond this limit are reported in UnreportedNotApplicableCount.
 35082  	NotApplicableCount *int64 `type:"integer"`
 35083  
 35084  	// The type of patching operation that was performed: or
 35085  	//
 35086  	//    * SCAN assesses the patch compliance state.
 35087  	//
 35088  	//    * INSTALL installs missing patches.
 35089  	//
 35090  	// Operation is a required field
 35091  	Operation *string `type:"string" required:"true" enum:"PatchOperationType"`
 35092  
 35093  	// The time the most recent patching operation completed on the instance.
 35094  	//
 35095  	// OperationEndTime is a required field
 35096  	OperationEndTime *time.Time `type:"timestamp" required:"true"`
 35097  
 35098  	// The time the most recent patching operation was started on the instance.
 35099  	//
 35100  	// OperationStartTime is a required field
 35101  	OperationStartTime *time.Time `type:"timestamp" required:"true"`
 35102  
 35103  	// The number of instances with patches installed that are specified as other
 35104  	// than Critical or Security but aren't compliant with the patch baseline. The
 35105  	// status of these instances is NON_COMPLIANT.
 35106  	OtherNonCompliantCount *int64 `type:"integer"`
 35107  
 35108  	// Placeholder information. This field will always be empty in the current release
 35109  	// of the service.
 35110  	//
 35111  	// OwnerInformation is a sensitive parameter and its value will be
 35112  	// replaced with "sensitive" in string returned by InstancePatchState's
 35113  	// String and GoString methods.
 35114  	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
 35115  
 35116  	// The name of the patch group the managed instance belongs to.
 35117  	//
 35118  	// PatchGroup is a required field
 35119  	PatchGroup *string `min:"1" type:"string" required:"true"`
 35120  
 35121  	// Indicates the reboot option specified in the patch baseline.
 35122  	//
 35123  	// Reboot options apply to Install operations only. Reboots aren't attempted
 35124  	// for Patch Manager Scan operations.
 35125  	//
 35126  	//    * RebootIfNeeded: Patch Manager tries to reboot the instance if it installed
 35127  	//    any patches, or if any patches are detected with a status of InstalledPendingReboot.
 35128  	//
 35129  	//    * NoReboot: Patch Manager attempts to install missing packages without
 35130  	//    trying to reboot the system. Patches installed with this option are assigned
 35131  	//    a status of InstalledPendingReboot. These patches might not be in effect
 35132  	//    until a reboot is performed.
 35133  	RebootOption *string `type:"string" enum:"RebootOption"`
 35134  
 35135  	// The number of instances where patches that are specified as Security in a
 35136  	// patch advisory aren't installed. These patches might be missing, have failed
 35137  	// installation, were rejected, or were installed but awaiting a required instance
 35138  	// reboot. The status of these instances is NON_COMPLIANT.
 35139  	SecurityNonCompliantCount *int64 `type:"integer"`
 35140  
 35141  	// The ID of the patch baseline snapshot used during the patching operation
 35142  	// when this compliance data was collected.
 35143  	SnapshotId *string `min:"36" type:"string"`
 35144  
 35145  	// The number of patches beyond the supported limit of NotApplicableCount that
 35146  	// aren't reported by name to Inventory. Inventory is a capability of Amazon
 35147  	// Web Services Systems Manager.
 35148  	UnreportedNotApplicableCount *int64 `type:"integer"`
 35149  }
 35150  
 35151  // String returns the string representation.
 35152  //
 35153  // API parameter values that are decorated as "sensitive" in the API will not
 35154  // be included in the string output. The member name will be present, but the
 35155  // value will be replaced with "sensitive".
 35156  func (s InstancePatchState) String() string {
 35157  	return awsutil.Prettify(s)
 35158  }
 35159  
 35160  // GoString returns the string representation.
 35161  //
 35162  // API parameter values that are decorated as "sensitive" in the API will not
 35163  // be included in the string output. The member name will be present, but the
 35164  // value will be replaced with "sensitive".
 35165  func (s InstancePatchState) GoString() string {
 35166  	return s.String()
 35167  }
 35168  
 35169  // SetBaselineId sets the BaselineId field's value.
 35170  func (s *InstancePatchState) SetBaselineId(v string) *InstancePatchState {
 35171  	s.BaselineId = &v
 35172  	return s
 35173  }
 35174  
 35175  // SetCriticalNonCompliantCount sets the CriticalNonCompliantCount field's value.
 35176  func (s *InstancePatchState) SetCriticalNonCompliantCount(v int64) *InstancePatchState {
 35177  	s.CriticalNonCompliantCount = &v
 35178  	return s
 35179  }
 35180  
 35181  // SetFailedCount sets the FailedCount field's value.
 35182  func (s *InstancePatchState) SetFailedCount(v int64) *InstancePatchState {
 35183  	s.FailedCount = &v
 35184  	return s
 35185  }
 35186  
 35187  // SetInstallOverrideList sets the InstallOverrideList field's value.
 35188  func (s *InstancePatchState) SetInstallOverrideList(v string) *InstancePatchState {
 35189  	s.InstallOverrideList = &v
 35190  	return s
 35191  }
 35192  
 35193  // SetInstalledCount sets the InstalledCount field's value.
 35194  func (s *InstancePatchState) SetInstalledCount(v int64) *InstancePatchState {
 35195  	s.InstalledCount = &v
 35196  	return s
 35197  }
 35198  
 35199  // SetInstalledOtherCount sets the InstalledOtherCount field's value.
 35200  func (s *InstancePatchState) SetInstalledOtherCount(v int64) *InstancePatchState {
 35201  	s.InstalledOtherCount = &v
 35202  	return s
 35203  }
 35204  
 35205  // SetInstalledPendingRebootCount sets the InstalledPendingRebootCount field's value.
 35206  func (s *InstancePatchState) SetInstalledPendingRebootCount(v int64) *InstancePatchState {
 35207  	s.InstalledPendingRebootCount = &v
 35208  	return s
 35209  }
 35210  
 35211  // SetInstalledRejectedCount sets the InstalledRejectedCount field's value.
 35212  func (s *InstancePatchState) SetInstalledRejectedCount(v int64) *InstancePatchState {
 35213  	s.InstalledRejectedCount = &v
 35214  	return s
 35215  }
 35216  
 35217  // SetInstanceId sets the InstanceId field's value.
 35218  func (s *InstancePatchState) SetInstanceId(v string) *InstancePatchState {
 35219  	s.InstanceId = &v
 35220  	return s
 35221  }
 35222  
 35223  // SetLastNoRebootInstallOperationTime sets the LastNoRebootInstallOperationTime field's value.
 35224  func (s *InstancePatchState) SetLastNoRebootInstallOperationTime(v time.Time) *InstancePatchState {
 35225  	s.LastNoRebootInstallOperationTime = &v
 35226  	return s
 35227  }
 35228  
 35229  // SetMissingCount sets the MissingCount field's value.
 35230  func (s *InstancePatchState) SetMissingCount(v int64) *InstancePatchState {
 35231  	s.MissingCount = &v
 35232  	return s
 35233  }
 35234  
 35235  // SetNotApplicableCount sets the NotApplicableCount field's value.
 35236  func (s *InstancePatchState) SetNotApplicableCount(v int64) *InstancePatchState {
 35237  	s.NotApplicableCount = &v
 35238  	return s
 35239  }
 35240  
 35241  // SetOperation sets the Operation field's value.
 35242  func (s *InstancePatchState) SetOperation(v string) *InstancePatchState {
 35243  	s.Operation = &v
 35244  	return s
 35245  }
 35246  
 35247  // SetOperationEndTime sets the OperationEndTime field's value.
 35248  func (s *InstancePatchState) SetOperationEndTime(v time.Time) *InstancePatchState {
 35249  	s.OperationEndTime = &v
 35250  	return s
 35251  }
 35252  
 35253  // SetOperationStartTime sets the OperationStartTime field's value.
 35254  func (s *InstancePatchState) SetOperationStartTime(v time.Time) *InstancePatchState {
 35255  	s.OperationStartTime = &v
 35256  	return s
 35257  }
 35258  
 35259  // SetOtherNonCompliantCount sets the OtherNonCompliantCount field's value.
 35260  func (s *InstancePatchState) SetOtherNonCompliantCount(v int64) *InstancePatchState {
 35261  	s.OtherNonCompliantCount = &v
 35262  	return s
 35263  }
 35264  
 35265  // SetOwnerInformation sets the OwnerInformation field's value.
 35266  func (s *InstancePatchState) SetOwnerInformation(v string) *InstancePatchState {
 35267  	s.OwnerInformation = &v
 35268  	return s
 35269  }
 35270  
 35271  // SetPatchGroup sets the PatchGroup field's value.
 35272  func (s *InstancePatchState) SetPatchGroup(v string) *InstancePatchState {
 35273  	s.PatchGroup = &v
 35274  	return s
 35275  }
 35276  
 35277  // SetRebootOption sets the RebootOption field's value.
 35278  func (s *InstancePatchState) SetRebootOption(v string) *InstancePatchState {
 35279  	s.RebootOption = &v
 35280  	return s
 35281  }
 35282  
 35283  // SetSecurityNonCompliantCount sets the SecurityNonCompliantCount field's value.
 35284  func (s *InstancePatchState) SetSecurityNonCompliantCount(v int64) *InstancePatchState {
 35285  	s.SecurityNonCompliantCount = &v
 35286  	return s
 35287  }
 35288  
 35289  // SetSnapshotId sets the SnapshotId field's value.
 35290  func (s *InstancePatchState) SetSnapshotId(v string) *InstancePatchState {
 35291  	s.SnapshotId = &v
 35292  	return s
 35293  }
 35294  
 35295  // SetUnreportedNotApplicableCount sets the UnreportedNotApplicableCount field's value.
 35296  func (s *InstancePatchState) SetUnreportedNotApplicableCount(v int64) *InstancePatchState {
 35297  	s.UnreportedNotApplicableCount = &v
 35298  	return s
 35299  }
 35300  
 35301  // Defines a filter used in DescribeInstancePatchStatesForPatchGroup to scope
 35302  // down the information returned by the API.
 35303  //
 35304  // Example: To filter for all instances in a patch group having more than three
 35305  // patches with a FailedCount status, use the following for the filter:
 35306  //
 35307  //    * Value for Key: FailedCount
 35308  //
 35309  //    * Value for Type: GreaterThan
 35310  //
 35311  //    * Value for Values: 3
 35312  type InstancePatchStateFilter struct {
 35313  	_ struct{} `type:"structure"`
 35314  
 35315  	// The key for the filter. Supported values include the following:
 35316  	//
 35317  	//    * InstalledCount
 35318  	//
 35319  	//    * InstalledOtherCount
 35320  	//
 35321  	//    * InstalledPendingRebootCount
 35322  	//
 35323  	//    * InstalledRejectedCount
 35324  	//
 35325  	//    * MissingCount
 35326  	//
 35327  	//    * FailedCount
 35328  	//
 35329  	//    * UnreportedNotApplicableCount
 35330  	//
 35331  	//    * NotApplicableCount
 35332  	//
 35333  	// Key is a required field
 35334  	Key *string `min:"1" type:"string" required:"true"`
 35335  
 35336  	// The type of comparison that should be performed for the value.
 35337  	//
 35338  	// Type is a required field
 35339  	Type *string `type:"string" required:"true" enum:"InstancePatchStateOperatorType"`
 35340  
 35341  	// The value for the filter. Must be an integer greater than or equal to 0.
 35342  	//
 35343  	// Values is a required field
 35344  	Values []*string `min:"1" type:"list" required:"true"`
 35345  }
 35346  
 35347  // String returns the string representation.
 35348  //
 35349  // API parameter values that are decorated as "sensitive" in the API will not
 35350  // be included in the string output. The member name will be present, but the
 35351  // value will be replaced with "sensitive".
 35352  func (s InstancePatchStateFilter) String() string {
 35353  	return awsutil.Prettify(s)
 35354  }
 35355  
 35356  // GoString returns the string representation.
 35357  //
 35358  // API parameter values that are decorated as "sensitive" in the API will not
 35359  // be included in the string output. The member name will be present, but the
 35360  // value will be replaced with "sensitive".
 35361  func (s InstancePatchStateFilter) GoString() string {
 35362  	return s.String()
 35363  }
 35364  
 35365  // Validate inspects the fields of the type to determine if they are valid.
 35366  func (s *InstancePatchStateFilter) Validate() error {
 35367  	invalidParams := request.ErrInvalidParams{Context: "InstancePatchStateFilter"}
 35368  	if s.Key == nil {
 35369  		invalidParams.Add(request.NewErrParamRequired("Key"))
 35370  	}
 35371  	if s.Key != nil && len(*s.Key) < 1 {
 35372  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 35373  	}
 35374  	if s.Type == nil {
 35375  		invalidParams.Add(request.NewErrParamRequired("Type"))
 35376  	}
 35377  	if s.Values == nil {
 35378  		invalidParams.Add(request.NewErrParamRequired("Values"))
 35379  	}
 35380  	if s.Values != nil && len(s.Values) < 1 {
 35381  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 35382  	}
 35383  
 35384  	if invalidParams.Len() > 0 {
 35385  		return invalidParams
 35386  	}
 35387  	return nil
 35388  }
 35389  
 35390  // SetKey sets the Key field's value.
 35391  func (s *InstancePatchStateFilter) SetKey(v string) *InstancePatchStateFilter {
 35392  	s.Key = &v
 35393  	return s
 35394  }
 35395  
 35396  // SetType sets the Type field's value.
 35397  func (s *InstancePatchStateFilter) SetType(v string) *InstancePatchStateFilter {
 35398  	s.Type = &v
 35399  	return s
 35400  }
 35401  
 35402  // SetValues sets the Values field's value.
 35403  func (s *InstancePatchStateFilter) SetValues(v []*string) *InstancePatchStateFilter {
 35404  	s.Values = v
 35405  	return s
 35406  }
 35407  
 35408  // An error occurred on the server side.
 35409  type InternalServerError struct {
 35410  	_            struct{}                  `type:"structure"`
 35411  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 35412  
 35413  	Message_ *string `locationName:"Message" type:"string"`
 35414  }
 35415  
 35416  // String returns the string representation.
 35417  //
 35418  // API parameter values that are decorated as "sensitive" in the API will not
 35419  // be included in the string output. The member name will be present, but the
 35420  // value will be replaced with "sensitive".
 35421  func (s InternalServerError) String() string {
 35422  	return awsutil.Prettify(s)
 35423  }
 35424  
 35425  // GoString returns the string representation.
 35426  //
 35427  // API parameter values that are decorated as "sensitive" in the API will not
 35428  // be included in the string output. The member name will be present, but the
 35429  // value will be replaced with "sensitive".
 35430  func (s InternalServerError) GoString() string {
 35431  	return s.String()
 35432  }
 35433  
 35434  func newErrorInternalServerError(v protocol.ResponseMetadata) error {
 35435  	return &InternalServerError{
 35436  		RespMetadata: v,
 35437  	}
 35438  }
 35439  
 35440  // Code returns the exception type name.
 35441  func (s *InternalServerError) Code() string {
 35442  	return "InternalServerError"
 35443  }
 35444  
 35445  // Message returns the exception's message.
 35446  func (s *InternalServerError) Message() string {
 35447  	if s.Message_ != nil {
 35448  		return *s.Message_
 35449  	}
 35450  	return ""
 35451  }
 35452  
 35453  // OrigErr always returns nil, satisfies awserr.Error interface.
 35454  func (s *InternalServerError) OrigErr() error {
 35455  	return nil
 35456  }
 35457  
 35458  func (s *InternalServerError) Error() string {
 35459  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 35460  }
 35461  
 35462  // Status code returns the HTTP status code for the request's response error.
 35463  func (s *InternalServerError) StatusCode() int {
 35464  	return s.RespMetadata.StatusCode
 35465  }
 35466  
 35467  // RequestID returns the service's response RequestID for request.
 35468  func (s *InternalServerError) RequestID() string {
 35469  	return s.RespMetadata.RequestID
 35470  }
 35471  
 35472  // The activation isn't valid. The activation might have been deleted, or the
 35473  // ActivationId and the ActivationCode don't match.
 35474  type InvalidActivation struct {
 35475  	_            struct{}                  `type:"structure"`
 35476  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 35477  
 35478  	Message_ *string `locationName:"Message" type:"string"`
 35479  }
 35480  
 35481  // String returns the string representation.
 35482  //
 35483  // API parameter values that are decorated as "sensitive" in the API will not
 35484  // be included in the string output. The member name will be present, but the
 35485  // value will be replaced with "sensitive".
 35486  func (s InvalidActivation) String() string {
 35487  	return awsutil.Prettify(s)
 35488  }
 35489  
 35490  // GoString returns the string representation.
 35491  //
 35492  // API parameter values that are decorated as "sensitive" in the API will not
 35493  // be included in the string output. The member name will be present, but the
 35494  // value will be replaced with "sensitive".
 35495  func (s InvalidActivation) GoString() string {
 35496  	return s.String()
 35497  }
 35498  
 35499  func newErrorInvalidActivation(v protocol.ResponseMetadata) error {
 35500  	return &InvalidActivation{
 35501  		RespMetadata: v,
 35502  	}
 35503  }
 35504  
 35505  // Code returns the exception type name.
 35506  func (s *InvalidActivation) Code() string {
 35507  	return "InvalidActivation"
 35508  }
 35509  
 35510  // Message returns the exception's message.
 35511  func (s *InvalidActivation) Message() string {
 35512  	if s.Message_ != nil {
 35513  		return *s.Message_
 35514  	}
 35515  	return ""
 35516  }
 35517  
 35518  // OrigErr always returns nil, satisfies awserr.Error interface.
 35519  func (s *InvalidActivation) OrigErr() error {
 35520  	return nil
 35521  }
 35522  
 35523  func (s *InvalidActivation) Error() string {
 35524  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 35525  }
 35526  
 35527  // Status code returns the HTTP status code for the request's response error.
 35528  func (s *InvalidActivation) StatusCode() int {
 35529  	return s.RespMetadata.StatusCode
 35530  }
 35531  
 35532  // RequestID returns the service's response RequestID for request.
 35533  func (s *InvalidActivation) RequestID() string {
 35534  	return s.RespMetadata.RequestID
 35535  }
 35536  
 35537  // The activation ID isn't valid. Verify the you entered the correct ActivationId
 35538  // or ActivationCode and try again.
 35539  type InvalidActivationId struct {
 35540  	_            struct{}                  `type:"structure"`
 35541  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 35542  
 35543  	Message_ *string `locationName:"Message" type:"string"`
 35544  }
 35545  
 35546  // String returns the string representation.
 35547  //
 35548  // API parameter values that are decorated as "sensitive" in the API will not
 35549  // be included in the string output. The member name will be present, but the
 35550  // value will be replaced with "sensitive".
 35551  func (s InvalidActivationId) String() string {
 35552  	return awsutil.Prettify(s)
 35553  }
 35554  
 35555  // GoString returns the string representation.
 35556  //
 35557  // API parameter values that are decorated as "sensitive" in the API will not
 35558  // be included in the string output. The member name will be present, but the
 35559  // value will be replaced with "sensitive".
 35560  func (s InvalidActivationId) GoString() string {
 35561  	return s.String()
 35562  }
 35563  
 35564  func newErrorInvalidActivationId(v protocol.ResponseMetadata) error {
 35565  	return &InvalidActivationId{
 35566  		RespMetadata: v,
 35567  	}
 35568  }
 35569  
 35570  // Code returns the exception type name.
 35571  func (s *InvalidActivationId) Code() string {
 35572  	return "InvalidActivationId"
 35573  }
 35574  
 35575  // Message returns the exception's message.
 35576  func (s *InvalidActivationId) Message() string {
 35577  	if s.Message_ != nil {
 35578  		return *s.Message_
 35579  	}
 35580  	return ""
 35581  }
 35582  
 35583  // OrigErr always returns nil, satisfies awserr.Error interface.
 35584  func (s *InvalidActivationId) OrigErr() error {
 35585  	return nil
 35586  }
 35587  
 35588  func (s *InvalidActivationId) Error() string {
 35589  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 35590  }
 35591  
 35592  // Status code returns the HTTP status code for the request's response error.
 35593  func (s *InvalidActivationId) StatusCode() int {
 35594  	return s.RespMetadata.StatusCode
 35595  }
 35596  
 35597  // RequestID returns the service's response RequestID for request.
 35598  func (s *InvalidActivationId) RequestID() string {
 35599  	return s.RespMetadata.RequestID
 35600  }
 35601  
 35602  // The specified aggregator isn't valid for inventory groups. Verify that the
 35603  // aggregator uses a valid inventory type such as AWS:Application or AWS:InstanceInformation.
 35604  type InvalidAggregatorException struct {
 35605  	_            struct{}                  `type:"structure"`
 35606  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 35607  
 35608  	Message_ *string `locationName:"Message" type:"string"`
 35609  }
 35610  
 35611  // String returns the string representation.
 35612  //
 35613  // API parameter values that are decorated as "sensitive" in the API will not
 35614  // be included in the string output. The member name will be present, but the
 35615  // value will be replaced with "sensitive".
 35616  func (s InvalidAggregatorException) String() string {
 35617  	return awsutil.Prettify(s)
 35618  }
 35619  
 35620  // GoString returns the string representation.
 35621  //
 35622  // API parameter values that are decorated as "sensitive" in the API will not
 35623  // be included in the string output. The member name will be present, but the
 35624  // value will be replaced with "sensitive".
 35625  func (s InvalidAggregatorException) GoString() string {
 35626  	return s.String()
 35627  }
 35628  
 35629  func newErrorInvalidAggregatorException(v protocol.ResponseMetadata) error {
 35630  	return &InvalidAggregatorException{
 35631  		RespMetadata: v,
 35632  	}
 35633  }
 35634  
 35635  // Code returns the exception type name.
 35636  func (s *InvalidAggregatorException) Code() string {
 35637  	return "InvalidAggregatorException"
 35638  }
 35639  
 35640  // Message returns the exception's message.
 35641  func (s *InvalidAggregatorException) Message() string {
 35642  	if s.Message_ != nil {
 35643  		return *s.Message_
 35644  	}
 35645  	return ""
 35646  }
 35647  
 35648  // OrigErr always returns nil, satisfies awserr.Error interface.
 35649  func (s *InvalidAggregatorException) OrigErr() error {
 35650  	return nil
 35651  }
 35652  
 35653  func (s *InvalidAggregatorException) Error() string {
 35654  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 35655  }
 35656  
 35657  // Status code returns the HTTP status code for the request's response error.
 35658  func (s *InvalidAggregatorException) StatusCode() int {
 35659  	return s.RespMetadata.StatusCode
 35660  }
 35661  
 35662  // RequestID returns the service's response RequestID for request.
 35663  func (s *InvalidAggregatorException) RequestID() string {
 35664  	return s.RespMetadata.RequestID
 35665  }
 35666  
 35667  // The request doesn't meet the regular expression requirement.
 35668  type InvalidAllowedPatternException struct {
 35669  	_            struct{}                  `type:"structure"`
 35670  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 35671  
 35672  	// The request doesn't meet the regular expression requirement.
 35673  	Message_ *string `locationName:"message" type:"string"`
 35674  }
 35675  
 35676  // String returns the string representation.
 35677  //
 35678  // API parameter values that are decorated as "sensitive" in the API will not
 35679  // be included in the string output. The member name will be present, but the
 35680  // value will be replaced with "sensitive".
 35681  func (s InvalidAllowedPatternException) String() string {
 35682  	return awsutil.Prettify(s)
 35683  }
 35684  
 35685  // GoString returns the string representation.
 35686  //
 35687  // API parameter values that are decorated as "sensitive" in the API will not
 35688  // be included in the string output. The member name will be present, but the
 35689  // value will be replaced with "sensitive".
 35690  func (s InvalidAllowedPatternException) GoString() string {
 35691  	return s.String()
 35692  }
 35693  
 35694  func newErrorInvalidAllowedPatternException(v protocol.ResponseMetadata) error {
 35695  	return &InvalidAllowedPatternException{
 35696  		RespMetadata: v,
 35697  	}
 35698  }
 35699  
 35700  // Code returns the exception type name.
 35701  func (s *InvalidAllowedPatternException) Code() string {
 35702  	return "InvalidAllowedPatternException"
 35703  }
 35704  
 35705  // Message returns the exception's message.
 35706  func (s *InvalidAllowedPatternException) Message() string {
 35707  	if s.Message_ != nil {
 35708  		return *s.Message_
 35709  	}
 35710  	return ""
 35711  }
 35712  
 35713  // OrigErr always returns nil, satisfies awserr.Error interface.
 35714  func (s *InvalidAllowedPatternException) OrigErr() error {
 35715  	return nil
 35716  }
 35717  
 35718  func (s *InvalidAllowedPatternException) Error() string {
 35719  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 35720  }
 35721  
 35722  // Status code returns the HTTP status code for the request's response error.
 35723  func (s *InvalidAllowedPatternException) StatusCode() int {
 35724  	return s.RespMetadata.StatusCode
 35725  }
 35726  
 35727  // RequestID returns the service's response RequestID for request.
 35728  func (s *InvalidAllowedPatternException) RequestID() string {
 35729  	return s.RespMetadata.RequestID
 35730  }
 35731  
 35732  // The association isn't valid or doesn't exist.
 35733  type InvalidAssociation struct {
 35734  	_            struct{}                  `type:"structure"`
 35735  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 35736  
 35737  	Message_ *string `locationName:"Message" type:"string"`
 35738  }
 35739  
 35740  // String returns the string representation.
 35741  //
 35742  // API parameter values that are decorated as "sensitive" in the API will not
 35743  // be included in the string output. The member name will be present, but the
 35744  // value will be replaced with "sensitive".
 35745  func (s InvalidAssociation) String() string {
 35746  	return awsutil.Prettify(s)
 35747  }
 35748  
 35749  // GoString returns the string representation.
 35750  //
 35751  // API parameter values that are decorated as "sensitive" in the API will not
 35752  // be included in the string output. The member name will be present, but the
 35753  // value will be replaced with "sensitive".
 35754  func (s InvalidAssociation) GoString() string {
 35755  	return s.String()
 35756  }
 35757  
 35758  func newErrorInvalidAssociation(v protocol.ResponseMetadata) error {
 35759  	return &InvalidAssociation{
 35760  		RespMetadata: v,
 35761  	}
 35762  }
 35763  
 35764  // Code returns the exception type name.
 35765  func (s *InvalidAssociation) Code() string {
 35766  	return "InvalidAssociation"
 35767  }
 35768  
 35769  // Message returns the exception's message.
 35770  func (s *InvalidAssociation) Message() string {
 35771  	if s.Message_ != nil {
 35772  		return *s.Message_
 35773  	}
 35774  	return ""
 35775  }
 35776  
 35777  // OrigErr always returns nil, satisfies awserr.Error interface.
 35778  func (s *InvalidAssociation) OrigErr() error {
 35779  	return nil
 35780  }
 35781  
 35782  func (s *InvalidAssociation) Error() string {
 35783  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 35784  }
 35785  
 35786  // Status code returns the HTTP status code for the request's response error.
 35787  func (s *InvalidAssociation) StatusCode() int {
 35788  	return s.RespMetadata.StatusCode
 35789  }
 35790  
 35791  // RequestID returns the service's response RequestID for request.
 35792  func (s *InvalidAssociation) RequestID() string {
 35793  	return s.RespMetadata.RequestID
 35794  }
 35795  
 35796  // The version you specified isn't valid. Use ListAssociationVersions to view
 35797  // all versions of an association according to the association ID. Or, use the
 35798  // $LATEST parameter to view the latest version of the association.
 35799  type InvalidAssociationVersion struct {
 35800  	_            struct{}                  `type:"structure"`
 35801  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 35802  
 35803  	Message_ *string `locationName:"Message" type:"string"`
 35804  }
 35805  
 35806  // String returns the string representation.
 35807  //
 35808  // API parameter values that are decorated as "sensitive" in the API will not
 35809  // be included in the string output. The member name will be present, but the
 35810  // value will be replaced with "sensitive".
 35811  func (s InvalidAssociationVersion) String() string {
 35812  	return awsutil.Prettify(s)
 35813  }
 35814  
 35815  // GoString returns the string representation.
 35816  //
 35817  // API parameter values that are decorated as "sensitive" in the API will not
 35818  // be included in the string output. The member name will be present, but the
 35819  // value will be replaced with "sensitive".
 35820  func (s InvalidAssociationVersion) GoString() string {
 35821  	return s.String()
 35822  }
 35823  
 35824  func newErrorInvalidAssociationVersion(v protocol.ResponseMetadata) error {
 35825  	return &InvalidAssociationVersion{
 35826  		RespMetadata: v,
 35827  	}
 35828  }
 35829  
 35830  // Code returns the exception type name.
 35831  func (s *InvalidAssociationVersion) Code() string {
 35832  	return "InvalidAssociationVersion"
 35833  }
 35834  
 35835  // Message returns the exception's message.
 35836  func (s *InvalidAssociationVersion) Message() string {
 35837  	if s.Message_ != nil {
 35838  		return *s.Message_
 35839  	}
 35840  	return ""
 35841  }
 35842  
 35843  // OrigErr always returns nil, satisfies awserr.Error interface.
 35844  func (s *InvalidAssociationVersion) OrigErr() error {
 35845  	return nil
 35846  }
 35847  
 35848  func (s *InvalidAssociationVersion) Error() string {
 35849  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 35850  }
 35851  
 35852  // Status code returns the HTTP status code for the request's response error.
 35853  func (s *InvalidAssociationVersion) StatusCode() int {
 35854  	return s.RespMetadata.StatusCode
 35855  }
 35856  
 35857  // RequestID returns the service's response RequestID for request.
 35858  func (s *InvalidAssociationVersion) RequestID() string {
 35859  	return s.RespMetadata.RequestID
 35860  }
 35861  
 35862  // The supplied parameters for invoking the specified Automation runbook are
 35863  // incorrect. For example, they may not match the set of parameters permitted
 35864  // for the specified Automation document.
 35865  type InvalidAutomationExecutionParametersException struct {
 35866  	_            struct{}                  `type:"structure"`
 35867  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 35868  
 35869  	Message_ *string `locationName:"Message" type:"string"`
 35870  }
 35871  
 35872  // String returns the string representation.
 35873  //
 35874  // API parameter values that are decorated as "sensitive" in the API will not
 35875  // be included in the string output. The member name will be present, but the
 35876  // value will be replaced with "sensitive".
 35877  func (s InvalidAutomationExecutionParametersException) String() string {
 35878  	return awsutil.Prettify(s)
 35879  }
 35880  
 35881  // GoString returns the string representation.
 35882  //
 35883  // API parameter values that are decorated as "sensitive" in the API will not
 35884  // be included in the string output. The member name will be present, but the
 35885  // value will be replaced with "sensitive".
 35886  func (s InvalidAutomationExecutionParametersException) GoString() string {
 35887  	return s.String()
 35888  }
 35889  
 35890  func newErrorInvalidAutomationExecutionParametersException(v protocol.ResponseMetadata) error {
 35891  	return &InvalidAutomationExecutionParametersException{
 35892  		RespMetadata: v,
 35893  	}
 35894  }
 35895  
 35896  // Code returns the exception type name.
 35897  func (s *InvalidAutomationExecutionParametersException) Code() string {
 35898  	return "InvalidAutomationExecutionParametersException"
 35899  }
 35900  
 35901  // Message returns the exception's message.
 35902  func (s *InvalidAutomationExecutionParametersException) Message() string {
 35903  	if s.Message_ != nil {
 35904  		return *s.Message_
 35905  	}
 35906  	return ""
 35907  }
 35908  
 35909  // OrigErr always returns nil, satisfies awserr.Error interface.
 35910  func (s *InvalidAutomationExecutionParametersException) OrigErr() error {
 35911  	return nil
 35912  }
 35913  
 35914  func (s *InvalidAutomationExecutionParametersException) Error() string {
 35915  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 35916  }
 35917  
 35918  // Status code returns the HTTP status code for the request's response error.
 35919  func (s *InvalidAutomationExecutionParametersException) StatusCode() int {
 35920  	return s.RespMetadata.StatusCode
 35921  }
 35922  
 35923  // RequestID returns the service's response RequestID for request.
 35924  func (s *InvalidAutomationExecutionParametersException) RequestID() string {
 35925  	return s.RespMetadata.RequestID
 35926  }
 35927  
 35928  // The signal isn't valid for the current Automation execution.
 35929  type InvalidAutomationSignalException struct {
 35930  	_            struct{}                  `type:"structure"`
 35931  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 35932  
 35933  	Message_ *string `locationName:"Message" type:"string"`
 35934  }
 35935  
 35936  // String returns the string representation.
 35937  //
 35938  // API parameter values that are decorated as "sensitive" in the API will not
 35939  // be included in the string output. The member name will be present, but the
 35940  // value will be replaced with "sensitive".
 35941  func (s InvalidAutomationSignalException) String() string {
 35942  	return awsutil.Prettify(s)
 35943  }
 35944  
 35945  // GoString returns the string representation.
 35946  //
 35947  // API parameter values that are decorated as "sensitive" in the API will not
 35948  // be included in the string output. The member name will be present, but the
 35949  // value will be replaced with "sensitive".
 35950  func (s InvalidAutomationSignalException) GoString() string {
 35951  	return s.String()
 35952  }
 35953  
 35954  func newErrorInvalidAutomationSignalException(v protocol.ResponseMetadata) error {
 35955  	return &InvalidAutomationSignalException{
 35956  		RespMetadata: v,
 35957  	}
 35958  }
 35959  
 35960  // Code returns the exception type name.
 35961  func (s *InvalidAutomationSignalException) Code() string {
 35962  	return "InvalidAutomationSignalException"
 35963  }
 35964  
 35965  // Message returns the exception's message.
 35966  func (s *InvalidAutomationSignalException) Message() string {
 35967  	if s.Message_ != nil {
 35968  		return *s.Message_
 35969  	}
 35970  	return ""
 35971  }
 35972  
 35973  // OrigErr always returns nil, satisfies awserr.Error interface.
 35974  func (s *InvalidAutomationSignalException) OrigErr() error {
 35975  	return nil
 35976  }
 35977  
 35978  func (s *InvalidAutomationSignalException) Error() string {
 35979  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 35980  }
 35981  
 35982  // Status code returns the HTTP status code for the request's response error.
 35983  func (s *InvalidAutomationSignalException) StatusCode() int {
 35984  	return s.RespMetadata.StatusCode
 35985  }
 35986  
 35987  // RequestID returns the service's response RequestID for request.
 35988  func (s *InvalidAutomationSignalException) RequestID() string {
 35989  	return s.RespMetadata.RequestID
 35990  }
 35991  
 35992  // The specified update status operation isn't valid.
 35993  type InvalidAutomationStatusUpdateException struct {
 35994  	_            struct{}                  `type:"structure"`
 35995  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 35996  
 35997  	Message_ *string `locationName:"Message" type:"string"`
 35998  }
 35999  
 36000  // String returns the string representation.
 36001  //
 36002  // API parameter values that are decorated as "sensitive" in the API will not
 36003  // be included in the string output. The member name will be present, but the
 36004  // value will be replaced with "sensitive".
 36005  func (s InvalidAutomationStatusUpdateException) String() string {
 36006  	return awsutil.Prettify(s)
 36007  }
 36008  
 36009  // GoString returns the string representation.
 36010  //
 36011  // API parameter values that are decorated as "sensitive" in the API will not
 36012  // be included in the string output. The member name will be present, but the
 36013  // value will be replaced with "sensitive".
 36014  func (s InvalidAutomationStatusUpdateException) GoString() string {
 36015  	return s.String()
 36016  }
 36017  
 36018  func newErrorInvalidAutomationStatusUpdateException(v protocol.ResponseMetadata) error {
 36019  	return &InvalidAutomationStatusUpdateException{
 36020  		RespMetadata: v,
 36021  	}
 36022  }
 36023  
 36024  // Code returns the exception type name.
 36025  func (s *InvalidAutomationStatusUpdateException) Code() string {
 36026  	return "InvalidAutomationStatusUpdateException"
 36027  }
 36028  
 36029  // Message returns the exception's message.
 36030  func (s *InvalidAutomationStatusUpdateException) Message() string {
 36031  	if s.Message_ != nil {
 36032  		return *s.Message_
 36033  	}
 36034  	return ""
 36035  }
 36036  
 36037  // OrigErr always returns nil, satisfies awserr.Error interface.
 36038  func (s *InvalidAutomationStatusUpdateException) OrigErr() error {
 36039  	return nil
 36040  }
 36041  
 36042  func (s *InvalidAutomationStatusUpdateException) Error() string {
 36043  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36044  }
 36045  
 36046  // Status code returns the HTTP status code for the request's response error.
 36047  func (s *InvalidAutomationStatusUpdateException) StatusCode() int {
 36048  	return s.RespMetadata.StatusCode
 36049  }
 36050  
 36051  // RequestID returns the service's response RequestID for request.
 36052  func (s *InvalidAutomationStatusUpdateException) RequestID() string {
 36053  	return s.RespMetadata.RequestID
 36054  }
 36055  
 36056  // The specified command ID isn't valid. Verify the ID and try again.
 36057  type InvalidCommandId struct {
 36058  	_            struct{}                  `type:"structure"`
 36059  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36060  
 36061  	Message_ *string `locationName:"message" type:"string"`
 36062  }
 36063  
 36064  // String returns the string representation.
 36065  //
 36066  // API parameter values that are decorated as "sensitive" in the API will not
 36067  // be included in the string output. The member name will be present, but the
 36068  // value will be replaced with "sensitive".
 36069  func (s InvalidCommandId) String() string {
 36070  	return awsutil.Prettify(s)
 36071  }
 36072  
 36073  // GoString returns the string representation.
 36074  //
 36075  // API parameter values that are decorated as "sensitive" in the API will not
 36076  // be included in the string output. The member name will be present, but the
 36077  // value will be replaced with "sensitive".
 36078  func (s InvalidCommandId) GoString() string {
 36079  	return s.String()
 36080  }
 36081  
 36082  func newErrorInvalidCommandId(v protocol.ResponseMetadata) error {
 36083  	return &InvalidCommandId{
 36084  		RespMetadata: v,
 36085  	}
 36086  }
 36087  
 36088  // Code returns the exception type name.
 36089  func (s *InvalidCommandId) Code() string {
 36090  	return "InvalidCommandId"
 36091  }
 36092  
 36093  // Message returns the exception's message.
 36094  func (s *InvalidCommandId) Message() string {
 36095  	if s.Message_ != nil {
 36096  		return *s.Message_
 36097  	}
 36098  	return ""
 36099  }
 36100  
 36101  // OrigErr always returns nil, satisfies awserr.Error interface.
 36102  func (s *InvalidCommandId) OrigErr() error {
 36103  	return nil
 36104  }
 36105  
 36106  func (s *InvalidCommandId) Error() string {
 36107  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36108  }
 36109  
 36110  // Status code returns the HTTP status code for the request's response error.
 36111  func (s *InvalidCommandId) StatusCode() int {
 36112  	return s.RespMetadata.StatusCode
 36113  }
 36114  
 36115  // RequestID returns the service's response RequestID for request.
 36116  func (s *InvalidCommandId) RequestID() string {
 36117  	return s.RespMetadata.RequestID
 36118  }
 36119  
 36120  // One or more of the parameters specified for the delete operation isn't valid.
 36121  // Verify all parameters and try again.
 36122  type InvalidDeleteInventoryParametersException struct {
 36123  	_            struct{}                  `type:"structure"`
 36124  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36125  
 36126  	Message_ *string `locationName:"Message" type:"string"`
 36127  }
 36128  
 36129  // String returns the string representation.
 36130  //
 36131  // API parameter values that are decorated as "sensitive" in the API will not
 36132  // be included in the string output. The member name will be present, but the
 36133  // value will be replaced with "sensitive".
 36134  func (s InvalidDeleteInventoryParametersException) String() string {
 36135  	return awsutil.Prettify(s)
 36136  }
 36137  
 36138  // GoString returns the string representation.
 36139  //
 36140  // API parameter values that are decorated as "sensitive" in the API will not
 36141  // be included in the string output. The member name will be present, but the
 36142  // value will be replaced with "sensitive".
 36143  func (s InvalidDeleteInventoryParametersException) GoString() string {
 36144  	return s.String()
 36145  }
 36146  
 36147  func newErrorInvalidDeleteInventoryParametersException(v protocol.ResponseMetadata) error {
 36148  	return &InvalidDeleteInventoryParametersException{
 36149  		RespMetadata: v,
 36150  	}
 36151  }
 36152  
 36153  // Code returns the exception type name.
 36154  func (s *InvalidDeleteInventoryParametersException) Code() string {
 36155  	return "InvalidDeleteInventoryParametersException"
 36156  }
 36157  
 36158  // Message returns the exception's message.
 36159  func (s *InvalidDeleteInventoryParametersException) Message() string {
 36160  	if s.Message_ != nil {
 36161  		return *s.Message_
 36162  	}
 36163  	return ""
 36164  }
 36165  
 36166  // OrigErr always returns nil, satisfies awserr.Error interface.
 36167  func (s *InvalidDeleteInventoryParametersException) OrigErr() error {
 36168  	return nil
 36169  }
 36170  
 36171  func (s *InvalidDeleteInventoryParametersException) Error() string {
 36172  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36173  }
 36174  
 36175  // Status code returns the HTTP status code for the request's response error.
 36176  func (s *InvalidDeleteInventoryParametersException) StatusCode() int {
 36177  	return s.RespMetadata.StatusCode
 36178  }
 36179  
 36180  // RequestID returns the service's response RequestID for request.
 36181  func (s *InvalidDeleteInventoryParametersException) RequestID() string {
 36182  	return s.RespMetadata.RequestID
 36183  }
 36184  
 36185  // The ID specified for the delete operation doesn't exist or isn't valid. Verify
 36186  // the ID and try again.
 36187  type InvalidDeletionIdException struct {
 36188  	_            struct{}                  `type:"structure"`
 36189  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36190  
 36191  	Message_ *string `locationName:"Message" type:"string"`
 36192  }
 36193  
 36194  // String returns the string representation.
 36195  //
 36196  // API parameter values that are decorated as "sensitive" in the API will not
 36197  // be included in the string output. The member name will be present, but the
 36198  // value will be replaced with "sensitive".
 36199  func (s InvalidDeletionIdException) String() string {
 36200  	return awsutil.Prettify(s)
 36201  }
 36202  
 36203  // GoString returns the string representation.
 36204  //
 36205  // API parameter values that are decorated as "sensitive" in the API will not
 36206  // be included in the string output. The member name will be present, but the
 36207  // value will be replaced with "sensitive".
 36208  func (s InvalidDeletionIdException) GoString() string {
 36209  	return s.String()
 36210  }
 36211  
 36212  func newErrorInvalidDeletionIdException(v protocol.ResponseMetadata) error {
 36213  	return &InvalidDeletionIdException{
 36214  		RespMetadata: v,
 36215  	}
 36216  }
 36217  
 36218  // Code returns the exception type name.
 36219  func (s *InvalidDeletionIdException) Code() string {
 36220  	return "InvalidDeletionIdException"
 36221  }
 36222  
 36223  // Message returns the exception's message.
 36224  func (s *InvalidDeletionIdException) Message() string {
 36225  	if s.Message_ != nil {
 36226  		return *s.Message_
 36227  	}
 36228  	return ""
 36229  }
 36230  
 36231  // OrigErr always returns nil, satisfies awserr.Error interface.
 36232  func (s *InvalidDeletionIdException) OrigErr() error {
 36233  	return nil
 36234  }
 36235  
 36236  func (s *InvalidDeletionIdException) Error() string {
 36237  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36238  }
 36239  
 36240  // Status code returns the HTTP status code for the request's response error.
 36241  func (s *InvalidDeletionIdException) StatusCode() int {
 36242  	return s.RespMetadata.StatusCode
 36243  }
 36244  
 36245  // RequestID returns the service's response RequestID for request.
 36246  func (s *InvalidDeletionIdException) RequestID() string {
 36247  	return s.RespMetadata.RequestID
 36248  }
 36249  
 36250  // The specified SSM document doesn't exist.
 36251  type InvalidDocument struct {
 36252  	_            struct{}                  `type:"structure"`
 36253  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36254  
 36255  	// The SSM document doesn't exist or the document isn't available to the user.
 36256  	// This exception can be issued by various API operations.
 36257  	Message_ *string `locationName:"Message" type:"string"`
 36258  }
 36259  
 36260  // String returns the string representation.
 36261  //
 36262  // API parameter values that are decorated as "sensitive" in the API will not
 36263  // be included in the string output. The member name will be present, but the
 36264  // value will be replaced with "sensitive".
 36265  func (s InvalidDocument) String() string {
 36266  	return awsutil.Prettify(s)
 36267  }
 36268  
 36269  // GoString returns the string representation.
 36270  //
 36271  // API parameter values that are decorated as "sensitive" in the API will not
 36272  // be included in the string output. The member name will be present, but the
 36273  // value will be replaced with "sensitive".
 36274  func (s InvalidDocument) GoString() string {
 36275  	return s.String()
 36276  }
 36277  
 36278  func newErrorInvalidDocument(v protocol.ResponseMetadata) error {
 36279  	return &InvalidDocument{
 36280  		RespMetadata: v,
 36281  	}
 36282  }
 36283  
 36284  // Code returns the exception type name.
 36285  func (s *InvalidDocument) Code() string {
 36286  	return "InvalidDocument"
 36287  }
 36288  
 36289  // Message returns the exception's message.
 36290  func (s *InvalidDocument) Message() string {
 36291  	if s.Message_ != nil {
 36292  		return *s.Message_
 36293  	}
 36294  	return ""
 36295  }
 36296  
 36297  // OrigErr always returns nil, satisfies awserr.Error interface.
 36298  func (s *InvalidDocument) OrigErr() error {
 36299  	return nil
 36300  }
 36301  
 36302  func (s *InvalidDocument) Error() string {
 36303  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36304  }
 36305  
 36306  // Status code returns the HTTP status code for the request's response error.
 36307  func (s *InvalidDocument) StatusCode() int {
 36308  	return s.RespMetadata.StatusCode
 36309  }
 36310  
 36311  // RequestID returns the service's response RequestID for request.
 36312  func (s *InvalidDocument) RequestID() string {
 36313  	return s.RespMetadata.RequestID
 36314  }
 36315  
 36316  // The content for the document isn't valid.
 36317  type InvalidDocumentContent struct {
 36318  	_            struct{}                  `type:"structure"`
 36319  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36320  
 36321  	// A description of the validation error.
 36322  	Message_ *string `locationName:"Message" type:"string"`
 36323  }
 36324  
 36325  // String returns the string representation.
 36326  //
 36327  // API parameter values that are decorated as "sensitive" in the API will not
 36328  // be included in the string output. The member name will be present, but the
 36329  // value will be replaced with "sensitive".
 36330  func (s InvalidDocumentContent) String() string {
 36331  	return awsutil.Prettify(s)
 36332  }
 36333  
 36334  // GoString returns the string representation.
 36335  //
 36336  // API parameter values that are decorated as "sensitive" in the API will not
 36337  // be included in the string output. The member name will be present, but the
 36338  // value will be replaced with "sensitive".
 36339  func (s InvalidDocumentContent) GoString() string {
 36340  	return s.String()
 36341  }
 36342  
 36343  func newErrorInvalidDocumentContent(v protocol.ResponseMetadata) error {
 36344  	return &InvalidDocumentContent{
 36345  		RespMetadata: v,
 36346  	}
 36347  }
 36348  
 36349  // Code returns the exception type name.
 36350  func (s *InvalidDocumentContent) Code() string {
 36351  	return "InvalidDocumentContent"
 36352  }
 36353  
 36354  // Message returns the exception's message.
 36355  func (s *InvalidDocumentContent) Message() string {
 36356  	if s.Message_ != nil {
 36357  		return *s.Message_
 36358  	}
 36359  	return ""
 36360  }
 36361  
 36362  // OrigErr always returns nil, satisfies awserr.Error interface.
 36363  func (s *InvalidDocumentContent) OrigErr() error {
 36364  	return nil
 36365  }
 36366  
 36367  func (s *InvalidDocumentContent) Error() string {
 36368  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36369  }
 36370  
 36371  // Status code returns the HTTP status code for the request's response error.
 36372  func (s *InvalidDocumentContent) StatusCode() int {
 36373  	return s.RespMetadata.StatusCode
 36374  }
 36375  
 36376  // RequestID returns the service's response RequestID for request.
 36377  func (s *InvalidDocumentContent) RequestID() string {
 36378  	return s.RespMetadata.RequestID
 36379  }
 36380  
 36381  // You attempted to delete a document while it is still shared. You must stop
 36382  // sharing the document before you can delete it.
 36383  type InvalidDocumentOperation struct {
 36384  	_            struct{}                  `type:"structure"`
 36385  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36386  
 36387  	Message_ *string `locationName:"Message" type:"string"`
 36388  }
 36389  
 36390  // String returns the string representation.
 36391  //
 36392  // API parameter values that are decorated as "sensitive" in the API will not
 36393  // be included in the string output. The member name will be present, but the
 36394  // value will be replaced with "sensitive".
 36395  func (s InvalidDocumentOperation) String() string {
 36396  	return awsutil.Prettify(s)
 36397  }
 36398  
 36399  // GoString returns the string representation.
 36400  //
 36401  // API parameter values that are decorated as "sensitive" in the API will not
 36402  // be included in the string output. The member name will be present, but the
 36403  // value will be replaced with "sensitive".
 36404  func (s InvalidDocumentOperation) GoString() string {
 36405  	return s.String()
 36406  }
 36407  
 36408  func newErrorInvalidDocumentOperation(v protocol.ResponseMetadata) error {
 36409  	return &InvalidDocumentOperation{
 36410  		RespMetadata: v,
 36411  	}
 36412  }
 36413  
 36414  // Code returns the exception type name.
 36415  func (s *InvalidDocumentOperation) Code() string {
 36416  	return "InvalidDocumentOperation"
 36417  }
 36418  
 36419  // Message returns the exception's message.
 36420  func (s *InvalidDocumentOperation) Message() string {
 36421  	if s.Message_ != nil {
 36422  		return *s.Message_
 36423  	}
 36424  	return ""
 36425  }
 36426  
 36427  // OrigErr always returns nil, satisfies awserr.Error interface.
 36428  func (s *InvalidDocumentOperation) OrigErr() error {
 36429  	return nil
 36430  }
 36431  
 36432  func (s *InvalidDocumentOperation) Error() string {
 36433  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36434  }
 36435  
 36436  // Status code returns the HTTP status code for the request's response error.
 36437  func (s *InvalidDocumentOperation) StatusCode() int {
 36438  	return s.RespMetadata.StatusCode
 36439  }
 36440  
 36441  // RequestID returns the service's response RequestID for request.
 36442  func (s *InvalidDocumentOperation) RequestID() string {
 36443  	return s.RespMetadata.RequestID
 36444  }
 36445  
 36446  // The version of the document schema isn't supported.
 36447  type InvalidDocumentSchemaVersion struct {
 36448  	_            struct{}                  `type:"structure"`
 36449  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36450  
 36451  	Message_ *string `locationName:"Message" type:"string"`
 36452  }
 36453  
 36454  // String returns the string representation.
 36455  //
 36456  // API parameter values that are decorated as "sensitive" in the API will not
 36457  // be included in the string output. The member name will be present, but the
 36458  // value will be replaced with "sensitive".
 36459  func (s InvalidDocumentSchemaVersion) String() string {
 36460  	return awsutil.Prettify(s)
 36461  }
 36462  
 36463  // GoString returns the string representation.
 36464  //
 36465  // API parameter values that are decorated as "sensitive" in the API will not
 36466  // be included in the string output. The member name will be present, but the
 36467  // value will be replaced with "sensitive".
 36468  func (s InvalidDocumentSchemaVersion) GoString() string {
 36469  	return s.String()
 36470  }
 36471  
 36472  func newErrorInvalidDocumentSchemaVersion(v protocol.ResponseMetadata) error {
 36473  	return &InvalidDocumentSchemaVersion{
 36474  		RespMetadata: v,
 36475  	}
 36476  }
 36477  
 36478  // Code returns the exception type name.
 36479  func (s *InvalidDocumentSchemaVersion) Code() string {
 36480  	return "InvalidDocumentSchemaVersion"
 36481  }
 36482  
 36483  // Message returns the exception's message.
 36484  func (s *InvalidDocumentSchemaVersion) Message() string {
 36485  	if s.Message_ != nil {
 36486  		return *s.Message_
 36487  	}
 36488  	return ""
 36489  }
 36490  
 36491  // OrigErr always returns nil, satisfies awserr.Error interface.
 36492  func (s *InvalidDocumentSchemaVersion) OrigErr() error {
 36493  	return nil
 36494  }
 36495  
 36496  func (s *InvalidDocumentSchemaVersion) Error() string {
 36497  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36498  }
 36499  
 36500  // Status code returns the HTTP status code for the request's response error.
 36501  func (s *InvalidDocumentSchemaVersion) StatusCode() int {
 36502  	return s.RespMetadata.StatusCode
 36503  }
 36504  
 36505  // RequestID returns the service's response RequestID for request.
 36506  func (s *InvalidDocumentSchemaVersion) RequestID() string {
 36507  	return s.RespMetadata.RequestID
 36508  }
 36509  
 36510  // The SSM document type isn't valid. Valid document types are described in
 36511  // the DocumentType property.
 36512  type InvalidDocumentType struct {
 36513  	_            struct{}                  `type:"structure"`
 36514  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36515  
 36516  	Message_ *string `locationName:"Message" type:"string"`
 36517  }
 36518  
 36519  // String returns the string representation.
 36520  //
 36521  // API parameter values that are decorated as "sensitive" in the API will not
 36522  // be included in the string output. The member name will be present, but the
 36523  // value will be replaced with "sensitive".
 36524  func (s InvalidDocumentType) String() string {
 36525  	return awsutil.Prettify(s)
 36526  }
 36527  
 36528  // GoString returns the string representation.
 36529  //
 36530  // API parameter values that are decorated as "sensitive" in the API will not
 36531  // be included in the string output. The member name will be present, but the
 36532  // value will be replaced with "sensitive".
 36533  func (s InvalidDocumentType) GoString() string {
 36534  	return s.String()
 36535  }
 36536  
 36537  func newErrorInvalidDocumentType(v protocol.ResponseMetadata) error {
 36538  	return &InvalidDocumentType{
 36539  		RespMetadata: v,
 36540  	}
 36541  }
 36542  
 36543  // Code returns the exception type name.
 36544  func (s *InvalidDocumentType) Code() string {
 36545  	return "InvalidDocumentType"
 36546  }
 36547  
 36548  // Message returns the exception's message.
 36549  func (s *InvalidDocumentType) Message() string {
 36550  	if s.Message_ != nil {
 36551  		return *s.Message_
 36552  	}
 36553  	return ""
 36554  }
 36555  
 36556  // OrigErr always returns nil, satisfies awserr.Error interface.
 36557  func (s *InvalidDocumentType) OrigErr() error {
 36558  	return nil
 36559  }
 36560  
 36561  func (s *InvalidDocumentType) Error() string {
 36562  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36563  }
 36564  
 36565  // Status code returns the HTTP status code for the request's response error.
 36566  func (s *InvalidDocumentType) StatusCode() int {
 36567  	return s.RespMetadata.StatusCode
 36568  }
 36569  
 36570  // RequestID returns the service's response RequestID for request.
 36571  func (s *InvalidDocumentType) RequestID() string {
 36572  	return s.RespMetadata.RequestID
 36573  }
 36574  
 36575  // The document version isn't valid or doesn't exist.
 36576  type InvalidDocumentVersion struct {
 36577  	_            struct{}                  `type:"structure"`
 36578  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36579  
 36580  	Message_ *string `locationName:"Message" type:"string"`
 36581  }
 36582  
 36583  // String returns the string representation.
 36584  //
 36585  // API parameter values that are decorated as "sensitive" in the API will not
 36586  // be included in the string output. The member name will be present, but the
 36587  // value will be replaced with "sensitive".
 36588  func (s InvalidDocumentVersion) String() string {
 36589  	return awsutil.Prettify(s)
 36590  }
 36591  
 36592  // GoString returns the string representation.
 36593  //
 36594  // API parameter values that are decorated as "sensitive" in the API will not
 36595  // be included in the string output. The member name will be present, but the
 36596  // value will be replaced with "sensitive".
 36597  func (s InvalidDocumentVersion) GoString() string {
 36598  	return s.String()
 36599  }
 36600  
 36601  func newErrorInvalidDocumentVersion(v protocol.ResponseMetadata) error {
 36602  	return &InvalidDocumentVersion{
 36603  		RespMetadata: v,
 36604  	}
 36605  }
 36606  
 36607  // Code returns the exception type name.
 36608  func (s *InvalidDocumentVersion) Code() string {
 36609  	return "InvalidDocumentVersion"
 36610  }
 36611  
 36612  // Message returns the exception's message.
 36613  func (s *InvalidDocumentVersion) Message() string {
 36614  	if s.Message_ != nil {
 36615  		return *s.Message_
 36616  	}
 36617  	return ""
 36618  }
 36619  
 36620  // OrigErr always returns nil, satisfies awserr.Error interface.
 36621  func (s *InvalidDocumentVersion) OrigErr() error {
 36622  	return nil
 36623  }
 36624  
 36625  func (s *InvalidDocumentVersion) Error() string {
 36626  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36627  }
 36628  
 36629  // Status code returns the HTTP status code for the request's response error.
 36630  func (s *InvalidDocumentVersion) StatusCode() int {
 36631  	return s.RespMetadata.StatusCode
 36632  }
 36633  
 36634  // RequestID returns the service's response RequestID for request.
 36635  func (s *InvalidDocumentVersion) RequestID() string {
 36636  	return s.RespMetadata.RequestID
 36637  }
 36638  
 36639  // The filter name isn't valid. Verify the you entered the correct name and
 36640  // try again.
 36641  type InvalidFilter struct {
 36642  	_            struct{}                  `type:"structure"`
 36643  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36644  
 36645  	Message_ *string `locationName:"Message" type:"string"`
 36646  }
 36647  
 36648  // String returns the string representation.
 36649  //
 36650  // API parameter values that are decorated as "sensitive" in the API will not
 36651  // be included in the string output. The member name will be present, but the
 36652  // value will be replaced with "sensitive".
 36653  func (s InvalidFilter) String() string {
 36654  	return awsutil.Prettify(s)
 36655  }
 36656  
 36657  // GoString returns the string representation.
 36658  //
 36659  // API parameter values that are decorated as "sensitive" in the API will not
 36660  // be included in the string output. The member name will be present, but the
 36661  // value will be replaced with "sensitive".
 36662  func (s InvalidFilter) GoString() string {
 36663  	return s.String()
 36664  }
 36665  
 36666  func newErrorInvalidFilter(v protocol.ResponseMetadata) error {
 36667  	return &InvalidFilter{
 36668  		RespMetadata: v,
 36669  	}
 36670  }
 36671  
 36672  // Code returns the exception type name.
 36673  func (s *InvalidFilter) Code() string {
 36674  	return "InvalidFilter"
 36675  }
 36676  
 36677  // Message returns the exception's message.
 36678  func (s *InvalidFilter) Message() string {
 36679  	if s.Message_ != nil {
 36680  		return *s.Message_
 36681  	}
 36682  	return ""
 36683  }
 36684  
 36685  // OrigErr always returns nil, satisfies awserr.Error interface.
 36686  func (s *InvalidFilter) OrigErr() error {
 36687  	return nil
 36688  }
 36689  
 36690  func (s *InvalidFilter) Error() string {
 36691  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36692  }
 36693  
 36694  // Status code returns the HTTP status code for the request's response error.
 36695  func (s *InvalidFilter) StatusCode() int {
 36696  	return s.RespMetadata.StatusCode
 36697  }
 36698  
 36699  // RequestID returns the service's response RequestID for request.
 36700  func (s *InvalidFilter) RequestID() string {
 36701  	return s.RespMetadata.RequestID
 36702  }
 36703  
 36704  // The specified key isn't valid.
 36705  type InvalidFilterKey struct {
 36706  	_            struct{}                  `type:"structure"`
 36707  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36708  
 36709  	Message_ *string `locationName:"message" type:"string"`
 36710  }
 36711  
 36712  // String returns the string representation.
 36713  //
 36714  // API parameter values that are decorated as "sensitive" in the API will not
 36715  // be included in the string output. The member name will be present, but the
 36716  // value will be replaced with "sensitive".
 36717  func (s InvalidFilterKey) String() string {
 36718  	return awsutil.Prettify(s)
 36719  }
 36720  
 36721  // GoString returns the string representation.
 36722  //
 36723  // API parameter values that are decorated as "sensitive" in the API will not
 36724  // be included in the string output. The member name will be present, but the
 36725  // value will be replaced with "sensitive".
 36726  func (s InvalidFilterKey) GoString() string {
 36727  	return s.String()
 36728  }
 36729  
 36730  func newErrorInvalidFilterKey(v protocol.ResponseMetadata) error {
 36731  	return &InvalidFilterKey{
 36732  		RespMetadata: v,
 36733  	}
 36734  }
 36735  
 36736  // Code returns the exception type name.
 36737  func (s *InvalidFilterKey) Code() string {
 36738  	return "InvalidFilterKey"
 36739  }
 36740  
 36741  // Message returns the exception's message.
 36742  func (s *InvalidFilterKey) Message() string {
 36743  	if s.Message_ != nil {
 36744  		return *s.Message_
 36745  	}
 36746  	return ""
 36747  }
 36748  
 36749  // OrigErr always returns nil, satisfies awserr.Error interface.
 36750  func (s *InvalidFilterKey) OrigErr() error {
 36751  	return nil
 36752  }
 36753  
 36754  func (s *InvalidFilterKey) Error() string {
 36755  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36756  }
 36757  
 36758  // Status code returns the HTTP status code for the request's response error.
 36759  func (s *InvalidFilterKey) StatusCode() int {
 36760  	return s.RespMetadata.StatusCode
 36761  }
 36762  
 36763  // RequestID returns the service's response RequestID for request.
 36764  func (s *InvalidFilterKey) RequestID() string {
 36765  	return s.RespMetadata.RequestID
 36766  }
 36767  
 36768  // The specified filter option isn't valid. Valid options are Equals and BeginsWith.
 36769  // For Path filter, valid options are Recursive and OneLevel.
 36770  type InvalidFilterOption struct {
 36771  	_            struct{}                  `type:"structure"`
 36772  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36773  
 36774  	// The specified filter option isn't valid. Valid options are Equals and BeginsWith.
 36775  	// For Path filter, valid options are Recursive and OneLevel.
 36776  	Message_ *string `locationName:"message" type:"string"`
 36777  }
 36778  
 36779  // String returns the string representation.
 36780  //
 36781  // API parameter values that are decorated as "sensitive" in the API will not
 36782  // be included in the string output. The member name will be present, but the
 36783  // value will be replaced with "sensitive".
 36784  func (s InvalidFilterOption) String() string {
 36785  	return awsutil.Prettify(s)
 36786  }
 36787  
 36788  // GoString returns the string representation.
 36789  //
 36790  // API parameter values that are decorated as "sensitive" in the API will not
 36791  // be included in the string output. The member name will be present, but the
 36792  // value will be replaced with "sensitive".
 36793  func (s InvalidFilterOption) GoString() string {
 36794  	return s.String()
 36795  }
 36796  
 36797  func newErrorInvalidFilterOption(v protocol.ResponseMetadata) error {
 36798  	return &InvalidFilterOption{
 36799  		RespMetadata: v,
 36800  	}
 36801  }
 36802  
 36803  // Code returns the exception type name.
 36804  func (s *InvalidFilterOption) Code() string {
 36805  	return "InvalidFilterOption"
 36806  }
 36807  
 36808  // Message returns the exception's message.
 36809  func (s *InvalidFilterOption) Message() string {
 36810  	if s.Message_ != nil {
 36811  		return *s.Message_
 36812  	}
 36813  	return ""
 36814  }
 36815  
 36816  // OrigErr always returns nil, satisfies awserr.Error interface.
 36817  func (s *InvalidFilterOption) OrigErr() error {
 36818  	return nil
 36819  }
 36820  
 36821  func (s *InvalidFilterOption) Error() string {
 36822  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36823  }
 36824  
 36825  // Status code returns the HTTP status code for the request's response error.
 36826  func (s *InvalidFilterOption) StatusCode() int {
 36827  	return s.RespMetadata.StatusCode
 36828  }
 36829  
 36830  // RequestID returns the service's response RequestID for request.
 36831  func (s *InvalidFilterOption) RequestID() string {
 36832  	return s.RespMetadata.RequestID
 36833  }
 36834  
 36835  // The filter value isn't valid. Verify the value and try again.
 36836  type InvalidFilterValue struct {
 36837  	_            struct{}                  `type:"structure"`
 36838  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36839  
 36840  	Message_ *string `locationName:"Message" type:"string"`
 36841  }
 36842  
 36843  // String returns the string representation.
 36844  //
 36845  // API parameter values that are decorated as "sensitive" in the API will not
 36846  // be included in the string output. The member name will be present, but the
 36847  // value will be replaced with "sensitive".
 36848  func (s InvalidFilterValue) String() string {
 36849  	return awsutil.Prettify(s)
 36850  }
 36851  
 36852  // GoString returns the string representation.
 36853  //
 36854  // API parameter values that are decorated as "sensitive" in the API will not
 36855  // be included in the string output. The member name will be present, but the
 36856  // value will be replaced with "sensitive".
 36857  func (s InvalidFilterValue) GoString() string {
 36858  	return s.String()
 36859  }
 36860  
 36861  func newErrorInvalidFilterValue(v protocol.ResponseMetadata) error {
 36862  	return &InvalidFilterValue{
 36863  		RespMetadata: v,
 36864  	}
 36865  }
 36866  
 36867  // Code returns the exception type name.
 36868  func (s *InvalidFilterValue) Code() string {
 36869  	return "InvalidFilterValue"
 36870  }
 36871  
 36872  // Message returns the exception's message.
 36873  func (s *InvalidFilterValue) Message() string {
 36874  	if s.Message_ != nil {
 36875  		return *s.Message_
 36876  	}
 36877  	return ""
 36878  }
 36879  
 36880  // OrigErr always returns nil, satisfies awserr.Error interface.
 36881  func (s *InvalidFilterValue) OrigErr() error {
 36882  	return nil
 36883  }
 36884  
 36885  func (s *InvalidFilterValue) Error() string {
 36886  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36887  }
 36888  
 36889  // Status code returns the HTTP status code for the request's response error.
 36890  func (s *InvalidFilterValue) StatusCode() int {
 36891  	return s.RespMetadata.StatusCode
 36892  }
 36893  
 36894  // RequestID returns the service's response RequestID for request.
 36895  func (s *InvalidFilterValue) RequestID() string {
 36896  	return s.RespMetadata.RequestID
 36897  }
 36898  
 36899  // The following problems can cause this exception:
 36900  //
 36901  //    * You don't have permission to access the instance.
 36902  //
 36903  //    * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
 36904  //    Verify that SSM Agent is running.
 36905  //
 36906  //    * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
 36907  //    Agent.
 36908  //
 36909  //    * The instance isn't in valid state. Valid states are: Running, Pending,
 36910  //    Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
 36911  type InvalidInstanceId struct {
 36912  	_            struct{}                  `type:"structure"`
 36913  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36914  
 36915  	Message_ *string `locationName:"Message" type:"string"`
 36916  }
 36917  
 36918  // String returns the string representation.
 36919  //
 36920  // API parameter values that are decorated as "sensitive" in the API will not
 36921  // be included in the string output. The member name will be present, but the
 36922  // value will be replaced with "sensitive".
 36923  func (s InvalidInstanceId) String() string {
 36924  	return awsutil.Prettify(s)
 36925  }
 36926  
 36927  // GoString returns the string representation.
 36928  //
 36929  // API parameter values that are decorated as "sensitive" in the API will not
 36930  // be included in the string output. The member name will be present, but the
 36931  // value will be replaced with "sensitive".
 36932  func (s InvalidInstanceId) GoString() string {
 36933  	return s.String()
 36934  }
 36935  
 36936  func newErrorInvalidInstanceId(v protocol.ResponseMetadata) error {
 36937  	return &InvalidInstanceId{
 36938  		RespMetadata: v,
 36939  	}
 36940  }
 36941  
 36942  // Code returns the exception type name.
 36943  func (s *InvalidInstanceId) Code() string {
 36944  	return "InvalidInstanceId"
 36945  }
 36946  
 36947  // Message returns the exception's message.
 36948  func (s *InvalidInstanceId) Message() string {
 36949  	if s.Message_ != nil {
 36950  		return *s.Message_
 36951  	}
 36952  	return ""
 36953  }
 36954  
 36955  // OrigErr always returns nil, satisfies awserr.Error interface.
 36956  func (s *InvalidInstanceId) OrigErr() error {
 36957  	return nil
 36958  }
 36959  
 36960  func (s *InvalidInstanceId) Error() string {
 36961  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 36962  }
 36963  
 36964  // Status code returns the HTTP status code for the request's response error.
 36965  func (s *InvalidInstanceId) StatusCode() int {
 36966  	return s.RespMetadata.StatusCode
 36967  }
 36968  
 36969  // RequestID returns the service's response RequestID for request.
 36970  func (s *InvalidInstanceId) RequestID() string {
 36971  	return s.RespMetadata.RequestID
 36972  }
 36973  
 36974  // The specified filter value isn't valid.
 36975  type InvalidInstanceInformationFilterValue struct {
 36976  	_            struct{}                  `type:"structure"`
 36977  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 36978  
 36979  	Message_ *string `locationName:"message" type:"string"`
 36980  }
 36981  
 36982  // String returns the string representation.
 36983  //
 36984  // API parameter values that are decorated as "sensitive" in the API will not
 36985  // be included in the string output. The member name will be present, but the
 36986  // value will be replaced with "sensitive".
 36987  func (s InvalidInstanceInformationFilterValue) String() string {
 36988  	return awsutil.Prettify(s)
 36989  }
 36990  
 36991  // GoString returns the string representation.
 36992  //
 36993  // API parameter values that are decorated as "sensitive" in the API will not
 36994  // be included in the string output. The member name will be present, but the
 36995  // value will be replaced with "sensitive".
 36996  func (s InvalidInstanceInformationFilterValue) GoString() string {
 36997  	return s.String()
 36998  }
 36999  
 37000  func newErrorInvalidInstanceInformationFilterValue(v protocol.ResponseMetadata) error {
 37001  	return &InvalidInstanceInformationFilterValue{
 37002  		RespMetadata: v,
 37003  	}
 37004  }
 37005  
 37006  // Code returns the exception type name.
 37007  func (s *InvalidInstanceInformationFilterValue) Code() string {
 37008  	return "InvalidInstanceInformationFilterValue"
 37009  }
 37010  
 37011  // Message returns the exception's message.
 37012  func (s *InvalidInstanceInformationFilterValue) Message() string {
 37013  	if s.Message_ != nil {
 37014  		return *s.Message_
 37015  	}
 37016  	return ""
 37017  }
 37018  
 37019  // OrigErr always returns nil, satisfies awserr.Error interface.
 37020  func (s *InvalidInstanceInformationFilterValue) OrigErr() error {
 37021  	return nil
 37022  }
 37023  
 37024  func (s *InvalidInstanceInformationFilterValue) Error() string {
 37025  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37026  }
 37027  
 37028  // Status code returns the HTTP status code for the request's response error.
 37029  func (s *InvalidInstanceInformationFilterValue) StatusCode() int {
 37030  	return s.RespMetadata.StatusCode
 37031  }
 37032  
 37033  // RequestID returns the service's response RequestID for request.
 37034  func (s *InvalidInstanceInformationFilterValue) RequestID() string {
 37035  	return s.RespMetadata.RequestID
 37036  }
 37037  
 37038  // The specified inventory group isn't valid.
 37039  type InvalidInventoryGroupException struct {
 37040  	_            struct{}                  `type:"structure"`
 37041  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37042  
 37043  	Message_ *string `locationName:"Message" type:"string"`
 37044  }
 37045  
 37046  // String returns the string representation.
 37047  //
 37048  // API parameter values that are decorated as "sensitive" in the API will not
 37049  // be included in the string output. The member name will be present, but the
 37050  // value will be replaced with "sensitive".
 37051  func (s InvalidInventoryGroupException) String() string {
 37052  	return awsutil.Prettify(s)
 37053  }
 37054  
 37055  // GoString returns the string representation.
 37056  //
 37057  // API parameter values that are decorated as "sensitive" in the API will not
 37058  // be included in the string output. The member name will be present, but the
 37059  // value will be replaced with "sensitive".
 37060  func (s InvalidInventoryGroupException) GoString() string {
 37061  	return s.String()
 37062  }
 37063  
 37064  func newErrorInvalidInventoryGroupException(v protocol.ResponseMetadata) error {
 37065  	return &InvalidInventoryGroupException{
 37066  		RespMetadata: v,
 37067  	}
 37068  }
 37069  
 37070  // Code returns the exception type name.
 37071  func (s *InvalidInventoryGroupException) Code() string {
 37072  	return "InvalidInventoryGroupException"
 37073  }
 37074  
 37075  // Message returns the exception's message.
 37076  func (s *InvalidInventoryGroupException) Message() string {
 37077  	if s.Message_ != nil {
 37078  		return *s.Message_
 37079  	}
 37080  	return ""
 37081  }
 37082  
 37083  // OrigErr always returns nil, satisfies awserr.Error interface.
 37084  func (s *InvalidInventoryGroupException) OrigErr() error {
 37085  	return nil
 37086  }
 37087  
 37088  func (s *InvalidInventoryGroupException) Error() string {
 37089  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37090  }
 37091  
 37092  // Status code returns the HTTP status code for the request's response error.
 37093  func (s *InvalidInventoryGroupException) StatusCode() int {
 37094  	return s.RespMetadata.StatusCode
 37095  }
 37096  
 37097  // RequestID returns the service's response RequestID for request.
 37098  func (s *InvalidInventoryGroupException) RequestID() string {
 37099  	return s.RespMetadata.RequestID
 37100  }
 37101  
 37102  // You specified invalid keys or values in the Context attribute for InventoryItem.
 37103  // Verify the keys and values, and try again.
 37104  type InvalidInventoryItemContextException struct {
 37105  	_            struct{}                  `type:"structure"`
 37106  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37107  
 37108  	Message_ *string `locationName:"Message" type:"string"`
 37109  }
 37110  
 37111  // String returns the string representation.
 37112  //
 37113  // API parameter values that are decorated as "sensitive" in the API will not
 37114  // be included in the string output. The member name will be present, but the
 37115  // value will be replaced with "sensitive".
 37116  func (s InvalidInventoryItemContextException) String() string {
 37117  	return awsutil.Prettify(s)
 37118  }
 37119  
 37120  // GoString returns the string representation.
 37121  //
 37122  // API parameter values that are decorated as "sensitive" in the API will not
 37123  // be included in the string output. The member name will be present, but the
 37124  // value will be replaced with "sensitive".
 37125  func (s InvalidInventoryItemContextException) GoString() string {
 37126  	return s.String()
 37127  }
 37128  
 37129  func newErrorInvalidInventoryItemContextException(v protocol.ResponseMetadata) error {
 37130  	return &InvalidInventoryItemContextException{
 37131  		RespMetadata: v,
 37132  	}
 37133  }
 37134  
 37135  // Code returns the exception type name.
 37136  func (s *InvalidInventoryItemContextException) Code() string {
 37137  	return "InvalidInventoryItemContextException"
 37138  }
 37139  
 37140  // Message returns the exception's message.
 37141  func (s *InvalidInventoryItemContextException) Message() string {
 37142  	if s.Message_ != nil {
 37143  		return *s.Message_
 37144  	}
 37145  	return ""
 37146  }
 37147  
 37148  // OrigErr always returns nil, satisfies awserr.Error interface.
 37149  func (s *InvalidInventoryItemContextException) OrigErr() error {
 37150  	return nil
 37151  }
 37152  
 37153  func (s *InvalidInventoryItemContextException) Error() string {
 37154  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37155  }
 37156  
 37157  // Status code returns the HTTP status code for the request's response error.
 37158  func (s *InvalidInventoryItemContextException) StatusCode() int {
 37159  	return s.RespMetadata.StatusCode
 37160  }
 37161  
 37162  // RequestID returns the service's response RequestID for request.
 37163  func (s *InvalidInventoryItemContextException) RequestID() string {
 37164  	return s.RespMetadata.RequestID
 37165  }
 37166  
 37167  // The request isn't valid.
 37168  type InvalidInventoryRequestException struct {
 37169  	_            struct{}                  `type:"structure"`
 37170  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37171  
 37172  	Message_ *string `locationName:"Message" type:"string"`
 37173  }
 37174  
 37175  // String returns the string representation.
 37176  //
 37177  // API parameter values that are decorated as "sensitive" in the API will not
 37178  // be included in the string output. The member name will be present, but the
 37179  // value will be replaced with "sensitive".
 37180  func (s InvalidInventoryRequestException) String() string {
 37181  	return awsutil.Prettify(s)
 37182  }
 37183  
 37184  // GoString returns the string representation.
 37185  //
 37186  // API parameter values that are decorated as "sensitive" in the API will not
 37187  // be included in the string output. The member name will be present, but the
 37188  // value will be replaced with "sensitive".
 37189  func (s InvalidInventoryRequestException) GoString() string {
 37190  	return s.String()
 37191  }
 37192  
 37193  func newErrorInvalidInventoryRequestException(v protocol.ResponseMetadata) error {
 37194  	return &InvalidInventoryRequestException{
 37195  		RespMetadata: v,
 37196  	}
 37197  }
 37198  
 37199  // Code returns the exception type name.
 37200  func (s *InvalidInventoryRequestException) Code() string {
 37201  	return "InvalidInventoryRequestException"
 37202  }
 37203  
 37204  // Message returns the exception's message.
 37205  func (s *InvalidInventoryRequestException) Message() string {
 37206  	if s.Message_ != nil {
 37207  		return *s.Message_
 37208  	}
 37209  	return ""
 37210  }
 37211  
 37212  // OrigErr always returns nil, satisfies awserr.Error interface.
 37213  func (s *InvalidInventoryRequestException) OrigErr() error {
 37214  	return nil
 37215  }
 37216  
 37217  func (s *InvalidInventoryRequestException) Error() string {
 37218  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37219  }
 37220  
 37221  // Status code returns the HTTP status code for the request's response error.
 37222  func (s *InvalidInventoryRequestException) StatusCode() int {
 37223  	return s.RespMetadata.StatusCode
 37224  }
 37225  
 37226  // RequestID returns the service's response RequestID for request.
 37227  func (s *InvalidInventoryRequestException) RequestID() string {
 37228  	return s.RespMetadata.RequestID
 37229  }
 37230  
 37231  // One or more content items isn't valid.
 37232  type InvalidItemContentException struct {
 37233  	_            struct{}                  `type:"structure"`
 37234  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37235  
 37236  	Message_ *string `locationName:"Message" type:"string"`
 37237  
 37238  	TypeName *string `min:"1" type:"string"`
 37239  }
 37240  
 37241  // String returns the string representation.
 37242  //
 37243  // API parameter values that are decorated as "sensitive" in the API will not
 37244  // be included in the string output. The member name will be present, but the
 37245  // value will be replaced with "sensitive".
 37246  func (s InvalidItemContentException) String() string {
 37247  	return awsutil.Prettify(s)
 37248  }
 37249  
 37250  // GoString returns the string representation.
 37251  //
 37252  // API parameter values that are decorated as "sensitive" in the API will not
 37253  // be included in the string output. The member name will be present, but the
 37254  // value will be replaced with "sensitive".
 37255  func (s InvalidItemContentException) GoString() string {
 37256  	return s.String()
 37257  }
 37258  
 37259  func newErrorInvalidItemContentException(v protocol.ResponseMetadata) error {
 37260  	return &InvalidItemContentException{
 37261  		RespMetadata: v,
 37262  	}
 37263  }
 37264  
 37265  // Code returns the exception type name.
 37266  func (s *InvalidItemContentException) Code() string {
 37267  	return "InvalidItemContentException"
 37268  }
 37269  
 37270  // Message returns the exception's message.
 37271  func (s *InvalidItemContentException) Message() string {
 37272  	if s.Message_ != nil {
 37273  		return *s.Message_
 37274  	}
 37275  	return ""
 37276  }
 37277  
 37278  // OrigErr always returns nil, satisfies awserr.Error interface.
 37279  func (s *InvalidItemContentException) OrigErr() error {
 37280  	return nil
 37281  }
 37282  
 37283  func (s *InvalidItemContentException) Error() string {
 37284  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 37285  }
 37286  
 37287  // Status code returns the HTTP status code for the request's response error.
 37288  func (s *InvalidItemContentException) StatusCode() int {
 37289  	return s.RespMetadata.StatusCode
 37290  }
 37291  
 37292  // RequestID returns the service's response RequestID for request.
 37293  func (s *InvalidItemContentException) RequestID() string {
 37294  	return s.RespMetadata.RequestID
 37295  }
 37296  
 37297  // The query key ID isn't valid.
 37298  type InvalidKeyId struct {
 37299  	_            struct{}                  `type:"structure"`
 37300  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37301  
 37302  	Message_ *string `locationName:"message" type:"string"`
 37303  }
 37304  
 37305  // String returns the string representation.
 37306  //
 37307  // API parameter values that are decorated as "sensitive" in the API will not
 37308  // be included in the string output. The member name will be present, but the
 37309  // value will be replaced with "sensitive".
 37310  func (s InvalidKeyId) String() string {
 37311  	return awsutil.Prettify(s)
 37312  }
 37313  
 37314  // GoString returns the string representation.
 37315  //
 37316  // API parameter values that are decorated as "sensitive" in the API will not
 37317  // be included in the string output. The member name will be present, but the
 37318  // value will be replaced with "sensitive".
 37319  func (s InvalidKeyId) GoString() string {
 37320  	return s.String()
 37321  }
 37322  
 37323  func newErrorInvalidKeyId(v protocol.ResponseMetadata) error {
 37324  	return &InvalidKeyId{
 37325  		RespMetadata: v,
 37326  	}
 37327  }
 37328  
 37329  // Code returns the exception type name.
 37330  func (s *InvalidKeyId) Code() string {
 37331  	return "InvalidKeyId"
 37332  }
 37333  
 37334  // Message returns the exception's message.
 37335  func (s *InvalidKeyId) Message() string {
 37336  	if s.Message_ != nil {
 37337  		return *s.Message_
 37338  	}
 37339  	return ""
 37340  }
 37341  
 37342  // OrigErr always returns nil, satisfies awserr.Error interface.
 37343  func (s *InvalidKeyId) OrigErr() error {
 37344  	return nil
 37345  }
 37346  
 37347  func (s *InvalidKeyId) Error() string {
 37348  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37349  }
 37350  
 37351  // Status code returns the HTTP status code for the request's response error.
 37352  func (s *InvalidKeyId) StatusCode() int {
 37353  	return s.RespMetadata.StatusCode
 37354  }
 37355  
 37356  // RequestID returns the service's response RequestID for request.
 37357  func (s *InvalidKeyId) RequestID() string {
 37358  	return s.RespMetadata.RequestID
 37359  }
 37360  
 37361  // The specified token isn't valid.
 37362  type InvalidNextToken struct {
 37363  	_            struct{}                  `type:"structure"`
 37364  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37365  
 37366  	Message_ *string `locationName:"Message" type:"string"`
 37367  }
 37368  
 37369  // String returns the string representation.
 37370  //
 37371  // API parameter values that are decorated as "sensitive" in the API will not
 37372  // be included in the string output. The member name will be present, but the
 37373  // value will be replaced with "sensitive".
 37374  func (s InvalidNextToken) String() string {
 37375  	return awsutil.Prettify(s)
 37376  }
 37377  
 37378  // GoString returns the string representation.
 37379  //
 37380  // API parameter values that are decorated as "sensitive" in the API will not
 37381  // be included in the string output. The member name will be present, but the
 37382  // value will be replaced with "sensitive".
 37383  func (s InvalidNextToken) GoString() string {
 37384  	return s.String()
 37385  }
 37386  
 37387  func newErrorInvalidNextToken(v protocol.ResponseMetadata) error {
 37388  	return &InvalidNextToken{
 37389  		RespMetadata: v,
 37390  	}
 37391  }
 37392  
 37393  // Code returns the exception type name.
 37394  func (s *InvalidNextToken) Code() string {
 37395  	return "InvalidNextToken"
 37396  }
 37397  
 37398  // Message returns the exception's message.
 37399  func (s *InvalidNextToken) Message() string {
 37400  	if s.Message_ != nil {
 37401  		return *s.Message_
 37402  	}
 37403  	return ""
 37404  }
 37405  
 37406  // OrigErr always returns nil, satisfies awserr.Error interface.
 37407  func (s *InvalidNextToken) OrigErr() error {
 37408  	return nil
 37409  }
 37410  
 37411  func (s *InvalidNextToken) Error() string {
 37412  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37413  }
 37414  
 37415  // Status code returns the HTTP status code for the request's response error.
 37416  func (s *InvalidNextToken) StatusCode() int {
 37417  	return s.RespMetadata.StatusCode
 37418  }
 37419  
 37420  // RequestID returns the service's response RequestID for request.
 37421  func (s *InvalidNextToken) RequestID() string {
 37422  	return s.RespMetadata.RequestID
 37423  }
 37424  
 37425  // One or more configuration items isn't valid. Verify that a valid Amazon Resource
 37426  // Name (ARN) was provided for an Amazon Simple Notification Service topic.
 37427  type InvalidNotificationConfig struct {
 37428  	_            struct{}                  `type:"structure"`
 37429  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37430  
 37431  	Message_ *string `locationName:"Message" type:"string"`
 37432  }
 37433  
 37434  // String returns the string representation.
 37435  //
 37436  // API parameter values that are decorated as "sensitive" in the API will not
 37437  // be included in the string output. The member name will be present, but the
 37438  // value will be replaced with "sensitive".
 37439  func (s InvalidNotificationConfig) String() string {
 37440  	return awsutil.Prettify(s)
 37441  }
 37442  
 37443  // GoString returns the string representation.
 37444  //
 37445  // API parameter values that are decorated as "sensitive" in the API will not
 37446  // be included in the string output. The member name will be present, but the
 37447  // value will be replaced with "sensitive".
 37448  func (s InvalidNotificationConfig) GoString() string {
 37449  	return s.String()
 37450  }
 37451  
 37452  func newErrorInvalidNotificationConfig(v protocol.ResponseMetadata) error {
 37453  	return &InvalidNotificationConfig{
 37454  		RespMetadata: v,
 37455  	}
 37456  }
 37457  
 37458  // Code returns the exception type name.
 37459  func (s *InvalidNotificationConfig) Code() string {
 37460  	return "InvalidNotificationConfig"
 37461  }
 37462  
 37463  // Message returns the exception's message.
 37464  func (s *InvalidNotificationConfig) Message() string {
 37465  	if s.Message_ != nil {
 37466  		return *s.Message_
 37467  	}
 37468  	return ""
 37469  }
 37470  
 37471  // OrigErr always returns nil, satisfies awserr.Error interface.
 37472  func (s *InvalidNotificationConfig) OrigErr() error {
 37473  	return nil
 37474  }
 37475  
 37476  func (s *InvalidNotificationConfig) Error() string {
 37477  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37478  }
 37479  
 37480  // Status code returns the HTTP status code for the request's response error.
 37481  func (s *InvalidNotificationConfig) StatusCode() int {
 37482  	return s.RespMetadata.StatusCode
 37483  }
 37484  
 37485  // RequestID returns the service's response RequestID for request.
 37486  func (s *InvalidNotificationConfig) RequestID() string {
 37487  	return s.RespMetadata.RequestID
 37488  }
 37489  
 37490  // The delete inventory option specified isn't valid. Verify the option and
 37491  // try again.
 37492  type InvalidOptionException struct {
 37493  	_            struct{}                  `type:"structure"`
 37494  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37495  
 37496  	Message_ *string `locationName:"Message" type:"string"`
 37497  }
 37498  
 37499  // String returns the string representation.
 37500  //
 37501  // API parameter values that are decorated as "sensitive" in the API will not
 37502  // be included in the string output. The member name will be present, but the
 37503  // value will be replaced with "sensitive".
 37504  func (s InvalidOptionException) String() string {
 37505  	return awsutil.Prettify(s)
 37506  }
 37507  
 37508  // GoString returns the string representation.
 37509  //
 37510  // API parameter values that are decorated as "sensitive" in the API will not
 37511  // be included in the string output. The member name will be present, but the
 37512  // value will be replaced with "sensitive".
 37513  func (s InvalidOptionException) GoString() string {
 37514  	return s.String()
 37515  }
 37516  
 37517  func newErrorInvalidOptionException(v protocol.ResponseMetadata) error {
 37518  	return &InvalidOptionException{
 37519  		RespMetadata: v,
 37520  	}
 37521  }
 37522  
 37523  // Code returns the exception type name.
 37524  func (s *InvalidOptionException) Code() string {
 37525  	return "InvalidOptionException"
 37526  }
 37527  
 37528  // Message returns the exception's message.
 37529  func (s *InvalidOptionException) Message() string {
 37530  	if s.Message_ != nil {
 37531  		return *s.Message_
 37532  	}
 37533  	return ""
 37534  }
 37535  
 37536  // OrigErr always returns nil, satisfies awserr.Error interface.
 37537  func (s *InvalidOptionException) OrigErr() error {
 37538  	return nil
 37539  }
 37540  
 37541  func (s *InvalidOptionException) Error() string {
 37542  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37543  }
 37544  
 37545  // Status code returns the HTTP status code for the request's response error.
 37546  func (s *InvalidOptionException) StatusCode() int {
 37547  	return s.RespMetadata.StatusCode
 37548  }
 37549  
 37550  // RequestID returns the service's response RequestID for request.
 37551  func (s *InvalidOptionException) RequestID() string {
 37552  	return s.RespMetadata.RequestID
 37553  }
 37554  
 37555  // The S3 bucket doesn't exist.
 37556  type InvalidOutputFolder struct {
 37557  	_            struct{}                  `type:"structure"`
 37558  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37559  
 37560  	Message_ *string `locationName:"message" type:"string"`
 37561  }
 37562  
 37563  // String returns the string representation.
 37564  //
 37565  // API parameter values that are decorated as "sensitive" in the API will not
 37566  // be included in the string output. The member name will be present, but the
 37567  // value will be replaced with "sensitive".
 37568  func (s InvalidOutputFolder) String() string {
 37569  	return awsutil.Prettify(s)
 37570  }
 37571  
 37572  // GoString returns the string representation.
 37573  //
 37574  // API parameter values that are decorated as "sensitive" in the API will not
 37575  // be included in the string output. The member name will be present, but the
 37576  // value will be replaced with "sensitive".
 37577  func (s InvalidOutputFolder) GoString() string {
 37578  	return s.String()
 37579  }
 37580  
 37581  func newErrorInvalidOutputFolder(v protocol.ResponseMetadata) error {
 37582  	return &InvalidOutputFolder{
 37583  		RespMetadata: v,
 37584  	}
 37585  }
 37586  
 37587  // Code returns the exception type name.
 37588  func (s *InvalidOutputFolder) Code() string {
 37589  	return "InvalidOutputFolder"
 37590  }
 37591  
 37592  // Message returns the exception's message.
 37593  func (s *InvalidOutputFolder) Message() string {
 37594  	if s.Message_ != nil {
 37595  		return *s.Message_
 37596  	}
 37597  	return ""
 37598  }
 37599  
 37600  // OrigErr always returns nil, satisfies awserr.Error interface.
 37601  func (s *InvalidOutputFolder) OrigErr() error {
 37602  	return nil
 37603  }
 37604  
 37605  func (s *InvalidOutputFolder) Error() string {
 37606  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37607  }
 37608  
 37609  // Status code returns the HTTP status code for the request's response error.
 37610  func (s *InvalidOutputFolder) StatusCode() int {
 37611  	return s.RespMetadata.StatusCode
 37612  }
 37613  
 37614  // RequestID returns the service's response RequestID for request.
 37615  func (s *InvalidOutputFolder) RequestID() string {
 37616  	return s.RespMetadata.RequestID
 37617  }
 37618  
 37619  // The output location isn't valid or doesn't exist.
 37620  type InvalidOutputLocation struct {
 37621  	_            struct{}                  `type:"structure"`
 37622  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37623  
 37624  	Message_ *string `locationName:"message" type:"string"`
 37625  }
 37626  
 37627  // String returns the string representation.
 37628  //
 37629  // API parameter values that are decorated as "sensitive" in the API will not
 37630  // be included in the string output. The member name will be present, but the
 37631  // value will be replaced with "sensitive".
 37632  func (s InvalidOutputLocation) String() string {
 37633  	return awsutil.Prettify(s)
 37634  }
 37635  
 37636  // GoString returns the string representation.
 37637  //
 37638  // API parameter values that are decorated as "sensitive" in the API will not
 37639  // be included in the string output. The member name will be present, but the
 37640  // value will be replaced with "sensitive".
 37641  func (s InvalidOutputLocation) GoString() string {
 37642  	return s.String()
 37643  }
 37644  
 37645  func newErrorInvalidOutputLocation(v protocol.ResponseMetadata) error {
 37646  	return &InvalidOutputLocation{
 37647  		RespMetadata: v,
 37648  	}
 37649  }
 37650  
 37651  // Code returns the exception type name.
 37652  func (s *InvalidOutputLocation) Code() string {
 37653  	return "InvalidOutputLocation"
 37654  }
 37655  
 37656  // Message returns the exception's message.
 37657  func (s *InvalidOutputLocation) Message() string {
 37658  	if s.Message_ != nil {
 37659  		return *s.Message_
 37660  	}
 37661  	return ""
 37662  }
 37663  
 37664  // OrigErr always returns nil, satisfies awserr.Error interface.
 37665  func (s *InvalidOutputLocation) OrigErr() error {
 37666  	return nil
 37667  }
 37668  
 37669  func (s *InvalidOutputLocation) Error() string {
 37670  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37671  }
 37672  
 37673  // Status code returns the HTTP status code for the request's response error.
 37674  func (s *InvalidOutputLocation) StatusCode() int {
 37675  	return s.RespMetadata.StatusCode
 37676  }
 37677  
 37678  // RequestID returns the service's response RequestID for request.
 37679  func (s *InvalidOutputLocation) RequestID() string {
 37680  	return s.RespMetadata.RequestID
 37681  }
 37682  
 37683  // You must specify values for all required parameters in the Amazon Web Services
 37684  // Systems Manager document (SSM document). You can only supply values to parameters
 37685  // defined in the SSM document.
 37686  type InvalidParameters struct {
 37687  	_            struct{}                  `type:"structure"`
 37688  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37689  
 37690  	Message_ *string `locationName:"Message" type:"string"`
 37691  }
 37692  
 37693  // String returns the string representation.
 37694  //
 37695  // API parameter values that are decorated as "sensitive" in the API will not
 37696  // be included in the string output. The member name will be present, but the
 37697  // value will be replaced with "sensitive".
 37698  func (s InvalidParameters) String() string {
 37699  	return awsutil.Prettify(s)
 37700  }
 37701  
 37702  // GoString returns the string representation.
 37703  //
 37704  // API parameter values that are decorated as "sensitive" in the API will not
 37705  // be included in the string output. The member name will be present, but the
 37706  // value will be replaced with "sensitive".
 37707  func (s InvalidParameters) GoString() string {
 37708  	return s.String()
 37709  }
 37710  
 37711  func newErrorInvalidParameters(v protocol.ResponseMetadata) error {
 37712  	return &InvalidParameters{
 37713  		RespMetadata: v,
 37714  	}
 37715  }
 37716  
 37717  // Code returns the exception type name.
 37718  func (s *InvalidParameters) Code() string {
 37719  	return "InvalidParameters"
 37720  }
 37721  
 37722  // Message returns the exception's message.
 37723  func (s *InvalidParameters) Message() string {
 37724  	if s.Message_ != nil {
 37725  		return *s.Message_
 37726  	}
 37727  	return ""
 37728  }
 37729  
 37730  // OrigErr always returns nil, satisfies awserr.Error interface.
 37731  func (s *InvalidParameters) OrigErr() error {
 37732  	return nil
 37733  }
 37734  
 37735  func (s *InvalidParameters) Error() string {
 37736  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37737  }
 37738  
 37739  // Status code returns the HTTP status code for the request's response error.
 37740  func (s *InvalidParameters) StatusCode() int {
 37741  	return s.RespMetadata.StatusCode
 37742  }
 37743  
 37744  // RequestID returns the service's response RequestID for request.
 37745  func (s *InvalidParameters) RequestID() string {
 37746  	return s.RespMetadata.RequestID
 37747  }
 37748  
 37749  // The permission type isn't supported. Share is the only supported permission
 37750  // type.
 37751  type InvalidPermissionType struct {
 37752  	_            struct{}                  `type:"structure"`
 37753  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37754  
 37755  	Message_ *string `locationName:"Message" type:"string"`
 37756  }
 37757  
 37758  // String returns the string representation.
 37759  //
 37760  // API parameter values that are decorated as "sensitive" in the API will not
 37761  // be included in the string output. The member name will be present, but the
 37762  // value will be replaced with "sensitive".
 37763  func (s InvalidPermissionType) String() string {
 37764  	return awsutil.Prettify(s)
 37765  }
 37766  
 37767  // GoString returns the string representation.
 37768  //
 37769  // API parameter values that are decorated as "sensitive" in the API will not
 37770  // be included in the string output. The member name will be present, but the
 37771  // value will be replaced with "sensitive".
 37772  func (s InvalidPermissionType) GoString() string {
 37773  	return s.String()
 37774  }
 37775  
 37776  func newErrorInvalidPermissionType(v protocol.ResponseMetadata) error {
 37777  	return &InvalidPermissionType{
 37778  		RespMetadata: v,
 37779  	}
 37780  }
 37781  
 37782  // Code returns the exception type name.
 37783  func (s *InvalidPermissionType) Code() string {
 37784  	return "InvalidPermissionType"
 37785  }
 37786  
 37787  // Message returns the exception's message.
 37788  func (s *InvalidPermissionType) Message() string {
 37789  	if s.Message_ != nil {
 37790  		return *s.Message_
 37791  	}
 37792  	return ""
 37793  }
 37794  
 37795  // OrigErr always returns nil, satisfies awserr.Error interface.
 37796  func (s *InvalidPermissionType) OrigErr() error {
 37797  	return nil
 37798  }
 37799  
 37800  func (s *InvalidPermissionType) Error() string {
 37801  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37802  }
 37803  
 37804  // Status code returns the HTTP status code for the request's response error.
 37805  func (s *InvalidPermissionType) StatusCode() int {
 37806  	return s.RespMetadata.StatusCode
 37807  }
 37808  
 37809  // RequestID returns the service's response RequestID for request.
 37810  func (s *InvalidPermissionType) RequestID() string {
 37811  	return s.RespMetadata.RequestID
 37812  }
 37813  
 37814  // The plugin name isn't valid.
 37815  type InvalidPluginName struct {
 37816  	_            struct{}                  `type:"structure"`
 37817  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37818  
 37819  	Message_ *string `locationName:"message" type:"string"`
 37820  }
 37821  
 37822  // String returns the string representation.
 37823  //
 37824  // API parameter values that are decorated as "sensitive" in the API will not
 37825  // be included in the string output. The member name will be present, but the
 37826  // value will be replaced with "sensitive".
 37827  func (s InvalidPluginName) String() string {
 37828  	return awsutil.Prettify(s)
 37829  }
 37830  
 37831  // GoString returns the string representation.
 37832  //
 37833  // API parameter values that are decorated as "sensitive" in the API will not
 37834  // be included in the string output. The member name will be present, but the
 37835  // value will be replaced with "sensitive".
 37836  func (s InvalidPluginName) GoString() string {
 37837  	return s.String()
 37838  }
 37839  
 37840  func newErrorInvalidPluginName(v protocol.ResponseMetadata) error {
 37841  	return &InvalidPluginName{
 37842  		RespMetadata: v,
 37843  	}
 37844  }
 37845  
 37846  // Code returns the exception type name.
 37847  func (s *InvalidPluginName) Code() string {
 37848  	return "InvalidPluginName"
 37849  }
 37850  
 37851  // Message returns the exception's message.
 37852  func (s *InvalidPluginName) Message() string {
 37853  	if s.Message_ != nil {
 37854  		return *s.Message_
 37855  	}
 37856  	return ""
 37857  }
 37858  
 37859  // OrigErr always returns nil, satisfies awserr.Error interface.
 37860  func (s *InvalidPluginName) OrigErr() error {
 37861  	return nil
 37862  }
 37863  
 37864  func (s *InvalidPluginName) Error() string {
 37865  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37866  }
 37867  
 37868  // Status code returns the HTTP status code for the request's response error.
 37869  func (s *InvalidPluginName) StatusCode() int {
 37870  	return s.RespMetadata.StatusCode
 37871  }
 37872  
 37873  // RequestID returns the service's response RequestID for request.
 37874  func (s *InvalidPluginName) RequestID() string {
 37875  	return s.RespMetadata.RequestID
 37876  }
 37877  
 37878  // A policy attribute or its value is invalid.
 37879  type InvalidPolicyAttributeException struct {
 37880  	_            struct{}                  `type:"structure"`
 37881  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37882  
 37883  	Message_ *string `locationName:"message" type:"string"`
 37884  }
 37885  
 37886  // String returns the string representation.
 37887  //
 37888  // API parameter values that are decorated as "sensitive" in the API will not
 37889  // be included in the string output. The member name will be present, but the
 37890  // value will be replaced with "sensitive".
 37891  func (s InvalidPolicyAttributeException) String() string {
 37892  	return awsutil.Prettify(s)
 37893  }
 37894  
 37895  // GoString returns the string representation.
 37896  //
 37897  // API parameter values that are decorated as "sensitive" in the API will not
 37898  // be included in the string output. The member name will be present, but the
 37899  // value will be replaced with "sensitive".
 37900  func (s InvalidPolicyAttributeException) GoString() string {
 37901  	return s.String()
 37902  }
 37903  
 37904  func newErrorInvalidPolicyAttributeException(v protocol.ResponseMetadata) error {
 37905  	return &InvalidPolicyAttributeException{
 37906  		RespMetadata: v,
 37907  	}
 37908  }
 37909  
 37910  // Code returns the exception type name.
 37911  func (s *InvalidPolicyAttributeException) Code() string {
 37912  	return "InvalidPolicyAttributeException"
 37913  }
 37914  
 37915  // Message returns the exception's message.
 37916  func (s *InvalidPolicyAttributeException) Message() string {
 37917  	if s.Message_ != nil {
 37918  		return *s.Message_
 37919  	}
 37920  	return ""
 37921  }
 37922  
 37923  // OrigErr always returns nil, satisfies awserr.Error interface.
 37924  func (s *InvalidPolicyAttributeException) OrigErr() error {
 37925  	return nil
 37926  }
 37927  
 37928  func (s *InvalidPolicyAttributeException) Error() string {
 37929  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37930  }
 37931  
 37932  // Status code returns the HTTP status code for the request's response error.
 37933  func (s *InvalidPolicyAttributeException) StatusCode() int {
 37934  	return s.RespMetadata.StatusCode
 37935  }
 37936  
 37937  // RequestID returns the service's response RequestID for request.
 37938  func (s *InvalidPolicyAttributeException) RequestID() string {
 37939  	return s.RespMetadata.RequestID
 37940  }
 37941  
 37942  // The policy type isn't supported. Parameter Store supports the following policy
 37943  // types: Expiration, ExpirationNotification, and NoChangeNotification.
 37944  type InvalidPolicyTypeException struct {
 37945  	_            struct{}                  `type:"structure"`
 37946  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 37947  
 37948  	Message_ *string `locationName:"message" type:"string"`
 37949  }
 37950  
 37951  // String returns the string representation.
 37952  //
 37953  // API parameter values that are decorated as "sensitive" in the API will not
 37954  // be included in the string output. The member name will be present, but the
 37955  // value will be replaced with "sensitive".
 37956  func (s InvalidPolicyTypeException) String() string {
 37957  	return awsutil.Prettify(s)
 37958  }
 37959  
 37960  // GoString returns the string representation.
 37961  //
 37962  // API parameter values that are decorated as "sensitive" in the API will not
 37963  // be included in the string output. The member name will be present, but the
 37964  // value will be replaced with "sensitive".
 37965  func (s InvalidPolicyTypeException) GoString() string {
 37966  	return s.String()
 37967  }
 37968  
 37969  func newErrorInvalidPolicyTypeException(v protocol.ResponseMetadata) error {
 37970  	return &InvalidPolicyTypeException{
 37971  		RespMetadata: v,
 37972  	}
 37973  }
 37974  
 37975  // Code returns the exception type name.
 37976  func (s *InvalidPolicyTypeException) Code() string {
 37977  	return "InvalidPolicyTypeException"
 37978  }
 37979  
 37980  // Message returns the exception's message.
 37981  func (s *InvalidPolicyTypeException) Message() string {
 37982  	if s.Message_ != nil {
 37983  		return *s.Message_
 37984  	}
 37985  	return ""
 37986  }
 37987  
 37988  // OrigErr always returns nil, satisfies awserr.Error interface.
 37989  func (s *InvalidPolicyTypeException) OrigErr() error {
 37990  	return nil
 37991  }
 37992  
 37993  func (s *InvalidPolicyTypeException) Error() string {
 37994  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 37995  }
 37996  
 37997  // Status code returns the HTTP status code for the request's response error.
 37998  func (s *InvalidPolicyTypeException) StatusCode() int {
 37999  	return s.RespMetadata.StatusCode
 38000  }
 38001  
 38002  // RequestID returns the service's response RequestID for request.
 38003  func (s *InvalidPolicyTypeException) RequestID() string {
 38004  	return s.RespMetadata.RequestID
 38005  }
 38006  
 38007  // The resource ID isn't valid. Verify that you entered the correct ID and try
 38008  // again.
 38009  type InvalidResourceId struct {
 38010  	_            struct{}                  `type:"structure"`
 38011  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 38012  
 38013  	Message_ *string `locationName:"message" type:"string"`
 38014  }
 38015  
 38016  // String returns the string representation.
 38017  //
 38018  // API parameter values that are decorated as "sensitive" in the API will not
 38019  // be included in the string output. The member name will be present, but the
 38020  // value will be replaced with "sensitive".
 38021  func (s InvalidResourceId) String() string {
 38022  	return awsutil.Prettify(s)
 38023  }
 38024  
 38025  // GoString returns the string representation.
 38026  //
 38027  // API parameter values that are decorated as "sensitive" in the API will not
 38028  // be included in the string output. The member name will be present, but the
 38029  // value will be replaced with "sensitive".
 38030  func (s InvalidResourceId) GoString() string {
 38031  	return s.String()
 38032  }
 38033  
 38034  func newErrorInvalidResourceId(v protocol.ResponseMetadata) error {
 38035  	return &InvalidResourceId{
 38036  		RespMetadata: v,
 38037  	}
 38038  }
 38039  
 38040  // Code returns the exception type name.
 38041  func (s *InvalidResourceId) Code() string {
 38042  	return "InvalidResourceId"
 38043  }
 38044  
 38045  // Message returns the exception's message.
 38046  func (s *InvalidResourceId) Message() string {
 38047  	if s.Message_ != nil {
 38048  		return *s.Message_
 38049  	}
 38050  	return ""
 38051  }
 38052  
 38053  // OrigErr always returns nil, satisfies awserr.Error interface.
 38054  func (s *InvalidResourceId) OrigErr() error {
 38055  	return nil
 38056  }
 38057  
 38058  func (s *InvalidResourceId) Error() string {
 38059  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 38060  }
 38061  
 38062  // Status code returns the HTTP status code for the request's response error.
 38063  func (s *InvalidResourceId) StatusCode() int {
 38064  	return s.RespMetadata.StatusCode
 38065  }
 38066  
 38067  // RequestID returns the service's response RequestID for request.
 38068  func (s *InvalidResourceId) RequestID() string {
 38069  	return s.RespMetadata.RequestID
 38070  }
 38071  
 38072  // The resource type isn't valid. For example, if you are attempting to tag
 38073  // an instance, the instance must be a registered, managed instance.
 38074  type InvalidResourceType struct {
 38075  	_            struct{}                  `type:"structure"`
 38076  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 38077  
 38078  	Message_ *string `locationName:"message" type:"string"`
 38079  }
 38080  
 38081  // String returns the string representation.
 38082  //
 38083  // API parameter values that are decorated as "sensitive" in the API will not
 38084  // be included in the string output. The member name will be present, but the
 38085  // value will be replaced with "sensitive".
 38086  func (s InvalidResourceType) String() string {
 38087  	return awsutil.Prettify(s)
 38088  }
 38089  
 38090  // GoString returns the string representation.
 38091  //
 38092  // API parameter values that are decorated as "sensitive" in the API will not
 38093  // be included in the string output. The member name will be present, but the
 38094  // value will be replaced with "sensitive".
 38095  func (s InvalidResourceType) GoString() string {
 38096  	return s.String()
 38097  }
 38098  
 38099  func newErrorInvalidResourceType(v protocol.ResponseMetadata) error {
 38100  	return &InvalidResourceType{
 38101  		RespMetadata: v,
 38102  	}
 38103  }
 38104  
 38105  // Code returns the exception type name.
 38106  func (s *InvalidResourceType) Code() string {
 38107  	return "InvalidResourceType"
 38108  }
 38109  
 38110  // Message returns the exception's message.
 38111  func (s *InvalidResourceType) Message() string {
 38112  	if s.Message_ != nil {
 38113  		return *s.Message_
 38114  	}
 38115  	return ""
 38116  }
 38117  
 38118  // OrigErr always returns nil, satisfies awserr.Error interface.
 38119  func (s *InvalidResourceType) OrigErr() error {
 38120  	return nil
 38121  }
 38122  
 38123  func (s *InvalidResourceType) Error() string {
 38124  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 38125  }
 38126  
 38127  // Status code returns the HTTP status code for the request's response error.
 38128  func (s *InvalidResourceType) StatusCode() int {
 38129  	return s.RespMetadata.StatusCode
 38130  }
 38131  
 38132  // RequestID returns the service's response RequestID for request.
 38133  func (s *InvalidResourceType) RequestID() string {
 38134  	return s.RespMetadata.RequestID
 38135  }
 38136  
 38137  // The specified inventory item result attribute isn't valid.
 38138  type InvalidResultAttributeException struct {
 38139  	_            struct{}                  `type:"structure"`
 38140  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 38141  
 38142  	Message_ *string `locationName:"Message" type:"string"`
 38143  }
 38144  
 38145  // String returns the string representation.
 38146  //
 38147  // API parameter values that are decorated as "sensitive" in the API will not
 38148  // be included in the string output. The member name will be present, but the
 38149  // value will be replaced with "sensitive".
 38150  func (s InvalidResultAttributeException) String() string {
 38151  	return awsutil.Prettify(s)
 38152  }
 38153  
 38154  // GoString returns the string representation.
 38155  //
 38156  // API parameter values that are decorated as "sensitive" in the API will not
 38157  // be included in the string output. The member name will be present, but the
 38158  // value will be replaced with "sensitive".
 38159  func (s InvalidResultAttributeException) GoString() string {
 38160  	return s.String()
 38161  }
 38162  
 38163  func newErrorInvalidResultAttributeException(v protocol.ResponseMetadata) error {
 38164  	return &InvalidResultAttributeException{
 38165  		RespMetadata: v,
 38166  	}
 38167  }
 38168  
 38169  // Code returns the exception type name.
 38170  func (s *InvalidResultAttributeException) Code() string {
 38171  	return "InvalidResultAttributeException"
 38172  }
 38173  
 38174  // Message returns the exception's message.
 38175  func (s *InvalidResultAttributeException) Message() string {
 38176  	if s.Message_ != nil {
 38177  		return *s.Message_
 38178  	}
 38179  	return ""
 38180  }
 38181  
 38182  // OrigErr always returns nil, satisfies awserr.Error interface.
 38183  func (s *InvalidResultAttributeException) OrigErr() error {
 38184  	return nil
 38185  }
 38186  
 38187  func (s *InvalidResultAttributeException) Error() string {
 38188  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 38189  }
 38190  
 38191  // Status code returns the HTTP status code for the request's response error.
 38192  func (s *InvalidResultAttributeException) StatusCode() int {
 38193  	return s.RespMetadata.StatusCode
 38194  }
 38195  
 38196  // RequestID returns the service's response RequestID for request.
 38197  func (s *InvalidResultAttributeException) RequestID() string {
 38198  	return s.RespMetadata.RequestID
 38199  }
 38200  
 38201  // The role name can't contain invalid characters. Also verify that you specified
 38202  // an IAM role for notifications that includes the required trust policy. For
 38203  // information about configuring the IAM role for Run Command notifications,
 38204  // see Configuring Amazon SNS Notifications for Run Command (https://docs.aws.amazon.com/systems-manager/latest/userguide/rc-sns-notifications.html)
 38205  // in the Amazon Web Services Systems Manager User Guide.
 38206  type InvalidRole struct {
 38207  	_            struct{}                  `type:"structure"`
 38208  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 38209  
 38210  	Message_ *string `locationName:"Message" type:"string"`
 38211  }
 38212  
 38213  // String returns the string representation.
 38214  //
 38215  // API parameter values that are decorated as "sensitive" in the API will not
 38216  // be included in the string output. The member name will be present, but the
 38217  // value will be replaced with "sensitive".
 38218  func (s InvalidRole) String() string {
 38219  	return awsutil.Prettify(s)
 38220  }
 38221  
 38222  // GoString returns the string representation.
 38223  //
 38224  // API parameter values that are decorated as "sensitive" in the API will not
 38225  // be included in the string output. The member name will be present, but the
 38226  // value will be replaced with "sensitive".
 38227  func (s InvalidRole) GoString() string {
 38228  	return s.String()
 38229  }
 38230  
 38231  func newErrorInvalidRole(v protocol.ResponseMetadata) error {
 38232  	return &InvalidRole{
 38233  		RespMetadata: v,
 38234  	}
 38235  }
 38236  
 38237  // Code returns the exception type name.
 38238  func (s *InvalidRole) Code() string {
 38239  	return "InvalidRole"
 38240  }
 38241  
 38242  // Message returns the exception's message.
 38243  func (s *InvalidRole) Message() string {
 38244  	if s.Message_ != nil {
 38245  		return *s.Message_
 38246  	}
 38247  	return ""
 38248  }
 38249  
 38250  // OrigErr always returns nil, satisfies awserr.Error interface.
 38251  func (s *InvalidRole) OrigErr() error {
 38252  	return nil
 38253  }
 38254  
 38255  func (s *InvalidRole) Error() string {
 38256  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 38257  }
 38258  
 38259  // Status code returns the HTTP status code for the request's response error.
 38260  func (s *InvalidRole) StatusCode() int {
 38261  	return s.RespMetadata.StatusCode
 38262  }
 38263  
 38264  // RequestID returns the service's response RequestID for request.
 38265  func (s *InvalidRole) RequestID() string {
 38266  	return s.RespMetadata.RequestID
 38267  }
 38268  
 38269  // The schedule is invalid. Verify your cron or rate expression and try again.
 38270  type InvalidSchedule struct {
 38271  	_            struct{}                  `type:"structure"`
 38272  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 38273  
 38274  	Message_ *string `locationName:"Message" type:"string"`
 38275  }
 38276  
 38277  // String returns the string representation.
 38278  //
 38279  // API parameter values that are decorated as "sensitive" in the API will not
 38280  // be included in the string output. The member name will be present, but the
 38281  // value will be replaced with "sensitive".
 38282  func (s InvalidSchedule) String() string {
 38283  	return awsutil.Prettify(s)
 38284  }
 38285  
 38286  // GoString returns the string representation.
 38287  //
 38288  // API parameter values that are decorated as "sensitive" in the API will not
 38289  // be included in the string output. The member name will be present, but the
 38290  // value will be replaced with "sensitive".
 38291  func (s InvalidSchedule) GoString() string {
 38292  	return s.String()
 38293  }
 38294  
 38295  func newErrorInvalidSchedule(v protocol.ResponseMetadata) error {
 38296  	return &InvalidSchedule{
 38297  		RespMetadata: v,
 38298  	}
 38299  }
 38300  
 38301  // Code returns the exception type name.
 38302  func (s *InvalidSchedule) Code() string {
 38303  	return "InvalidSchedule"
 38304  }
 38305  
 38306  // Message returns the exception's message.
 38307  func (s *InvalidSchedule) Message() string {
 38308  	if s.Message_ != nil {
 38309  		return *s.Message_
 38310  	}
 38311  	return ""
 38312  }
 38313  
 38314  // OrigErr always returns nil, satisfies awserr.Error interface.
 38315  func (s *InvalidSchedule) OrigErr() error {
 38316  	return nil
 38317  }
 38318  
 38319  func (s *InvalidSchedule) Error() string {
 38320  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 38321  }
 38322  
 38323  // Status code returns the HTTP status code for the request's response error.
 38324  func (s *InvalidSchedule) StatusCode() int {
 38325  	return s.RespMetadata.StatusCode
 38326  }
 38327  
 38328  // RequestID returns the service's response RequestID for request.
 38329  func (s *InvalidSchedule) RequestID() string {
 38330  	return s.RespMetadata.RequestID
 38331  }
 38332  
 38333  // The target isn't valid or doesn't exist. It might not be configured for Systems
 38334  // Manager or you might not have permission to perform the operation.
 38335  type InvalidTarget struct {
 38336  	_            struct{}                  `type:"structure"`
 38337  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 38338  
 38339  	Message_ *string `locationName:"Message" type:"string"`
 38340  }
 38341  
 38342  // String returns the string representation.
 38343  //
 38344  // API parameter values that are decorated as "sensitive" in the API will not
 38345  // be included in the string output. The member name will be present, but the
 38346  // value will be replaced with "sensitive".
 38347  func (s InvalidTarget) String() string {
 38348  	return awsutil.Prettify(s)
 38349  }
 38350  
 38351  // GoString returns the string representation.
 38352  //
 38353  // API parameter values that are decorated as "sensitive" in the API will not
 38354  // be included in the string output. The member name will be present, but the
 38355  // value will be replaced with "sensitive".
 38356  func (s InvalidTarget) GoString() string {
 38357  	return s.String()
 38358  }
 38359  
 38360  func newErrorInvalidTarget(v protocol.ResponseMetadata) error {
 38361  	return &InvalidTarget{
 38362  		RespMetadata: v,
 38363  	}
 38364  }
 38365  
 38366  // Code returns the exception type name.
 38367  func (s *InvalidTarget) Code() string {
 38368  	return "InvalidTarget"
 38369  }
 38370  
 38371  // Message returns the exception's message.
 38372  func (s *InvalidTarget) Message() string {
 38373  	if s.Message_ != nil {
 38374  		return *s.Message_
 38375  	}
 38376  	return ""
 38377  }
 38378  
 38379  // OrigErr always returns nil, satisfies awserr.Error interface.
 38380  func (s *InvalidTarget) OrigErr() error {
 38381  	return nil
 38382  }
 38383  
 38384  func (s *InvalidTarget) Error() string {
 38385  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 38386  }
 38387  
 38388  // Status code returns the HTTP status code for the request's response error.
 38389  func (s *InvalidTarget) StatusCode() int {
 38390  	return s.RespMetadata.StatusCode
 38391  }
 38392  
 38393  // RequestID returns the service's response RequestID for request.
 38394  func (s *InvalidTarget) RequestID() string {
 38395  	return s.RespMetadata.RequestID
 38396  }
 38397  
 38398  // The parameter type name isn't valid.
 38399  type InvalidTypeNameException struct {
 38400  	_            struct{}                  `type:"structure"`
 38401  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 38402  
 38403  	Message_ *string `locationName:"Message" type:"string"`
 38404  }
 38405  
 38406  // String returns the string representation.
 38407  //
 38408  // API parameter values that are decorated as "sensitive" in the API will not
 38409  // be included in the string output. The member name will be present, but the
 38410  // value will be replaced with "sensitive".
 38411  func (s InvalidTypeNameException) String() string {
 38412  	return awsutil.Prettify(s)
 38413  }
 38414  
 38415  // GoString returns the string representation.
 38416  //
 38417  // API parameter values that are decorated as "sensitive" in the API will not
 38418  // be included in the string output. The member name will be present, but the
 38419  // value will be replaced with "sensitive".
 38420  func (s InvalidTypeNameException) GoString() string {
 38421  	return s.String()
 38422  }
 38423  
 38424  func newErrorInvalidTypeNameException(v protocol.ResponseMetadata) error {
 38425  	return &InvalidTypeNameException{
 38426  		RespMetadata: v,
 38427  	}
 38428  }
 38429  
 38430  // Code returns the exception type name.
 38431  func (s *InvalidTypeNameException) Code() string {
 38432  	return "InvalidTypeNameException"
 38433  }
 38434  
 38435  // Message returns the exception's message.
 38436  func (s *InvalidTypeNameException) Message() string {
 38437  	if s.Message_ != nil {
 38438  		return *s.Message_
 38439  	}
 38440  	return ""
 38441  }
 38442  
 38443  // OrigErr always returns nil, satisfies awserr.Error interface.
 38444  func (s *InvalidTypeNameException) OrigErr() error {
 38445  	return nil
 38446  }
 38447  
 38448  func (s *InvalidTypeNameException) Error() string {
 38449  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 38450  }
 38451  
 38452  // Status code returns the HTTP status code for the request's response error.
 38453  func (s *InvalidTypeNameException) StatusCode() int {
 38454  	return s.RespMetadata.StatusCode
 38455  }
 38456  
 38457  // RequestID returns the service's response RequestID for request.
 38458  func (s *InvalidTypeNameException) RequestID() string {
 38459  	return s.RespMetadata.RequestID
 38460  }
 38461  
 38462  // The update isn't valid.
 38463  type InvalidUpdate struct {
 38464  	_            struct{}                  `type:"structure"`
 38465  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 38466  
 38467  	Message_ *string `locationName:"Message" type:"string"`
 38468  }
 38469  
 38470  // String returns the string representation.
 38471  //
 38472  // API parameter values that are decorated as "sensitive" in the API will not
 38473  // be included in the string output. The member name will be present, but the
 38474  // value will be replaced with "sensitive".
 38475  func (s InvalidUpdate) String() string {
 38476  	return awsutil.Prettify(s)
 38477  }
 38478  
 38479  // GoString returns the string representation.
 38480  //
 38481  // API parameter values that are decorated as "sensitive" in the API will not
 38482  // be included in the string output. The member name will be present, but the
 38483  // value will be replaced with "sensitive".
 38484  func (s InvalidUpdate) GoString() string {
 38485  	return s.String()
 38486  }
 38487  
 38488  func newErrorInvalidUpdate(v protocol.ResponseMetadata) error {
 38489  	return &InvalidUpdate{
 38490  		RespMetadata: v,
 38491  	}
 38492  }
 38493  
 38494  // Code returns the exception type name.
 38495  func (s *InvalidUpdate) Code() string {
 38496  	return "InvalidUpdate"
 38497  }
 38498  
 38499  // Message returns the exception's message.
 38500  func (s *InvalidUpdate) Message() string {
 38501  	if s.Message_ != nil {
 38502  		return *s.Message_
 38503  	}
 38504  	return ""
 38505  }
 38506  
 38507  // OrigErr always returns nil, satisfies awserr.Error interface.
 38508  func (s *InvalidUpdate) OrigErr() error {
 38509  	return nil
 38510  }
 38511  
 38512  func (s *InvalidUpdate) Error() string {
 38513  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 38514  }
 38515  
 38516  // Status code returns the HTTP status code for the request's response error.
 38517  func (s *InvalidUpdate) StatusCode() int {
 38518  	return s.RespMetadata.StatusCode
 38519  }
 38520  
 38521  // RequestID returns the service's response RequestID for request.
 38522  func (s *InvalidUpdate) RequestID() string {
 38523  	return s.RespMetadata.RequestID
 38524  }
 38525  
 38526  // Specifies the inventory type and attribute for the aggregation execution.
 38527  type InventoryAggregator struct {
 38528  	_ struct{} `type:"structure"`
 38529  
 38530  	// Nested aggregators to further refine aggregation for an inventory type.
 38531  	Aggregators []*InventoryAggregator `min:"1" type:"list"`
 38532  
 38533  	// The inventory type and attribute name for aggregation.
 38534  	Expression *string `min:"1" type:"string"`
 38535  
 38536  	// A user-defined set of one or more filters on which to aggregate inventory
 38537  	// data. Groups return a count of resources that match and don't match the specified
 38538  	// criteria.
 38539  	Groups []*InventoryGroup `min:"1" type:"list"`
 38540  }
 38541  
 38542  // String returns the string representation.
 38543  //
 38544  // API parameter values that are decorated as "sensitive" in the API will not
 38545  // be included in the string output. The member name will be present, but the
 38546  // value will be replaced with "sensitive".
 38547  func (s InventoryAggregator) String() string {
 38548  	return awsutil.Prettify(s)
 38549  }
 38550  
 38551  // GoString returns the string representation.
 38552  //
 38553  // API parameter values that are decorated as "sensitive" in the API will not
 38554  // be included in the string output. The member name will be present, but the
 38555  // value will be replaced with "sensitive".
 38556  func (s InventoryAggregator) GoString() string {
 38557  	return s.String()
 38558  }
 38559  
 38560  // Validate inspects the fields of the type to determine if they are valid.
 38561  func (s *InventoryAggregator) Validate() error {
 38562  	invalidParams := request.ErrInvalidParams{Context: "InventoryAggregator"}
 38563  	if s.Aggregators != nil && len(s.Aggregators) < 1 {
 38564  		invalidParams.Add(request.NewErrParamMinLen("Aggregators", 1))
 38565  	}
 38566  	if s.Expression != nil && len(*s.Expression) < 1 {
 38567  		invalidParams.Add(request.NewErrParamMinLen("Expression", 1))
 38568  	}
 38569  	if s.Groups != nil && len(s.Groups) < 1 {
 38570  		invalidParams.Add(request.NewErrParamMinLen("Groups", 1))
 38571  	}
 38572  	if s.Aggregators != nil {
 38573  		for i, v := range s.Aggregators {
 38574  			if v == nil {
 38575  				continue
 38576  			}
 38577  			if err := v.Validate(); err != nil {
 38578  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Aggregators", i), err.(request.ErrInvalidParams))
 38579  			}
 38580  		}
 38581  	}
 38582  	if s.Groups != nil {
 38583  		for i, v := range s.Groups {
 38584  			if v == nil {
 38585  				continue
 38586  			}
 38587  			if err := v.Validate(); err != nil {
 38588  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Groups", i), err.(request.ErrInvalidParams))
 38589  			}
 38590  		}
 38591  	}
 38592  
 38593  	if invalidParams.Len() > 0 {
 38594  		return invalidParams
 38595  	}
 38596  	return nil
 38597  }
 38598  
 38599  // SetAggregators sets the Aggregators field's value.
 38600  func (s *InventoryAggregator) SetAggregators(v []*InventoryAggregator) *InventoryAggregator {
 38601  	s.Aggregators = v
 38602  	return s
 38603  }
 38604  
 38605  // SetExpression sets the Expression field's value.
 38606  func (s *InventoryAggregator) SetExpression(v string) *InventoryAggregator {
 38607  	s.Expression = &v
 38608  	return s
 38609  }
 38610  
 38611  // SetGroups sets the Groups field's value.
 38612  func (s *InventoryAggregator) SetGroups(v []*InventoryGroup) *InventoryAggregator {
 38613  	s.Groups = v
 38614  	return s
 38615  }
 38616  
 38617  // Status information returned by the DeleteInventory operation.
 38618  type InventoryDeletionStatusItem struct {
 38619  	_ struct{} `type:"structure"`
 38620  
 38621  	// The deletion ID returned by the DeleteInventory operation.
 38622  	DeletionId *string `type:"string"`
 38623  
 38624  	// The UTC timestamp when the delete operation started.
 38625  	DeletionStartTime *time.Time `type:"timestamp"`
 38626  
 38627  	// Information about the delete operation. For more information about this summary,
 38628  	// see Understanding the delete inventory summary (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-custom.html#sysman-inventory-delete)
 38629  	// in the Amazon Web Services Systems Manager User Guide.
 38630  	DeletionSummary *InventoryDeletionSummary `type:"structure"`
 38631  
 38632  	// The status of the operation. Possible values are InProgress and Complete.
 38633  	LastStatus *string `type:"string" enum:"InventoryDeletionStatus"`
 38634  
 38635  	// Information about the status.
 38636  	LastStatusMessage *string `type:"string"`
 38637  
 38638  	// The UTC timestamp of when the last status report.
 38639  	LastStatusUpdateTime *time.Time `type:"timestamp"`
 38640  
 38641  	// The name of the inventory data type.
 38642  	TypeName *string `min:"1" type:"string"`
 38643  }
 38644  
 38645  // String returns the string representation.
 38646  //
 38647  // API parameter values that are decorated as "sensitive" in the API will not
 38648  // be included in the string output. The member name will be present, but the
 38649  // value will be replaced with "sensitive".
 38650  func (s InventoryDeletionStatusItem) String() string {
 38651  	return awsutil.Prettify(s)
 38652  }
 38653  
 38654  // GoString returns the string representation.
 38655  //
 38656  // API parameter values that are decorated as "sensitive" in the API will not
 38657  // be included in the string output. The member name will be present, but the
 38658  // value will be replaced with "sensitive".
 38659  func (s InventoryDeletionStatusItem) GoString() string {
 38660  	return s.String()
 38661  }
 38662  
 38663  // SetDeletionId sets the DeletionId field's value.
 38664  func (s *InventoryDeletionStatusItem) SetDeletionId(v string) *InventoryDeletionStatusItem {
 38665  	s.DeletionId = &v
 38666  	return s
 38667  }
 38668  
 38669  // SetDeletionStartTime sets the DeletionStartTime field's value.
 38670  func (s *InventoryDeletionStatusItem) SetDeletionStartTime(v time.Time) *InventoryDeletionStatusItem {
 38671  	s.DeletionStartTime = &v
 38672  	return s
 38673  }
 38674  
 38675  // SetDeletionSummary sets the DeletionSummary field's value.
 38676  func (s *InventoryDeletionStatusItem) SetDeletionSummary(v *InventoryDeletionSummary) *InventoryDeletionStatusItem {
 38677  	s.DeletionSummary = v
 38678  	return s
 38679  }
 38680  
 38681  // SetLastStatus sets the LastStatus field's value.
 38682  func (s *InventoryDeletionStatusItem) SetLastStatus(v string) *InventoryDeletionStatusItem {
 38683  	s.LastStatus = &v
 38684  	return s
 38685  }
 38686  
 38687  // SetLastStatusMessage sets the LastStatusMessage field's value.
 38688  func (s *InventoryDeletionStatusItem) SetLastStatusMessage(v string) *InventoryDeletionStatusItem {
 38689  	s.LastStatusMessage = &v
 38690  	return s
 38691  }
 38692  
 38693  // SetLastStatusUpdateTime sets the LastStatusUpdateTime field's value.
 38694  func (s *InventoryDeletionStatusItem) SetLastStatusUpdateTime(v time.Time) *InventoryDeletionStatusItem {
 38695  	s.LastStatusUpdateTime = &v
 38696  	return s
 38697  }
 38698  
 38699  // SetTypeName sets the TypeName field's value.
 38700  func (s *InventoryDeletionStatusItem) SetTypeName(v string) *InventoryDeletionStatusItem {
 38701  	s.TypeName = &v
 38702  	return s
 38703  }
 38704  
 38705  // Information about the delete operation.
 38706  type InventoryDeletionSummary struct {
 38707  	_ struct{} `type:"structure"`
 38708  
 38709  	// Remaining number of items to delete.
 38710  	RemainingCount *int64 `type:"integer"`
 38711  
 38712  	// A list of counts and versions for deleted items.
 38713  	SummaryItems []*InventoryDeletionSummaryItem `type:"list"`
 38714  
 38715  	// The total number of items to delete. This count doesn't change during the
 38716  	// delete operation.
 38717  	TotalCount *int64 `type:"integer"`
 38718  }
 38719  
 38720  // String returns the string representation.
 38721  //
 38722  // API parameter values that are decorated as "sensitive" in the API will not
 38723  // be included in the string output. The member name will be present, but the
 38724  // value will be replaced with "sensitive".
 38725  func (s InventoryDeletionSummary) String() string {
 38726  	return awsutil.Prettify(s)
 38727  }
 38728  
 38729  // GoString returns the string representation.
 38730  //
 38731  // API parameter values that are decorated as "sensitive" in the API will not
 38732  // be included in the string output. The member name will be present, but the
 38733  // value will be replaced with "sensitive".
 38734  func (s InventoryDeletionSummary) GoString() string {
 38735  	return s.String()
 38736  }
 38737  
 38738  // SetRemainingCount sets the RemainingCount field's value.
 38739  func (s *InventoryDeletionSummary) SetRemainingCount(v int64) *InventoryDeletionSummary {
 38740  	s.RemainingCount = &v
 38741  	return s
 38742  }
 38743  
 38744  // SetSummaryItems sets the SummaryItems field's value.
 38745  func (s *InventoryDeletionSummary) SetSummaryItems(v []*InventoryDeletionSummaryItem) *InventoryDeletionSummary {
 38746  	s.SummaryItems = v
 38747  	return s
 38748  }
 38749  
 38750  // SetTotalCount sets the TotalCount field's value.
 38751  func (s *InventoryDeletionSummary) SetTotalCount(v int64) *InventoryDeletionSummary {
 38752  	s.TotalCount = &v
 38753  	return s
 38754  }
 38755  
 38756  // Either a count, remaining count, or a version number in a delete inventory
 38757  // summary.
 38758  type InventoryDeletionSummaryItem struct {
 38759  	_ struct{} `type:"structure"`
 38760  
 38761  	// A count of the number of deleted items.
 38762  	Count *int64 `type:"integer"`
 38763  
 38764  	// The remaining number of items to delete.
 38765  	RemainingCount *int64 `type:"integer"`
 38766  
 38767  	// The inventory type version.
 38768  	Version *string `type:"string"`
 38769  }
 38770  
 38771  // String returns the string representation.
 38772  //
 38773  // API parameter values that are decorated as "sensitive" in the API will not
 38774  // be included in the string output. The member name will be present, but the
 38775  // value will be replaced with "sensitive".
 38776  func (s InventoryDeletionSummaryItem) String() string {
 38777  	return awsutil.Prettify(s)
 38778  }
 38779  
 38780  // GoString returns the string representation.
 38781  //
 38782  // API parameter values that are decorated as "sensitive" in the API will not
 38783  // be included in the string output. The member name will be present, but the
 38784  // value will be replaced with "sensitive".
 38785  func (s InventoryDeletionSummaryItem) GoString() string {
 38786  	return s.String()
 38787  }
 38788  
 38789  // SetCount sets the Count field's value.
 38790  func (s *InventoryDeletionSummaryItem) SetCount(v int64) *InventoryDeletionSummaryItem {
 38791  	s.Count = &v
 38792  	return s
 38793  }
 38794  
 38795  // SetRemainingCount sets the RemainingCount field's value.
 38796  func (s *InventoryDeletionSummaryItem) SetRemainingCount(v int64) *InventoryDeletionSummaryItem {
 38797  	s.RemainingCount = &v
 38798  	return s
 38799  }
 38800  
 38801  // SetVersion sets the Version field's value.
 38802  func (s *InventoryDeletionSummaryItem) SetVersion(v string) *InventoryDeletionSummaryItem {
 38803  	s.Version = &v
 38804  	return s
 38805  }
 38806  
 38807  // One or more filters. Use a filter to return a more specific list of results.
 38808  type InventoryFilter struct {
 38809  	_ struct{} `type:"structure"`
 38810  
 38811  	// The name of the filter key.
 38812  	//
 38813  	// Key is a required field
 38814  	Key *string `min:"1" type:"string" required:"true"`
 38815  
 38816  	// The type of filter.
 38817  	//
 38818  	// The Exists filter must be used with aggregators. For more information, see
 38819  	// Aggregating inventory data (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-aggregate.html)
 38820  	// in the Amazon Web Services Systems Manager User Guide.
 38821  	Type *string `type:"string" enum:"InventoryQueryOperatorType"`
 38822  
 38823  	// Inventory filter values. Example: inventory filter where instance IDs are
 38824  	// specified as values Key=AWS:InstanceInformation.InstanceId,Values= i-a12b3c4d5e6g,
 38825  	// i-1a2b3c4d5e6,Type=Equal.
 38826  	//
 38827  	// Values is a required field
 38828  	Values []*string `min:"1" type:"list" required:"true"`
 38829  }
 38830  
 38831  // String returns the string representation.
 38832  //
 38833  // API parameter values that are decorated as "sensitive" in the API will not
 38834  // be included in the string output. The member name will be present, but the
 38835  // value will be replaced with "sensitive".
 38836  func (s InventoryFilter) String() string {
 38837  	return awsutil.Prettify(s)
 38838  }
 38839  
 38840  // GoString returns the string representation.
 38841  //
 38842  // API parameter values that are decorated as "sensitive" in the API will not
 38843  // be included in the string output. The member name will be present, but the
 38844  // value will be replaced with "sensitive".
 38845  func (s InventoryFilter) GoString() string {
 38846  	return s.String()
 38847  }
 38848  
 38849  // Validate inspects the fields of the type to determine if they are valid.
 38850  func (s *InventoryFilter) Validate() error {
 38851  	invalidParams := request.ErrInvalidParams{Context: "InventoryFilter"}
 38852  	if s.Key == nil {
 38853  		invalidParams.Add(request.NewErrParamRequired("Key"))
 38854  	}
 38855  	if s.Key != nil && len(*s.Key) < 1 {
 38856  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 38857  	}
 38858  	if s.Values == nil {
 38859  		invalidParams.Add(request.NewErrParamRequired("Values"))
 38860  	}
 38861  	if s.Values != nil && len(s.Values) < 1 {
 38862  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 38863  	}
 38864  
 38865  	if invalidParams.Len() > 0 {
 38866  		return invalidParams
 38867  	}
 38868  	return nil
 38869  }
 38870  
 38871  // SetKey sets the Key field's value.
 38872  func (s *InventoryFilter) SetKey(v string) *InventoryFilter {
 38873  	s.Key = &v
 38874  	return s
 38875  }
 38876  
 38877  // SetType sets the Type field's value.
 38878  func (s *InventoryFilter) SetType(v string) *InventoryFilter {
 38879  	s.Type = &v
 38880  	return s
 38881  }
 38882  
 38883  // SetValues sets the Values field's value.
 38884  func (s *InventoryFilter) SetValues(v []*string) *InventoryFilter {
 38885  	s.Values = v
 38886  	return s
 38887  }
 38888  
 38889  // A user-defined set of one or more filters on which to aggregate inventory
 38890  // data. Groups return a count of resources that match and don't match the specified
 38891  // criteria.
 38892  type InventoryGroup struct {
 38893  	_ struct{} `type:"structure"`
 38894  
 38895  	// Filters define the criteria for the group. The matchingCount field displays
 38896  	// the number of resources that match the criteria. The notMatchingCount field
 38897  	// displays the number of resources that don't match the criteria.
 38898  	//
 38899  	// Filters is a required field
 38900  	Filters []*InventoryFilter `min:"1" type:"list" required:"true"`
 38901  
 38902  	// The name of the group.
 38903  	//
 38904  	// Name is a required field
 38905  	Name *string `min:"1" type:"string" required:"true"`
 38906  }
 38907  
 38908  // String returns the string representation.
 38909  //
 38910  // API parameter values that are decorated as "sensitive" in the API will not
 38911  // be included in the string output. The member name will be present, but the
 38912  // value will be replaced with "sensitive".
 38913  func (s InventoryGroup) String() string {
 38914  	return awsutil.Prettify(s)
 38915  }
 38916  
 38917  // GoString returns the string representation.
 38918  //
 38919  // API parameter values that are decorated as "sensitive" in the API will not
 38920  // be included in the string output. The member name will be present, but the
 38921  // value will be replaced with "sensitive".
 38922  func (s InventoryGroup) GoString() string {
 38923  	return s.String()
 38924  }
 38925  
 38926  // Validate inspects the fields of the type to determine if they are valid.
 38927  func (s *InventoryGroup) Validate() error {
 38928  	invalidParams := request.ErrInvalidParams{Context: "InventoryGroup"}
 38929  	if s.Filters == nil {
 38930  		invalidParams.Add(request.NewErrParamRequired("Filters"))
 38931  	}
 38932  	if s.Filters != nil && len(s.Filters) < 1 {
 38933  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 38934  	}
 38935  	if s.Name == nil {
 38936  		invalidParams.Add(request.NewErrParamRequired("Name"))
 38937  	}
 38938  	if s.Name != nil && len(*s.Name) < 1 {
 38939  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 38940  	}
 38941  	if s.Filters != nil {
 38942  		for i, v := range s.Filters {
 38943  			if v == nil {
 38944  				continue
 38945  			}
 38946  			if err := v.Validate(); err != nil {
 38947  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 38948  			}
 38949  		}
 38950  	}
 38951  
 38952  	if invalidParams.Len() > 0 {
 38953  		return invalidParams
 38954  	}
 38955  	return nil
 38956  }
 38957  
 38958  // SetFilters sets the Filters field's value.
 38959  func (s *InventoryGroup) SetFilters(v []*InventoryFilter) *InventoryGroup {
 38960  	s.Filters = v
 38961  	return s
 38962  }
 38963  
 38964  // SetName sets the Name field's value.
 38965  func (s *InventoryGroup) SetName(v string) *InventoryGroup {
 38966  	s.Name = &v
 38967  	return s
 38968  }
 38969  
 38970  // Information collected from managed instances based on your inventory policy
 38971  // document
 38972  type InventoryItem struct {
 38973  	_ struct{} `type:"structure"`
 38974  
 38975  	// The time the inventory information was collected.
 38976  	//
 38977  	// CaptureTime is a required field
 38978  	CaptureTime *string `type:"string" required:"true"`
 38979  
 38980  	// The inventory data of the inventory type.
 38981  	Content []map[string]*string `type:"list"`
 38982  
 38983  	// MD5 hash of the inventory item type contents. The content hash is used to
 38984  	// determine whether to update inventory information. The PutInventory API doesn't
 38985  	// update the inventory item type contents if the MD5 hash hasn't changed since
 38986  	// last update.
 38987  	ContentHash *string `type:"string"`
 38988  
 38989  	// A map of associated properties for a specified inventory type. For example,
 38990  	// with this attribute, you can specify the ExecutionId, ExecutionType, ComplianceType
 38991  	// properties of the AWS:ComplianceItem type.
 38992  	Context map[string]*string `type:"map"`
 38993  
 38994  	// The schema version for the inventory item.
 38995  	//
 38996  	// SchemaVersion is a required field
 38997  	SchemaVersion *string `type:"string" required:"true"`
 38998  
 38999  	// The name of the inventory type. Default inventory item type names start with
 39000  	// AWS. Custom inventory type names will start with Custom. Default inventory
 39001  	// item types include the following: AWS:AWSComponent, AWS:Application, AWS:InstanceInformation,
 39002  	// AWS:Network, and AWS:WindowsUpdate.
 39003  	//
 39004  	// TypeName is a required field
 39005  	TypeName *string `min:"1" type:"string" required:"true"`
 39006  }
 39007  
 39008  // String returns the string representation.
 39009  //
 39010  // API parameter values that are decorated as "sensitive" in the API will not
 39011  // be included in the string output. The member name will be present, but the
 39012  // value will be replaced with "sensitive".
 39013  func (s InventoryItem) String() string {
 39014  	return awsutil.Prettify(s)
 39015  }
 39016  
 39017  // GoString returns the string representation.
 39018  //
 39019  // API parameter values that are decorated as "sensitive" in the API will not
 39020  // be included in the string output. The member name will be present, but the
 39021  // value will be replaced with "sensitive".
 39022  func (s InventoryItem) GoString() string {
 39023  	return s.String()
 39024  }
 39025  
 39026  // Validate inspects the fields of the type to determine if they are valid.
 39027  func (s *InventoryItem) Validate() error {
 39028  	invalidParams := request.ErrInvalidParams{Context: "InventoryItem"}
 39029  	if s.CaptureTime == nil {
 39030  		invalidParams.Add(request.NewErrParamRequired("CaptureTime"))
 39031  	}
 39032  	if s.SchemaVersion == nil {
 39033  		invalidParams.Add(request.NewErrParamRequired("SchemaVersion"))
 39034  	}
 39035  	if s.TypeName == nil {
 39036  		invalidParams.Add(request.NewErrParamRequired("TypeName"))
 39037  	}
 39038  	if s.TypeName != nil && len(*s.TypeName) < 1 {
 39039  		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
 39040  	}
 39041  
 39042  	if invalidParams.Len() > 0 {
 39043  		return invalidParams
 39044  	}
 39045  	return nil
 39046  }
 39047  
 39048  // SetCaptureTime sets the CaptureTime field's value.
 39049  func (s *InventoryItem) SetCaptureTime(v string) *InventoryItem {
 39050  	s.CaptureTime = &v
 39051  	return s
 39052  }
 39053  
 39054  // SetContent sets the Content field's value.
 39055  func (s *InventoryItem) SetContent(v []map[string]*string) *InventoryItem {
 39056  	s.Content = v
 39057  	return s
 39058  }
 39059  
 39060  // SetContentHash sets the ContentHash field's value.
 39061  func (s *InventoryItem) SetContentHash(v string) *InventoryItem {
 39062  	s.ContentHash = &v
 39063  	return s
 39064  }
 39065  
 39066  // SetContext sets the Context field's value.
 39067  func (s *InventoryItem) SetContext(v map[string]*string) *InventoryItem {
 39068  	s.Context = v
 39069  	return s
 39070  }
 39071  
 39072  // SetSchemaVersion sets the SchemaVersion field's value.
 39073  func (s *InventoryItem) SetSchemaVersion(v string) *InventoryItem {
 39074  	s.SchemaVersion = &v
 39075  	return s
 39076  }
 39077  
 39078  // SetTypeName sets the TypeName field's value.
 39079  func (s *InventoryItem) SetTypeName(v string) *InventoryItem {
 39080  	s.TypeName = &v
 39081  	return s
 39082  }
 39083  
 39084  // Attributes are the entries within the inventory item content. It contains
 39085  // name and value.
 39086  type InventoryItemAttribute struct {
 39087  	_ struct{} `type:"structure"`
 39088  
 39089  	// The data type of the inventory item attribute.
 39090  	//
 39091  	// DataType is a required field
 39092  	DataType *string `type:"string" required:"true" enum:"InventoryAttributeDataType"`
 39093  
 39094  	// Name of the inventory item attribute.
 39095  	//
 39096  	// Name is a required field
 39097  	Name *string `type:"string" required:"true"`
 39098  }
 39099  
 39100  // String returns the string representation.
 39101  //
 39102  // API parameter values that are decorated as "sensitive" in the API will not
 39103  // be included in the string output. The member name will be present, but the
 39104  // value will be replaced with "sensitive".
 39105  func (s InventoryItemAttribute) String() string {
 39106  	return awsutil.Prettify(s)
 39107  }
 39108  
 39109  // GoString returns the string representation.
 39110  //
 39111  // API parameter values that are decorated as "sensitive" in the API will not
 39112  // be included in the string output. The member name will be present, but the
 39113  // value will be replaced with "sensitive".
 39114  func (s InventoryItemAttribute) GoString() string {
 39115  	return s.String()
 39116  }
 39117  
 39118  // SetDataType sets the DataType field's value.
 39119  func (s *InventoryItemAttribute) SetDataType(v string) *InventoryItemAttribute {
 39120  	s.DataType = &v
 39121  	return s
 39122  }
 39123  
 39124  // SetName sets the Name field's value.
 39125  func (s *InventoryItemAttribute) SetName(v string) *InventoryItemAttribute {
 39126  	s.Name = &v
 39127  	return s
 39128  }
 39129  
 39130  // The inventory item schema definition. Users can use this to compose inventory
 39131  // query filters.
 39132  type InventoryItemSchema struct {
 39133  	_ struct{} `type:"structure"`
 39134  
 39135  	// The schema attributes for inventory. This contains data type and attribute
 39136  	// name.
 39137  	//
 39138  	// Attributes is a required field
 39139  	Attributes []*InventoryItemAttribute `min:"1" type:"list" required:"true"`
 39140  
 39141  	// The alias name of the inventory type. The alias name is used for display
 39142  	// purposes.
 39143  	DisplayName *string `type:"string"`
 39144  
 39145  	// The name of the inventory type. Default inventory item type names start with
 39146  	// Amazon Web Services. Custom inventory type names will start with Custom.
 39147  	// Default inventory item types include the following: AWS:AWSComponent, AWS:Application,
 39148  	// AWS:InstanceInformation, AWS:Network, and AWS:WindowsUpdate.
 39149  	//
 39150  	// TypeName is a required field
 39151  	TypeName *string `min:"1" type:"string" required:"true"`
 39152  
 39153  	// The schema version for the inventory item.
 39154  	Version *string `type:"string"`
 39155  }
 39156  
 39157  // String returns the string representation.
 39158  //
 39159  // API parameter values that are decorated as "sensitive" in the API will not
 39160  // be included in the string output. The member name will be present, but the
 39161  // value will be replaced with "sensitive".
 39162  func (s InventoryItemSchema) String() string {
 39163  	return awsutil.Prettify(s)
 39164  }
 39165  
 39166  // GoString returns the string representation.
 39167  //
 39168  // API parameter values that are decorated as "sensitive" in the API will not
 39169  // be included in the string output. The member name will be present, but the
 39170  // value will be replaced with "sensitive".
 39171  func (s InventoryItemSchema) GoString() string {
 39172  	return s.String()
 39173  }
 39174  
 39175  // SetAttributes sets the Attributes field's value.
 39176  func (s *InventoryItemSchema) SetAttributes(v []*InventoryItemAttribute) *InventoryItemSchema {
 39177  	s.Attributes = v
 39178  	return s
 39179  }
 39180  
 39181  // SetDisplayName sets the DisplayName field's value.
 39182  func (s *InventoryItemSchema) SetDisplayName(v string) *InventoryItemSchema {
 39183  	s.DisplayName = &v
 39184  	return s
 39185  }
 39186  
 39187  // SetTypeName sets the TypeName field's value.
 39188  func (s *InventoryItemSchema) SetTypeName(v string) *InventoryItemSchema {
 39189  	s.TypeName = &v
 39190  	return s
 39191  }
 39192  
 39193  // SetVersion sets the Version field's value.
 39194  func (s *InventoryItemSchema) SetVersion(v string) *InventoryItemSchema {
 39195  	s.Version = &v
 39196  	return s
 39197  }
 39198  
 39199  // Inventory query results.
 39200  type InventoryResultEntity struct {
 39201  	_ struct{} `type:"structure"`
 39202  
 39203  	// The data section in the inventory result entity JSON.
 39204  	Data map[string]*InventoryResultItem `type:"map"`
 39205  
 39206  	// ID of the inventory result entity. For example, for managed instance inventory
 39207  	// the result will be the managed instance ID. For EC2 instance inventory, the
 39208  	// result will be the instance ID.
 39209  	Id *string `type:"string"`
 39210  }
 39211  
 39212  // String returns the string representation.
 39213  //
 39214  // API parameter values that are decorated as "sensitive" in the API will not
 39215  // be included in the string output. The member name will be present, but the
 39216  // value will be replaced with "sensitive".
 39217  func (s InventoryResultEntity) String() string {
 39218  	return awsutil.Prettify(s)
 39219  }
 39220  
 39221  // GoString returns the string representation.
 39222  //
 39223  // API parameter values that are decorated as "sensitive" in the API will not
 39224  // be included in the string output. The member name will be present, but the
 39225  // value will be replaced with "sensitive".
 39226  func (s InventoryResultEntity) GoString() string {
 39227  	return s.String()
 39228  }
 39229  
 39230  // SetData sets the Data field's value.
 39231  func (s *InventoryResultEntity) SetData(v map[string]*InventoryResultItem) *InventoryResultEntity {
 39232  	s.Data = v
 39233  	return s
 39234  }
 39235  
 39236  // SetId sets the Id field's value.
 39237  func (s *InventoryResultEntity) SetId(v string) *InventoryResultEntity {
 39238  	s.Id = &v
 39239  	return s
 39240  }
 39241  
 39242  // The inventory result item.
 39243  type InventoryResultItem struct {
 39244  	_ struct{} `type:"structure"`
 39245  
 39246  	// The time inventory item data was captured.
 39247  	CaptureTime *string `type:"string"`
 39248  
 39249  	// Contains all the inventory data of the item type. Results include attribute
 39250  	// names and values.
 39251  	//
 39252  	// Content is a required field
 39253  	Content []map[string]*string `type:"list" required:"true"`
 39254  
 39255  	// MD5 hash of the inventory item type contents. The content hash is used to
 39256  	// determine whether to update inventory information. The PutInventory API doesn't
 39257  	// update the inventory item type contents if the MD5 hash hasn't changed since
 39258  	// last update.
 39259  	ContentHash *string `type:"string"`
 39260  
 39261  	// The schema version for the inventory result item/
 39262  	//
 39263  	// SchemaVersion is a required field
 39264  	SchemaVersion *string `type:"string" required:"true"`
 39265  
 39266  	// The name of the inventory result item type.
 39267  	//
 39268  	// TypeName is a required field
 39269  	TypeName *string `min:"1" type:"string" required:"true"`
 39270  }
 39271  
 39272  // String returns the string representation.
 39273  //
 39274  // API parameter values that are decorated as "sensitive" in the API will not
 39275  // be included in the string output. The member name will be present, but the
 39276  // value will be replaced with "sensitive".
 39277  func (s InventoryResultItem) String() string {
 39278  	return awsutil.Prettify(s)
 39279  }
 39280  
 39281  // GoString returns the string representation.
 39282  //
 39283  // API parameter values that are decorated as "sensitive" in the API will not
 39284  // be included in the string output. The member name will be present, but the
 39285  // value will be replaced with "sensitive".
 39286  func (s InventoryResultItem) GoString() string {
 39287  	return s.String()
 39288  }
 39289  
 39290  // SetCaptureTime sets the CaptureTime field's value.
 39291  func (s *InventoryResultItem) SetCaptureTime(v string) *InventoryResultItem {
 39292  	s.CaptureTime = &v
 39293  	return s
 39294  }
 39295  
 39296  // SetContent sets the Content field's value.
 39297  func (s *InventoryResultItem) SetContent(v []map[string]*string) *InventoryResultItem {
 39298  	s.Content = v
 39299  	return s
 39300  }
 39301  
 39302  // SetContentHash sets the ContentHash field's value.
 39303  func (s *InventoryResultItem) SetContentHash(v string) *InventoryResultItem {
 39304  	s.ContentHash = &v
 39305  	return s
 39306  }
 39307  
 39308  // SetSchemaVersion sets the SchemaVersion field's value.
 39309  func (s *InventoryResultItem) SetSchemaVersion(v string) *InventoryResultItem {
 39310  	s.SchemaVersion = &v
 39311  	return s
 39312  }
 39313  
 39314  // SetTypeName sets the TypeName field's value.
 39315  func (s *InventoryResultItem) SetTypeName(v string) *InventoryResultItem {
 39316  	s.TypeName = &v
 39317  	return s
 39318  }
 39319  
 39320  // The command ID and instance ID you specified didn't match any invocations.
 39321  // Verify the command ID and the instance ID and try again.
 39322  type InvocationDoesNotExist struct {
 39323  	_            struct{}                  `type:"structure"`
 39324  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 39325  
 39326  	Message_ *string `locationName:"message" type:"string"`
 39327  }
 39328  
 39329  // String returns the string representation.
 39330  //
 39331  // API parameter values that are decorated as "sensitive" in the API will not
 39332  // be included in the string output. The member name will be present, but the
 39333  // value will be replaced with "sensitive".
 39334  func (s InvocationDoesNotExist) String() string {
 39335  	return awsutil.Prettify(s)
 39336  }
 39337  
 39338  // GoString returns the string representation.
 39339  //
 39340  // API parameter values that are decorated as "sensitive" in the API will not
 39341  // be included in the string output. The member name will be present, but the
 39342  // value will be replaced with "sensitive".
 39343  func (s InvocationDoesNotExist) GoString() string {
 39344  	return s.String()
 39345  }
 39346  
 39347  func newErrorInvocationDoesNotExist(v protocol.ResponseMetadata) error {
 39348  	return &InvocationDoesNotExist{
 39349  		RespMetadata: v,
 39350  	}
 39351  }
 39352  
 39353  // Code returns the exception type name.
 39354  func (s *InvocationDoesNotExist) Code() string {
 39355  	return "InvocationDoesNotExist"
 39356  }
 39357  
 39358  // Message returns the exception's message.
 39359  func (s *InvocationDoesNotExist) Message() string {
 39360  	if s.Message_ != nil {
 39361  		return *s.Message_
 39362  	}
 39363  	return ""
 39364  }
 39365  
 39366  // OrigErr always returns nil, satisfies awserr.Error interface.
 39367  func (s *InvocationDoesNotExist) OrigErr() error {
 39368  	return nil
 39369  }
 39370  
 39371  func (s *InvocationDoesNotExist) Error() string {
 39372  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 39373  }
 39374  
 39375  // Status code returns the HTTP status code for the request's response error.
 39376  func (s *InvocationDoesNotExist) StatusCode() int {
 39377  	return s.RespMetadata.StatusCode
 39378  }
 39379  
 39380  // RequestID returns the service's response RequestID for request.
 39381  func (s *InvocationDoesNotExist) RequestID() string {
 39382  	return s.RespMetadata.RequestID
 39383  }
 39384  
 39385  // The inventory item has invalid content.
 39386  type ItemContentMismatchException struct {
 39387  	_            struct{}                  `type:"structure"`
 39388  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 39389  
 39390  	Message_ *string `locationName:"Message" type:"string"`
 39391  
 39392  	TypeName *string `min:"1" type:"string"`
 39393  }
 39394  
 39395  // String returns the string representation.
 39396  //
 39397  // API parameter values that are decorated as "sensitive" in the API will not
 39398  // be included in the string output. The member name will be present, but the
 39399  // value will be replaced with "sensitive".
 39400  func (s ItemContentMismatchException) String() string {
 39401  	return awsutil.Prettify(s)
 39402  }
 39403  
 39404  // GoString returns the string representation.
 39405  //
 39406  // API parameter values that are decorated as "sensitive" in the API will not
 39407  // be included in the string output. The member name will be present, but the
 39408  // value will be replaced with "sensitive".
 39409  func (s ItemContentMismatchException) GoString() string {
 39410  	return s.String()
 39411  }
 39412  
 39413  func newErrorItemContentMismatchException(v protocol.ResponseMetadata) error {
 39414  	return &ItemContentMismatchException{
 39415  		RespMetadata: v,
 39416  	}
 39417  }
 39418  
 39419  // Code returns the exception type name.
 39420  func (s *ItemContentMismatchException) Code() string {
 39421  	return "ItemContentMismatchException"
 39422  }
 39423  
 39424  // Message returns the exception's message.
 39425  func (s *ItemContentMismatchException) Message() string {
 39426  	if s.Message_ != nil {
 39427  		return *s.Message_
 39428  	}
 39429  	return ""
 39430  }
 39431  
 39432  // OrigErr always returns nil, satisfies awserr.Error interface.
 39433  func (s *ItemContentMismatchException) OrigErr() error {
 39434  	return nil
 39435  }
 39436  
 39437  func (s *ItemContentMismatchException) Error() string {
 39438  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 39439  }
 39440  
 39441  // Status code returns the HTTP status code for the request's response error.
 39442  func (s *ItemContentMismatchException) StatusCode() int {
 39443  	return s.RespMetadata.StatusCode
 39444  }
 39445  
 39446  // RequestID returns the service's response RequestID for request.
 39447  func (s *ItemContentMismatchException) RequestID() string {
 39448  	return s.RespMetadata.RequestID
 39449  }
 39450  
 39451  // The inventory item size has exceeded the size limit.
 39452  type ItemSizeLimitExceededException struct {
 39453  	_            struct{}                  `type:"structure"`
 39454  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 39455  
 39456  	Message_ *string `locationName:"Message" type:"string"`
 39457  
 39458  	TypeName *string `min:"1" type:"string"`
 39459  }
 39460  
 39461  // String returns the string representation.
 39462  //
 39463  // API parameter values that are decorated as "sensitive" in the API will not
 39464  // be included in the string output. The member name will be present, but the
 39465  // value will be replaced with "sensitive".
 39466  func (s ItemSizeLimitExceededException) String() string {
 39467  	return awsutil.Prettify(s)
 39468  }
 39469  
 39470  // GoString returns the string representation.
 39471  //
 39472  // API parameter values that are decorated as "sensitive" in the API will not
 39473  // be included in the string output. The member name will be present, but the
 39474  // value will be replaced with "sensitive".
 39475  func (s ItemSizeLimitExceededException) GoString() string {
 39476  	return s.String()
 39477  }
 39478  
 39479  func newErrorItemSizeLimitExceededException(v protocol.ResponseMetadata) error {
 39480  	return &ItemSizeLimitExceededException{
 39481  		RespMetadata: v,
 39482  	}
 39483  }
 39484  
 39485  // Code returns the exception type name.
 39486  func (s *ItemSizeLimitExceededException) Code() string {
 39487  	return "ItemSizeLimitExceededException"
 39488  }
 39489  
 39490  // Message returns the exception's message.
 39491  func (s *ItemSizeLimitExceededException) Message() string {
 39492  	if s.Message_ != nil {
 39493  		return *s.Message_
 39494  	}
 39495  	return ""
 39496  }
 39497  
 39498  // OrigErr always returns nil, satisfies awserr.Error interface.
 39499  func (s *ItemSizeLimitExceededException) OrigErr() error {
 39500  	return nil
 39501  }
 39502  
 39503  func (s *ItemSizeLimitExceededException) Error() string {
 39504  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 39505  }
 39506  
 39507  // Status code returns the HTTP status code for the request's response error.
 39508  func (s *ItemSizeLimitExceededException) StatusCode() int {
 39509  	return s.RespMetadata.StatusCode
 39510  }
 39511  
 39512  // RequestID returns the service's response RequestID for request.
 39513  func (s *ItemSizeLimitExceededException) RequestID() string {
 39514  	return s.RespMetadata.RequestID
 39515  }
 39516  
 39517  type LabelParameterVersionInput struct {
 39518  	_ struct{} `type:"structure"`
 39519  
 39520  	// One or more labels to attach to the specified parameter version.
 39521  	//
 39522  	// Labels is a required field
 39523  	Labels []*string `min:"1" type:"list" required:"true"`
 39524  
 39525  	// The parameter name on which you want to attach one or more labels.
 39526  	//
 39527  	// Name is a required field
 39528  	Name *string `min:"1" type:"string" required:"true"`
 39529  
 39530  	// The specific version of the parameter on which you want to attach one or
 39531  	// more labels. If no version is specified, the system attaches the label to
 39532  	// the latest version.
 39533  	ParameterVersion *int64 `type:"long"`
 39534  }
 39535  
 39536  // String returns the string representation.
 39537  //
 39538  // API parameter values that are decorated as "sensitive" in the API will not
 39539  // be included in the string output. The member name will be present, but the
 39540  // value will be replaced with "sensitive".
 39541  func (s LabelParameterVersionInput) String() string {
 39542  	return awsutil.Prettify(s)
 39543  }
 39544  
 39545  // GoString returns the string representation.
 39546  //
 39547  // API parameter values that are decorated as "sensitive" in the API will not
 39548  // be included in the string output. The member name will be present, but the
 39549  // value will be replaced with "sensitive".
 39550  func (s LabelParameterVersionInput) GoString() string {
 39551  	return s.String()
 39552  }
 39553  
 39554  // Validate inspects the fields of the type to determine if they are valid.
 39555  func (s *LabelParameterVersionInput) Validate() error {
 39556  	invalidParams := request.ErrInvalidParams{Context: "LabelParameterVersionInput"}
 39557  	if s.Labels == nil {
 39558  		invalidParams.Add(request.NewErrParamRequired("Labels"))
 39559  	}
 39560  	if s.Labels != nil && len(s.Labels) < 1 {
 39561  		invalidParams.Add(request.NewErrParamMinLen("Labels", 1))
 39562  	}
 39563  	if s.Name == nil {
 39564  		invalidParams.Add(request.NewErrParamRequired("Name"))
 39565  	}
 39566  	if s.Name != nil && len(*s.Name) < 1 {
 39567  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 39568  	}
 39569  
 39570  	if invalidParams.Len() > 0 {
 39571  		return invalidParams
 39572  	}
 39573  	return nil
 39574  }
 39575  
 39576  // SetLabels sets the Labels field's value.
 39577  func (s *LabelParameterVersionInput) SetLabels(v []*string) *LabelParameterVersionInput {
 39578  	s.Labels = v
 39579  	return s
 39580  }
 39581  
 39582  // SetName sets the Name field's value.
 39583  func (s *LabelParameterVersionInput) SetName(v string) *LabelParameterVersionInput {
 39584  	s.Name = &v
 39585  	return s
 39586  }
 39587  
 39588  // SetParameterVersion sets the ParameterVersion field's value.
 39589  func (s *LabelParameterVersionInput) SetParameterVersion(v int64) *LabelParameterVersionInput {
 39590  	s.ParameterVersion = &v
 39591  	return s
 39592  }
 39593  
 39594  type LabelParameterVersionOutput struct {
 39595  	_ struct{} `type:"structure"`
 39596  
 39597  	// The label doesn't meet the requirements. For information about parameter
 39598  	// label requirements, see Labeling parameters (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html)
 39599  	// in the Amazon Web Services Systems Manager User Guide.
 39600  	InvalidLabels []*string `min:"1" type:"list"`
 39601  
 39602  	// The version of the parameter that has been labeled.
 39603  	ParameterVersion *int64 `type:"long"`
 39604  }
 39605  
 39606  // String returns the string representation.
 39607  //
 39608  // API parameter values that are decorated as "sensitive" in the API will not
 39609  // be included in the string output. The member name will be present, but the
 39610  // value will be replaced with "sensitive".
 39611  func (s LabelParameterVersionOutput) String() string {
 39612  	return awsutil.Prettify(s)
 39613  }
 39614  
 39615  // GoString returns the string representation.
 39616  //
 39617  // API parameter values that are decorated as "sensitive" in the API will not
 39618  // be included in the string output. The member name will be present, but the
 39619  // value will be replaced with "sensitive".
 39620  func (s LabelParameterVersionOutput) GoString() string {
 39621  	return s.String()
 39622  }
 39623  
 39624  // SetInvalidLabels sets the InvalidLabels field's value.
 39625  func (s *LabelParameterVersionOutput) SetInvalidLabels(v []*string) *LabelParameterVersionOutput {
 39626  	s.InvalidLabels = v
 39627  	return s
 39628  }
 39629  
 39630  // SetParameterVersion sets the ParameterVersion field's value.
 39631  func (s *LabelParameterVersionOutput) SetParameterVersion(v int64) *LabelParameterVersionOutput {
 39632  	s.ParameterVersion = &v
 39633  	return s
 39634  }
 39635  
 39636  type ListAssociationVersionsInput struct {
 39637  	_ struct{} `type:"structure"`
 39638  
 39639  	// The association ID for which you want to view all versions.
 39640  	//
 39641  	// AssociationId is a required field
 39642  	AssociationId *string `type:"string" required:"true"`
 39643  
 39644  	// The maximum number of items to return for this call. The call also returns
 39645  	// a token that you can specify in a subsequent call to get the next set of
 39646  	// results.
 39647  	MaxResults *int64 `min:"1" type:"integer"`
 39648  
 39649  	// A token to start the list. Use this token to get the next set of results.
 39650  	NextToken *string `type:"string"`
 39651  }
 39652  
 39653  // String returns the string representation.
 39654  //
 39655  // API parameter values that are decorated as "sensitive" in the API will not
 39656  // be included in the string output. The member name will be present, but the
 39657  // value will be replaced with "sensitive".
 39658  func (s ListAssociationVersionsInput) String() string {
 39659  	return awsutil.Prettify(s)
 39660  }
 39661  
 39662  // GoString returns the string representation.
 39663  //
 39664  // API parameter values that are decorated as "sensitive" in the API will not
 39665  // be included in the string output. The member name will be present, but the
 39666  // value will be replaced with "sensitive".
 39667  func (s ListAssociationVersionsInput) GoString() string {
 39668  	return s.String()
 39669  }
 39670  
 39671  // Validate inspects the fields of the type to determine if they are valid.
 39672  func (s *ListAssociationVersionsInput) Validate() error {
 39673  	invalidParams := request.ErrInvalidParams{Context: "ListAssociationVersionsInput"}
 39674  	if s.AssociationId == nil {
 39675  		invalidParams.Add(request.NewErrParamRequired("AssociationId"))
 39676  	}
 39677  	if s.MaxResults != nil && *s.MaxResults < 1 {
 39678  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 39679  	}
 39680  
 39681  	if invalidParams.Len() > 0 {
 39682  		return invalidParams
 39683  	}
 39684  	return nil
 39685  }
 39686  
 39687  // SetAssociationId sets the AssociationId field's value.
 39688  func (s *ListAssociationVersionsInput) SetAssociationId(v string) *ListAssociationVersionsInput {
 39689  	s.AssociationId = &v
 39690  	return s
 39691  }
 39692  
 39693  // SetMaxResults sets the MaxResults field's value.
 39694  func (s *ListAssociationVersionsInput) SetMaxResults(v int64) *ListAssociationVersionsInput {
 39695  	s.MaxResults = &v
 39696  	return s
 39697  }
 39698  
 39699  // SetNextToken sets the NextToken field's value.
 39700  func (s *ListAssociationVersionsInput) SetNextToken(v string) *ListAssociationVersionsInput {
 39701  	s.NextToken = &v
 39702  	return s
 39703  }
 39704  
 39705  type ListAssociationVersionsOutput struct {
 39706  	_ struct{} `type:"structure"`
 39707  
 39708  	// Information about all versions of the association for the specified association
 39709  	// ID.
 39710  	AssociationVersions []*AssociationVersionInfo `min:"1" type:"list"`
 39711  
 39712  	// The token for the next set of items to return. Use this token to get the
 39713  	// next set of results.
 39714  	NextToken *string `type:"string"`
 39715  }
 39716  
 39717  // String returns the string representation.
 39718  //
 39719  // API parameter values that are decorated as "sensitive" in the API will not
 39720  // be included in the string output. The member name will be present, but the
 39721  // value will be replaced with "sensitive".
 39722  func (s ListAssociationVersionsOutput) String() string {
 39723  	return awsutil.Prettify(s)
 39724  }
 39725  
 39726  // GoString returns the string representation.
 39727  //
 39728  // API parameter values that are decorated as "sensitive" in the API will not
 39729  // be included in the string output. The member name will be present, but the
 39730  // value will be replaced with "sensitive".
 39731  func (s ListAssociationVersionsOutput) GoString() string {
 39732  	return s.String()
 39733  }
 39734  
 39735  // SetAssociationVersions sets the AssociationVersions field's value.
 39736  func (s *ListAssociationVersionsOutput) SetAssociationVersions(v []*AssociationVersionInfo) *ListAssociationVersionsOutput {
 39737  	s.AssociationVersions = v
 39738  	return s
 39739  }
 39740  
 39741  // SetNextToken sets the NextToken field's value.
 39742  func (s *ListAssociationVersionsOutput) SetNextToken(v string) *ListAssociationVersionsOutput {
 39743  	s.NextToken = &v
 39744  	return s
 39745  }
 39746  
 39747  type ListAssociationsInput struct {
 39748  	_ struct{} `type:"structure"`
 39749  
 39750  	// One or more filters. Use a filter to return a more specific list of results.
 39751  	//
 39752  	// Filtering associations using the InstanceID attribute only returns legacy
 39753  	// associations created using the InstanceID attribute. Associations targeting
 39754  	// the instance that are part of the Target Attributes ResourceGroup or Tags
 39755  	// aren't returned.
 39756  	AssociationFilterList []*AssociationFilter `min:"1" type:"list"`
 39757  
 39758  	// The maximum number of items to return for this call. The call also returns
 39759  	// a token that you can specify in a subsequent call to get the next set of
 39760  	// results.
 39761  	MaxResults *int64 `min:"1" type:"integer"`
 39762  
 39763  	// The token for the next set of items to return. (You received this token from
 39764  	// a previous call.)
 39765  	NextToken *string `type:"string"`
 39766  }
 39767  
 39768  // String returns the string representation.
 39769  //
 39770  // API parameter values that are decorated as "sensitive" in the API will not
 39771  // be included in the string output. The member name will be present, but the
 39772  // value will be replaced with "sensitive".
 39773  func (s ListAssociationsInput) String() string {
 39774  	return awsutil.Prettify(s)
 39775  }
 39776  
 39777  // GoString returns the string representation.
 39778  //
 39779  // API parameter values that are decorated as "sensitive" in the API will not
 39780  // be included in the string output. The member name will be present, but the
 39781  // value will be replaced with "sensitive".
 39782  func (s ListAssociationsInput) GoString() string {
 39783  	return s.String()
 39784  }
 39785  
 39786  // Validate inspects the fields of the type to determine if they are valid.
 39787  func (s *ListAssociationsInput) Validate() error {
 39788  	invalidParams := request.ErrInvalidParams{Context: "ListAssociationsInput"}
 39789  	if s.AssociationFilterList != nil && len(s.AssociationFilterList) < 1 {
 39790  		invalidParams.Add(request.NewErrParamMinLen("AssociationFilterList", 1))
 39791  	}
 39792  	if s.MaxResults != nil && *s.MaxResults < 1 {
 39793  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 39794  	}
 39795  	if s.AssociationFilterList != nil {
 39796  		for i, v := range s.AssociationFilterList {
 39797  			if v == nil {
 39798  				continue
 39799  			}
 39800  			if err := v.Validate(); err != nil {
 39801  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssociationFilterList", i), err.(request.ErrInvalidParams))
 39802  			}
 39803  		}
 39804  	}
 39805  
 39806  	if invalidParams.Len() > 0 {
 39807  		return invalidParams
 39808  	}
 39809  	return nil
 39810  }
 39811  
 39812  // SetAssociationFilterList sets the AssociationFilterList field's value.
 39813  func (s *ListAssociationsInput) SetAssociationFilterList(v []*AssociationFilter) *ListAssociationsInput {
 39814  	s.AssociationFilterList = v
 39815  	return s
 39816  }
 39817  
 39818  // SetMaxResults sets the MaxResults field's value.
 39819  func (s *ListAssociationsInput) SetMaxResults(v int64) *ListAssociationsInput {
 39820  	s.MaxResults = &v
 39821  	return s
 39822  }
 39823  
 39824  // SetNextToken sets the NextToken field's value.
 39825  func (s *ListAssociationsInput) SetNextToken(v string) *ListAssociationsInput {
 39826  	s.NextToken = &v
 39827  	return s
 39828  }
 39829  
 39830  type ListAssociationsOutput struct {
 39831  	_ struct{} `type:"structure"`
 39832  
 39833  	// The associations.
 39834  	Associations []*Association `type:"list"`
 39835  
 39836  	// The token to use when requesting the next set of items. If there are no additional
 39837  	// items to return, the string is empty.
 39838  	NextToken *string `type:"string"`
 39839  }
 39840  
 39841  // String returns the string representation.
 39842  //
 39843  // API parameter values that are decorated as "sensitive" in the API will not
 39844  // be included in the string output. The member name will be present, but the
 39845  // value will be replaced with "sensitive".
 39846  func (s ListAssociationsOutput) String() string {
 39847  	return awsutil.Prettify(s)
 39848  }
 39849  
 39850  // GoString returns the string representation.
 39851  //
 39852  // API parameter values that are decorated as "sensitive" in the API will not
 39853  // be included in the string output. The member name will be present, but the
 39854  // value will be replaced with "sensitive".
 39855  func (s ListAssociationsOutput) GoString() string {
 39856  	return s.String()
 39857  }
 39858  
 39859  // SetAssociations sets the Associations field's value.
 39860  func (s *ListAssociationsOutput) SetAssociations(v []*Association) *ListAssociationsOutput {
 39861  	s.Associations = v
 39862  	return s
 39863  }
 39864  
 39865  // SetNextToken sets the NextToken field's value.
 39866  func (s *ListAssociationsOutput) SetNextToken(v string) *ListAssociationsOutput {
 39867  	s.NextToken = &v
 39868  	return s
 39869  }
 39870  
 39871  type ListCommandInvocationsInput struct {
 39872  	_ struct{} `type:"structure"`
 39873  
 39874  	// (Optional) The invocations for a specific command ID.
 39875  	CommandId *string `min:"36" type:"string"`
 39876  
 39877  	// (Optional) If set this returns the response of the command executions and
 39878  	// any command output. The default value is false.
 39879  	Details *bool `type:"boolean"`
 39880  
 39881  	// (Optional) One or more filters. Use a filter to return a more specific list
 39882  	// of results.
 39883  	Filters []*CommandFilter `min:"1" type:"list"`
 39884  
 39885  	// (Optional) The command execution details for a specific instance ID.
 39886  	InstanceId *string `type:"string"`
 39887  
 39888  	// (Optional) The maximum number of items to return for this call. The call
 39889  	// also returns a token that you can specify in a subsequent call to get the
 39890  	// next set of results.
 39891  	MaxResults *int64 `min:"1" type:"integer"`
 39892  
 39893  	// (Optional) The token for the next set of items to return. (You received this
 39894  	// token from a previous call.)
 39895  	NextToken *string `type:"string"`
 39896  }
 39897  
 39898  // String returns the string representation.
 39899  //
 39900  // API parameter values that are decorated as "sensitive" in the API will not
 39901  // be included in the string output. The member name will be present, but the
 39902  // value will be replaced with "sensitive".
 39903  func (s ListCommandInvocationsInput) String() string {
 39904  	return awsutil.Prettify(s)
 39905  }
 39906  
 39907  // GoString returns the string representation.
 39908  //
 39909  // API parameter values that are decorated as "sensitive" in the API will not
 39910  // be included in the string output. The member name will be present, but the
 39911  // value will be replaced with "sensitive".
 39912  func (s ListCommandInvocationsInput) GoString() string {
 39913  	return s.String()
 39914  }
 39915  
 39916  // Validate inspects the fields of the type to determine if they are valid.
 39917  func (s *ListCommandInvocationsInput) Validate() error {
 39918  	invalidParams := request.ErrInvalidParams{Context: "ListCommandInvocationsInput"}
 39919  	if s.CommandId != nil && len(*s.CommandId) < 36 {
 39920  		invalidParams.Add(request.NewErrParamMinLen("CommandId", 36))
 39921  	}
 39922  	if s.Filters != nil && len(s.Filters) < 1 {
 39923  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 39924  	}
 39925  	if s.MaxResults != nil && *s.MaxResults < 1 {
 39926  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 39927  	}
 39928  	if s.Filters != nil {
 39929  		for i, v := range s.Filters {
 39930  			if v == nil {
 39931  				continue
 39932  			}
 39933  			if err := v.Validate(); err != nil {
 39934  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 39935  			}
 39936  		}
 39937  	}
 39938  
 39939  	if invalidParams.Len() > 0 {
 39940  		return invalidParams
 39941  	}
 39942  	return nil
 39943  }
 39944  
 39945  // SetCommandId sets the CommandId field's value.
 39946  func (s *ListCommandInvocationsInput) SetCommandId(v string) *ListCommandInvocationsInput {
 39947  	s.CommandId = &v
 39948  	return s
 39949  }
 39950  
 39951  // SetDetails sets the Details field's value.
 39952  func (s *ListCommandInvocationsInput) SetDetails(v bool) *ListCommandInvocationsInput {
 39953  	s.Details = &v
 39954  	return s
 39955  }
 39956  
 39957  // SetFilters sets the Filters field's value.
 39958  func (s *ListCommandInvocationsInput) SetFilters(v []*CommandFilter) *ListCommandInvocationsInput {
 39959  	s.Filters = v
 39960  	return s
 39961  }
 39962  
 39963  // SetInstanceId sets the InstanceId field's value.
 39964  func (s *ListCommandInvocationsInput) SetInstanceId(v string) *ListCommandInvocationsInput {
 39965  	s.InstanceId = &v
 39966  	return s
 39967  }
 39968  
 39969  // SetMaxResults sets the MaxResults field's value.
 39970  func (s *ListCommandInvocationsInput) SetMaxResults(v int64) *ListCommandInvocationsInput {
 39971  	s.MaxResults = &v
 39972  	return s
 39973  }
 39974  
 39975  // SetNextToken sets the NextToken field's value.
 39976  func (s *ListCommandInvocationsInput) SetNextToken(v string) *ListCommandInvocationsInput {
 39977  	s.NextToken = &v
 39978  	return s
 39979  }
 39980  
 39981  type ListCommandInvocationsOutput struct {
 39982  	_ struct{} `type:"structure"`
 39983  
 39984  	// (Optional) A list of all invocations.
 39985  	CommandInvocations []*CommandInvocation `type:"list"`
 39986  
 39987  	// (Optional) The token for the next set of items to return. (You received this
 39988  	// token from a previous call.)
 39989  	NextToken *string `type:"string"`
 39990  }
 39991  
 39992  // String returns the string representation.
 39993  //
 39994  // API parameter values that are decorated as "sensitive" in the API will not
 39995  // be included in the string output. The member name will be present, but the
 39996  // value will be replaced with "sensitive".
 39997  func (s ListCommandInvocationsOutput) String() string {
 39998  	return awsutil.Prettify(s)
 39999  }
 40000  
 40001  // GoString returns the string representation.
 40002  //
 40003  // API parameter values that are decorated as "sensitive" in the API will not
 40004  // be included in the string output. The member name will be present, but the
 40005  // value will be replaced with "sensitive".
 40006  func (s ListCommandInvocationsOutput) GoString() string {
 40007  	return s.String()
 40008  }
 40009  
 40010  // SetCommandInvocations sets the CommandInvocations field's value.
 40011  func (s *ListCommandInvocationsOutput) SetCommandInvocations(v []*CommandInvocation) *ListCommandInvocationsOutput {
 40012  	s.CommandInvocations = v
 40013  	return s
 40014  }
 40015  
 40016  // SetNextToken sets the NextToken field's value.
 40017  func (s *ListCommandInvocationsOutput) SetNextToken(v string) *ListCommandInvocationsOutput {
 40018  	s.NextToken = &v
 40019  	return s
 40020  }
 40021  
 40022  type ListCommandsInput struct {
 40023  	_ struct{} `type:"structure"`
 40024  
 40025  	// (Optional) If provided, lists only the specified command.
 40026  	CommandId *string `min:"36" type:"string"`
 40027  
 40028  	// (Optional) One or more filters. Use a filter to return a more specific list
 40029  	// of results.
 40030  	Filters []*CommandFilter `min:"1" type:"list"`
 40031  
 40032  	// (Optional) Lists commands issued against this instance ID.
 40033  	//
 40034  	// You can't specify an instance ID in the same command that you specify Status
 40035  	// = Pending. This is because the command hasn't reached the instance yet.
 40036  	InstanceId *string `type:"string"`
 40037  
 40038  	// (Optional) The maximum number of items to return for this call. The call
 40039  	// also returns a token that you can specify in a subsequent call to get the
 40040  	// next set of results.
 40041  	MaxResults *int64 `min:"1" type:"integer"`
 40042  
 40043  	// (Optional) The token for the next set of items to return. (You received this
 40044  	// token from a previous call.)
 40045  	NextToken *string `type:"string"`
 40046  }
 40047  
 40048  // String returns the string representation.
 40049  //
 40050  // API parameter values that are decorated as "sensitive" in the API will not
 40051  // be included in the string output. The member name will be present, but the
 40052  // value will be replaced with "sensitive".
 40053  func (s ListCommandsInput) String() string {
 40054  	return awsutil.Prettify(s)
 40055  }
 40056  
 40057  // GoString returns the string representation.
 40058  //
 40059  // API parameter values that are decorated as "sensitive" in the API will not
 40060  // be included in the string output. The member name will be present, but the
 40061  // value will be replaced with "sensitive".
 40062  func (s ListCommandsInput) GoString() string {
 40063  	return s.String()
 40064  }
 40065  
 40066  // Validate inspects the fields of the type to determine if they are valid.
 40067  func (s *ListCommandsInput) Validate() error {
 40068  	invalidParams := request.ErrInvalidParams{Context: "ListCommandsInput"}
 40069  	if s.CommandId != nil && len(*s.CommandId) < 36 {
 40070  		invalidParams.Add(request.NewErrParamMinLen("CommandId", 36))
 40071  	}
 40072  	if s.Filters != nil && len(s.Filters) < 1 {
 40073  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 40074  	}
 40075  	if s.MaxResults != nil && *s.MaxResults < 1 {
 40076  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 40077  	}
 40078  	if s.Filters != nil {
 40079  		for i, v := range s.Filters {
 40080  			if v == nil {
 40081  				continue
 40082  			}
 40083  			if err := v.Validate(); err != nil {
 40084  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 40085  			}
 40086  		}
 40087  	}
 40088  
 40089  	if invalidParams.Len() > 0 {
 40090  		return invalidParams
 40091  	}
 40092  	return nil
 40093  }
 40094  
 40095  // SetCommandId sets the CommandId field's value.
 40096  func (s *ListCommandsInput) SetCommandId(v string) *ListCommandsInput {
 40097  	s.CommandId = &v
 40098  	return s
 40099  }
 40100  
 40101  // SetFilters sets the Filters field's value.
 40102  func (s *ListCommandsInput) SetFilters(v []*CommandFilter) *ListCommandsInput {
 40103  	s.Filters = v
 40104  	return s
 40105  }
 40106  
 40107  // SetInstanceId sets the InstanceId field's value.
 40108  func (s *ListCommandsInput) SetInstanceId(v string) *ListCommandsInput {
 40109  	s.InstanceId = &v
 40110  	return s
 40111  }
 40112  
 40113  // SetMaxResults sets the MaxResults field's value.
 40114  func (s *ListCommandsInput) SetMaxResults(v int64) *ListCommandsInput {
 40115  	s.MaxResults = &v
 40116  	return s
 40117  }
 40118  
 40119  // SetNextToken sets the NextToken field's value.
 40120  func (s *ListCommandsInput) SetNextToken(v string) *ListCommandsInput {
 40121  	s.NextToken = &v
 40122  	return s
 40123  }
 40124  
 40125  type ListCommandsOutput struct {
 40126  	_ struct{} `type:"structure"`
 40127  
 40128  	// (Optional) The list of commands requested by the user.
 40129  	Commands []*Command `type:"list"`
 40130  
 40131  	// (Optional) The token for the next set of items to return. (You received this
 40132  	// token from a previous call.)
 40133  	NextToken *string `type:"string"`
 40134  }
 40135  
 40136  // String returns the string representation.
 40137  //
 40138  // API parameter values that are decorated as "sensitive" in the API will not
 40139  // be included in the string output. The member name will be present, but the
 40140  // value will be replaced with "sensitive".
 40141  func (s ListCommandsOutput) String() string {
 40142  	return awsutil.Prettify(s)
 40143  }
 40144  
 40145  // GoString returns the string representation.
 40146  //
 40147  // API parameter values that are decorated as "sensitive" in the API will not
 40148  // be included in the string output. The member name will be present, but the
 40149  // value will be replaced with "sensitive".
 40150  func (s ListCommandsOutput) GoString() string {
 40151  	return s.String()
 40152  }
 40153  
 40154  // SetCommands sets the Commands field's value.
 40155  func (s *ListCommandsOutput) SetCommands(v []*Command) *ListCommandsOutput {
 40156  	s.Commands = v
 40157  	return s
 40158  }
 40159  
 40160  // SetNextToken sets the NextToken field's value.
 40161  func (s *ListCommandsOutput) SetNextToken(v string) *ListCommandsOutput {
 40162  	s.NextToken = &v
 40163  	return s
 40164  }
 40165  
 40166  type ListComplianceItemsInput struct {
 40167  	_ struct{} `type:"structure"`
 40168  
 40169  	// One or more compliance filters. Use a filter to return a more specific list
 40170  	// of results.
 40171  	Filters []*ComplianceStringFilter `type:"list"`
 40172  
 40173  	// The maximum number of items to return for this call. The call also returns
 40174  	// a token that you can specify in a subsequent call to get the next set of
 40175  	// results.
 40176  	MaxResults *int64 `min:"1" type:"integer"`
 40177  
 40178  	// A token to start the list. Use this token to get the next set of results.
 40179  	NextToken *string `type:"string"`
 40180  
 40181  	// The ID for the resources from which to get compliance information. Currently,
 40182  	// you can only specify one resource ID.
 40183  	ResourceIds []*string `min:"1" type:"list"`
 40184  
 40185  	// The type of resource from which to get compliance information. Currently,
 40186  	// the only supported resource type is ManagedInstance.
 40187  	ResourceTypes []*string `min:"1" type:"list"`
 40188  }
 40189  
 40190  // String returns the string representation.
 40191  //
 40192  // API parameter values that are decorated as "sensitive" in the API will not
 40193  // be included in the string output. The member name will be present, but the
 40194  // value will be replaced with "sensitive".
 40195  func (s ListComplianceItemsInput) String() string {
 40196  	return awsutil.Prettify(s)
 40197  }
 40198  
 40199  // GoString returns the string representation.
 40200  //
 40201  // API parameter values that are decorated as "sensitive" in the API will not
 40202  // be included in the string output. The member name will be present, but the
 40203  // value will be replaced with "sensitive".
 40204  func (s ListComplianceItemsInput) GoString() string {
 40205  	return s.String()
 40206  }
 40207  
 40208  // Validate inspects the fields of the type to determine if they are valid.
 40209  func (s *ListComplianceItemsInput) Validate() error {
 40210  	invalidParams := request.ErrInvalidParams{Context: "ListComplianceItemsInput"}
 40211  	if s.MaxResults != nil && *s.MaxResults < 1 {
 40212  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 40213  	}
 40214  	if s.ResourceIds != nil && len(s.ResourceIds) < 1 {
 40215  		invalidParams.Add(request.NewErrParamMinLen("ResourceIds", 1))
 40216  	}
 40217  	if s.ResourceTypes != nil && len(s.ResourceTypes) < 1 {
 40218  		invalidParams.Add(request.NewErrParamMinLen("ResourceTypes", 1))
 40219  	}
 40220  	if s.Filters != nil {
 40221  		for i, v := range s.Filters {
 40222  			if v == nil {
 40223  				continue
 40224  			}
 40225  			if err := v.Validate(); err != nil {
 40226  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 40227  			}
 40228  		}
 40229  	}
 40230  
 40231  	if invalidParams.Len() > 0 {
 40232  		return invalidParams
 40233  	}
 40234  	return nil
 40235  }
 40236  
 40237  // SetFilters sets the Filters field's value.
 40238  func (s *ListComplianceItemsInput) SetFilters(v []*ComplianceStringFilter) *ListComplianceItemsInput {
 40239  	s.Filters = v
 40240  	return s
 40241  }
 40242  
 40243  // SetMaxResults sets the MaxResults field's value.
 40244  func (s *ListComplianceItemsInput) SetMaxResults(v int64) *ListComplianceItemsInput {
 40245  	s.MaxResults = &v
 40246  	return s
 40247  }
 40248  
 40249  // SetNextToken sets the NextToken field's value.
 40250  func (s *ListComplianceItemsInput) SetNextToken(v string) *ListComplianceItemsInput {
 40251  	s.NextToken = &v
 40252  	return s
 40253  }
 40254  
 40255  // SetResourceIds sets the ResourceIds field's value.
 40256  func (s *ListComplianceItemsInput) SetResourceIds(v []*string) *ListComplianceItemsInput {
 40257  	s.ResourceIds = v
 40258  	return s
 40259  }
 40260  
 40261  // SetResourceTypes sets the ResourceTypes field's value.
 40262  func (s *ListComplianceItemsInput) SetResourceTypes(v []*string) *ListComplianceItemsInput {
 40263  	s.ResourceTypes = v
 40264  	return s
 40265  }
 40266  
 40267  type ListComplianceItemsOutput struct {
 40268  	_ struct{} `type:"structure"`
 40269  
 40270  	// A list of compliance information for the specified resource ID.
 40271  	ComplianceItems []*ComplianceItem `type:"list"`
 40272  
 40273  	// The token for the next set of items to return. Use this token to get the
 40274  	// next set of results.
 40275  	NextToken *string `type:"string"`
 40276  }
 40277  
 40278  // String returns the string representation.
 40279  //
 40280  // API parameter values that are decorated as "sensitive" in the API will not
 40281  // be included in the string output. The member name will be present, but the
 40282  // value will be replaced with "sensitive".
 40283  func (s ListComplianceItemsOutput) String() string {
 40284  	return awsutil.Prettify(s)
 40285  }
 40286  
 40287  // GoString returns the string representation.
 40288  //
 40289  // API parameter values that are decorated as "sensitive" in the API will not
 40290  // be included in the string output. The member name will be present, but the
 40291  // value will be replaced with "sensitive".
 40292  func (s ListComplianceItemsOutput) GoString() string {
 40293  	return s.String()
 40294  }
 40295  
 40296  // SetComplianceItems sets the ComplianceItems field's value.
 40297  func (s *ListComplianceItemsOutput) SetComplianceItems(v []*ComplianceItem) *ListComplianceItemsOutput {
 40298  	s.ComplianceItems = v
 40299  	return s
 40300  }
 40301  
 40302  // SetNextToken sets the NextToken field's value.
 40303  func (s *ListComplianceItemsOutput) SetNextToken(v string) *ListComplianceItemsOutput {
 40304  	s.NextToken = &v
 40305  	return s
 40306  }
 40307  
 40308  type ListComplianceSummariesInput struct {
 40309  	_ struct{} `type:"structure"`
 40310  
 40311  	// One or more compliance or inventory filters. Use a filter to return a more
 40312  	// specific list of results.
 40313  	Filters []*ComplianceStringFilter `type:"list"`
 40314  
 40315  	// The maximum number of items to return for this call. Currently, you can specify
 40316  	// null or 50. The call also returns a token that you can specify in a subsequent
 40317  	// call to get the next set of results.
 40318  	MaxResults *int64 `min:"1" type:"integer"`
 40319  
 40320  	// A token to start the list. Use this token to get the next set of results.
 40321  	NextToken *string `type:"string"`
 40322  }
 40323  
 40324  // String returns the string representation.
 40325  //
 40326  // API parameter values that are decorated as "sensitive" in the API will not
 40327  // be included in the string output. The member name will be present, but the
 40328  // value will be replaced with "sensitive".
 40329  func (s ListComplianceSummariesInput) String() string {
 40330  	return awsutil.Prettify(s)
 40331  }
 40332  
 40333  // GoString returns the string representation.
 40334  //
 40335  // API parameter values that are decorated as "sensitive" in the API will not
 40336  // be included in the string output. The member name will be present, but the
 40337  // value will be replaced with "sensitive".
 40338  func (s ListComplianceSummariesInput) GoString() string {
 40339  	return s.String()
 40340  }
 40341  
 40342  // Validate inspects the fields of the type to determine if they are valid.
 40343  func (s *ListComplianceSummariesInput) Validate() error {
 40344  	invalidParams := request.ErrInvalidParams{Context: "ListComplianceSummariesInput"}
 40345  	if s.MaxResults != nil && *s.MaxResults < 1 {
 40346  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 40347  	}
 40348  	if s.Filters != nil {
 40349  		for i, v := range s.Filters {
 40350  			if v == nil {
 40351  				continue
 40352  			}
 40353  			if err := v.Validate(); err != nil {
 40354  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 40355  			}
 40356  		}
 40357  	}
 40358  
 40359  	if invalidParams.Len() > 0 {
 40360  		return invalidParams
 40361  	}
 40362  	return nil
 40363  }
 40364  
 40365  // SetFilters sets the Filters field's value.
 40366  func (s *ListComplianceSummariesInput) SetFilters(v []*ComplianceStringFilter) *ListComplianceSummariesInput {
 40367  	s.Filters = v
 40368  	return s
 40369  }
 40370  
 40371  // SetMaxResults sets the MaxResults field's value.
 40372  func (s *ListComplianceSummariesInput) SetMaxResults(v int64) *ListComplianceSummariesInput {
 40373  	s.MaxResults = &v
 40374  	return s
 40375  }
 40376  
 40377  // SetNextToken sets the NextToken field's value.
 40378  func (s *ListComplianceSummariesInput) SetNextToken(v string) *ListComplianceSummariesInput {
 40379  	s.NextToken = &v
 40380  	return s
 40381  }
 40382  
 40383  type ListComplianceSummariesOutput struct {
 40384  	_ struct{} `type:"structure"`
 40385  
 40386  	// A list of compliant and non-compliant summary counts based on compliance
 40387  	// types. For example, this call returns State Manager associations, patches,
 40388  	// or custom compliance types according to the filter criteria that you specified.
 40389  	ComplianceSummaryItems []*ComplianceSummaryItem `type:"list"`
 40390  
 40391  	// The token for the next set of items to return. Use this token to get the
 40392  	// next set of results.
 40393  	NextToken *string `type:"string"`
 40394  }
 40395  
 40396  // String returns the string representation.
 40397  //
 40398  // API parameter values that are decorated as "sensitive" in the API will not
 40399  // be included in the string output. The member name will be present, but the
 40400  // value will be replaced with "sensitive".
 40401  func (s ListComplianceSummariesOutput) String() string {
 40402  	return awsutil.Prettify(s)
 40403  }
 40404  
 40405  // GoString returns the string representation.
 40406  //
 40407  // API parameter values that are decorated as "sensitive" in the API will not
 40408  // be included in the string output. The member name will be present, but the
 40409  // value will be replaced with "sensitive".
 40410  func (s ListComplianceSummariesOutput) GoString() string {
 40411  	return s.String()
 40412  }
 40413  
 40414  // SetComplianceSummaryItems sets the ComplianceSummaryItems field's value.
 40415  func (s *ListComplianceSummariesOutput) SetComplianceSummaryItems(v []*ComplianceSummaryItem) *ListComplianceSummariesOutput {
 40416  	s.ComplianceSummaryItems = v
 40417  	return s
 40418  }
 40419  
 40420  // SetNextToken sets the NextToken field's value.
 40421  func (s *ListComplianceSummariesOutput) SetNextToken(v string) *ListComplianceSummariesOutput {
 40422  	s.NextToken = &v
 40423  	return s
 40424  }
 40425  
 40426  type ListDocumentMetadataHistoryInput struct {
 40427  	_ struct{} `type:"structure"`
 40428  
 40429  	// The version of the change template.
 40430  	DocumentVersion *string `type:"string"`
 40431  
 40432  	// The maximum number of items to return for this call. The call also returns
 40433  	// a token that you can specify in a subsequent call to get the next set of
 40434  	// results.
 40435  	MaxResults *int64 `min:"1" type:"integer"`
 40436  
 40437  	// The type of data for which details are being requested. Currently, the only
 40438  	// supported value is DocumentReviews.
 40439  	//
 40440  	// Metadata is a required field
 40441  	Metadata *string `type:"string" required:"true" enum:"DocumentMetadataEnum"`
 40442  
 40443  	// The name of the change template.
 40444  	//
 40445  	// Name is a required field
 40446  	Name *string `type:"string" required:"true"`
 40447  
 40448  	// The token for the next set of items to return. (You received this token from
 40449  	// a previous call.)
 40450  	NextToken *string `type:"string"`
 40451  }
 40452  
 40453  // String returns the string representation.
 40454  //
 40455  // API parameter values that are decorated as "sensitive" in the API will not
 40456  // be included in the string output. The member name will be present, but the
 40457  // value will be replaced with "sensitive".
 40458  func (s ListDocumentMetadataHistoryInput) String() string {
 40459  	return awsutil.Prettify(s)
 40460  }
 40461  
 40462  // GoString returns the string representation.
 40463  //
 40464  // API parameter values that are decorated as "sensitive" in the API will not
 40465  // be included in the string output. The member name will be present, but the
 40466  // value will be replaced with "sensitive".
 40467  func (s ListDocumentMetadataHistoryInput) GoString() string {
 40468  	return s.String()
 40469  }
 40470  
 40471  // Validate inspects the fields of the type to determine if they are valid.
 40472  func (s *ListDocumentMetadataHistoryInput) Validate() error {
 40473  	invalidParams := request.ErrInvalidParams{Context: "ListDocumentMetadataHistoryInput"}
 40474  	if s.MaxResults != nil && *s.MaxResults < 1 {
 40475  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 40476  	}
 40477  	if s.Metadata == nil {
 40478  		invalidParams.Add(request.NewErrParamRequired("Metadata"))
 40479  	}
 40480  	if s.Name == nil {
 40481  		invalidParams.Add(request.NewErrParamRequired("Name"))
 40482  	}
 40483  
 40484  	if invalidParams.Len() > 0 {
 40485  		return invalidParams
 40486  	}
 40487  	return nil
 40488  }
 40489  
 40490  // SetDocumentVersion sets the DocumentVersion field's value.
 40491  func (s *ListDocumentMetadataHistoryInput) SetDocumentVersion(v string) *ListDocumentMetadataHistoryInput {
 40492  	s.DocumentVersion = &v
 40493  	return s
 40494  }
 40495  
 40496  // SetMaxResults sets the MaxResults field's value.
 40497  func (s *ListDocumentMetadataHistoryInput) SetMaxResults(v int64) *ListDocumentMetadataHistoryInput {
 40498  	s.MaxResults = &v
 40499  	return s
 40500  }
 40501  
 40502  // SetMetadata sets the Metadata field's value.
 40503  func (s *ListDocumentMetadataHistoryInput) SetMetadata(v string) *ListDocumentMetadataHistoryInput {
 40504  	s.Metadata = &v
 40505  	return s
 40506  }
 40507  
 40508  // SetName sets the Name field's value.
 40509  func (s *ListDocumentMetadataHistoryInput) SetName(v string) *ListDocumentMetadataHistoryInput {
 40510  	s.Name = &v
 40511  	return s
 40512  }
 40513  
 40514  // SetNextToken sets the NextToken field's value.
 40515  func (s *ListDocumentMetadataHistoryInput) SetNextToken(v string) *ListDocumentMetadataHistoryInput {
 40516  	s.NextToken = &v
 40517  	return s
 40518  }
 40519  
 40520  type ListDocumentMetadataHistoryOutput struct {
 40521  	_ struct{} `type:"structure"`
 40522  
 40523  	// The user ID of the person in the organization who requested the review of
 40524  	// the change template.
 40525  	Author *string `type:"string"`
 40526  
 40527  	// The version of the change template.
 40528  	DocumentVersion *string `type:"string"`
 40529  
 40530  	// Information about the response to the change template approval request.
 40531  	Metadata *DocumentMetadataResponseInfo `type:"structure"`
 40532  
 40533  	// The name of the change template.
 40534  	Name *string `type:"string"`
 40535  
 40536  	// The maximum number of items to return for this call. The call also returns
 40537  	// a token that you can specify in a subsequent call to get the next set of
 40538  	// results.
 40539  	NextToken *string `type:"string"`
 40540  }
 40541  
 40542  // String returns the string representation.
 40543  //
 40544  // API parameter values that are decorated as "sensitive" in the API will not
 40545  // be included in the string output. The member name will be present, but the
 40546  // value will be replaced with "sensitive".
 40547  func (s ListDocumentMetadataHistoryOutput) String() string {
 40548  	return awsutil.Prettify(s)
 40549  }
 40550  
 40551  // GoString returns the string representation.
 40552  //
 40553  // API parameter values that are decorated as "sensitive" in the API will not
 40554  // be included in the string output. The member name will be present, but the
 40555  // value will be replaced with "sensitive".
 40556  func (s ListDocumentMetadataHistoryOutput) GoString() string {
 40557  	return s.String()
 40558  }
 40559  
 40560  // SetAuthor sets the Author field's value.
 40561  func (s *ListDocumentMetadataHistoryOutput) SetAuthor(v string) *ListDocumentMetadataHistoryOutput {
 40562  	s.Author = &v
 40563  	return s
 40564  }
 40565  
 40566  // SetDocumentVersion sets the DocumentVersion field's value.
 40567  func (s *ListDocumentMetadataHistoryOutput) SetDocumentVersion(v string) *ListDocumentMetadataHistoryOutput {
 40568  	s.DocumentVersion = &v
 40569  	return s
 40570  }
 40571  
 40572  // SetMetadata sets the Metadata field's value.
 40573  func (s *ListDocumentMetadataHistoryOutput) SetMetadata(v *DocumentMetadataResponseInfo) *ListDocumentMetadataHistoryOutput {
 40574  	s.Metadata = v
 40575  	return s
 40576  }
 40577  
 40578  // SetName sets the Name field's value.
 40579  func (s *ListDocumentMetadataHistoryOutput) SetName(v string) *ListDocumentMetadataHistoryOutput {
 40580  	s.Name = &v
 40581  	return s
 40582  }
 40583  
 40584  // SetNextToken sets the NextToken field's value.
 40585  func (s *ListDocumentMetadataHistoryOutput) SetNextToken(v string) *ListDocumentMetadataHistoryOutput {
 40586  	s.NextToken = &v
 40587  	return s
 40588  }
 40589  
 40590  type ListDocumentVersionsInput struct {
 40591  	_ struct{} `type:"structure"`
 40592  
 40593  	// The maximum number of items to return for this call. The call also returns
 40594  	// a token that you can specify in a subsequent call to get the next set of
 40595  	// results.
 40596  	MaxResults *int64 `min:"1" type:"integer"`
 40597  
 40598  	// The name of the document. You can specify an Amazon Resource Name (ARN).
 40599  	//
 40600  	// Name is a required field
 40601  	Name *string `type:"string" required:"true"`
 40602  
 40603  	// The token for the next set of items to return. (You received this token from
 40604  	// a previous call.)
 40605  	NextToken *string `type:"string"`
 40606  }
 40607  
 40608  // String returns the string representation.
 40609  //
 40610  // API parameter values that are decorated as "sensitive" in the API will not
 40611  // be included in the string output. The member name will be present, but the
 40612  // value will be replaced with "sensitive".
 40613  func (s ListDocumentVersionsInput) String() string {
 40614  	return awsutil.Prettify(s)
 40615  }
 40616  
 40617  // GoString returns the string representation.
 40618  //
 40619  // API parameter values that are decorated as "sensitive" in the API will not
 40620  // be included in the string output. The member name will be present, but the
 40621  // value will be replaced with "sensitive".
 40622  func (s ListDocumentVersionsInput) GoString() string {
 40623  	return s.String()
 40624  }
 40625  
 40626  // Validate inspects the fields of the type to determine if they are valid.
 40627  func (s *ListDocumentVersionsInput) Validate() error {
 40628  	invalidParams := request.ErrInvalidParams{Context: "ListDocumentVersionsInput"}
 40629  	if s.MaxResults != nil && *s.MaxResults < 1 {
 40630  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 40631  	}
 40632  	if s.Name == nil {
 40633  		invalidParams.Add(request.NewErrParamRequired("Name"))
 40634  	}
 40635  
 40636  	if invalidParams.Len() > 0 {
 40637  		return invalidParams
 40638  	}
 40639  	return nil
 40640  }
 40641  
 40642  // SetMaxResults sets the MaxResults field's value.
 40643  func (s *ListDocumentVersionsInput) SetMaxResults(v int64) *ListDocumentVersionsInput {
 40644  	s.MaxResults = &v
 40645  	return s
 40646  }
 40647  
 40648  // SetName sets the Name field's value.
 40649  func (s *ListDocumentVersionsInput) SetName(v string) *ListDocumentVersionsInput {
 40650  	s.Name = &v
 40651  	return s
 40652  }
 40653  
 40654  // SetNextToken sets the NextToken field's value.
 40655  func (s *ListDocumentVersionsInput) SetNextToken(v string) *ListDocumentVersionsInput {
 40656  	s.NextToken = &v
 40657  	return s
 40658  }
 40659  
 40660  type ListDocumentVersionsOutput struct {
 40661  	_ struct{} `type:"structure"`
 40662  
 40663  	// The document versions.
 40664  	DocumentVersions []*DocumentVersionInfo `min:"1" type:"list"`
 40665  
 40666  	// The token to use when requesting the next set of items. If there are no additional
 40667  	// items to return, the string is empty.
 40668  	NextToken *string `type:"string"`
 40669  }
 40670  
 40671  // String returns the string representation.
 40672  //
 40673  // API parameter values that are decorated as "sensitive" in the API will not
 40674  // be included in the string output. The member name will be present, but the
 40675  // value will be replaced with "sensitive".
 40676  func (s ListDocumentVersionsOutput) String() string {
 40677  	return awsutil.Prettify(s)
 40678  }
 40679  
 40680  // GoString returns the string representation.
 40681  //
 40682  // API parameter values that are decorated as "sensitive" in the API will not
 40683  // be included in the string output. The member name will be present, but the
 40684  // value will be replaced with "sensitive".
 40685  func (s ListDocumentVersionsOutput) GoString() string {
 40686  	return s.String()
 40687  }
 40688  
 40689  // SetDocumentVersions sets the DocumentVersions field's value.
 40690  func (s *ListDocumentVersionsOutput) SetDocumentVersions(v []*DocumentVersionInfo) *ListDocumentVersionsOutput {
 40691  	s.DocumentVersions = v
 40692  	return s
 40693  }
 40694  
 40695  // SetNextToken sets the NextToken field's value.
 40696  func (s *ListDocumentVersionsOutput) SetNextToken(v string) *ListDocumentVersionsOutput {
 40697  	s.NextToken = &v
 40698  	return s
 40699  }
 40700  
 40701  type ListDocumentsInput struct {
 40702  	_ struct{} `type:"structure"`
 40703  
 40704  	// This data type is deprecated. Instead, use Filters.
 40705  	DocumentFilterList []*DocumentFilter `min:"1" type:"list"`
 40706  
 40707  	// One or more DocumentKeyValuesFilter objects. Use a filter to return a more
 40708  	// specific list of results. For keys, you can specify one or more key-value
 40709  	// pair tags that have been applied to a document. Other valid keys include
 40710  	// Owner, Name, PlatformTypes, DocumentType, and TargetType. For example, to
 40711  	// return documents you own use Key=Owner,Values=Self. To specify a custom key-value
 40712  	// pair, use the format Key=tag:tagName,Values=valueName.
 40713  	//
 40714  	// This API operation only supports filtering documents by using a single tag
 40715  	// key and one or more tag values. For example: Key=tag:tagName,Values=valueName1,valueName2
 40716  	Filters []*DocumentKeyValuesFilter `type:"list"`
 40717  
 40718  	// The maximum number of items to return for this call. The call also returns
 40719  	// a token that you can specify in a subsequent call to get the next set of
 40720  	// results.
 40721  	MaxResults *int64 `min:"1" type:"integer"`
 40722  
 40723  	// The token for the next set of items to return. (You received this token from
 40724  	// a previous call.)
 40725  	NextToken *string `type:"string"`
 40726  }
 40727  
 40728  // String returns the string representation.
 40729  //
 40730  // API parameter values that are decorated as "sensitive" in the API will not
 40731  // be included in the string output. The member name will be present, but the
 40732  // value will be replaced with "sensitive".
 40733  func (s ListDocumentsInput) String() string {
 40734  	return awsutil.Prettify(s)
 40735  }
 40736  
 40737  // GoString returns the string representation.
 40738  //
 40739  // API parameter values that are decorated as "sensitive" in the API will not
 40740  // be included in the string output. The member name will be present, but the
 40741  // value will be replaced with "sensitive".
 40742  func (s ListDocumentsInput) GoString() string {
 40743  	return s.String()
 40744  }
 40745  
 40746  // Validate inspects the fields of the type to determine if they are valid.
 40747  func (s *ListDocumentsInput) Validate() error {
 40748  	invalidParams := request.ErrInvalidParams{Context: "ListDocumentsInput"}
 40749  	if s.DocumentFilterList != nil && len(s.DocumentFilterList) < 1 {
 40750  		invalidParams.Add(request.NewErrParamMinLen("DocumentFilterList", 1))
 40751  	}
 40752  	if s.MaxResults != nil && *s.MaxResults < 1 {
 40753  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 40754  	}
 40755  	if s.DocumentFilterList != nil {
 40756  		for i, v := range s.DocumentFilterList {
 40757  			if v == nil {
 40758  				continue
 40759  			}
 40760  			if err := v.Validate(); err != nil {
 40761  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DocumentFilterList", i), err.(request.ErrInvalidParams))
 40762  			}
 40763  		}
 40764  	}
 40765  	if s.Filters != nil {
 40766  		for i, v := range s.Filters {
 40767  			if v == nil {
 40768  				continue
 40769  			}
 40770  			if err := v.Validate(); err != nil {
 40771  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 40772  			}
 40773  		}
 40774  	}
 40775  
 40776  	if invalidParams.Len() > 0 {
 40777  		return invalidParams
 40778  	}
 40779  	return nil
 40780  }
 40781  
 40782  // SetDocumentFilterList sets the DocumentFilterList field's value.
 40783  func (s *ListDocumentsInput) SetDocumentFilterList(v []*DocumentFilter) *ListDocumentsInput {
 40784  	s.DocumentFilterList = v
 40785  	return s
 40786  }
 40787  
 40788  // SetFilters sets the Filters field's value.
 40789  func (s *ListDocumentsInput) SetFilters(v []*DocumentKeyValuesFilter) *ListDocumentsInput {
 40790  	s.Filters = v
 40791  	return s
 40792  }
 40793  
 40794  // SetMaxResults sets the MaxResults field's value.
 40795  func (s *ListDocumentsInput) SetMaxResults(v int64) *ListDocumentsInput {
 40796  	s.MaxResults = &v
 40797  	return s
 40798  }
 40799  
 40800  // SetNextToken sets the NextToken field's value.
 40801  func (s *ListDocumentsInput) SetNextToken(v string) *ListDocumentsInput {
 40802  	s.NextToken = &v
 40803  	return s
 40804  }
 40805  
 40806  type ListDocumentsOutput struct {
 40807  	_ struct{} `type:"structure"`
 40808  
 40809  	// The names of the SSM documents.
 40810  	DocumentIdentifiers []*DocumentIdentifier `type:"list"`
 40811  
 40812  	// The token to use when requesting the next set of items. If there are no additional
 40813  	// items to return, the string is empty.
 40814  	NextToken *string `type:"string"`
 40815  }
 40816  
 40817  // String returns the string representation.
 40818  //
 40819  // API parameter values that are decorated as "sensitive" in the API will not
 40820  // be included in the string output. The member name will be present, but the
 40821  // value will be replaced with "sensitive".
 40822  func (s ListDocumentsOutput) String() string {
 40823  	return awsutil.Prettify(s)
 40824  }
 40825  
 40826  // GoString returns the string representation.
 40827  //
 40828  // API parameter values that are decorated as "sensitive" in the API will not
 40829  // be included in the string output. The member name will be present, but the
 40830  // value will be replaced with "sensitive".
 40831  func (s ListDocumentsOutput) GoString() string {
 40832  	return s.String()
 40833  }
 40834  
 40835  // SetDocumentIdentifiers sets the DocumentIdentifiers field's value.
 40836  func (s *ListDocumentsOutput) SetDocumentIdentifiers(v []*DocumentIdentifier) *ListDocumentsOutput {
 40837  	s.DocumentIdentifiers = v
 40838  	return s
 40839  }
 40840  
 40841  // SetNextToken sets the NextToken field's value.
 40842  func (s *ListDocumentsOutput) SetNextToken(v string) *ListDocumentsOutput {
 40843  	s.NextToken = &v
 40844  	return s
 40845  }
 40846  
 40847  type ListInventoryEntriesInput struct {
 40848  	_ struct{} `type:"structure"`
 40849  
 40850  	// One or more filters. Use a filter to return a more specific list of results.
 40851  	Filters []*InventoryFilter `min:"1" type:"list"`
 40852  
 40853  	// The instance ID for which you want inventory information.
 40854  	//
 40855  	// InstanceId is a required field
 40856  	InstanceId *string `type:"string" required:"true"`
 40857  
 40858  	// The maximum number of items to return for this call. The call also returns
 40859  	// a token that you can specify in a subsequent call to get the next set of
 40860  	// results.
 40861  	MaxResults *int64 `min:"1" type:"integer"`
 40862  
 40863  	// The token for the next set of items to return. (You received this token from
 40864  	// a previous call.)
 40865  	NextToken *string `type:"string"`
 40866  
 40867  	// The type of inventory item for which you want information.
 40868  	//
 40869  	// TypeName is a required field
 40870  	TypeName *string `min:"1" type:"string" required:"true"`
 40871  }
 40872  
 40873  // String returns the string representation.
 40874  //
 40875  // API parameter values that are decorated as "sensitive" in the API will not
 40876  // be included in the string output. The member name will be present, but the
 40877  // value will be replaced with "sensitive".
 40878  func (s ListInventoryEntriesInput) String() string {
 40879  	return awsutil.Prettify(s)
 40880  }
 40881  
 40882  // GoString returns the string representation.
 40883  //
 40884  // API parameter values that are decorated as "sensitive" in the API will not
 40885  // be included in the string output. The member name will be present, but the
 40886  // value will be replaced with "sensitive".
 40887  func (s ListInventoryEntriesInput) GoString() string {
 40888  	return s.String()
 40889  }
 40890  
 40891  // Validate inspects the fields of the type to determine if they are valid.
 40892  func (s *ListInventoryEntriesInput) Validate() error {
 40893  	invalidParams := request.ErrInvalidParams{Context: "ListInventoryEntriesInput"}
 40894  	if s.Filters != nil && len(s.Filters) < 1 {
 40895  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 40896  	}
 40897  	if s.InstanceId == nil {
 40898  		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
 40899  	}
 40900  	if s.MaxResults != nil && *s.MaxResults < 1 {
 40901  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 40902  	}
 40903  	if s.TypeName == nil {
 40904  		invalidParams.Add(request.NewErrParamRequired("TypeName"))
 40905  	}
 40906  	if s.TypeName != nil && len(*s.TypeName) < 1 {
 40907  		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
 40908  	}
 40909  	if s.Filters != nil {
 40910  		for i, v := range s.Filters {
 40911  			if v == nil {
 40912  				continue
 40913  			}
 40914  			if err := v.Validate(); err != nil {
 40915  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 40916  			}
 40917  		}
 40918  	}
 40919  
 40920  	if invalidParams.Len() > 0 {
 40921  		return invalidParams
 40922  	}
 40923  	return nil
 40924  }
 40925  
 40926  // SetFilters sets the Filters field's value.
 40927  func (s *ListInventoryEntriesInput) SetFilters(v []*InventoryFilter) *ListInventoryEntriesInput {
 40928  	s.Filters = v
 40929  	return s
 40930  }
 40931  
 40932  // SetInstanceId sets the InstanceId field's value.
 40933  func (s *ListInventoryEntriesInput) SetInstanceId(v string) *ListInventoryEntriesInput {
 40934  	s.InstanceId = &v
 40935  	return s
 40936  }
 40937  
 40938  // SetMaxResults sets the MaxResults field's value.
 40939  func (s *ListInventoryEntriesInput) SetMaxResults(v int64) *ListInventoryEntriesInput {
 40940  	s.MaxResults = &v
 40941  	return s
 40942  }
 40943  
 40944  // SetNextToken sets the NextToken field's value.
 40945  func (s *ListInventoryEntriesInput) SetNextToken(v string) *ListInventoryEntriesInput {
 40946  	s.NextToken = &v
 40947  	return s
 40948  }
 40949  
 40950  // SetTypeName sets the TypeName field's value.
 40951  func (s *ListInventoryEntriesInput) SetTypeName(v string) *ListInventoryEntriesInput {
 40952  	s.TypeName = &v
 40953  	return s
 40954  }
 40955  
 40956  type ListInventoryEntriesOutput struct {
 40957  	_ struct{} `type:"structure"`
 40958  
 40959  	// The time that inventory information was collected for the instance(s).
 40960  	CaptureTime *string `type:"string"`
 40961  
 40962  	// A list of inventory items on the instance(s).
 40963  	Entries []map[string]*string `type:"list"`
 40964  
 40965  	// The instance ID targeted by the request to query inventory information.
 40966  	InstanceId *string `type:"string"`
 40967  
 40968  	// The token to use when requesting the next set of items. If there are no additional
 40969  	// items to return, the string is empty.
 40970  	NextToken *string `type:"string"`
 40971  
 40972  	// The inventory schema version used by the instance(s).
 40973  	SchemaVersion *string `type:"string"`
 40974  
 40975  	// The type of inventory item returned by the request.
 40976  	TypeName *string `min:"1" type:"string"`
 40977  }
 40978  
 40979  // String returns the string representation.
 40980  //
 40981  // API parameter values that are decorated as "sensitive" in the API will not
 40982  // be included in the string output. The member name will be present, but the
 40983  // value will be replaced with "sensitive".
 40984  func (s ListInventoryEntriesOutput) String() string {
 40985  	return awsutil.Prettify(s)
 40986  }
 40987  
 40988  // GoString returns the string representation.
 40989  //
 40990  // API parameter values that are decorated as "sensitive" in the API will not
 40991  // be included in the string output. The member name will be present, but the
 40992  // value will be replaced with "sensitive".
 40993  func (s ListInventoryEntriesOutput) GoString() string {
 40994  	return s.String()
 40995  }
 40996  
 40997  // SetCaptureTime sets the CaptureTime field's value.
 40998  func (s *ListInventoryEntriesOutput) SetCaptureTime(v string) *ListInventoryEntriesOutput {
 40999  	s.CaptureTime = &v
 41000  	return s
 41001  }
 41002  
 41003  // SetEntries sets the Entries field's value.
 41004  func (s *ListInventoryEntriesOutput) SetEntries(v []map[string]*string) *ListInventoryEntriesOutput {
 41005  	s.Entries = v
 41006  	return s
 41007  }
 41008  
 41009  // SetInstanceId sets the InstanceId field's value.
 41010  func (s *ListInventoryEntriesOutput) SetInstanceId(v string) *ListInventoryEntriesOutput {
 41011  	s.InstanceId = &v
 41012  	return s
 41013  }
 41014  
 41015  // SetNextToken sets the NextToken field's value.
 41016  func (s *ListInventoryEntriesOutput) SetNextToken(v string) *ListInventoryEntriesOutput {
 41017  	s.NextToken = &v
 41018  	return s
 41019  }
 41020  
 41021  // SetSchemaVersion sets the SchemaVersion field's value.
 41022  func (s *ListInventoryEntriesOutput) SetSchemaVersion(v string) *ListInventoryEntriesOutput {
 41023  	s.SchemaVersion = &v
 41024  	return s
 41025  }
 41026  
 41027  // SetTypeName sets the TypeName field's value.
 41028  func (s *ListInventoryEntriesOutput) SetTypeName(v string) *ListInventoryEntriesOutput {
 41029  	s.TypeName = &v
 41030  	return s
 41031  }
 41032  
 41033  type ListOpsItemEventsInput struct {
 41034  	_ struct{} `type:"structure"`
 41035  
 41036  	// One or more OpsItem filters. Use a filter to return a more specific list
 41037  	// of results.
 41038  	Filters []*OpsItemEventFilter `type:"list"`
 41039  
 41040  	// The maximum number of items to return for this call. The call also returns
 41041  	// a token that you can specify in a subsequent call to get the next set of
 41042  	// results.
 41043  	MaxResults *int64 `min:"1" type:"integer"`
 41044  
 41045  	// A token to start the list. Use this token to get the next set of results.
 41046  	NextToken *string `type:"string"`
 41047  }
 41048  
 41049  // String returns the string representation.
 41050  //
 41051  // API parameter values that are decorated as "sensitive" in the API will not
 41052  // be included in the string output. The member name will be present, but the
 41053  // value will be replaced with "sensitive".
 41054  func (s ListOpsItemEventsInput) String() string {
 41055  	return awsutil.Prettify(s)
 41056  }
 41057  
 41058  // GoString returns the string representation.
 41059  //
 41060  // API parameter values that are decorated as "sensitive" in the API will not
 41061  // be included in the string output. The member name will be present, but the
 41062  // value will be replaced with "sensitive".
 41063  func (s ListOpsItemEventsInput) GoString() string {
 41064  	return s.String()
 41065  }
 41066  
 41067  // Validate inspects the fields of the type to determine if they are valid.
 41068  func (s *ListOpsItemEventsInput) Validate() error {
 41069  	invalidParams := request.ErrInvalidParams{Context: "ListOpsItemEventsInput"}
 41070  	if s.MaxResults != nil && *s.MaxResults < 1 {
 41071  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 41072  	}
 41073  	if s.Filters != nil {
 41074  		for i, v := range s.Filters {
 41075  			if v == nil {
 41076  				continue
 41077  			}
 41078  			if err := v.Validate(); err != nil {
 41079  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 41080  			}
 41081  		}
 41082  	}
 41083  
 41084  	if invalidParams.Len() > 0 {
 41085  		return invalidParams
 41086  	}
 41087  	return nil
 41088  }
 41089  
 41090  // SetFilters sets the Filters field's value.
 41091  func (s *ListOpsItemEventsInput) SetFilters(v []*OpsItemEventFilter) *ListOpsItemEventsInput {
 41092  	s.Filters = v
 41093  	return s
 41094  }
 41095  
 41096  // SetMaxResults sets the MaxResults field's value.
 41097  func (s *ListOpsItemEventsInput) SetMaxResults(v int64) *ListOpsItemEventsInput {
 41098  	s.MaxResults = &v
 41099  	return s
 41100  }
 41101  
 41102  // SetNextToken sets the NextToken field's value.
 41103  func (s *ListOpsItemEventsInput) SetNextToken(v string) *ListOpsItemEventsInput {
 41104  	s.NextToken = &v
 41105  	return s
 41106  }
 41107  
 41108  type ListOpsItemEventsOutput struct {
 41109  	_ struct{} `type:"structure"`
 41110  
 41111  	// The token for the next set of items to return. Use this token to get the
 41112  	// next set of results.
 41113  	NextToken *string `type:"string"`
 41114  
 41115  	// A list of event information for the specified OpsItems.
 41116  	Summaries []*OpsItemEventSummary `type:"list"`
 41117  }
 41118  
 41119  // String returns the string representation.
 41120  //
 41121  // API parameter values that are decorated as "sensitive" in the API will not
 41122  // be included in the string output. The member name will be present, but the
 41123  // value will be replaced with "sensitive".
 41124  func (s ListOpsItemEventsOutput) String() string {
 41125  	return awsutil.Prettify(s)
 41126  }
 41127  
 41128  // GoString returns the string representation.
 41129  //
 41130  // API parameter values that are decorated as "sensitive" in the API will not
 41131  // be included in the string output. The member name will be present, but the
 41132  // value will be replaced with "sensitive".
 41133  func (s ListOpsItemEventsOutput) GoString() string {
 41134  	return s.String()
 41135  }
 41136  
 41137  // SetNextToken sets the NextToken field's value.
 41138  func (s *ListOpsItemEventsOutput) SetNextToken(v string) *ListOpsItemEventsOutput {
 41139  	s.NextToken = &v
 41140  	return s
 41141  }
 41142  
 41143  // SetSummaries sets the Summaries field's value.
 41144  func (s *ListOpsItemEventsOutput) SetSummaries(v []*OpsItemEventSummary) *ListOpsItemEventsOutput {
 41145  	s.Summaries = v
 41146  	return s
 41147  }
 41148  
 41149  type ListOpsItemRelatedItemsInput struct {
 41150  	_ struct{} `type:"structure"`
 41151  
 41152  	// One or more OpsItem filters. Use a filter to return a more specific list
 41153  	// of results.
 41154  	Filters []*OpsItemRelatedItemsFilter `type:"list"`
 41155  
 41156  	// The maximum number of items to return for this call. The call also returns
 41157  	// a token that you can specify in a subsequent call to get the next set of
 41158  	// results.
 41159  	MaxResults *int64 `min:"1" type:"integer"`
 41160  
 41161  	// The token for the next set of items to return. (You received this token from
 41162  	// a previous call.)
 41163  	NextToken *string `type:"string"`
 41164  
 41165  	// The ID of the OpsItem for which you want to list all related-item resources.
 41166  	OpsItemId *string `type:"string"`
 41167  }
 41168  
 41169  // String returns the string representation.
 41170  //
 41171  // API parameter values that are decorated as "sensitive" in the API will not
 41172  // be included in the string output. The member name will be present, but the
 41173  // value will be replaced with "sensitive".
 41174  func (s ListOpsItemRelatedItemsInput) String() string {
 41175  	return awsutil.Prettify(s)
 41176  }
 41177  
 41178  // GoString returns the string representation.
 41179  //
 41180  // API parameter values that are decorated as "sensitive" in the API will not
 41181  // be included in the string output. The member name will be present, but the
 41182  // value will be replaced with "sensitive".
 41183  func (s ListOpsItemRelatedItemsInput) GoString() string {
 41184  	return s.String()
 41185  }
 41186  
 41187  // Validate inspects the fields of the type to determine if they are valid.
 41188  func (s *ListOpsItemRelatedItemsInput) Validate() error {
 41189  	invalidParams := request.ErrInvalidParams{Context: "ListOpsItemRelatedItemsInput"}
 41190  	if s.MaxResults != nil && *s.MaxResults < 1 {
 41191  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 41192  	}
 41193  	if s.Filters != nil {
 41194  		for i, v := range s.Filters {
 41195  			if v == nil {
 41196  				continue
 41197  			}
 41198  			if err := v.Validate(); err != nil {
 41199  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 41200  			}
 41201  		}
 41202  	}
 41203  
 41204  	if invalidParams.Len() > 0 {
 41205  		return invalidParams
 41206  	}
 41207  	return nil
 41208  }
 41209  
 41210  // SetFilters sets the Filters field's value.
 41211  func (s *ListOpsItemRelatedItemsInput) SetFilters(v []*OpsItemRelatedItemsFilter) *ListOpsItemRelatedItemsInput {
 41212  	s.Filters = v
 41213  	return s
 41214  }
 41215  
 41216  // SetMaxResults sets the MaxResults field's value.
 41217  func (s *ListOpsItemRelatedItemsInput) SetMaxResults(v int64) *ListOpsItemRelatedItemsInput {
 41218  	s.MaxResults = &v
 41219  	return s
 41220  }
 41221  
 41222  // SetNextToken sets the NextToken field's value.
 41223  func (s *ListOpsItemRelatedItemsInput) SetNextToken(v string) *ListOpsItemRelatedItemsInput {
 41224  	s.NextToken = &v
 41225  	return s
 41226  }
 41227  
 41228  // SetOpsItemId sets the OpsItemId field's value.
 41229  func (s *ListOpsItemRelatedItemsInput) SetOpsItemId(v string) *ListOpsItemRelatedItemsInput {
 41230  	s.OpsItemId = &v
 41231  	return s
 41232  }
 41233  
 41234  type ListOpsItemRelatedItemsOutput struct {
 41235  	_ struct{} `type:"structure"`
 41236  
 41237  	// The token for the next set of items to return. Use this token to get the
 41238  	// next set of results.
 41239  	NextToken *string `type:"string"`
 41240  
 41241  	// A list of related-item resources for the specified OpsItem.
 41242  	Summaries []*OpsItemRelatedItemSummary `type:"list"`
 41243  }
 41244  
 41245  // String returns the string representation.
 41246  //
 41247  // API parameter values that are decorated as "sensitive" in the API will not
 41248  // be included in the string output. The member name will be present, but the
 41249  // value will be replaced with "sensitive".
 41250  func (s ListOpsItemRelatedItemsOutput) String() string {
 41251  	return awsutil.Prettify(s)
 41252  }
 41253  
 41254  // GoString returns the string representation.
 41255  //
 41256  // API parameter values that are decorated as "sensitive" in the API will not
 41257  // be included in the string output. The member name will be present, but the
 41258  // value will be replaced with "sensitive".
 41259  func (s ListOpsItemRelatedItemsOutput) GoString() string {
 41260  	return s.String()
 41261  }
 41262  
 41263  // SetNextToken sets the NextToken field's value.
 41264  func (s *ListOpsItemRelatedItemsOutput) SetNextToken(v string) *ListOpsItemRelatedItemsOutput {
 41265  	s.NextToken = &v
 41266  	return s
 41267  }
 41268  
 41269  // SetSummaries sets the Summaries field's value.
 41270  func (s *ListOpsItemRelatedItemsOutput) SetSummaries(v []*OpsItemRelatedItemSummary) *ListOpsItemRelatedItemsOutput {
 41271  	s.Summaries = v
 41272  	return s
 41273  }
 41274  
 41275  type ListOpsMetadataInput struct {
 41276  	_ struct{} `type:"structure"`
 41277  
 41278  	// One or more filters to limit the number of OpsMetadata objects returned by
 41279  	// the call.
 41280  	Filters []*OpsMetadataFilter `type:"list"`
 41281  
 41282  	// The maximum number of items to return for this call. The call also returns
 41283  	// a token that you can specify in a subsequent call to get the next set of
 41284  	// results.
 41285  	MaxResults *int64 `min:"1" type:"integer"`
 41286  
 41287  	// A token to start the list. Use this token to get the next set of results.
 41288  	NextToken *string `type:"string"`
 41289  }
 41290  
 41291  // String returns the string representation.
 41292  //
 41293  // API parameter values that are decorated as "sensitive" in the API will not
 41294  // be included in the string output. The member name will be present, but the
 41295  // value will be replaced with "sensitive".
 41296  func (s ListOpsMetadataInput) String() string {
 41297  	return awsutil.Prettify(s)
 41298  }
 41299  
 41300  // GoString returns the string representation.
 41301  //
 41302  // API parameter values that are decorated as "sensitive" in the API will not
 41303  // be included in the string output. The member name will be present, but the
 41304  // value will be replaced with "sensitive".
 41305  func (s ListOpsMetadataInput) GoString() string {
 41306  	return s.String()
 41307  }
 41308  
 41309  // Validate inspects the fields of the type to determine if they are valid.
 41310  func (s *ListOpsMetadataInput) Validate() error {
 41311  	invalidParams := request.ErrInvalidParams{Context: "ListOpsMetadataInput"}
 41312  	if s.MaxResults != nil && *s.MaxResults < 1 {
 41313  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 41314  	}
 41315  	if s.Filters != nil {
 41316  		for i, v := range s.Filters {
 41317  			if v == nil {
 41318  				continue
 41319  			}
 41320  			if err := v.Validate(); err != nil {
 41321  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 41322  			}
 41323  		}
 41324  	}
 41325  
 41326  	if invalidParams.Len() > 0 {
 41327  		return invalidParams
 41328  	}
 41329  	return nil
 41330  }
 41331  
 41332  // SetFilters sets the Filters field's value.
 41333  func (s *ListOpsMetadataInput) SetFilters(v []*OpsMetadataFilter) *ListOpsMetadataInput {
 41334  	s.Filters = v
 41335  	return s
 41336  }
 41337  
 41338  // SetMaxResults sets the MaxResults field's value.
 41339  func (s *ListOpsMetadataInput) SetMaxResults(v int64) *ListOpsMetadataInput {
 41340  	s.MaxResults = &v
 41341  	return s
 41342  }
 41343  
 41344  // SetNextToken sets the NextToken field's value.
 41345  func (s *ListOpsMetadataInput) SetNextToken(v string) *ListOpsMetadataInput {
 41346  	s.NextToken = &v
 41347  	return s
 41348  }
 41349  
 41350  type ListOpsMetadataOutput struct {
 41351  	_ struct{} `type:"structure"`
 41352  
 41353  	// The token for the next set of items to return. Use this token to get the
 41354  	// next set of results.
 41355  	NextToken *string `type:"string"`
 41356  
 41357  	// Returns a list of OpsMetadata objects.
 41358  	OpsMetadataList []*OpsMetadata `min:"1" type:"list"`
 41359  }
 41360  
 41361  // String returns the string representation.
 41362  //
 41363  // API parameter values that are decorated as "sensitive" in the API will not
 41364  // be included in the string output. The member name will be present, but the
 41365  // value will be replaced with "sensitive".
 41366  func (s ListOpsMetadataOutput) String() string {
 41367  	return awsutil.Prettify(s)
 41368  }
 41369  
 41370  // GoString returns the string representation.
 41371  //
 41372  // API parameter values that are decorated as "sensitive" in the API will not
 41373  // be included in the string output. The member name will be present, but the
 41374  // value will be replaced with "sensitive".
 41375  func (s ListOpsMetadataOutput) GoString() string {
 41376  	return s.String()
 41377  }
 41378  
 41379  // SetNextToken sets the NextToken field's value.
 41380  func (s *ListOpsMetadataOutput) SetNextToken(v string) *ListOpsMetadataOutput {
 41381  	s.NextToken = &v
 41382  	return s
 41383  }
 41384  
 41385  // SetOpsMetadataList sets the OpsMetadataList field's value.
 41386  func (s *ListOpsMetadataOutput) SetOpsMetadataList(v []*OpsMetadata) *ListOpsMetadataOutput {
 41387  	s.OpsMetadataList = v
 41388  	return s
 41389  }
 41390  
 41391  type ListResourceComplianceSummariesInput struct {
 41392  	_ struct{} `type:"structure"`
 41393  
 41394  	// One or more filters. Use a filter to return a more specific list of results.
 41395  	Filters []*ComplianceStringFilter `type:"list"`
 41396  
 41397  	// The maximum number of items to return for this call. The call also returns
 41398  	// a token that you can specify in a subsequent call to get the next set of
 41399  	// results.
 41400  	MaxResults *int64 `min:"1" type:"integer"`
 41401  
 41402  	// A token to start the list. Use this token to get the next set of results.
 41403  	NextToken *string `type:"string"`
 41404  }
 41405  
 41406  // String returns the string representation.
 41407  //
 41408  // API parameter values that are decorated as "sensitive" in the API will not
 41409  // be included in the string output. The member name will be present, but the
 41410  // value will be replaced with "sensitive".
 41411  func (s ListResourceComplianceSummariesInput) String() string {
 41412  	return awsutil.Prettify(s)
 41413  }
 41414  
 41415  // GoString returns the string representation.
 41416  //
 41417  // API parameter values that are decorated as "sensitive" in the API will not
 41418  // be included in the string output. The member name will be present, but the
 41419  // value will be replaced with "sensitive".
 41420  func (s ListResourceComplianceSummariesInput) GoString() string {
 41421  	return s.String()
 41422  }
 41423  
 41424  // Validate inspects the fields of the type to determine if they are valid.
 41425  func (s *ListResourceComplianceSummariesInput) Validate() error {
 41426  	invalidParams := request.ErrInvalidParams{Context: "ListResourceComplianceSummariesInput"}
 41427  	if s.MaxResults != nil && *s.MaxResults < 1 {
 41428  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 41429  	}
 41430  	if s.Filters != nil {
 41431  		for i, v := range s.Filters {
 41432  			if v == nil {
 41433  				continue
 41434  			}
 41435  			if err := v.Validate(); err != nil {
 41436  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 41437  			}
 41438  		}
 41439  	}
 41440  
 41441  	if invalidParams.Len() > 0 {
 41442  		return invalidParams
 41443  	}
 41444  	return nil
 41445  }
 41446  
 41447  // SetFilters sets the Filters field's value.
 41448  func (s *ListResourceComplianceSummariesInput) SetFilters(v []*ComplianceStringFilter) *ListResourceComplianceSummariesInput {
 41449  	s.Filters = v
 41450  	return s
 41451  }
 41452  
 41453  // SetMaxResults sets the MaxResults field's value.
 41454  func (s *ListResourceComplianceSummariesInput) SetMaxResults(v int64) *ListResourceComplianceSummariesInput {
 41455  	s.MaxResults = &v
 41456  	return s
 41457  }
 41458  
 41459  // SetNextToken sets the NextToken field's value.
 41460  func (s *ListResourceComplianceSummariesInput) SetNextToken(v string) *ListResourceComplianceSummariesInput {
 41461  	s.NextToken = &v
 41462  	return s
 41463  }
 41464  
 41465  type ListResourceComplianceSummariesOutput struct {
 41466  	_ struct{} `type:"structure"`
 41467  
 41468  	// The token for the next set of items to return. Use this token to get the
 41469  	// next set of results.
 41470  	NextToken *string `type:"string"`
 41471  
 41472  	// A summary count for specified or targeted managed instances. Summary count
 41473  	// includes information about compliant and non-compliant State Manager associations,
 41474  	// patch status, or custom items according to the filter criteria that you specify.
 41475  	ResourceComplianceSummaryItems []*ResourceComplianceSummaryItem `type:"list"`
 41476  }
 41477  
 41478  // String returns the string representation.
 41479  //
 41480  // API parameter values that are decorated as "sensitive" in the API will not
 41481  // be included in the string output. The member name will be present, but the
 41482  // value will be replaced with "sensitive".
 41483  func (s ListResourceComplianceSummariesOutput) String() string {
 41484  	return awsutil.Prettify(s)
 41485  }
 41486  
 41487  // GoString returns the string representation.
 41488  //
 41489  // API parameter values that are decorated as "sensitive" in the API will not
 41490  // be included in the string output. The member name will be present, but the
 41491  // value will be replaced with "sensitive".
 41492  func (s ListResourceComplianceSummariesOutput) GoString() string {
 41493  	return s.String()
 41494  }
 41495  
 41496  // SetNextToken sets the NextToken field's value.
 41497  func (s *ListResourceComplianceSummariesOutput) SetNextToken(v string) *ListResourceComplianceSummariesOutput {
 41498  	s.NextToken = &v
 41499  	return s
 41500  }
 41501  
 41502  // SetResourceComplianceSummaryItems sets the ResourceComplianceSummaryItems field's value.
 41503  func (s *ListResourceComplianceSummariesOutput) SetResourceComplianceSummaryItems(v []*ResourceComplianceSummaryItem) *ListResourceComplianceSummariesOutput {
 41504  	s.ResourceComplianceSummaryItems = v
 41505  	return s
 41506  }
 41507  
 41508  type ListResourceDataSyncInput struct {
 41509  	_ struct{} `type:"structure"`
 41510  
 41511  	// The maximum number of items to return for this call. The call also returns
 41512  	// a token that you can specify in a subsequent call to get the next set of
 41513  	// results.
 41514  	MaxResults *int64 `min:"1" type:"integer"`
 41515  
 41516  	// A token to start the list. Use this token to get the next set of results.
 41517  	NextToken *string `type:"string"`
 41518  
 41519  	// View a list of resource data syncs according to the sync type. Specify SyncToDestination
 41520  	// to view resource data syncs that synchronize data to an Amazon S3 bucket.
 41521  	// Specify SyncFromSource to view resource data syncs from Organizations or
 41522  	// from multiple Amazon Web Services Regions.
 41523  	SyncType *string `min:"1" type:"string"`
 41524  }
 41525  
 41526  // String returns the string representation.
 41527  //
 41528  // API parameter values that are decorated as "sensitive" in the API will not
 41529  // be included in the string output. The member name will be present, but the
 41530  // value will be replaced with "sensitive".
 41531  func (s ListResourceDataSyncInput) String() string {
 41532  	return awsutil.Prettify(s)
 41533  }
 41534  
 41535  // GoString returns the string representation.
 41536  //
 41537  // API parameter values that are decorated as "sensitive" in the API will not
 41538  // be included in the string output. The member name will be present, but the
 41539  // value will be replaced with "sensitive".
 41540  func (s ListResourceDataSyncInput) GoString() string {
 41541  	return s.String()
 41542  }
 41543  
 41544  // Validate inspects the fields of the type to determine if they are valid.
 41545  func (s *ListResourceDataSyncInput) Validate() error {
 41546  	invalidParams := request.ErrInvalidParams{Context: "ListResourceDataSyncInput"}
 41547  	if s.MaxResults != nil && *s.MaxResults < 1 {
 41548  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 41549  	}
 41550  	if s.SyncType != nil && len(*s.SyncType) < 1 {
 41551  		invalidParams.Add(request.NewErrParamMinLen("SyncType", 1))
 41552  	}
 41553  
 41554  	if invalidParams.Len() > 0 {
 41555  		return invalidParams
 41556  	}
 41557  	return nil
 41558  }
 41559  
 41560  // SetMaxResults sets the MaxResults field's value.
 41561  func (s *ListResourceDataSyncInput) SetMaxResults(v int64) *ListResourceDataSyncInput {
 41562  	s.MaxResults = &v
 41563  	return s
 41564  }
 41565  
 41566  // SetNextToken sets the NextToken field's value.
 41567  func (s *ListResourceDataSyncInput) SetNextToken(v string) *ListResourceDataSyncInput {
 41568  	s.NextToken = &v
 41569  	return s
 41570  }
 41571  
 41572  // SetSyncType sets the SyncType field's value.
 41573  func (s *ListResourceDataSyncInput) SetSyncType(v string) *ListResourceDataSyncInput {
 41574  	s.SyncType = &v
 41575  	return s
 41576  }
 41577  
 41578  type ListResourceDataSyncOutput struct {
 41579  	_ struct{} `type:"structure"`
 41580  
 41581  	// The token for the next set of items to return. Use this token to get the
 41582  	// next set of results.
 41583  	NextToken *string `type:"string"`
 41584  
 41585  	// A list of your current resource data sync configurations and their statuses.
 41586  	ResourceDataSyncItems []*ResourceDataSyncItem `type:"list"`
 41587  }
 41588  
 41589  // String returns the string representation.
 41590  //
 41591  // API parameter values that are decorated as "sensitive" in the API will not
 41592  // be included in the string output. The member name will be present, but the
 41593  // value will be replaced with "sensitive".
 41594  func (s ListResourceDataSyncOutput) String() string {
 41595  	return awsutil.Prettify(s)
 41596  }
 41597  
 41598  // GoString returns the string representation.
 41599  //
 41600  // API parameter values that are decorated as "sensitive" in the API will not
 41601  // be included in the string output. The member name will be present, but the
 41602  // value will be replaced with "sensitive".
 41603  func (s ListResourceDataSyncOutput) GoString() string {
 41604  	return s.String()
 41605  }
 41606  
 41607  // SetNextToken sets the NextToken field's value.
 41608  func (s *ListResourceDataSyncOutput) SetNextToken(v string) *ListResourceDataSyncOutput {
 41609  	s.NextToken = &v
 41610  	return s
 41611  }
 41612  
 41613  // SetResourceDataSyncItems sets the ResourceDataSyncItems field's value.
 41614  func (s *ListResourceDataSyncOutput) SetResourceDataSyncItems(v []*ResourceDataSyncItem) *ListResourceDataSyncOutput {
 41615  	s.ResourceDataSyncItems = v
 41616  	return s
 41617  }
 41618  
 41619  type ListTagsForResourceInput struct {
 41620  	_ struct{} `type:"structure"`
 41621  
 41622  	// The resource ID for which you want to see a list of tags.
 41623  	//
 41624  	// ResourceId is a required field
 41625  	ResourceId *string `type:"string" required:"true"`
 41626  
 41627  	// Returns a list of tags for a specific resource type.
 41628  	//
 41629  	// ResourceType is a required field
 41630  	ResourceType *string `type:"string" required:"true" enum:"ResourceTypeForTagging"`
 41631  }
 41632  
 41633  // String returns the string representation.
 41634  //
 41635  // API parameter values that are decorated as "sensitive" in the API will not
 41636  // be included in the string output. The member name will be present, but the
 41637  // value will be replaced with "sensitive".
 41638  func (s ListTagsForResourceInput) String() string {
 41639  	return awsutil.Prettify(s)
 41640  }
 41641  
 41642  // GoString returns the string representation.
 41643  //
 41644  // API parameter values that are decorated as "sensitive" in the API will not
 41645  // be included in the string output. The member name will be present, but the
 41646  // value will be replaced with "sensitive".
 41647  func (s ListTagsForResourceInput) GoString() string {
 41648  	return s.String()
 41649  }
 41650  
 41651  // Validate inspects the fields of the type to determine if they are valid.
 41652  func (s *ListTagsForResourceInput) Validate() error {
 41653  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
 41654  	if s.ResourceId == nil {
 41655  		invalidParams.Add(request.NewErrParamRequired("ResourceId"))
 41656  	}
 41657  	if s.ResourceType == nil {
 41658  		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
 41659  	}
 41660  
 41661  	if invalidParams.Len() > 0 {
 41662  		return invalidParams
 41663  	}
 41664  	return nil
 41665  }
 41666  
 41667  // SetResourceId sets the ResourceId field's value.
 41668  func (s *ListTagsForResourceInput) SetResourceId(v string) *ListTagsForResourceInput {
 41669  	s.ResourceId = &v
 41670  	return s
 41671  }
 41672  
 41673  // SetResourceType sets the ResourceType field's value.
 41674  func (s *ListTagsForResourceInput) SetResourceType(v string) *ListTagsForResourceInput {
 41675  	s.ResourceType = &v
 41676  	return s
 41677  }
 41678  
 41679  type ListTagsForResourceOutput struct {
 41680  	_ struct{} `type:"structure"`
 41681  
 41682  	// A list of tags.
 41683  	TagList []*Tag `type:"list"`
 41684  }
 41685  
 41686  // String returns the string representation.
 41687  //
 41688  // API parameter values that are decorated as "sensitive" in the API will not
 41689  // be included in the string output. The member name will be present, but the
 41690  // value will be replaced with "sensitive".
 41691  func (s ListTagsForResourceOutput) String() string {
 41692  	return awsutil.Prettify(s)
 41693  }
 41694  
 41695  // GoString returns the string representation.
 41696  //
 41697  // API parameter values that are decorated as "sensitive" in the API will not
 41698  // be included in the string output. The member name will be present, but the
 41699  // value will be replaced with "sensitive".
 41700  func (s ListTagsForResourceOutput) GoString() string {
 41701  	return s.String()
 41702  }
 41703  
 41704  // SetTagList sets the TagList field's value.
 41705  func (s *ListTagsForResourceOutput) SetTagList(v []*Tag) *ListTagsForResourceOutput {
 41706  	s.TagList = v
 41707  	return s
 41708  }
 41709  
 41710  // Information about an Amazon Simple Storage Service (Amazon S3) bucket to
 41711  // write instance-level logs to.
 41712  //
 41713  // LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
 41714  // (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
 41715  // OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
 41716  // information about how Amazon Web Services Systems Manager handles these options
 41717  // for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 41718  type LoggingInfo struct {
 41719  	_ struct{} `type:"structure"`
 41720  
 41721  	// The name of an S3 bucket where execution logs are stored .
 41722  	//
 41723  	// S3BucketName is a required field
 41724  	S3BucketName *string `min:"3" type:"string" required:"true"`
 41725  
 41726  	// (Optional) The S3 bucket subfolder.
 41727  	S3KeyPrefix *string `type:"string"`
 41728  
 41729  	// The Amazon Web Services Region where the S3 bucket is located.
 41730  	//
 41731  	// S3Region is a required field
 41732  	S3Region *string `min:"3" type:"string" required:"true"`
 41733  }
 41734  
 41735  // String returns the string representation.
 41736  //
 41737  // API parameter values that are decorated as "sensitive" in the API will not
 41738  // be included in the string output. The member name will be present, but the
 41739  // value will be replaced with "sensitive".
 41740  func (s LoggingInfo) String() string {
 41741  	return awsutil.Prettify(s)
 41742  }
 41743  
 41744  // GoString returns the string representation.
 41745  //
 41746  // API parameter values that are decorated as "sensitive" in the API will not
 41747  // be included in the string output. The member name will be present, but the
 41748  // value will be replaced with "sensitive".
 41749  func (s LoggingInfo) GoString() string {
 41750  	return s.String()
 41751  }
 41752  
 41753  // Validate inspects the fields of the type to determine if they are valid.
 41754  func (s *LoggingInfo) Validate() error {
 41755  	invalidParams := request.ErrInvalidParams{Context: "LoggingInfo"}
 41756  	if s.S3BucketName == nil {
 41757  		invalidParams.Add(request.NewErrParamRequired("S3BucketName"))
 41758  	}
 41759  	if s.S3BucketName != nil && len(*s.S3BucketName) < 3 {
 41760  		invalidParams.Add(request.NewErrParamMinLen("S3BucketName", 3))
 41761  	}
 41762  	if s.S3Region == nil {
 41763  		invalidParams.Add(request.NewErrParamRequired("S3Region"))
 41764  	}
 41765  	if s.S3Region != nil && len(*s.S3Region) < 3 {
 41766  		invalidParams.Add(request.NewErrParamMinLen("S3Region", 3))
 41767  	}
 41768  
 41769  	if invalidParams.Len() > 0 {
 41770  		return invalidParams
 41771  	}
 41772  	return nil
 41773  }
 41774  
 41775  // SetS3BucketName sets the S3BucketName field's value.
 41776  func (s *LoggingInfo) SetS3BucketName(v string) *LoggingInfo {
 41777  	s.S3BucketName = &v
 41778  	return s
 41779  }
 41780  
 41781  // SetS3KeyPrefix sets the S3KeyPrefix field's value.
 41782  func (s *LoggingInfo) SetS3KeyPrefix(v string) *LoggingInfo {
 41783  	s.S3KeyPrefix = &v
 41784  	return s
 41785  }
 41786  
 41787  // SetS3Region sets the S3Region field's value.
 41788  func (s *LoggingInfo) SetS3Region(v string) *LoggingInfo {
 41789  	s.S3Region = &v
 41790  	return s
 41791  }
 41792  
 41793  // The parameters for an AUTOMATION task type.
 41794  type MaintenanceWindowAutomationParameters struct {
 41795  	_ struct{} `type:"structure"`
 41796  
 41797  	// The version of an Automation runbook to use during task execution.
 41798  	DocumentVersion *string `type:"string"`
 41799  
 41800  	// The parameters for the AUTOMATION task.
 41801  	//
 41802  	// For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow
 41803  	// and UpdateMaintenanceWindowTask.
 41804  	//
 41805  	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
 41806  	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
 41807  	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
 41808  	// information about how Amazon Web Services Systems Manager handles these options
 41809  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 41810  	//
 41811  	// TaskParameters has been deprecated. To specify parameters to pass to a task
 41812  	// when it runs, instead use the Parameters option in the TaskInvocationParameters
 41813  	// structure. For information about how Systems Manager handles these options
 41814  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 41815  	//
 41816  	// For AUTOMATION task types, Amazon Web Services Systems Manager ignores any
 41817  	// values specified for these parameters.
 41818  	Parameters map[string][]*string `min:"1" type:"map"`
 41819  }
 41820  
 41821  // String returns the string representation.
 41822  //
 41823  // API parameter values that are decorated as "sensitive" in the API will not
 41824  // be included in the string output. The member name will be present, but the
 41825  // value will be replaced with "sensitive".
 41826  func (s MaintenanceWindowAutomationParameters) String() string {
 41827  	return awsutil.Prettify(s)
 41828  }
 41829  
 41830  // GoString returns the string representation.
 41831  //
 41832  // API parameter values that are decorated as "sensitive" in the API will not
 41833  // be included in the string output. The member name will be present, but the
 41834  // value will be replaced with "sensitive".
 41835  func (s MaintenanceWindowAutomationParameters) GoString() string {
 41836  	return s.String()
 41837  }
 41838  
 41839  // Validate inspects the fields of the type to determine if they are valid.
 41840  func (s *MaintenanceWindowAutomationParameters) Validate() error {
 41841  	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowAutomationParameters"}
 41842  	if s.Parameters != nil && len(s.Parameters) < 1 {
 41843  		invalidParams.Add(request.NewErrParamMinLen("Parameters", 1))
 41844  	}
 41845  
 41846  	if invalidParams.Len() > 0 {
 41847  		return invalidParams
 41848  	}
 41849  	return nil
 41850  }
 41851  
 41852  // SetDocumentVersion sets the DocumentVersion field's value.
 41853  func (s *MaintenanceWindowAutomationParameters) SetDocumentVersion(v string) *MaintenanceWindowAutomationParameters {
 41854  	s.DocumentVersion = &v
 41855  	return s
 41856  }
 41857  
 41858  // SetParameters sets the Parameters field's value.
 41859  func (s *MaintenanceWindowAutomationParameters) SetParameters(v map[string][]*string) *MaintenanceWindowAutomationParameters {
 41860  	s.Parameters = v
 41861  	return s
 41862  }
 41863  
 41864  // Describes the information about an execution of a maintenance window.
 41865  type MaintenanceWindowExecution struct {
 41866  	_ struct{} `type:"structure"`
 41867  
 41868  	// The time the execution finished.
 41869  	EndTime *time.Time `type:"timestamp"`
 41870  
 41871  	// The time the execution started.
 41872  	StartTime *time.Time `type:"timestamp"`
 41873  
 41874  	// The status of the execution.
 41875  	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
 41876  
 41877  	// The details explaining the status. Not available for all status values.
 41878  	StatusDetails *string `type:"string"`
 41879  
 41880  	// The ID of the maintenance window execution.
 41881  	WindowExecutionId *string `min:"36" type:"string"`
 41882  
 41883  	// The ID of the maintenance window.
 41884  	WindowId *string `min:"20" type:"string"`
 41885  }
 41886  
 41887  // String returns the string representation.
 41888  //
 41889  // API parameter values that are decorated as "sensitive" in the API will not
 41890  // be included in the string output. The member name will be present, but the
 41891  // value will be replaced with "sensitive".
 41892  func (s MaintenanceWindowExecution) String() string {
 41893  	return awsutil.Prettify(s)
 41894  }
 41895  
 41896  // GoString returns the string representation.
 41897  //
 41898  // API parameter values that are decorated as "sensitive" in the API will not
 41899  // be included in the string output. The member name will be present, but the
 41900  // value will be replaced with "sensitive".
 41901  func (s MaintenanceWindowExecution) GoString() string {
 41902  	return s.String()
 41903  }
 41904  
 41905  // SetEndTime sets the EndTime field's value.
 41906  func (s *MaintenanceWindowExecution) SetEndTime(v time.Time) *MaintenanceWindowExecution {
 41907  	s.EndTime = &v
 41908  	return s
 41909  }
 41910  
 41911  // SetStartTime sets the StartTime field's value.
 41912  func (s *MaintenanceWindowExecution) SetStartTime(v time.Time) *MaintenanceWindowExecution {
 41913  	s.StartTime = &v
 41914  	return s
 41915  }
 41916  
 41917  // SetStatus sets the Status field's value.
 41918  func (s *MaintenanceWindowExecution) SetStatus(v string) *MaintenanceWindowExecution {
 41919  	s.Status = &v
 41920  	return s
 41921  }
 41922  
 41923  // SetStatusDetails sets the StatusDetails field's value.
 41924  func (s *MaintenanceWindowExecution) SetStatusDetails(v string) *MaintenanceWindowExecution {
 41925  	s.StatusDetails = &v
 41926  	return s
 41927  }
 41928  
 41929  // SetWindowExecutionId sets the WindowExecutionId field's value.
 41930  func (s *MaintenanceWindowExecution) SetWindowExecutionId(v string) *MaintenanceWindowExecution {
 41931  	s.WindowExecutionId = &v
 41932  	return s
 41933  }
 41934  
 41935  // SetWindowId sets the WindowId field's value.
 41936  func (s *MaintenanceWindowExecution) SetWindowId(v string) *MaintenanceWindowExecution {
 41937  	s.WindowId = &v
 41938  	return s
 41939  }
 41940  
 41941  // Information about a task execution performed as part of a maintenance window
 41942  // execution.
 41943  type MaintenanceWindowExecutionTaskIdentity struct {
 41944  	_ struct{} `type:"structure"`
 41945  
 41946  	// The time the task execution finished.
 41947  	EndTime *time.Time `type:"timestamp"`
 41948  
 41949  	// The time the task execution started.
 41950  	StartTime *time.Time `type:"timestamp"`
 41951  
 41952  	// The status of the task execution.
 41953  	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
 41954  
 41955  	// The details explaining the status of the task execution. Not available for
 41956  	// all status values.
 41957  	StatusDetails *string `type:"string"`
 41958  
 41959  	// The Amazon Resource Name (ARN) of the task that ran.
 41960  	TaskArn *string `min:"1" type:"string"`
 41961  
 41962  	// The ID of the specific task execution in the maintenance window execution.
 41963  	TaskExecutionId *string `min:"36" type:"string"`
 41964  
 41965  	// The type of task that ran.
 41966  	TaskType *string `type:"string" enum:"MaintenanceWindowTaskType"`
 41967  
 41968  	// The ID of the maintenance window execution that ran the task.
 41969  	WindowExecutionId *string `min:"36" type:"string"`
 41970  }
 41971  
 41972  // String returns the string representation.
 41973  //
 41974  // API parameter values that are decorated as "sensitive" in the API will not
 41975  // be included in the string output. The member name will be present, but the
 41976  // value will be replaced with "sensitive".
 41977  func (s MaintenanceWindowExecutionTaskIdentity) String() string {
 41978  	return awsutil.Prettify(s)
 41979  }
 41980  
 41981  // GoString returns the string representation.
 41982  //
 41983  // API parameter values that are decorated as "sensitive" in the API will not
 41984  // be included in the string output. The member name will be present, but the
 41985  // value will be replaced with "sensitive".
 41986  func (s MaintenanceWindowExecutionTaskIdentity) GoString() string {
 41987  	return s.String()
 41988  }
 41989  
 41990  // SetEndTime sets the EndTime field's value.
 41991  func (s *MaintenanceWindowExecutionTaskIdentity) SetEndTime(v time.Time) *MaintenanceWindowExecutionTaskIdentity {
 41992  	s.EndTime = &v
 41993  	return s
 41994  }
 41995  
 41996  // SetStartTime sets the StartTime field's value.
 41997  func (s *MaintenanceWindowExecutionTaskIdentity) SetStartTime(v time.Time) *MaintenanceWindowExecutionTaskIdentity {
 41998  	s.StartTime = &v
 41999  	return s
 42000  }
 42001  
 42002  // SetStatus sets the Status field's value.
 42003  func (s *MaintenanceWindowExecutionTaskIdentity) SetStatus(v string) *MaintenanceWindowExecutionTaskIdentity {
 42004  	s.Status = &v
 42005  	return s
 42006  }
 42007  
 42008  // SetStatusDetails sets the StatusDetails field's value.
 42009  func (s *MaintenanceWindowExecutionTaskIdentity) SetStatusDetails(v string) *MaintenanceWindowExecutionTaskIdentity {
 42010  	s.StatusDetails = &v
 42011  	return s
 42012  }
 42013  
 42014  // SetTaskArn sets the TaskArn field's value.
 42015  func (s *MaintenanceWindowExecutionTaskIdentity) SetTaskArn(v string) *MaintenanceWindowExecutionTaskIdentity {
 42016  	s.TaskArn = &v
 42017  	return s
 42018  }
 42019  
 42020  // SetTaskExecutionId sets the TaskExecutionId field's value.
 42021  func (s *MaintenanceWindowExecutionTaskIdentity) SetTaskExecutionId(v string) *MaintenanceWindowExecutionTaskIdentity {
 42022  	s.TaskExecutionId = &v
 42023  	return s
 42024  }
 42025  
 42026  // SetTaskType sets the TaskType field's value.
 42027  func (s *MaintenanceWindowExecutionTaskIdentity) SetTaskType(v string) *MaintenanceWindowExecutionTaskIdentity {
 42028  	s.TaskType = &v
 42029  	return s
 42030  }
 42031  
 42032  // SetWindowExecutionId sets the WindowExecutionId field's value.
 42033  func (s *MaintenanceWindowExecutionTaskIdentity) SetWindowExecutionId(v string) *MaintenanceWindowExecutionTaskIdentity {
 42034  	s.WindowExecutionId = &v
 42035  	return s
 42036  }
 42037  
 42038  // Describes the information about a task invocation for a particular target
 42039  // as part of a task execution performed as part of a maintenance window execution.
 42040  type MaintenanceWindowExecutionTaskInvocationIdentity struct {
 42041  	_ struct{} `type:"structure"`
 42042  
 42043  	// The time the invocation finished.
 42044  	EndTime *time.Time `type:"timestamp"`
 42045  
 42046  	// The ID of the action performed in the service that actually handled the task
 42047  	// invocation. If the task type is RUN_COMMAND, this value is the command ID.
 42048  	ExecutionId *string `type:"string"`
 42049  
 42050  	// The ID of the task invocation.
 42051  	InvocationId *string `min:"36" type:"string"`
 42052  
 42053  	// User-provided value that was specified when the target was registered with
 42054  	// the maintenance window. This was also included in any Amazon CloudWatch Events
 42055  	// events raised during the task invocation.
 42056  	//
 42057  	// OwnerInformation is a sensitive parameter and its value will be
 42058  	// replaced with "sensitive" in string returned by MaintenanceWindowExecutionTaskInvocationIdentity's
 42059  	// String and GoString methods.
 42060  	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
 42061  
 42062  	// The parameters that were provided for the invocation when it was run.
 42063  	//
 42064  	// Parameters is a sensitive parameter and its value will be
 42065  	// replaced with "sensitive" in string returned by MaintenanceWindowExecutionTaskInvocationIdentity's
 42066  	// String and GoString methods.
 42067  	Parameters *string `type:"string" sensitive:"true"`
 42068  
 42069  	// The time the invocation started.
 42070  	StartTime *time.Time `type:"timestamp"`
 42071  
 42072  	// The status of the task invocation.
 42073  	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
 42074  
 42075  	// The details explaining the status of the task invocation. Not available for
 42076  	// all status values.
 42077  	StatusDetails *string `type:"string"`
 42078  
 42079  	// The ID of the specific task execution in the maintenance window execution.
 42080  	TaskExecutionId *string `min:"36" type:"string"`
 42081  
 42082  	// The task type.
 42083  	TaskType *string `type:"string" enum:"MaintenanceWindowTaskType"`
 42084  
 42085  	// The ID of the maintenance window execution that ran the task.
 42086  	WindowExecutionId *string `min:"36" type:"string"`
 42087  
 42088  	// The ID of the target definition in this maintenance window the invocation
 42089  	// was performed for.
 42090  	WindowTargetId *string `type:"string"`
 42091  }
 42092  
 42093  // String returns the string representation.
 42094  //
 42095  // API parameter values that are decorated as "sensitive" in the API will not
 42096  // be included in the string output. The member name will be present, but the
 42097  // value will be replaced with "sensitive".
 42098  func (s MaintenanceWindowExecutionTaskInvocationIdentity) String() string {
 42099  	return awsutil.Prettify(s)
 42100  }
 42101  
 42102  // GoString returns the string representation.
 42103  //
 42104  // API parameter values that are decorated as "sensitive" in the API will not
 42105  // be included in the string output. The member name will be present, but the
 42106  // value will be replaced with "sensitive".
 42107  func (s MaintenanceWindowExecutionTaskInvocationIdentity) GoString() string {
 42108  	return s.String()
 42109  }
 42110  
 42111  // SetEndTime sets the EndTime field's value.
 42112  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetEndTime(v time.Time) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42113  	s.EndTime = &v
 42114  	return s
 42115  }
 42116  
 42117  // SetExecutionId sets the ExecutionId field's value.
 42118  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetExecutionId(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42119  	s.ExecutionId = &v
 42120  	return s
 42121  }
 42122  
 42123  // SetInvocationId sets the InvocationId field's value.
 42124  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetInvocationId(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42125  	s.InvocationId = &v
 42126  	return s
 42127  }
 42128  
 42129  // SetOwnerInformation sets the OwnerInformation field's value.
 42130  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetOwnerInformation(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42131  	s.OwnerInformation = &v
 42132  	return s
 42133  }
 42134  
 42135  // SetParameters sets the Parameters field's value.
 42136  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetParameters(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42137  	s.Parameters = &v
 42138  	return s
 42139  }
 42140  
 42141  // SetStartTime sets the StartTime field's value.
 42142  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetStartTime(v time.Time) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42143  	s.StartTime = &v
 42144  	return s
 42145  }
 42146  
 42147  // SetStatus sets the Status field's value.
 42148  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetStatus(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42149  	s.Status = &v
 42150  	return s
 42151  }
 42152  
 42153  // SetStatusDetails sets the StatusDetails field's value.
 42154  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetStatusDetails(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42155  	s.StatusDetails = &v
 42156  	return s
 42157  }
 42158  
 42159  // SetTaskExecutionId sets the TaskExecutionId field's value.
 42160  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetTaskExecutionId(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42161  	s.TaskExecutionId = &v
 42162  	return s
 42163  }
 42164  
 42165  // SetTaskType sets the TaskType field's value.
 42166  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetTaskType(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42167  	s.TaskType = &v
 42168  	return s
 42169  }
 42170  
 42171  // SetWindowExecutionId sets the WindowExecutionId field's value.
 42172  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetWindowExecutionId(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42173  	s.WindowExecutionId = &v
 42174  	return s
 42175  }
 42176  
 42177  // SetWindowTargetId sets the WindowTargetId field's value.
 42178  func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetWindowTargetId(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
 42179  	s.WindowTargetId = &v
 42180  	return s
 42181  }
 42182  
 42183  // Filter used in the request. Supported filter keys depend on the API operation
 42184  // that includes the filter. API operations that use MaintenanceWindowFilter>
 42185  // include the following:
 42186  //
 42187  //    * DescribeMaintenanceWindowExecutions
 42188  //
 42189  //    * DescribeMaintenanceWindowExecutionTaskInvocations
 42190  //
 42191  //    * DescribeMaintenanceWindowExecutionTasks
 42192  //
 42193  //    * DescribeMaintenanceWindows
 42194  //
 42195  //    * DescribeMaintenanceWindowTargets
 42196  //
 42197  //    * DescribeMaintenanceWindowTasks
 42198  type MaintenanceWindowFilter struct {
 42199  	_ struct{} `type:"structure"`
 42200  
 42201  	// The name of the filter.
 42202  	Key *string `min:"1" type:"string"`
 42203  
 42204  	// The filter values.
 42205  	Values []*string `type:"list"`
 42206  }
 42207  
 42208  // String returns the string representation.
 42209  //
 42210  // API parameter values that are decorated as "sensitive" in the API will not
 42211  // be included in the string output. The member name will be present, but the
 42212  // value will be replaced with "sensitive".
 42213  func (s MaintenanceWindowFilter) String() string {
 42214  	return awsutil.Prettify(s)
 42215  }
 42216  
 42217  // GoString returns the string representation.
 42218  //
 42219  // API parameter values that are decorated as "sensitive" in the API will not
 42220  // be included in the string output. The member name will be present, but the
 42221  // value will be replaced with "sensitive".
 42222  func (s MaintenanceWindowFilter) GoString() string {
 42223  	return s.String()
 42224  }
 42225  
 42226  // Validate inspects the fields of the type to determine if they are valid.
 42227  func (s *MaintenanceWindowFilter) Validate() error {
 42228  	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowFilter"}
 42229  	if s.Key != nil && len(*s.Key) < 1 {
 42230  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 42231  	}
 42232  
 42233  	if invalidParams.Len() > 0 {
 42234  		return invalidParams
 42235  	}
 42236  	return nil
 42237  }
 42238  
 42239  // SetKey sets the Key field's value.
 42240  func (s *MaintenanceWindowFilter) SetKey(v string) *MaintenanceWindowFilter {
 42241  	s.Key = &v
 42242  	return s
 42243  }
 42244  
 42245  // SetValues sets the Values field's value.
 42246  func (s *MaintenanceWindowFilter) SetValues(v []*string) *MaintenanceWindowFilter {
 42247  	s.Values = v
 42248  	return s
 42249  }
 42250  
 42251  // Information about the maintenance window.
 42252  type MaintenanceWindowIdentity struct {
 42253  	_ struct{} `type:"structure"`
 42254  
 42255  	// The number of hours before the end of the maintenance window that Amazon
 42256  	// Web Services Systems Manager stops scheduling new tasks for execution.
 42257  	Cutoff *int64 `type:"integer"`
 42258  
 42259  	// A description of the maintenance window.
 42260  	//
 42261  	// Description is a sensitive parameter and its value will be
 42262  	// replaced with "sensitive" in string returned by MaintenanceWindowIdentity's
 42263  	// String and GoString methods.
 42264  	Description *string `min:"1" type:"string" sensitive:"true"`
 42265  
 42266  	// The duration of the maintenance window in hours.
 42267  	Duration *int64 `min:"1" type:"integer"`
 42268  
 42269  	// Indicates whether the maintenance window is enabled.
 42270  	Enabled *bool `type:"boolean"`
 42271  
 42272  	// The date and time, in ISO-8601 Extended format, for when the maintenance
 42273  	// window is scheduled to become inactive.
 42274  	EndDate *string `type:"string"`
 42275  
 42276  	// The name of the maintenance window.
 42277  	Name *string `min:"3" type:"string"`
 42278  
 42279  	// The next time the maintenance window will actually run, taking into account
 42280  	// any specified times for the maintenance window to become active or inactive.
 42281  	NextExecutionTime *string `type:"string"`
 42282  
 42283  	// The schedule of the maintenance window in the form of a cron or rate expression.
 42284  	Schedule *string `min:"1" type:"string"`
 42285  
 42286  	// The number of days to wait to run a maintenance window after the scheduled
 42287  	// cron expression date and time.
 42288  	ScheduleOffset *int64 `min:"1" type:"integer"`
 42289  
 42290  	// The time zone that the scheduled maintenance window executions are based
 42291  	// on, in Internet Assigned Numbers Authority (IANA) format.
 42292  	ScheduleTimezone *string `type:"string"`
 42293  
 42294  	// The date and time, in ISO-8601 Extended format, for when the maintenance
 42295  	// window is scheduled to become active.
 42296  	StartDate *string `type:"string"`
 42297  
 42298  	// The ID of the maintenance window.
 42299  	WindowId *string `min:"20" type:"string"`
 42300  }
 42301  
 42302  // String returns the string representation.
 42303  //
 42304  // API parameter values that are decorated as "sensitive" in the API will not
 42305  // be included in the string output. The member name will be present, but the
 42306  // value will be replaced with "sensitive".
 42307  func (s MaintenanceWindowIdentity) String() string {
 42308  	return awsutil.Prettify(s)
 42309  }
 42310  
 42311  // GoString returns the string representation.
 42312  //
 42313  // API parameter values that are decorated as "sensitive" in the API will not
 42314  // be included in the string output. The member name will be present, but the
 42315  // value will be replaced with "sensitive".
 42316  func (s MaintenanceWindowIdentity) GoString() string {
 42317  	return s.String()
 42318  }
 42319  
 42320  // SetCutoff sets the Cutoff field's value.
 42321  func (s *MaintenanceWindowIdentity) SetCutoff(v int64) *MaintenanceWindowIdentity {
 42322  	s.Cutoff = &v
 42323  	return s
 42324  }
 42325  
 42326  // SetDescription sets the Description field's value.
 42327  func (s *MaintenanceWindowIdentity) SetDescription(v string) *MaintenanceWindowIdentity {
 42328  	s.Description = &v
 42329  	return s
 42330  }
 42331  
 42332  // SetDuration sets the Duration field's value.
 42333  func (s *MaintenanceWindowIdentity) SetDuration(v int64) *MaintenanceWindowIdentity {
 42334  	s.Duration = &v
 42335  	return s
 42336  }
 42337  
 42338  // SetEnabled sets the Enabled field's value.
 42339  func (s *MaintenanceWindowIdentity) SetEnabled(v bool) *MaintenanceWindowIdentity {
 42340  	s.Enabled = &v
 42341  	return s
 42342  }
 42343  
 42344  // SetEndDate sets the EndDate field's value.
 42345  func (s *MaintenanceWindowIdentity) SetEndDate(v string) *MaintenanceWindowIdentity {
 42346  	s.EndDate = &v
 42347  	return s
 42348  }
 42349  
 42350  // SetName sets the Name field's value.
 42351  func (s *MaintenanceWindowIdentity) SetName(v string) *MaintenanceWindowIdentity {
 42352  	s.Name = &v
 42353  	return s
 42354  }
 42355  
 42356  // SetNextExecutionTime sets the NextExecutionTime field's value.
 42357  func (s *MaintenanceWindowIdentity) SetNextExecutionTime(v string) *MaintenanceWindowIdentity {
 42358  	s.NextExecutionTime = &v
 42359  	return s
 42360  }
 42361  
 42362  // SetSchedule sets the Schedule field's value.
 42363  func (s *MaintenanceWindowIdentity) SetSchedule(v string) *MaintenanceWindowIdentity {
 42364  	s.Schedule = &v
 42365  	return s
 42366  }
 42367  
 42368  // SetScheduleOffset sets the ScheduleOffset field's value.
 42369  func (s *MaintenanceWindowIdentity) SetScheduleOffset(v int64) *MaintenanceWindowIdentity {
 42370  	s.ScheduleOffset = &v
 42371  	return s
 42372  }
 42373  
 42374  // SetScheduleTimezone sets the ScheduleTimezone field's value.
 42375  func (s *MaintenanceWindowIdentity) SetScheduleTimezone(v string) *MaintenanceWindowIdentity {
 42376  	s.ScheduleTimezone = &v
 42377  	return s
 42378  }
 42379  
 42380  // SetStartDate sets the StartDate field's value.
 42381  func (s *MaintenanceWindowIdentity) SetStartDate(v string) *MaintenanceWindowIdentity {
 42382  	s.StartDate = &v
 42383  	return s
 42384  }
 42385  
 42386  // SetWindowId sets the WindowId field's value.
 42387  func (s *MaintenanceWindowIdentity) SetWindowId(v string) *MaintenanceWindowIdentity {
 42388  	s.WindowId = &v
 42389  	return s
 42390  }
 42391  
 42392  // The maintenance window to which the specified target belongs.
 42393  type MaintenanceWindowIdentityForTarget struct {
 42394  	_ struct{} `type:"structure"`
 42395  
 42396  	// The name of the maintenance window.
 42397  	Name *string `min:"3" type:"string"`
 42398  
 42399  	// The ID of the maintenance window.
 42400  	WindowId *string `min:"20" type:"string"`
 42401  }
 42402  
 42403  // String returns the string representation.
 42404  //
 42405  // API parameter values that are decorated as "sensitive" in the API will not
 42406  // be included in the string output. The member name will be present, but the
 42407  // value will be replaced with "sensitive".
 42408  func (s MaintenanceWindowIdentityForTarget) String() string {
 42409  	return awsutil.Prettify(s)
 42410  }
 42411  
 42412  // GoString returns the string representation.
 42413  //
 42414  // API parameter values that are decorated as "sensitive" in the API will not
 42415  // be included in the string output. The member name will be present, but the
 42416  // value will be replaced with "sensitive".
 42417  func (s MaintenanceWindowIdentityForTarget) GoString() string {
 42418  	return s.String()
 42419  }
 42420  
 42421  // SetName sets the Name field's value.
 42422  func (s *MaintenanceWindowIdentityForTarget) SetName(v string) *MaintenanceWindowIdentityForTarget {
 42423  	s.Name = &v
 42424  	return s
 42425  }
 42426  
 42427  // SetWindowId sets the WindowId field's value.
 42428  func (s *MaintenanceWindowIdentityForTarget) SetWindowId(v string) *MaintenanceWindowIdentityForTarget {
 42429  	s.WindowId = &v
 42430  	return s
 42431  }
 42432  
 42433  // The parameters for a LAMBDA task type.
 42434  //
 42435  // For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow
 42436  // and UpdateMaintenanceWindowTask.
 42437  //
 42438  // LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
 42439  // (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
 42440  // OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
 42441  // information about how Amazon Web Services Systems Manager handles these options
 42442  // for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 42443  //
 42444  // TaskParameters has been deprecated. To specify parameters to pass to a task
 42445  // when it runs, instead use the Parameters option in the TaskInvocationParameters
 42446  // structure. For information about how Systems Manager handles these options
 42447  // for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 42448  //
 42449  // For Lambda tasks, Systems Manager ignores any values specified for TaskParameters
 42450  // and LoggingInfo.
 42451  type MaintenanceWindowLambdaParameters struct {
 42452  	_ struct{} `type:"structure"`
 42453  
 42454  	// Pass client-specific information to the Lambda function that you are invoking.
 42455  	// You can then process the client information in your Lambda function as you
 42456  	// choose through the context variable.
 42457  	ClientContext *string `min:"1" type:"string"`
 42458  
 42459  	// JSON to provide to your Lambda function as input.
 42460  	//
 42461  	// Payload is a sensitive parameter and its value will be
 42462  	// replaced with "sensitive" in string returned by MaintenanceWindowLambdaParameters's
 42463  	// String and GoString methods.
 42464  	//
 42465  	// Payload is automatically base64 encoded/decoded by the SDK.
 42466  	Payload []byte `type:"blob" sensitive:"true"`
 42467  
 42468  	// (Optional) Specify an Lambda function version or alias name. If you specify
 42469  	// a function version, the operation uses the qualified function Amazon Resource
 42470  	// Name (ARN) to invoke a specific Lambda function. If you specify an alias
 42471  	// name, the operation uses the alias ARN to invoke the Lambda function version
 42472  	// to which the alias points.
 42473  	Qualifier *string `min:"1" type:"string"`
 42474  }
 42475  
 42476  // String returns the string representation.
 42477  //
 42478  // API parameter values that are decorated as "sensitive" in the API will not
 42479  // be included in the string output. The member name will be present, but the
 42480  // value will be replaced with "sensitive".
 42481  func (s MaintenanceWindowLambdaParameters) String() string {
 42482  	return awsutil.Prettify(s)
 42483  }
 42484  
 42485  // GoString returns the string representation.
 42486  //
 42487  // API parameter values that are decorated as "sensitive" in the API will not
 42488  // be included in the string output. The member name will be present, but the
 42489  // value will be replaced with "sensitive".
 42490  func (s MaintenanceWindowLambdaParameters) GoString() string {
 42491  	return s.String()
 42492  }
 42493  
 42494  // Validate inspects the fields of the type to determine if they are valid.
 42495  func (s *MaintenanceWindowLambdaParameters) Validate() error {
 42496  	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowLambdaParameters"}
 42497  	if s.ClientContext != nil && len(*s.ClientContext) < 1 {
 42498  		invalidParams.Add(request.NewErrParamMinLen("ClientContext", 1))
 42499  	}
 42500  	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
 42501  		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
 42502  	}
 42503  
 42504  	if invalidParams.Len() > 0 {
 42505  		return invalidParams
 42506  	}
 42507  	return nil
 42508  }
 42509  
 42510  // SetClientContext sets the ClientContext field's value.
 42511  func (s *MaintenanceWindowLambdaParameters) SetClientContext(v string) *MaintenanceWindowLambdaParameters {
 42512  	s.ClientContext = &v
 42513  	return s
 42514  }
 42515  
 42516  // SetPayload sets the Payload field's value.
 42517  func (s *MaintenanceWindowLambdaParameters) SetPayload(v []byte) *MaintenanceWindowLambdaParameters {
 42518  	s.Payload = v
 42519  	return s
 42520  }
 42521  
 42522  // SetQualifier sets the Qualifier field's value.
 42523  func (s *MaintenanceWindowLambdaParameters) SetQualifier(v string) *MaintenanceWindowLambdaParameters {
 42524  	s.Qualifier = &v
 42525  	return s
 42526  }
 42527  
 42528  // The parameters for a RUN_COMMAND task type.
 42529  //
 42530  // For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow
 42531  // and UpdateMaintenanceWindowTask.
 42532  //
 42533  // LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
 42534  // (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
 42535  // OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
 42536  // information about how Amazon Web Services Systems Manager handles these options
 42537  // for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 42538  //
 42539  // TaskParameters has been deprecated. To specify parameters to pass to a task
 42540  // when it runs, instead use the Parameters option in the TaskInvocationParameters
 42541  // structure. For information about how Systems Manager handles these options
 42542  // for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 42543  //
 42544  // For RUN_COMMAND tasks, Systems Manager uses specified values for TaskParameters
 42545  // and LoggingInfo only if no values are specified for TaskInvocationParameters.
 42546  type MaintenanceWindowRunCommandParameters struct {
 42547  	_ struct{} `type:"structure"`
 42548  
 42549  	// Configuration options for sending command output to Amazon CloudWatch Logs.
 42550  	CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"`
 42551  
 42552  	// Information about the commands to run.
 42553  	Comment *string `type:"string"`
 42554  
 42555  	// The SHA-256 or SHA-1 hash created by the system when the document was created.
 42556  	// SHA-1 hashes have been deprecated.
 42557  	DocumentHash *string `type:"string"`
 42558  
 42559  	// SHA-256 or SHA-1. SHA-1 hashes have been deprecated.
 42560  	DocumentHashType *string `type:"string" enum:"DocumentHashType"`
 42561  
 42562  	// The Amazon Web Services Systems Manager document (SSM document) version to
 42563  	// use in the request. You can specify $DEFAULT, $LATEST, or a specific version
 42564  	// number. If you run commands by using the Amazon Web Services CLI, then you
 42565  	// must escape the first two options by using a backslash. If you specify a
 42566  	// version number, then you don't need to use the backslash. For example:
 42567  	//
 42568  	// --document-version "\$DEFAULT"
 42569  	//
 42570  	// --document-version "\$LATEST"
 42571  	//
 42572  	// --document-version "3"
 42573  	DocumentVersion *string `type:"string"`
 42574  
 42575  	// Configurations for sending notifications about command status changes on
 42576  	// a per-instance basis.
 42577  	NotificationConfig *NotificationConfig `type:"structure"`
 42578  
 42579  	// The name of the Amazon Simple Storage Service (Amazon S3) bucket.
 42580  	OutputS3BucketName *string `min:"3" type:"string"`
 42581  
 42582  	// The S3 bucket subfolder.
 42583  	OutputS3KeyPrefix *string `type:"string"`
 42584  
 42585  	// The parameters for the RUN_COMMAND task execution.
 42586  	Parameters map[string][]*string `type:"map"`
 42587  
 42588  	// The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
 42589  	// service role to use to publish Amazon Simple Notification Service (Amazon
 42590  	// SNS) notifications for maintenance window Run Command tasks.
 42591  	ServiceRoleArn *string `type:"string"`
 42592  
 42593  	// If this time is reached and the command hasn't already started running, it
 42594  	// doesn't run.
 42595  	TimeoutSeconds *int64 `min:"30" type:"integer"`
 42596  }
 42597  
 42598  // String returns the string representation.
 42599  //
 42600  // API parameter values that are decorated as "sensitive" in the API will not
 42601  // be included in the string output. The member name will be present, but the
 42602  // value will be replaced with "sensitive".
 42603  func (s MaintenanceWindowRunCommandParameters) String() string {
 42604  	return awsutil.Prettify(s)
 42605  }
 42606  
 42607  // GoString returns the string representation.
 42608  //
 42609  // API parameter values that are decorated as "sensitive" in the API will not
 42610  // be included in the string output. The member name will be present, but the
 42611  // value will be replaced with "sensitive".
 42612  func (s MaintenanceWindowRunCommandParameters) GoString() string {
 42613  	return s.String()
 42614  }
 42615  
 42616  // Validate inspects the fields of the type to determine if they are valid.
 42617  func (s *MaintenanceWindowRunCommandParameters) Validate() error {
 42618  	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowRunCommandParameters"}
 42619  	if s.OutputS3BucketName != nil && len(*s.OutputS3BucketName) < 3 {
 42620  		invalidParams.Add(request.NewErrParamMinLen("OutputS3BucketName", 3))
 42621  	}
 42622  	if s.TimeoutSeconds != nil && *s.TimeoutSeconds < 30 {
 42623  		invalidParams.Add(request.NewErrParamMinValue("TimeoutSeconds", 30))
 42624  	}
 42625  	if s.CloudWatchOutputConfig != nil {
 42626  		if err := s.CloudWatchOutputConfig.Validate(); err != nil {
 42627  			invalidParams.AddNested("CloudWatchOutputConfig", err.(request.ErrInvalidParams))
 42628  		}
 42629  	}
 42630  
 42631  	if invalidParams.Len() > 0 {
 42632  		return invalidParams
 42633  	}
 42634  	return nil
 42635  }
 42636  
 42637  // SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value.
 42638  func (s *MaintenanceWindowRunCommandParameters) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *MaintenanceWindowRunCommandParameters {
 42639  	s.CloudWatchOutputConfig = v
 42640  	return s
 42641  }
 42642  
 42643  // SetComment sets the Comment field's value.
 42644  func (s *MaintenanceWindowRunCommandParameters) SetComment(v string) *MaintenanceWindowRunCommandParameters {
 42645  	s.Comment = &v
 42646  	return s
 42647  }
 42648  
 42649  // SetDocumentHash sets the DocumentHash field's value.
 42650  func (s *MaintenanceWindowRunCommandParameters) SetDocumentHash(v string) *MaintenanceWindowRunCommandParameters {
 42651  	s.DocumentHash = &v
 42652  	return s
 42653  }
 42654  
 42655  // SetDocumentHashType sets the DocumentHashType field's value.
 42656  func (s *MaintenanceWindowRunCommandParameters) SetDocumentHashType(v string) *MaintenanceWindowRunCommandParameters {
 42657  	s.DocumentHashType = &v
 42658  	return s
 42659  }
 42660  
 42661  // SetDocumentVersion sets the DocumentVersion field's value.
 42662  func (s *MaintenanceWindowRunCommandParameters) SetDocumentVersion(v string) *MaintenanceWindowRunCommandParameters {
 42663  	s.DocumentVersion = &v
 42664  	return s
 42665  }
 42666  
 42667  // SetNotificationConfig sets the NotificationConfig field's value.
 42668  func (s *MaintenanceWindowRunCommandParameters) SetNotificationConfig(v *NotificationConfig) *MaintenanceWindowRunCommandParameters {
 42669  	s.NotificationConfig = v
 42670  	return s
 42671  }
 42672  
 42673  // SetOutputS3BucketName sets the OutputS3BucketName field's value.
 42674  func (s *MaintenanceWindowRunCommandParameters) SetOutputS3BucketName(v string) *MaintenanceWindowRunCommandParameters {
 42675  	s.OutputS3BucketName = &v
 42676  	return s
 42677  }
 42678  
 42679  // SetOutputS3KeyPrefix sets the OutputS3KeyPrefix field's value.
 42680  func (s *MaintenanceWindowRunCommandParameters) SetOutputS3KeyPrefix(v string) *MaintenanceWindowRunCommandParameters {
 42681  	s.OutputS3KeyPrefix = &v
 42682  	return s
 42683  }
 42684  
 42685  // SetParameters sets the Parameters field's value.
 42686  func (s *MaintenanceWindowRunCommandParameters) SetParameters(v map[string][]*string) *MaintenanceWindowRunCommandParameters {
 42687  	s.Parameters = v
 42688  	return s
 42689  }
 42690  
 42691  // SetServiceRoleArn sets the ServiceRoleArn field's value.
 42692  func (s *MaintenanceWindowRunCommandParameters) SetServiceRoleArn(v string) *MaintenanceWindowRunCommandParameters {
 42693  	s.ServiceRoleArn = &v
 42694  	return s
 42695  }
 42696  
 42697  // SetTimeoutSeconds sets the TimeoutSeconds field's value.
 42698  func (s *MaintenanceWindowRunCommandParameters) SetTimeoutSeconds(v int64) *MaintenanceWindowRunCommandParameters {
 42699  	s.TimeoutSeconds = &v
 42700  	return s
 42701  }
 42702  
 42703  // The parameters for a STEP_FUNCTIONS task.
 42704  //
 42705  // For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow
 42706  // and UpdateMaintenanceWindowTask.
 42707  //
 42708  // LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
 42709  // (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
 42710  // OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
 42711  // information about how Amazon Web Services Systems Manager handles these options
 42712  // for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 42713  //
 42714  // TaskParameters has been deprecated. To specify parameters to pass to a task
 42715  // when it runs, instead use the Parameters option in the TaskInvocationParameters
 42716  // structure. For information about how Systems Manager handles these options
 42717  // for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 42718  //
 42719  // For Step Functions tasks, Systems Manager ignores any values specified for
 42720  // TaskParameters and LoggingInfo.
 42721  type MaintenanceWindowStepFunctionsParameters struct {
 42722  	_ struct{} `type:"structure"`
 42723  
 42724  	// The inputs for the STEP_FUNCTIONS task.
 42725  	//
 42726  	// Input is a sensitive parameter and its value will be
 42727  	// replaced with "sensitive" in string returned by MaintenanceWindowStepFunctionsParameters's
 42728  	// String and GoString methods.
 42729  	Input *string `type:"string" sensitive:"true"`
 42730  
 42731  	// The name of the STEP_FUNCTIONS task.
 42732  	Name *string `min:"1" type:"string"`
 42733  }
 42734  
 42735  // String returns the string representation.
 42736  //
 42737  // API parameter values that are decorated as "sensitive" in the API will not
 42738  // be included in the string output. The member name will be present, but the
 42739  // value will be replaced with "sensitive".
 42740  func (s MaintenanceWindowStepFunctionsParameters) String() string {
 42741  	return awsutil.Prettify(s)
 42742  }
 42743  
 42744  // GoString returns the string representation.
 42745  //
 42746  // API parameter values that are decorated as "sensitive" in the API will not
 42747  // be included in the string output. The member name will be present, but the
 42748  // value will be replaced with "sensitive".
 42749  func (s MaintenanceWindowStepFunctionsParameters) GoString() string {
 42750  	return s.String()
 42751  }
 42752  
 42753  // Validate inspects the fields of the type to determine if they are valid.
 42754  func (s *MaintenanceWindowStepFunctionsParameters) Validate() error {
 42755  	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowStepFunctionsParameters"}
 42756  	if s.Name != nil && len(*s.Name) < 1 {
 42757  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 42758  	}
 42759  
 42760  	if invalidParams.Len() > 0 {
 42761  		return invalidParams
 42762  	}
 42763  	return nil
 42764  }
 42765  
 42766  // SetInput sets the Input field's value.
 42767  func (s *MaintenanceWindowStepFunctionsParameters) SetInput(v string) *MaintenanceWindowStepFunctionsParameters {
 42768  	s.Input = &v
 42769  	return s
 42770  }
 42771  
 42772  // SetName sets the Name field's value.
 42773  func (s *MaintenanceWindowStepFunctionsParameters) SetName(v string) *MaintenanceWindowStepFunctionsParameters {
 42774  	s.Name = &v
 42775  	return s
 42776  }
 42777  
 42778  // The target registered with the maintenance window.
 42779  type MaintenanceWindowTarget struct {
 42780  	_ struct{} `type:"structure"`
 42781  
 42782  	// A description for the target.
 42783  	//
 42784  	// Description is a sensitive parameter and its value will be
 42785  	// replaced with "sensitive" in string returned by MaintenanceWindowTarget's
 42786  	// String and GoString methods.
 42787  	Description *string `min:"1" type:"string" sensitive:"true"`
 42788  
 42789  	// The name for the maintenance window target.
 42790  	Name *string `min:"3" type:"string"`
 42791  
 42792  	// A user-provided value that will be included in any Amazon CloudWatch Events
 42793  	// events that are raised while running tasks for these targets in this maintenance
 42794  	// window.
 42795  	//
 42796  	// OwnerInformation is a sensitive parameter and its value will be
 42797  	// replaced with "sensitive" in string returned by MaintenanceWindowTarget's
 42798  	// String and GoString methods.
 42799  	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
 42800  
 42801  	// The type of target that is being registered with the maintenance window.
 42802  	ResourceType *string `type:"string" enum:"MaintenanceWindowResourceType"`
 42803  
 42804  	// The targets, either instances or tags.
 42805  	//
 42806  	// Specify instances using the following format:
 42807  	//
 42808  	// Key=instanceids,Values=<instanceid1>,<instanceid2>
 42809  	//
 42810  	// Tags are specified using the following format:
 42811  	//
 42812  	// Key=<tag name>,Values=<tag value>.
 42813  	Targets []*Target `type:"list"`
 42814  
 42815  	// The ID of the maintenance window to register the target with.
 42816  	WindowId *string `min:"20" type:"string"`
 42817  
 42818  	// The ID of the target.
 42819  	WindowTargetId *string `min:"36" type:"string"`
 42820  }
 42821  
 42822  // String returns the string representation.
 42823  //
 42824  // API parameter values that are decorated as "sensitive" in the API will not
 42825  // be included in the string output. The member name will be present, but the
 42826  // value will be replaced with "sensitive".
 42827  func (s MaintenanceWindowTarget) String() string {
 42828  	return awsutil.Prettify(s)
 42829  }
 42830  
 42831  // GoString returns the string representation.
 42832  //
 42833  // API parameter values that are decorated as "sensitive" in the API will not
 42834  // be included in the string output. The member name will be present, but the
 42835  // value will be replaced with "sensitive".
 42836  func (s MaintenanceWindowTarget) GoString() string {
 42837  	return s.String()
 42838  }
 42839  
 42840  // SetDescription sets the Description field's value.
 42841  func (s *MaintenanceWindowTarget) SetDescription(v string) *MaintenanceWindowTarget {
 42842  	s.Description = &v
 42843  	return s
 42844  }
 42845  
 42846  // SetName sets the Name field's value.
 42847  func (s *MaintenanceWindowTarget) SetName(v string) *MaintenanceWindowTarget {
 42848  	s.Name = &v
 42849  	return s
 42850  }
 42851  
 42852  // SetOwnerInformation sets the OwnerInformation field's value.
 42853  func (s *MaintenanceWindowTarget) SetOwnerInformation(v string) *MaintenanceWindowTarget {
 42854  	s.OwnerInformation = &v
 42855  	return s
 42856  }
 42857  
 42858  // SetResourceType sets the ResourceType field's value.
 42859  func (s *MaintenanceWindowTarget) SetResourceType(v string) *MaintenanceWindowTarget {
 42860  	s.ResourceType = &v
 42861  	return s
 42862  }
 42863  
 42864  // SetTargets sets the Targets field's value.
 42865  func (s *MaintenanceWindowTarget) SetTargets(v []*Target) *MaintenanceWindowTarget {
 42866  	s.Targets = v
 42867  	return s
 42868  }
 42869  
 42870  // SetWindowId sets the WindowId field's value.
 42871  func (s *MaintenanceWindowTarget) SetWindowId(v string) *MaintenanceWindowTarget {
 42872  	s.WindowId = &v
 42873  	return s
 42874  }
 42875  
 42876  // SetWindowTargetId sets the WindowTargetId field's value.
 42877  func (s *MaintenanceWindowTarget) SetWindowTargetId(v string) *MaintenanceWindowTarget {
 42878  	s.WindowTargetId = &v
 42879  	return s
 42880  }
 42881  
 42882  // Information about a task defined for a maintenance window.
 42883  type MaintenanceWindowTask struct {
 42884  	_ struct{} `type:"structure"`
 42885  
 42886  	// The specification for whether tasks should continue to run after the cutoff
 42887  	// time specified in the maintenance windows is reached.
 42888  	CutoffBehavior *string `type:"string" enum:"MaintenanceWindowTaskCutoffBehavior"`
 42889  
 42890  	// A description of the task.
 42891  	//
 42892  	// Description is a sensitive parameter and its value will be
 42893  	// replaced with "sensitive" in string returned by MaintenanceWindowTask's
 42894  	// String and GoString methods.
 42895  	Description *string `min:"1" type:"string" sensitive:"true"`
 42896  
 42897  	// Information about an S3 bucket to write task-level logs to.
 42898  	//
 42899  	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
 42900  	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
 42901  	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
 42902  	// information about how Amazon Web Services Systems Manager handles these options
 42903  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 42904  	LoggingInfo *LoggingInfo `type:"structure"`
 42905  
 42906  	// The maximum number of targets this task can be run for, in parallel.
 42907  	MaxConcurrency *string `min:"1" type:"string"`
 42908  
 42909  	// The maximum number of errors allowed before this task stops being scheduled.
 42910  	MaxErrors *string `min:"1" type:"string"`
 42911  
 42912  	// The task name.
 42913  	Name *string `min:"3" type:"string"`
 42914  
 42915  	// The priority of the task in the maintenance window. The lower the number,
 42916  	// the higher the priority. Tasks that have the same priority are scheduled
 42917  	// in parallel.
 42918  	Priority *int64 `type:"integer"`
 42919  
 42920  	// The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
 42921  	// service role to use to publish Amazon Simple Notification Service (Amazon
 42922  	// SNS) notifications for maintenance window Run Command tasks.
 42923  	ServiceRoleArn *string `type:"string"`
 42924  
 42925  	// The targets (either instances or tags). Instances are specified using Key=instanceids,Values=<instanceid1>,<instanceid2>.
 42926  	// Tags are specified using Key=<tag name>,Values=<tag value>.
 42927  	Targets []*Target `type:"list"`
 42928  
 42929  	// The resource that the task uses during execution. For RUN_COMMAND and AUTOMATION
 42930  	// task types, TaskArn is the Amazon Web Services Systems Manager (SSM document)
 42931  	// name or ARN. For LAMBDA tasks, it's the function name or ARN. For STEP_FUNCTIONS
 42932  	// tasks, it's the state machine ARN.
 42933  	TaskArn *string `min:"1" type:"string"`
 42934  
 42935  	// The parameters that should be passed to the task when it is run.
 42936  	//
 42937  	// TaskParameters has been deprecated. To specify parameters to pass to a task
 42938  	// when it runs, instead use the Parameters option in the TaskInvocationParameters
 42939  	// structure. For information about how Systems Manager handles these options
 42940  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 42941  	//
 42942  	// TaskParameters is a sensitive parameter and its value will be
 42943  	// replaced with "sensitive" in string returned by MaintenanceWindowTask's
 42944  	// String and GoString methods.
 42945  	TaskParameters map[string]*MaintenanceWindowTaskParameterValueExpression `type:"map" sensitive:"true"`
 42946  
 42947  	// The type of task.
 42948  	Type *string `type:"string" enum:"MaintenanceWindowTaskType"`
 42949  
 42950  	// The ID of the maintenance window where the task is registered.
 42951  	WindowId *string `min:"20" type:"string"`
 42952  
 42953  	// The task ID.
 42954  	WindowTaskId *string `min:"36" type:"string"`
 42955  }
 42956  
 42957  // String returns the string representation.
 42958  //
 42959  // API parameter values that are decorated as "sensitive" in the API will not
 42960  // be included in the string output. The member name will be present, but the
 42961  // value will be replaced with "sensitive".
 42962  func (s MaintenanceWindowTask) String() string {
 42963  	return awsutil.Prettify(s)
 42964  }
 42965  
 42966  // GoString returns the string representation.
 42967  //
 42968  // API parameter values that are decorated as "sensitive" in the API will not
 42969  // be included in the string output. The member name will be present, but the
 42970  // value will be replaced with "sensitive".
 42971  func (s MaintenanceWindowTask) GoString() string {
 42972  	return s.String()
 42973  }
 42974  
 42975  // SetCutoffBehavior sets the CutoffBehavior field's value.
 42976  func (s *MaintenanceWindowTask) SetCutoffBehavior(v string) *MaintenanceWindowTask {
 42977  	s.CutoffBehavior = &v
 42978  	return s
 42979  }
 42980  
 42981  // SetDescription sets the Description field's value.
 42982  func (s *MaintenanceWindowTask) SetDescription(v string) *MaintenanceWindowTask {
 42983  	s.Description = &v
 42984  	return s
 42985  }
 42986  
 42987  // SetLoggingInfo sets the LoggingInfo field's value.
 42988  func (s *MaintenanceWindowTask) SetLoggingInfo(v *LoggingInfo) *MaintenanceWindowTask {
 42989  	s.LoggingInfo = v
 42990  	return s
 42991  }
 42992  
 42993  // SetMaxConcurrency sets the MaxConcurrency field's value.
 42994  func (s *MaintenanceWindowTask) SetMaxConcurrency(v string) *MaintenanceWindowTask {
 42995  	s.MaxConcurrency = &v
 42996  	return s
 42997  }
 42998  
 42999  // SetMaxErrors sets the MaxErrors field's value.
 43000  func (s *MaintenanceWindowTask) SetMaxErrors(v string) *MaintenanceWindowTask {
 43001  	s.MaxErrors = &v
 43002  	return s
 43003  }
 43004  
 43005  // SetName sets the Name field's value.
 43006  func (s *MaintenanceWindowTask) SetName(v string) *MaintenanceWindowTask {
 43007  	s.Name = &v
 43008  	return s
 43009  }
 43010  
 43011  // SetPriority sets the Priority field's value.
 43012  func (s *MaintenanceWindowTask) SetPriority(v int64) *MaintenanceWindowTask {
 43013  	s.Priority = &v
 43014  	return s
 43015  }
 43016  
 43017  // SetServiceRoleArn sets the ServiceRoleArn field's value.
 43018  func (s *MaintenanceWindowTask) SetServiceRoleArn(v string) *MaintenanceWindowTask {
 43019  	s.ServiceRoleArn = &v
 43020  	return s
 43021  }
 43022  
 43023  // SetTargets sets the Targets field's value.
 43024  func (s *MaintenanceWindowTask) SetTargets(v []*Target) *MaintenanceWindowTask {
 43025  	s.Targets = v
 43026  	return s
 43027  }
 43028  
 43029  // SetTaskArn sets the TaskArn field's value.
 43030  func (s *MaintenanceWindowTask) SetTaskArn(v string) *MaintenanceWindowTask {
 43031  	s.TaskArn = &v
 43032  	return s
 43033  }
 43034  
 43035  // SetTaskParameters sets the TaskParameters field's value.
 43036  func (s *MaintenanceWindowTask) SetTaskParameters(v map[string]*MaintenanceWindowTaskParameterValueExpression) *MaintenanceWindowTask {
 43037  	s.TaskParameters = v
 43038  	return s
 43039  }
 43040  
 43041  // SetType sets the Type field's value.
 43042  func (s *MaintenanceWindowTask) SetType(v string) *MaintenanceWindowTask {
 43043  	s.Type = &v
 43044  	return s
 43045  }
 43046  
 43047  // SetWindowId sets the WindowId field's value.
 43048  func (s *MaintenanceWindowTask) SetWindowId(v string) *MaintenanceWindowTask {
 43049  	s.WindowId = &v
 43050  	return s
 43051  }
 43052  
 43053  // SetWindowTaskId sets the WindowTaskId field's value.
 43054  func (s *MaintenanceWindowTask) SetWindowTaskId(v string) *MaintenanceWindowTask {
 43055  	s.WindowTaskId = &v
 43056  	return s
 43057  }
 43058  
 43059  // The parameters for task execution.
 43060  type MaintenanceWindowTaskInvocationParameters struct {
 43061  	_ struct{} `type:"structure"`
 43062  
 43063  	// The parameters for an AUTOMATION task type.
 43064  	Automation *MaintenanceWindowAutomationParameters `type:"structure"`
 43065  
 43066  	// The parameters for a LAMBDA task type.
 43067  	Lambda *MaintenanceWindowLambdaParameters `type:"structure"`
 43068  
 43069  	// The parameters for a RUN_COMMAND task type.
 43070  	RunCommand *MaintenanceWindowRunCommandParameters `type:"structure"`
 43071  
 43072  	// The parameters for a STEP_FUNCTIONS task type.
 43073  	StepFunctions *MaintenanceWindowStepFunctionsParameters `type:"structure"`
 43074  }
 43075  
 43076  // String returns the string representation.
 43077  //
 43078  // API parameter values that are decorated as "sensitive" in the API will not
 43079  // be included in the string output. The member name will be present, but the
 43080  // value will be replaced with "sensitive".
 43081  func (s MaintenanceWindowTaskInvocationParameters) String() string {
 43082  	return awsutil.Prettify(s)
 43083  }
 43084  
 43085  // GoString returns the string representation.
 43086  //
 43087  // API parameter values that are decorated as "sensitive" in the API will not
 43088  // be included in the string output. The member name will be present, but the
 43089  // value will be replaced with "sensitive".
 43090  func (s MaintenanceWindowTaskInvocationParameters) GoString() string {
 43091  	return s.String()
 43092  }
 43093  
 43094  // Validate inspects the fields of the type to determine if they are valid.
 43095  func (s *MaintenanceWindowTaskInvocationParameters) Validate() error {
 43096  	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowTaskInvocationParameters"}
 43097  	if s.Automation != nil {
 43098  		if err := s.Automation.Validate(); err != nil {
 43099  			invalidParams.AddNested("Automation", err.(request.ErrInvalidParams))
 43100  		}
 43101  	}
 43102  	if s.Lambda != nil {
 43103  		if err := s.Lambda.Validate(); err != nil {
 43104  			invalidParams.AddNested("Lambda", err.(request.ErrInvalidParams))
 43105  		}
 43106  	}
 43107  	if s.RunCommand != nil {
 43108  		if err := s.RunCommand.Validate(); err != nil {
 43109  			invalidParams.AddNested("RunCommand", err.(request.ErrInvalidParams))
 43110  		}
 43111  	}
 43112  	if s.StepFunctions != nil {
 43113  		if err := s.StepFunctions.Validate(); err != nil {
 43114  			invalidParams.AddNested("StepFunctions", err.(request.ErrInvalidParams))
 43115  		}
 43116  	}
 43117  
 43118  	if invalidParams.Len() > 0 {
 43119  		return invalidParams
 43120  	}
 43121  	return nil
 43122  }
 43123  
 43124  // SetAutomation sets the Automation field's value.
 43125  func (s *MaintenanceWindowTaskInvocationParameters) SetAutomation(v *MaintenanceWindowAutomationParameters) *MaintenanceWindowTaskInvocationParameters {
 43126  	s.Automation = v
 43127  	return s
 43128  }
 43129  
 43130  // SetLambda sets the Lambda field's value.
 43131  func (s *MaintenanceWindowTaskInvocationParameters) SetLambda(v *MaintenanceWindowLambdaParameters) *MaintenanceWindowTaskInvocationParameters {
 43132  	s.Lambda = v
 43133  	return s
 43134  }
 43135  
 43136  // SetRunCommand sets the RunCommand field's value.
 43137  func (s *MaintenanceWindowTaskInvocationParameters) SetRunCommand(v *MaintenanceWindowRunCommandParameters) *MaintenanceWindowTaskInvocationParameters {
 43138  	s.RunCommand = v
 43139  	return s
 43140  }
 43141  
 43142  // SetStepFunctions sets the StepFunctions field's value.
 43143  func (s *MaintenanceWindowTaskInvocationParameters) SetStepFunctions(v *MaintenanceWindowStepFunctionsParameters) *MaintenanceWindowTaskInvocationParameters {
 43144  	s.StepFunctions = v
 43145  	return s
 43146  }
 43147  
 43148  // Defines the values for a task parameter.
 43149  type MaintenanceWindowTaskParameterValueExpression struct {
 43150  	_ struct{} `type:"structure" sensitive:"true"`
 43151  
 43152  	// This field contains an array of 0 or more strings, each 1 to 255 characters
 43153  	// in length.
 43154  	//
 43155  	// Values is a sensitive parameter and its value will be
 43156  	// replaced with "sensitive" in string returned by MaintenanceWindowTaskParameterValueExpression's
 43157  	// String and GoString methods.
 43158  	Values []*string `type:"list" sensitive:"true"`
 43159  }
 43160  
 43161  // String returns the string representation.
 43162  //
 43163  // API parameter values that are decorated as "sensitive" in the API will not
 43164  // be included in the string output. The member name will be present, but the
 43165  // value will be replaced with "sensitive".
 43166  func (s MaintenanceWindowTaskParameterValueExpression) String() string {
 43167  	return awsutil.Prettify(s)
 43168  }
 43169  
 43170  // GoString returns the string representation.
 43171  //
 43172  // API parameter values that are decorated as "sensitive" in the API will not
 43173  // be included in the string output. The member name will be present, but the
 43174  // value will be replaced with "sensitive".
 43175  func (s MaintenanceWindowTaskParameterValueExpression) GoString() string {
 43176  	return s.String()
 43177  }
 43178  
 43179  // SetValues sets the Values field's value.
 43180  func (s *MaintenanceWindowTaskParameterValueExpression) SetValues(v []*string) *MaintenanceWindowTaskParameterValueExpression {
 43181  	s.Values = v
 43182  	return s
 43183  }
 43184  
 43185  // The size limit of a document is 64 KB.
 43186  type MaxDocumentSizeExceeded struct {
 43187  	_            struct{}                  `type:"structure"`
 43188  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 43189  
 43190  	Message_ *string `locationName:"Message" type:"string"`
 43191  }
 43192  
 43193  // String returns the string representation.
 43194  //
 43195  // API parameter values that are decorated as "sensitive" in the API will not
 43196  // be included in the string output. The member name will be present, but the
 43197  // value will be replaced with "sensitive".
 43198  func (s MaxDocumentSizeExceeded) String() string {
 43199  	return awsutil.Prettify(s)
 43200  }
 43201  
 43202  // GoString returns the string representation.
 43203  //
 43204  // API parameter values that are decorated as "sensitive" in the API will not
 43205  // be included in the string output. The member name will be present, but the
 43206  // value will be replaced with "sensitive".
 43207  func (s MaxDocumentSizeExceeded) GoString() string {
 43208  	return s.String()
 43209  }
 43210  
 43211  func newErrorMaxDocumentSizeExceeded(v protocol.ResponseMetadata) error {
 43212  	return &MaxDocumentSizeExceeded{
 43213  		RespMetadata: v,
 43214  	}
 43215  }
 43216  
 43217  // Code returns the exception type name.
 43218  func (s *MaxDocumentSizeExceeded) Code() string {
 43219  	return "MaxDocumentSizeExceeded"
 43220  }
 43221  
 43222  // Message returns the exception's message.
 43223  func (s *MaxDocumentSizeExceeded) Message() string {
 43224  	if s.Message_ != nil {
 43225  		return *s.Message_
 43226  	}
 43227  	return ""
 43228  }
 43229  
 43230  // OrigErr always returns nil, satisfies awserr.Error interface.
 43231  func (s *MaxDocumentSizeExceeded) OrigErr() error {
 43232  	return nil
 43233  }
 43234  
 43235  func (s *MaxDocumentSizeExceeded) Error() string {
 43236  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 43237  }
 43238  
 43239  // Status code returns the HTTP status code for the request's response error.
 43240  func (s *MaxDocumentSizeExceeded) StatusCode() int {
 43241  	return s.RespMetadata.StatusCode
 43242  }
 43243  
 43244  // RequestID returns the service's response RequestID for request.
 43245  func (s *MaxDocumentSizeExceeded) RequestID() string {
 43246  	return s.RespMetadata.RequestID
 43247  }
 43248  
 43249  // Metadata to assign to an Application Manager application.
 43250  type MetadataValue struct {
 43251  	_ struct{} `type:"structure"`
 43252  
 43253  	// Metadata value to assign to an Application Manager application.
 43254  	Value *string `min:"1" type:"string"`
 43255  }
 43256  
 43257  // String returns the string representation.
 43258  //
 43259  // API parameter values that are decorated as "sensitive" in the API will not
 43260  // be included in the string output. The member name will be present, but the
 43261  // value will be replaced with "sensitive".
 43262  func (s MetadataValue) String() string {
 43263  	return awsutil.Prettify(s)
 43264  }
 43265  
 43266  // GoString returns the string representation.
 43267  //
 43268  // API parameter values that are decorated as "sensitive" in the API will not
 43269  // be included in the string output. The member name will be present, but the
 43270  // value will be replaced with "sensitive".
 43271  func (s MetadataValue) GoString() string {
 43272  	return s.String()
 43273  }
 43274  
 43275  // Validate inspects the fields of the type to determine if they are valid.
 43276  func (s *MetadataValue) Validate() error {
 43277  	invalidParams := request.ErrInvalidParams{Context: "MetadataValue"}
 43278  	if s.Value != nil && len(*s.Value) < 1 {
 43279  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 43280  	}
 43281  
 43282  	if invalidParams.Len() > 0 {
 43283  		return invalidParams
 43284  	}
 43285  	return nil
 43286  }
 43287  
 43288  // SetValue sets the Value field's value.
 43289  func (s *MetadataValue) SetValue(v string) *MetadataValue {
 43290  	s.Value = &v
 43291  	return s
 43292  }
 43293  
 43294  type ModifyDocumentPermissionInput struct {
 43295  	_ struct{} `type:"structure"`
 43296  
 43297  	// The Amazon Web Services user accounts that should have access to the document.
 43298  	// The account IDs can either be a group of account IDs or All.
 43299  	AccountIdsToAdd []*string `type:"list"`
 43300  
 43301  	// The Amazon Web Services user accounts that should no longer have access to
 43302  	// the document. The Amazon Web Services user account can either be a group
 43303  	// of account IDs or All. This action has a higher priority than AccountIdsToAdd.
 43304  	// If you specify an account ID to add and the same ID to remove, the system
 43305  	// removes access to the document.
 43306  	AccountIdsToRemove []*string `type:"list"`
 43307  
 43308  	// The name of the document that you want to share.
 43309  	//
 43310  	// Name is a required field
 43311  	Name *string `type:"string" required:"true"`
 43312  
 43313  	// The permission type for the document. The permission type can be Share.
 43314  	//
 43315  	// PermissionType is a required field
 43316  	PermissionType *string `type:"string" required:"true" enum:"DocumentPermissionType"`
 43317  
 43318  	// (Optional) The version of the document to share. If it isn't specified, the
 43319  	// system choose the Default version to share.
 43320  	SharedDocumentVersion *string `type:"string"`
 43321  }
 43322  
 43323  // String returns the string representation.
 43324  //
 43325  // API parameter values that are decorated as "sensitive" in the API will not
 43326  // be included in the string output. The member name will be present, but the
 43327  // value will be replaced with "sensitive".
 43328  func (s ModifyDocumentPermissionInput) String() string {
 43329  	return awsutil.Prettify(s)
 43330  }
 43331  
 43332  // GoString returns the string representation.
 43333  //
 43334  // API parameter values that are decorated as "sensitive" in the API will not
 43335  // be included in the string output. The member name will be present, but the
 43336  // value will be replaced with "sensitive".
 43337  func (s ModifyDocumentPermissionInput) GoString() string {
 43338  	return s.String()
 43339  }
 43340  
 43341  // Validate inspects the fields of the type to determine if they are valid.
 43342  func (s *ModifyDocumentPermissionInput) Validate() error {
 43343  	invalidParams := request.ErrInvalidParams{Context: "ModifyDocumentPermissionInput"}
 43344  	if s.Name == nil {
 43345  		invalidParams.Add(request.NewErrParamRequired("Name"))
 43346  	}
 43347  	if s.PermissionType == nil {
 43348  		invalidParams.Add(request.NewErrParamRequired("PermissionType"))
 43349  	}
 43350  
 43351  	if invalidParams.Len() > 0 {
 43352  		return invalidParams
 43353  	}
 43354  	return nil
 43355  }
 43356  
 43357  // SetAccountIdsToAdd sets the AccountIdsToAdd field's value.
 43358  func (s *ModifyDocumentPermissionInput) SetAccountIdsToAdd(v []*string) *ModifyDocumentPermissionInput {
 43359  	s.AccountIdsToAdd = v
 43360  	return s
 43361  }
 43362  
 43363  // SetAccountIdsToRemove sets the AccountIdsToRemove field's value.
 43364  func (s *ModifyDocumentPermissionInput) SetAccountIdsToRemove(v []*string) *ModifyDocumentPermissionInput {
 43365  	s.AccountIdsToRemove = v
 43366  	return s
 43367  }
 43368  
 43369  // SetName sets the Name field's value.
 43370  func (s *ModifyDocumentPermissionInput) SetName(v string) *ModifyDocumentPermissionInput {
 43371  	s.Name = &v
 43372  	return s
 43373  }
 43374  
 43375  // SetPermissionType sets the PermissionType field's value.
 43376  func (s *ModifyDocumentPermissionInput) SetPermissionType(v string) *ModifyDocumentPermissionInput {
 43377  	s.PermissionType = &v
 43378  	return s
 43379  }
 43380  
 43381  // SetSharedDocumentVersion sets the SharedDocumentVersion field's value.
 43382  func (s *ModifyDocumentPermissionInput) SetSharedDocumentVersion(v string) *ModifyDocumentPermissionInput {
 43383  	s.SharedDocumentVersion = &v
 43384  	return s
 43385  }
 43386  
 43387  type ModifyDocumentPermissionOutput struct {
 43388  	_ struct{} `type:"structure"`
 43389  }
 43390  
 43391  // String returns the string representation.
 43392  //
 43393  // API parameter values that are decorated as "sensitive" in the API will not
 43394  // be included in the string output. The member name will be present, but the
 43395  // value will be replaced with "sensitive".
 43396  func (s ModifyDocumentPermissionOutput) String() string {
 43397  	return awsutil.Prettify(s)
 43398  }
 43399  
 43400  // GoString returns the string representation.
 43401  //
 43402  // API parameter values that are decorated as "sensitive" in the API will not
 43403  // be included in the string output. The member name will be present, but the
 43404  // value will be replaced with "sensitive".
 43405  func (s ModifyDocumentPermissionOutput) GoString() string {
 43406  	return s.String()
 43407  }
 43408  
 43409  // A summary of resources that aren't compliant. The summary is organized according
 43410  // to resource type.
 43411  type NonCompliantSummary struct {
 43412  	_ struct{} `type:"structure"`
 43413  
 43414  	// The total number of compliance items that aren't compliant.
 43415  	NonCompliantCount *int64 `type:"integer"`
 43416  
 43417  	// A summary of the non-compliance severity by compliance type
 43418  	SeveritySummary *SeveritySummary `type:"structure"`
 43419  }
 43420  
 43421  // String returns the string representation.
 43422  //
 43423  // API parameter values that are decorated as "sensitive" in the API will not
 43424  // be included in the string output. The member name will be present, but the
 43425  // value will be replaced with "sensitive".
 43426  func (s NonCompliantSummary) String() string {
 43427  	return awsutil.Prettify(s)
 43428  }
 43429  
 43430  // GoString returns the string representation.
 43431  //
 43432  // API parameter values that are decorated as "sensitive" in the API will not
 43433  // be included in the string output. The member name will be present, but the
 43434  // value will be replaced with "sensitive".
 43435  func (s NonCompliantSummary) GoString() string {
 43436  	return s.String()
 43437  }
 43438  
 43439  // SetNonCompliantCount sets the NonCompliantCount field's value.
 43440  func (s *NonCompliantSummary) SetNonCompliantCount(v int64) *NonCompliantSummary {
 43441  	s.NonCompliantCount = &v
 43442  	return s
 43443  }
 43444  
 43445  // SetSeveritySummary sets the SeveritySummary field's value.
 43446  func (s *NonCompliantSummary) SetSeveritySummary(v *SeveritySummary) *NonCompliantSummary {
 43447  	s.SeveritySummary = v
 43448  	return s
 43449  }
 43450  
 43451  // Configurations for sending notifications.
 43452  type NotificationConfig struct {
 43453  	_ struct{} `type:"structure"`
 43454  
 43455  	// An Amazon Resource Name (ARN) for an Amazon Simple Notification Service (Amazon
 43456  	// SNS) topic. Run Command pushes notifications about command status changes
 43457  	// to this topic.
 43458  	NotificationArn *string `type:"string"`
 43459  
 43460  	// The different events for which you can receive notifications. To learn more
 43461  	// about these events, see Monitoring Systems Manager status changes using Amazon
 43462  	// SNS notifications (https://docs.aws.amazon.com/systems-manager/latest/userguide/monitoring-sns-notifications.html)
 43463  	// in the Amazon Web Services Systems Manager User Guide.
 43464  	NotificationEvents []*string `type:"list"`
 43465  
 43466  	// The type of notification.
 43467  	//
 43468  	//    * Command: Receive notification when the status of a command changes.
 43469  	//
 43470  	//    * Invocation: For commands sent to multiple instances, receive notification
 43471  	//    on a per-instance basis when the status of a command changes.
 43472  	NotificationType *string `type:"string" enum:"NotificationType"`
 43473  }
 43474  
 43475  // String returns the string representation.
 43476  //
 43477  // API parameter values that are decorated as "sensitive" in the API will not
 43478  // be included in the string output. The member name will be present, but the
 43479  // value will be replaced with "sensitive".
 43480  func (s NotificationConfig) String() string {
 43481  	return awsutil.Prettify(s)
 43482  }
 43483  
 43484  // GoString returns the string representation.
 43485  //
 43486  // API parameter values that are decorated as "sensitive" in the API will not
 43487  // be included in the string output. The member name will be present, but the
 43488  // value will be replaced with "sensitive".
 43489  func (s NotificationConfig) GoString() string {
 43490  	return s.String()
 43491  }
 43492  
 43493  // SetNotificationArn sets the NotificationArn field's value.
 43494  func (s *NotificationConfig) SetNotificationArn(v string) *NotificationConfig {
 43495  	s.NotificationArn = &v
 43496  	return s
 43497  }
 43498  
 43499  // SetNotificationEvents sets the NotificationEvents field's value.
 43500  func (s *NotificationConfig) SetNotificationEvents(v []*string) *NotificationConfig {
 43501  	s.NotificationEvents = v
 43502  	return s
 43503  }
 43504  
 43505  // SetNotificationType sets the NotificationType field's value.
 43506  func (s *NotificationConfig) SetNotificationType(v string) *NotificationConfig {
 43507  	s.NotificationType = &v
 43508  	return s
 43509  }
 43510  
 43511  // One or more aggregators for viewing counts of OpsData using different dimensions
 43512  // such as Source, CreatedTime, or Source and CreatedTime, to name a few.
 43513  type OpsAggregator struct {
 43514  	_ struct{} `type:"structure"`
 43515  
 43516  	// Either a Range or Count aggregator for limiting an OpsData summary.
 43517  	AggregatorType *string `min:"1" type:"string"`
 43518  
 43519  	// A nested aggregator for viewing counts of OpsData.
 43520  	Aggregators []*OpsAggregator `min:"1" type:"list"`
 43521  
 43522  	// The name of an OpsData attribute on which to limit the count of OpsData.
 43523  	AttributeName *string `min:"1" type:"string"`
 43524  
 43525  	// The aggregator filters.
 43526  	Filters []*OpsFilter `min:"1" type:"list"`
 43527  
 43528  	// The data type name to use for viewing counts of OpsData.
 43529  	TypeName *string `min:"1" type:"string"`
 43530  
 43531  	// The aggregator value.
 43532  	Values map[string]*string `type:"map"`
 43533  }
 43534  
 43535  // String returns the string representation.
 43536  //
 43537  // API parameter values that are decorated as "sensitive" in the API will not
 43538  // be included in the string output. The member name will be present, but the
 43539  // value will be replaced with "sensitive".
 43540  func (s OpsAggregator) String() string {
 43541  	return awsutil.Prettify(s)
 43542  }
 43543  
 43544  // GoString returns the string representation.
 43545  //
 43546  // API parameter values that are decorated as "sensitive" in the API will not
 43547  // be included in the string output. The member name will be present, but the
 43548  // value will be replaced with "sensitive".
 43549  func (s OpsAggregator) GoString() string {
 43550  	return s.String()
 43551  }
 43552  
 43553  // Validate inspects the fields of the type to determine if they are valid.
 43554  func (s *OpsAggregator) Validate() error {
 43555  	invalidParams := request.ErrInvalidParams{Context: "OpsAggregator"}
 43556  	if s.AggregatorType != nil && len(*s.AggregatorType) < 1 {
 43557  		invalidParams.Add(request.NewErrParamMinLen("AggregatorType", 1))
 43558  	}
 43559  	if s.Aggregators != nil && len(s.Aggregators) < 1 {
 43560  		invalidParams.Add(request.NewErrParamMinLen("Aggregators", 1))
 43561  	}
 43562  	if s.AttributeName != nil && len(*s.AttributeName) < 1 {
 43563  		invalidParams.Add(request.NewErrParamMinLen("AttributeName", 1))
 43564  	}
 43565  	if s.Filters != nil && len(s.Filters) < 1 {
 43566  		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
 43567  	}
 43568  	if s.TypeName != nil && len(*s.TypeName) < 1 {
 43569  		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
 43570  	}
 43571  	if s.Aggregators != nil {
 43572  		for i, v := range s.Aggregators {
 43573  			if v == nil {
 43574  				continue
 43575  			}
 43576  			if err := v.Validate(); err != nil {
 43577  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Aggregators", i), err.(request.ErrInvalidParams))
 43578  			}
 43579  		}
 43580  	}
 43581  	if s.Filters != nil {
 43582  		for i, v := range s.Filters {
 43583  			if v == nil {
 43584  				continue
 43585  			}
 43586  			if err := v.Validate(); err != nil {
 43587  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 43588  			}
 43589  		}
 43590  	}
 43591  
 43592  	if invalidParams.Len() > 0 {
 43593  		return invalidParams
 43594  	}
 43595  	return nil
 43596  }
 43597  
 43598  // SetAggregatorType sets the AggregatorType field's value.
 43599  func (s *OpsAggregator) SetAggregatorType(v string) *OpsAggregator {
 43600  	s.AggregatorType = &v
 43601  	return s
 43602  }
 43603  
 43604  // SetAggregators sets the Aggregators field's value.
 43605  func (s *OpsAggregator) SetAggregators(v []*OpsAggregator) *OpsAggregator {
 43606  	s.Aggregators = v
 43607  	return s
 43608  }
 43609  
 43610  // SetAttributeName sets the AttributeName field's value.
 43611  func (s *OpsAggregator) SetAttributeName(v string) *OpsAggregator {
 43612  	s.AttributeName = &v
 43613  	return s
 43614  }
 43615  
 43616  // SetFilters sets the Filters field's value.
 43617  func (s *OpsAggregator) SetFilters(v []*OpsFilter) *OpsAggregator {
 43618  	s.Filters = v
 43619  	return s
 43620  }
 43621  
 43622  // SetTypeName sets the TypeName field's value.
 43623  func (s *OpsAggregator) SetTypeName(v string) *OpsAggregator {
 43624  	s.TypeName = &v
 43625  	return s
 43626  }
 43627  
 43628  // SetValues sets the Values field's value.
 43629  func (s *OpsAggregator) SetValues(v map[string]*string) *OpsAggregator {
 43630  	s.Values = v
 43631  	return s
 43632  }
 43633  
 43634  // The result of the query.
 43635  type OpsEntity struct {
 43636  	_ struct{} `type:"structure"`
 43637  
 43638  	// The data returned by the query.
 43639  	Data map[string]*OpsEntityItem `type:"map"`
 43640  
 43641  	// The query ID.
 43642  	Id *string `type:"string"`
 43643  }
 43644  
 43645  // String returns the string representation.
 43646  //
 43647  // API parameter values that are decorated as "sensitive" in the API will not
 43648  // be included in the string output. The member name will be present, but the
 43649  // value will be replaced with "sensitive".
 43650  func (s OpsEntity) String() string {
 43651  	return awsutil.Prettify(s)
 43652  }
 43653  
 43654  // GoString returns the string representation.
 43655  //
 43656  // API parameter values that are decorated as "sensitive" in the API will not
 43657  // be included in the string output. The member name will be present, but the
 43658  // value will be replaced with "sensitive".
 43659  func (s OpsEntity) GoString() string {
 43660  	return s.String()
 43661  }
 43662  
 43663  // SetData sets the Data field's value.
 43664  func (s *OpsEntity) SetData(v map[string]*OpsEntityItem) *OpsEntity {
 43665  	s.Data = v
 43666  	return s
 43667  }
 43668  
 43669  // SetId sets the Id field's value.
 43670  func (s *OpsEntity) SetId(v string) *OpsEntity {
 43671  	s.Id = &v
 43672  	return s
 43673  }
 43674  
 43675  // The OpsData summary.
 43676  type OpsEntityItem struct {
 43677  	_ struct{} `type:"structure"`
 43678  
 43679  	// The time the OpsData was captured.
 43680  	CaptureTime *string `type:"string"`
 43681  
 43682  	// The details of an OpsData summary.
 43683  	Content []map[string]*string `type:"list"`
 43684  }
 43685  
 43686  // String returns the string representation.
 43687  //
 43688  // API parameter values that are decorated as "sensitive" in the API will not
 43689  // be included in the string output. The member name will be present, but the
 43690  // value will be replaced with "sensitive".
 43691  func (s OpsEntityItem) String() string {
 43692  	return awsutil.Prettify(s)
 43693  }
 43694  
 43695  // GoString returns the string representation.
 43696  //
 43697  // API parameter values that are decorated as "sensitive" in the API will not
 43698  // be included in the string output. The member name will be present, but the
 43699  // value will be replaced with "sensitive".
 43700  func (s OpsEntityItem) GoString() string {
 43701  	return s.String()
 43702  }
 43703  
 43704  // SetCaptureTime sets the CaptureTime field's value.
 43705  func (s *OpsEntityItem) SetCaptureTime(v string) *OpsEntityItem {
 43706  	s.CaptureTime = &v
 43707  	return s
 43708  }
 43709  
 43710  // SetContent sets the Content field's value.
 43711  func (s *OpsEntityItem) SetContent(v []map[string]*string) *OpsEntityItem {
 43712  	s.Content = v
 43713  	return s
 43714  }
 43715  
 43716  // A filter for viewing OpsData summaries.
 43717  type OpsFilter struct {
 43718  	_ struct{} `type:"structure"`
 43719  
 43720  	// The name of the filter.
 43721  	//
 43722  	// Key is a required field
 43723  	Key *string `min:"1" type:"string" required:"true"`
 43724  
 43725  	// The type of filter.
 43726  	Type *string `type:"string" enum:"OpsFilterOperatorType"`
 43727  
 43728  	// The filter value.
 43729  	//
 43730  	// Values is a required field
 43731  	Values []*string `min:"1" type:"list" required:"true"`
 43732  }
 43733  
 43734  // String returns the string representation.
 43735  //
 43736  // API parameter values that are decorated as "sensitive" in the API will not
 43737  // be included in the string output. The member name will be present, but the
 43738  // value will be replaced with "sensitive".
 43739  func (s OpsFilter) String() string {
 43740  	return awsutil.Prettify(s)
 43741  }
 43742  
 43743  // GoString returns the string representation.
 43744  //
 43745  // API parameter values that are decorated as "sensitive" in the API will not
 43746  // be included in the string output. The member name will be present, but the
 43747  // value will be replaced with "sensitive".
 43748  func (s OpsFilter) GoString() string {
 43749  	return s.String()
 43750  }
 43751  
 43752  // Validate inspects the fields of the type to determine if they are valid.
 43753  func (s *OpsFilter) Validate() error {
 43754  	invalidParams := request.ErrInvalidParams{Context: "OpsFilter"}
 43755  	if s.Key == nil {
 43756  		invalidParams.Add(request.NewErrParamRequired("Key"))
 43757  	}
 43758  	if s.Key != nil && len(*s.Key) < 1 {
 43759  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 43760  	}
 43761  	if s.Values == nil {
 43762  		invalidParams.Add(request.NewErrParamRequired("Values"))
 43763  	}
 43764  	if s.Values != nil && len(s.Values) < 1 {
 43765  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 43766  	}
 43767  
 43768  	if invalidParams.Len() > 0 {
 43769  		return invalidParams
 43770  	}
 43771  	return nil
 43772  }
 43773  
 43774  // SetKey sets the Key field's value.
 43775  func (s *OpsFilter) SetKey(v string) *OpsFilter {
 43776  	s.Key = &v
 43777  	return s
 43778  }
 43779  
 43780  // SetType sets the Type field's value.
 43781  func (s *OpsFilter) SetType(v string) *OpsFilter {
 43782  	s.Type = &v
 43783  	return s
 43784  }
 43785  
 43786  // SetValues sets the Values field's value.
 43787  func (s *OpsFilter) SetValues(v []*string) *OpsFilter {
 43788  	s.Values = v
 43789  	return s
 43790  }
 43791  
 43792  // Operations engineers and IT professionals use Amazon Web Services Systems
 43793  // Manager OpsCenter to view, investigate, and remediate operational work items
 43794  // (OpsItems) impacting the performance and health of their Amazon Web Services
 43795  // resources. OpsCenter is integrated with Amazon EventBridge and Amazon CloudWatch.
 43796  // This means you can configure these services to automatically create an OpsItem
 43797  // in OpsCenter when a CloudWatch alarm enters the ALARM state or when EventBridge
 43798  // processes an event from any Amazon Web Services service that publishes events.
 43799  // Configuring Amazon CloudWatch alarms and EventBridge events to automatically
 43800  // create OpsItems allows you to quickly diagnose and remediate issues with
 43801  // Amazon Web Services resources from a single console.
 43802  //
 43803  // To help you diagnose issues, each OpsItem includes contextually relevant
 43804  // information such as the name and ID of the Amazon Web Services resource that
 43805  // generated the OpsItem, alarm or event details, alarm history, and an alarm
 43806  // timeline graph. For the Amazon Web Services resource, OpsCenter aggregates
 43807  // information from Config, CloudTrail logs, and EventBridge, so you don't have
 43808  // to navigate across multiple console pages during your investigation. For
 43809  // more information, see OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html)
 43810  // in the Amazon Web Services Systems Manager User Guide.
 43811  type OpsItem struct {
 43812  	_ struct{} `type:"structure"`
 43813  
 43814  	// The time a runbook workflow ended. Currently reported only for the OpsItem
 43815  	// type /aws/changerequest.
 43816  	ActualEndTime *time.Time `type:"timestamp"`
 43817  
 43818  	// The time a runbook workflow started. Currently reported only for the OpsItem
 43819  	// type /aws/changerequest.
 43820  	ActualStartTime *time.Time `type:"timestamp"`
 43821  
 43822  	// An OpsItem category. Category options include: Availability, Cost, Performance,
 43823  	// Recovery, Security.
 43824  	Category *string `min:"1" type:"string"`
 43825  
 43826  	// The ARN of the Amazon Web Services account that created the OpsItem.
 43827  	CreatedBy *string `type:"string"`
 43828  
 43829  	// The date and time the OpsItem was created.
 43830  	CreatedTime *time.Time `type:"timestamp"`
 43831  
 43832  	// The OpsItem description.
 43833  	Description *string `min:"1" type:"string"`
 43834  
 43835  	// The ARN of the Amazon Web Services account that last updated the OpsItem.
 43836  	LastModifiedBy *string `type:"string"`
 43837  
 43838  	// The date and time the OpsItem was last updated.
 43839  	LastModifiedTime *time.Time `type:"timestamp"`
 43840  
 43841  	// The Amazon Resource Name (ARN) of an Amazon Simple Notification Service (Amazon
 43842  	// SNS) topic where notifications are sent when this OpsItem is edited or changed.
 43843  	Notifications []*OpsItemNotification `type:"list"`
 43844  
 43845  	// Operational data is custom data that provides useful reference details about
 43846  	// the OpsItem. For example, you can specify log files, error strings, license
 43847  	// keys, troubleshooting tips, or other relevant data. You enter operational
 43848  	// data as key-value pairs. The key has a maximum length of 128 characters.
 43849  	// The value has a maximum size of 20 KB.
 43850  	//
 43851  	// Operational data keys can't begin with the following: amazon, aws, amzn,
 43852  	// ssm, /amazon, /aws, /amzn, /ssm.
 43853  	//
 43854  	// You can choose to make the data searchable by other users in the account
 43855  	// or you can restrict search access. Searchable data means that all users with
 43856  	// access to the OpsItem Overview page (as provided by the DescribeOpsItems
 43857  	// API operation) can view and search on the specified data. Operational data
 43858  	// that isn't searchable is only viewable by users who have access to the OpsItem
 43859  	// (as provided by the GetOpsItem API operation).
 43860  	//
 43861  	// Use the /aws/resources key in OperationalData to specify a related resource
 43862  	// in the request. Use the /aws/automations key in OperationalData to associate
 43863  	// an Automation runbook with the OpsItem. To view Amazon Web Services CLI example
 43864  	// commands that use these keys, see Creating OpsItems manually (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-creating-OpsItems.html#OpsCenter-manually-create-OpsItems)
 43865  	// in the Amazon Web Services Systems Manager User Guide.
 43866  	OperationalData map[string]*OpsItemDataValue `type:"map"`
 43867  
 43868  	// The ID of the OpsItem.
 43869  	OpsItemId *string `type:"string"`
 43870  
 43871  	// The type of OpsItem. Currently, the only valid values are /aws/changerequest
 43872  	// and /aws/issue.
 43873  	OpsItemType *string `type:"string"`
 43874  
 43875  	// The time specified in a change request for a runbook workflow to end. Currently
 43876  	// supported only for the OpsItem type /aws/changerequest.
 43877  	PlannedEndTime *time.Time `type:"timestamp"`
 43878  
 43879  	// The time specified in a change request for a runbook workflow to start. Currently
 43880  	// supported only for the OpsItem type /aws/changerequest.
 43881  	PlannedStartTime *time.Time `type:"timestamp"`
 43882  
 43883  	// The importance of this OpsItem in relation to other OpsItems in the system.
 43884  	Priority *int64 `min:"1" type:"integer"`
 43885  
 43886  	// One or more OpsItems that share something in common with the current OpsItem.
 43887  	// For example, related OpsItems can include OpsItems with similar error messages,
 43888  	// impacted resources, or statuses for the impacted resource.
 43889  	RelatedOpsItems []*RelatedOpsItem `type:"list"`
 43890  
 43891  	// The severity of the OpsItem. Severity options range from 1 to 4.
 43892  	Severity *string `min:"1" type:"string"`
 43893  
 43894  	// The origin of the OpsItem, such as Amazon EC2 or Systems Manager. The impacted
 43895  	// resource is a subset of source.
 43896  	Source *string `min:"1" type:"string"`
 43897  
 43898  	// The OpsItem status. Status can be Open, In Progress, or Resolved. For more
 43899  	// information, see Editing OpsItem details (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-working-with-OpsItems-editing-details.html)
 43900  	// in the Amazon Web Services Systems Manager User Guide.
 43901  	Status *string `type:"string" enum:"OpsItemStatus"`
 43902  
 43903  	// A short heading that describes the nature of the OpsItem and the impacted
 43904  	// resource.
 43905  	Title *string `min:"1" type:"string"`
 43906  
 43907  	// The version of this OpsItem. Each time the OpsItem is edited the version
 43908  	// number increments by one.
 43909  	Version *string `type:"string"`
 43910  }
 43911  
 43912  // String returns the string representation.
 43913  //
 43914  // API parameter values that are decorated as "sensitive" in the API will not
 43915  // be included in the string output. The member name will be present, but the
 43916  // value will be replaced with "sensitive".
 43917  func (s OpsItem) String() string {
 43918  	return awsutil.Prettify(s)
 43919  }
 43920  
 43921  // GoString returns the string representation.
 43922  //
 43923  // API parameter values that are decorated as "sensitive" in the API will not
 43924  // be included in the string output. The member name will be present, but the
 43925  // value will be replaced with "sensitive".
 43926  func (s OpsItem) GoString() string {
 43927  	return s.String()
 43928  }
 43929  
 43930  // SetActualEndTime sets the ActualEndTime field's value.
 43931  func (s *OpsItem) SetActualEndTime(v time.Time) *OpsItem {
 43932  	s.ActualEndTime = &v
 43933  	return s
 43934  }
 43935  
 43936  // SetActualStartTime sets the ActualStartTime field's value.
 43937  func (s *OpsItem) SetActualStartTime(v time.Time) *OpsItem {
 43938  	s.ActualStartTime = &v
 43939  	return s
 43940  }
 43941  
 43942  // SetCategory sets the Category field's value.
 43943  func (s *OpsItem) SetCategory(v string) *OpsItem {
 43944  	s.Category = &v
 43945  	return s
 43946  }
 43947  
 43948  // SetCreatedBy sets the CreatedBy field's value.
 43949  func (s *OpsItem) SetCreatedBy(v string) *OpsItem {
 43950  	s.CreatedBy = &v
 43951  	return s
 43952  }
 43953  
 43954  // SetCreatedTime sets the CreatedTime field's value.
 43955  func (s *OpsItem) SetCreatedTime(v time.Time) *OpsItem {
 43956  	s.CreatedTime = &v
 43957  	return s
 43958  }
 43959  
 43960  // SetDescription sets the Description field's value.
 43961  func (s *OpsItem) SetDescription(v string) *OpsItem {
 43962  	s.Description = &v
 43963  	return s
 43964  }
 43965  
 43966  // SetLastModifiedBy sets the LastModifiedBy field's value.
 43967  func (s *OpsItem) SetLastModifiedBy(v string) *OpsItem {
 43968  	s.LastModifiedBy = &v
 43969  	return s
 43970  }
 43971  
 43972  // SetLastModifiedTime sets the LastModifiedTime field's value.
 43973  func (s *OpsItem) SetLastModifiedTime(v time.Time) *OpsItem {
 43974  	s.LastModifiedTime = &v
 43975  	return s
 43976  }
 43977  
 43978  // SetNotifications sets the Notifications field's value.
 43979  func (s *OpsItem) SetNotifications(v []*OpsItemNotification) *OpsItem {
 43980  	s.Notifications = v
 43981  	return s
 43982  }
 43983  
 43984  // SetOperationalData sets the OperationalData field's value.
 43985  func (s *OpsItem) SetOperationalData(v map[string]*OpsItemDataValue) *OpsItem {
 43986  	s.OperationalData = v
 43987  	return s
 43988  }
 43989  
 43990  // SetOpsItemId sets the OpsItemId field's value.
 43991  func (s *OpsItem) SetOpsItemId(v string) *OpsItem {
 43992  	s.OpsItemId = &v
 43993  	return s
 43994  }
 43995  
 43996  // SetOpsItemType sets the OpsItemType field's value.
 43997  func (s *OpsItem) SetOpsItemType(v string) *OpsItem {
 43998  	s.OpsItemType = &v
 43999  	return s
 44000  }
 44001  
 44002  // SetPlannedEndTime sets the PlannedEndTime field's value.
 44003  func (s *OpsItem) SetPlannedEndTime(v time.Time) *OpsItem {
 44004  	s.PlannedEndTime = &v
 44005  	return s
 44006  }
 44007  
 44008  // SetPlannedStartTime sets the PlannedStartTime field's value.
 44009  func (s *OpsItem) SetPlannedStartTime(v time.Time) *OpsItem {
 44010  	s.PlannedStartTime = &v
 44011  	return s
 44012  }
 44013  
 44014  // SetPriority sets the Priority field's value.
 44015  func (s *OpsItem) SetPriority(v int64) *OpsItem {
 44016  	s.Priority = &v
 44017  	return s
 44018  }
 44019  
 44020  // SetRelatedOpsItems sets the RelatedOpsItems field's value.
 44021  func (s *OpsItem) SetRelatedOpsItems(v []*RelatedOpsItem) *OpsItem {
 44022  	s.RelatedOpsItems = v
 44023  	return s
 44024  }
 44025  
 44026  // SetSeverity sets the Severity field's value.
 44027  func (s *OpsItem) SetSeverity(v string) *OpsItem {
 44028  	s.Severity = &v
 44029  	return s
 44030  }
 44031  
 44032  // SetSource sets the Source field's value.
 44033  func (s *OpsItem) SetSource(v string) *OpsItem {
 44034  	s.Source = &v
 44035  	return s
 44036  }
 44037  
 44038  // SetStatus sets the Status field's value.
 44039  func (s *OpsItem) SetStatus(v string) *OpsItem {
 44040  	s.Status = &v
 44041  	return s
 44042  }
 44043  
 44044  // SetTitle sets the Title field's value.
 44045  func (s *OpsItem) SetTitle(v string) *OpsItem {
 44046  	s.Title = &v
 44047  	return s
 44048  }
 44049  
 44050  // SetVersion sets the Version field's value.
 44051  func (s *OpsItem) SetVersion(v string) *OpsItem {
 44052  	s.Version = &v
 44053  	return s
 44054  }
 44055  
 44056  // The OpsItem already exists.
 44057  type OpsItemAlreadyExistsException struct {
 44058  	_            struct{}                  `type:"structure"`
 44059  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 44060  
 44061  	Message_ *string `locationName:"Message" type:"string"`
 44062  
 44063  	OpsItemId *string `type:"string"`
 44064  }
 44065  
 44066  // String returns the string representation.
 44067  //
 44068  // API parameter values that are decorated as "sensitive" in the API will not
 44069  // be included in the string output. The member name will be present, but the
 44070  // value will be replaced with "sensitive".
 44071  func (s OpsItemAlreadyExistsException) String() string {
 44072  	return awsutil.Prettify(s)
 44073  }
 44074  
 44075  // GoString returns the string representation.
 44076  //
 44077  // API parameter values that are decorated as "sensitive" in the API will not
 44078  // be included in the string output. The member name will be present, but the
 44079  // value will be replaced with "sensitive".
 44080  func (s OpsItemAlreadyExistsException) GoString() string {
 44081  	return s.String()
 44082  }
 44083  
 44084  func newErrorOpsItemAlreadyExistsException(v protocol.ResponseMetadata) error {
 44085  	return &OpsItemAlreadyExistsException{
 44086  		RespMetadata: v,
 44087  	}
 44088  }
 44089  
 44090  // Code returns the exception type name.
 44091  func (s *OpsItemAlreadyExistsException) Code() string {
 44092  	return "OpsItemAlreadyExistsException"
 44093  }
 44094  
 44095  // Message returns the exception's message.
 44096  func (s *OpsItemAlreadyExistsException) Message() string {
 44097  	if s.Message_ != nil {
 44098  		return *s.Message_
 44099  	}
 44100  	return ""
 44101  }
 44102  
 44103  // OrigErr always returns nil, satisfies awserr.Error interface.
 44104  func (s *OpsItemAlreadyExistsException) OrigErr() error {
 44105  	return nil
 44106  }
 44107  
 44108  func (s *OpsItemAlreadyExistsException) Error() string {
 44109  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 44110  }
 44111  
 44112  // Status code returns the HTTP status code for the request's response error.
 44113  func (s *OpsItemAlreadyExistsException) StatusCode() int {
 44114  	return s.RespMetadata.StatusCode
 44115  }
 44116  
 44117  // RequestID returns the service's response RequestID for request.
 44118  func (s *OpsItemAlreadyExistsException) RequestID() string {
 44119  	return s.RespMetadata.RequestID
 44120  }
 44121  
 44122  // An object that defines the value of the key and its type in the OperationalData
 44123  // map.
 44124  type OpsItemDataValue struct {
 44125  	_ struct{} `type:"structure"`
 44126  
 44127  	// The type of key-value pair. Valid types include SearchableString and String.
 44128  	Type *string `type:"string" enum:"OpsItemDataType"`
 44129  
 44130  	// The value of the OperationalData key.
 44131  	Value *string `type:"string"`
 44132  }
 44133  
 44134  // String returns the string representation.
 44135  //
 44136  // API parameter values that are decorated as "sensitive" in the API will not
 44137  // be included in the string output. The member name will be present, but the
 44138  // value will be replaced with "sensitive".
 44139  func (s OpsItemDataValue) String() string {
 44140  	return awsutil.Prettify(s)
 44141  }
 44142  
 44143  // GoString returns the string representation.
 44144  //
 44145  // API parameter values that are decorated as "sensitive" in the API will not
 44146  // be included in the string output. The member name will be present, but the
 44147  // value will be replaced with "sensitive".
 44148  func (s OpsItemDataValue) GoString() string {
 44149  	return s.String()
 44150  }
 44151  
 44152  // SetType sets the Type field's value.
 44153  func (s *OpsItemDataValue) SetType(v string) *OpsItemDataValue {
 44154  	s.Type = &v
 44155  	return s
 44156  }
 44157  
 44158  // SetValue sets the Value field's value.
 44159  func (s *OpsItemDataValue) SetValue(v string) *OpsItemDataValue {
 44160  	s.Value = &v
 44161  	return s
 44162  }
 44163  
 44164  // Describes a filter for a specific list of OpsItem events. You can filter
 44165  // event information by using tags. You specify tags by using a key-value pair
 44166  // mapping.
 44167  type OpsItemEventFilter struct {
 44168  	_ struct{} `type:"structure"`
 44169  
 44170  	// The name of the filter key. Currently, the only supported value is OpsItemId.
 44171  	//
 44172  	// Key is a required field
 44173  	Key *string `type:"string" required:"true" enum:"OpsItemEventFilterKey"`
 44174  
 44175  	// The operator used by the filter call. Currently, the only supported value
 44176  	// is Equal.
 44177  	//
 44178  	// Operator is a required field
 44179  	Operator *string `type:"string" required:"true" enum:"OpsItemEventFilterOperator"`
 44180  
 44181  	// The values for the filter, consisting of one or more OpsItem IDs.
 44182  	//
 44183  	// Values is a required field
 44184  	Values []*string `type:"list" required:"true"`
 44185  }
 44186  
 44187  // String returns the string representation.
 44188  //
 44189  // API parameter values that are decorated as "sensitive" in the API will not
 44190  // be included in the string output. The member name will be present, but the
 44191  // value will be replaced with "sensitive".
 44192  func (s OpsItemEventFilter) String() string {
 44193  	return awsutil.Prettify(s)
 44194  }
 44195  
 44196  // GoString returns the string representation.
 44197  //
 44198  // API parameter values that are decorated as "sensitive" in the API will not
 44199  // be included in the string output. The member name will be present, but the
 44200  // value will be replaced with "sensitive".
 44201  func (s OpsItemEventFilter) GoString() string {
 44202  	return s.String()
 44203  }
 44204  
 44205  // Validate inspects the fields of the type to determine if they are valid.
 44206  func (s *OpsItemEventFilter) Validate() error {
 44207  	invalidParams := request.ErrInvalidParams{Context: "OpsItemEventFilter"}
 44208  	if s.Key == nil {
 44209  		invalidParams.Add(request.NewErrParamRequired("Key"))
 44210  	}
 44211  	if s.Operator == nil {
 44212  		invalidParams.Add(request.NewErrParamRequired("Operator"))
 44213  	}
 44214  	if s.Values == nil {
 44215  		invalidParams.Add(request.NewErrParamRequired("Values"))
 44216  	}
 44217  
 44218  	if invalidParams.Len() > 0 {
 44219  		return invalidParams
 44220  	}
 44221  	return nil
 44222  }
 44223  
 44224  // SetKey sets the Key field's value.
 44225  func (s *OpsItemEventFilter) SetKey(v string) *OpsItemEventFilter {
 44226  	s.Key = &v
 44227  	return s
 44228  }
 44229  
 44230  // SetOperator sets the Operator field's value.
 44231  func (s *OpsItemEventFilter) SetOperator(v string) *OpsItemEventFilter {
 44232  	s.Operator = &v
 44233  	return s
 44234  }
 44235  
 44236  // SetValues sets the Values field's value.
 44237  func (s *OpsItemEventFilter) SetValues(v []*string) *OpsItemEventFilter {
 44238  	s.Values = v
 44239  	return s
 44240  }
 44241  
 44242  // Summary information about an OpsItem event or that associated an OpsItem
 44243  // with a related item.
 44244  type OpsItemEventSummary struct {
 44245  	_ struct{} `type:"structure"`
 44246  
 44247  	// Information about the user or resource that created the OpsItem event.
 44248  	CreatedBy *OpsItemIdentity `type:"structure"`
 44249  
 44250  	// The date and time the OpsItem event was created.
 44251  	CreatedTime *time.Time `type:"timestamp"`
 44252  
 44253  	// Specific information about the OpsItem event.
 44254  	Detail *string `type:"string"`
 44255  
 44256  	// The type of information provided as a detail.
 44257  	DetailType *string `type:"string"`
 44258  
 44259  	// The ID of the OpsItem event.
 44260  	EventId *string `type:"string"`
 44261  
 44262  	// The ID of the OpsItem.
 44263  	OpsItemId *string `type:"string"`
 44264  
 44265  	// The source of the OpsItem event.
 44266  	Source *string `type:"string"`
 44267  }
 44268  
 44269  // String returns the string representation.
 44270  //
 44271  // API parameter values that are decorated as "sensitive" in the API will not
 44272  // be included in the string output. The member name will be present, but the
 44273  // value will be replaced with "sensitive".
 44274  func (s OpsItemEventSummary) String() string {
 44275  	return awsutil.Prettify(s)
 44276  }
 44277  
 44278  // GoString returns the string representation.
 44279  //
 44280  // API parameter values that are decorated as "sensitive" in the API will not
 44281  // be included in the string output. The member name will be present, but the
 44282  // value will be replaced with "sensitive".
 44283  func (s OpsItemEventSummary) GoString() string {
 44284  	return s.String()
 44285  }
 44286  
 44287  // SetCreatedBy sets the CreatedBy field's value.
 44288  func (s *OpsItemEventSummary) SetCreatedBy(v *OpsItemIdentity) *OpsItemEventSummary {
 44289  	s.CreatedBy = v
 44290  	return s
 44291  }
 44292  
 44293  // SetCreatedTime sets the CreatedTime field's value.
 44294  func (s *OpsItemEventSummary) SetCreatedTime(v time.Time) *OpsItemEventSummary {
 44295  	s.CreatedTime = &v
 44296  	return s
 44297  }
 44298  
 44299  // SetDetail sets the Detail field's value.
 44300  func (s *OpsItemEventSummary) SetDetail(v string) *OpsItemEventSummary {
 44301  	s.Detail = &v
 44302  	return s
 44303  }
 44304  
 44305  // SetDetailType sets the DetailType field's value.
 44306  func (s *OpsItemEventSummary) SetDetailType(v string) *OpsItemEventSummary {
 44307  	s.DetailType = &v
 44308  	return s
 44309  }
 44310  
 44311  // SetEventId sets the EventId field's value.
 44312  func (s *OpsItemEventSummary) SetEventId(v string) *OpsItemEventSummary {
 44313  	s.EventId = &v
 44314  	return s
 44315  }
 44316  
 44317  // SetOpsItemId sets the OpsItemId field's value.
 44318  func (s *OpsItemEventSummary) SetOpsItemId(v string) *OpsItemEventSummary {
 44319  	s.OpsItemId = &v
 44320  	return s
 44321  }
 44322  
 44323  // SetSource sets the Source field's value.
 44324  func (s *OpsItemEventSummary) SetSource(v string) *OpsItemEventSummary {
 44325  	s.Source = &v
 44326  	return s
 44327  }
 44328  
 44329  // Describes an OpsItem filter.
 44330  type OpsItemFilter struct {
 44331  	_ struct{} `type:"structure"`
 44332  
 44333  	// The name of the filter.
 44334  	//
 44335  	// Key is a required field
 44336  	Key *string `type:"string" required:"true" enum:"OpsItemFilterKey"`
 44337  
 44338  	// The operator used by the filter call.
 44339  	//
 44340  	// Operator is a required field
 44341  	Operator *string `type:"string" required:"true" enum:"OpsItemFilterOperator"`
 44342  
 44343  	// The filter value.
 44344  	//
 44345  	// Values is a required field
 44346  	Values []*string `type:"list" required:"true"`
 44347  }
 44348  
 44349  // String returns the string representation.
 44350  //
 44351  // API parameter values that are decorated as "sensitive" in the API will not
 44352  // be included in the string output. The member name will be present, but the
 44353  // value will be replaced with "sensitive".
 44354  func (s OpsItemFilter) String() string {
 44355  	return awsutil.Prettify(s)
 44356  }
 44357  
 44358  // GoString returns the string representation.
 44359  //
 44360  // API parameter values that are decorated as "sensitive" in the API will not
 44361  // be included in the string output. The member name will be present, but the
 44362  // value will be replaced with "sensitive".
 44363  func (s OpsItemFilter) GoString() string {
 44364  	return s.String()
 44365  }
 44366  
 44367  // Validate inspects the fields of the type to determine if they are valid.
 44368  func (s *OpsItemFilter) Validate() error {
 44369  	invalidParams := request.ErrInvalidParams{Context: "OpsItemFilter"}
 44370  	if s.Key == nil {
 44371  		invalidParams.Add(request.NewErrParamRequired("Key"))
 44372  	}
 44373  	if s.Operator == nil {
 44374  		invalidParams.Add(request.NewErrParamRequired("Operator"))
 44375  	}
 44376  	if s.Values == nil {
 44377  		invalidParams.Add(request.NewErrParamRequired("Values"))
 44378  	}
 44379  
 44380  	if invalidParams.Len() > 0 {
 44381  		return invalidParams
 44382  	}
 44383  	return nil
 44384  }
 44385  
 44386  // SetKey sets the Key field's value.
 44387  func (s *OpsItemFilter) SetKey(v string) *OpsItemFilter {
 44388  	s.Key = &v
 44389  	return s
 44390  }
 44391  
 44392  // SetOperator sets the Operator field's value.
 44393  func (s *OpsItemFilter) SetOperator(v string) *OpsItemFilter {
 44394  	s.Operator = &v
 44395  	return s
 44396  }
 44397  
 44398  // SetValues sets the Values field's value.
 44399  func (s *OpsItemFilter) SetValues(v []*string) *OpsItemFilter {
 44400  	s.Values = v
 44401  	return s
 44402  }
 44403  
 44404  // Information about the user or resource that created an OpsItem event.
 44405  type OpsItemIdentity struct {
 44406  	_ struct{} `type:"structure"`
 44407  
 44408  	// The Amazon Resource Name (ARN) of the IAM entity that created the OpsItem
 44409  	// event.
 44410  	Arn *string `type:"string"`
 44411  }
 44412  
 44413  // String returns the string representation.
 44414  //
 44415  // API parameter values that are decorated as "sensitive" in the API will not
 44416  // be included in the string output. The member name will be present, but the
 44417  // value will be replaced with "sensitive".
 44418  func (s OpsItemIdentity) String() string {
 44419  	return awsutil.Prettify(s)
 44420  }
 44421  
 44422  // GoString returns the string representation.
 44423  //
 44424  // API parameter values that are decorated as "sensitive" in the API will not
 44425  // be included in the string output. The member name will be present, but the
 44426  // value will be replaced with "sensitive".
 44427  func (s OpsItemIdentity) GoString() string {
 44428  	return s.String()
 44429  }
 44430  
 44431  // SetArn sets the Arn field's value.
 44432  func (s *OpsItemIdentity) SetArn(v string) *OpsItemIdentity {
 44433  	s.Arn = &v
 44434  	return s
 44435  }
 44436  
 44437  // A specified parameter argument isn't valid. Verify the available arguments
 44438  // and try again.
 44439  type OpsItemInvalidParameterException struct {
 44440  	_            struct{}                  `type:"structure"`
 44441  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 44442  
 44443  	Message_ *string `locationName:"Message" type:"string"`
 44444  
 44445  	ParameterNames []*string `type:"list"`
 44446  }
 44447  
 44448  // String returns the string representation.
 44449  //
 44450  // API parameter values that are decorated as "sensitive" in the API will not
 44451  // be included in the string output. The member name will be present, but the
 44452  // value will be replaced with "sensitive".
 44453  func (s OpsItemInvalidParameterException) String() string {
 44454  	return awsutil.Prettify(s)
 44455  }
 44456  
 44457  // GoString returns the string representation.
 44458  //
 44459  // API parameter values that are decorated as "sensitive" in the API will not
 44460  // be included in the string output. The member name will be present, but the
 44461  // value will be replaced with "sensitive".
 44462  func (s OpsItemInvalidParameterException) GoString() string {
 44463  	return s.String()
 44464  }
 44465  
 44466  func newErrorOpsItemInvalidParameterException(v protocol.ResponseMetadata) error {
 44467  	return &OpsItemInvalidParameterException{
 44468  		RespMetadata: v,
 44469  	}
 44470  }
 44471  
 44472  // Code returns the exception type name.
 44473  func (s *OpsItemInvalidParameterException) Code() string {
 44474  	return "OpsItemInvalidParameterException"
 44475  }
 44476  
 44477  // Message returns the exception's message.
 44478  func (s *OpsItemInvalidParameterException) Message() string {
 44479  	if s.Message_ != nil {
 44480  		return *s.Message_
 44481  	}
 44482  	return ""
 44483  }
 44484  
 44485  // OrigErr always returns nil, satisfies awserr.Error interface.
 44486  func (s *OpsItemInvalidParameterException) OrigErr() error {
 44487  	return nil
 44488  }
 44489  
 44490  func (s *OpsItemInvalidParameterException) Error() string {
 44491  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 44492  }
 44493  
 44494  // Status code returns the HTTP status code for the request's response error.
 44495  func (s *OpsItemInvalidParameterException) StatusCode() int {
 44496  	return s.RespMetadata.StatusCode
 44497  }
 44498  
 44499  // RequestID returns the service's response RequestID for request.
 44500  func (s *OpsItemInvalidParameterException) RequestID() string {
 44501  	return s.RespMetadata.RequestID
 44502  }
 44503  
 44504  // The request caused OpsItems to exceed one or more quotas. For information
 44505  // about OpsItem quotas, see What are the resource limits for OpsCenter? (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-learn-more.html#OpsCenter-learn-more-limits).
 44506  type OpsItemLimitExceededException struct {
 44507  	_            struct{}                  `type:"structure"`
 44508  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 44509  
 44510  	Limit *int64 `type:"integer"`
 44511  
 44512  	LimitType *string `type:"string"`
 44513  
 44514  	Message_ *string `locationName:"Message" type:"string"`
 44515  
 44516  	ResourceTypes []*string `type:"list"`
 44517  }
 44518  
 44519  // String returns the string representation.
 44520  //
 44521  // API parameter values that are decorated as "sensitive" in the API will not
 44522  // be included in the string output. The member name will be present, but the
 44523  // value will be replaced with "sensitive".
 44524  func (s OpsItemLimitExceededException) String() string {
 44525  	return awsutil.Prettify(s)
 44526  }
 44527  
 44528  // GoString returns the string representation.
 44529  //
 44530  // API parameter values that are decorated as "sensitive" in the API will not
 44531  // be included in the string output. The member name will be present, but the
 44532  // value will be replaced with "sensitive".
 44533  func (s OpsItemLimitExceededException) GoString() string {
 44534  	return s.String()
 44535  }
 44536  
 44537  func newErrorOpsItemLimitExceededException(v protocol.ResponseMetadata) error {
 44538  	return &OpsItemLimitExceededException{
 44539  		RespMetadata: v,
 44540  	}
 44541  }
 44542  
 44543  // Code returns the exception type name.
 44544  func (s *OpsItemLimitExceededException) Code() string {
 44545  	return "OpsItemLimitExceededException"
 44546  }
 44547  
 44548  // Message returns the exception's message.
 44549  func (s *OpsItemLimitExceededException) Message() string {
 44550  	if s.Message_ != nil {
 44551  		return *s.Message_
 44552  	}
 44553  	return ""
 44554  }
 44555  
 44556  // OrigErr always returns nil, satisfies awserr.Error interface.
 44557  func (s *OpsItemLimitExceededException) OrigErr() error {
 44558  	return nil
 44559  }
 44560  
 44561  func (s *OpsItemLimitExceededException) Error() string {
 44562  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 44563  }
 44564  
 44565  // Status code returns the HTTP status code for the request's response error.
 44566  func (s *OpsItemLimitExceededException) StatusCode() int {
 44567  	return s.RespMetadata.StatusCode
 44568  }
 44569  
 44570  // RequestID returns the service's response RequestID for request.
 44571  func (s *OpsItemLimitExceededException) RequestID() string {
 44572  	return s.RespMetadata.RequestID
 44573  }
 44574  
 44575  // The specified OpsItem ID doesn't exist. Verify the ID and try again.
 44576  type OpsItemNotFoundException struct {
 44577  	_            struct{}                  `type:"structure"`
 44578  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 44579  
 44580  	Message_ *string `locationName:"Message" type:"string"`
 44581  }
 44582  
 44583  // String returns the string representation.
 44584  //
 44585  // API parameter values that are decorated as "sensitive" in the API will not
 44586  // be included in the string output. The member name will be present, but the
 44587  // value will be replaced with "sensitive".
 44588  func (s OpsItemNotFoundException) String() string {
 44589  	return awsutil.Prettify(s)
 44590  }
 44591  
 44592  // GoString returns the string representation.
 44593  //
 44594  // API parameter values that are decorated as "sensitive" in the API will not
 44595  // be included in the string output. The member name will be present, but the
 44596  // value will be replaced with "sensitive".
 44597  func (s OpsItemNotFoundException) GoString() string {
 44598  	return s.String()
 44599  }
 44600  
 44601  func newErrorOpsItemNotFoundException(v protocol.ResponseMetadata) error {
 44602  	return &OpsItemNotFoundException{
 44603  		RespMetadata: v,
 44604  	}
 44605  }
 44606  
 44607  // Code returns the exception type name.
 44608  func (s *OpsItemNotFoundException) Code() string {
 44609  	return "OpsItemNotFoundException"
 44610  }
 44611  
 44612  // Message returns the exception's message.
 44613  func (s *OpsItemNotFoundException) Message() string {
 44614  	if s.Message_ != nil {
 44615  		return *s.Message_
 44616  	}
 44617  	return ""
 44618  }
 44619  
 44620  // OrigErr always returns nil, satisfies awserr.Error interface.
 44621  func (s *OpsItemNotFoundException) OrigErr() error {
 44622  	return nil
 44623  }
 44624  
 44625  func (s *OpsItemNotFoundException) Error() string {
 44626  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 44627  }
 44628  
 44629  // Status code returns the HTTP status code for the request's response error.
 44630  func (s *OpsItemNotFoundException) StatusCode() int {
 44631  	return s.RespMetadata.StatusCode
 44632  }
 44633  
 44634  // RequestID returns the service's response RequestID for request.
 44635  func (s *OpsItemNotFoundException) RequestID() string {
 44636  	return s.RespMetadata.RequestID
 44637  }
 44638  
 44639  // A notification about the OpsItem.
 44640  type OpsItemNotification struct {
 44641  	_ struct{} `type:"structure"`
 44642  
 44643  	// The Amazon Resource Name (ARN) of an Amazon Simple Notification Service (Amazon
 44644  	// SNS) topic where notifications are sent when this OpsItem is edited or changed.
 44645  	Arn *string `type:"string"`
 44646  }
 44647  
 44648  // String returns the string representation.
 44649  //
 44650  // API parameter values that are decorated as "sensitive" in the API will not
 44651  // be included in the string output. The member name will be present, but the
 44652  // value will be replaced with "sensitive".
 44653  func (s OpsItemNotification) String() string {
 44654  	return awsutil.Prettify(s)
 44655  }
 44656  
 44657  // GoString returns the string representation.
 44658  //
 44659  // API parameter values that are decorated as "sensitive" in the API will not
 44660  // be included in the string output. The member name will be present, but the
 44661  // value will be replaced with "sensitive".
 44662  func (s OpsItemNotification) GoString() string {
 44663  	return s.String()
 44664  }
 44665  
 44666  // SetArn sets the Arn field's value.
 44667  func (s *OpsItemNotification) SetArn(v string) *OpsItemNotification {
 44668  	s.Arn = &v
 44669  	return s
 44670  }
 44671  
 44672  // The Amazon Resource Name (ARN) is already associated with the OpsItem.
 44673  type OpsItemRelatedItemAlreadyExistsException struct {
 44674  	_            struct{}                  `type:"structure"`
 44675  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 44676  
 44677  	Message_ *string `locationName:"Message" type:"string"`
 44678  
 44679  	OpsItemId *string `type:"string"`
 44680  
 44681  	ResourceUri *string `type:"string"`
 44682  }
 44683  
 44684  // String returns the string representation.
 44685  //
 44686  // API parameter values that are decorated as "sensitive" in the API will not
 44687  // be included in the string output. The member name will be present, but the
 44688  // value will be replaced with "sensitive".
 44689  func (s OpsItemRelatedItemAlreadyExistsException) String() string {
 44690  	return awsutil.Prettify(s)
 44691  }
 44692  
 44693  // GoString returns the string representation.
 44694  //
 44695  // API parameter values that are decorated as "sensitive" in the API will not
 44696  // be included in the string output. The member name will be present, but the
 44697  // value will be replaced with "sensitive".
 44698  func (s OpsItemRelatedItemAlreadyExistsException) GoString() string {
 44699  	return s.String()
 44700  }
 44701  
 44702  func newErrorOpsItemRelatedItemAlreadyExistsException(v protocol.ResponseMetadata) error {
 44703  	return &OpsItemRelatedItemAlreadyExistsException{
 44704  		RespMetadata: v,
 44705  	}
 44706  }
 44707  
 44708  // Code returns the exception type name.
 44709  func (s *OpsItemRelatedItemAlreadyExistsException) Code() string {
 44710  	return "OpsItemRelatedItemAlreadyExistsException"
 44711  }
 44712  
 44713  // Message returns the exception's message.
 44714  func (s *OpsItemRelatedItemAlreadyExistsException) Message() string {
 44715  	if s.Message_ != nil {
 44716  		return *s.Message_
 44717  	}
 44718  	return ""
 44719  }
 44720  
 44721  // OrigErr always returns nil, satisfies awserr.Error interface.
 44722  func (s *OpsItemRelatedItemAlreadyExistsException) OrigErr() error {
 44723  	return nil
 44724  }
 44725  
 44726  func (s *OpsItemRelatedItemAlreadyExistsException) Error() string {
 44727  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 44728  }
 44729  
 44730  // Status code returns the HTTP status code for the request's response error.
 44731  func (s *OpsItemRelatedItemAlreadyExistsException) StatusCode() int {
 44732  	return s.RespMetadata.StatusCode
 44733  }
 44734  
 44735  // RequestID returns the service's response RequestID for request.
 44736  func (s *OpsItemRelatedItemAlreadyExistsException) RequestID() string {
 44737  	return s.RespMetadata.RequestID
 44738  }
 44739  
 44740  // The association wasn't found using the parameters you specified in the call.
 44741  // Verify the information and try again.
 44742  type OpsItemRelatedItemAssociationNotFoundException struct {
 44743  	_            struct{}                  `type:"structure"`
 44744  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 44745  
 44746  	Message_ *string `locationName:"Message" type:"string"`
 44747  }
 44748  
 44749  // String returns the string representation.
 44750  //
 44751  // API parameter values that are decorated as "sensitive" in the API will not
 44752  // be included in the string output. The member name will be present, but the
 44753  // value will be replaced with "sensitive".
 44754  func (s OpsItemRelatedItemAssociationNotFoundException) String() string {
 44755  	return awsutil.Prettify(s)
 44756  }
 44757  
 44758  // GoString returns the string representation.
 44759  //
 44760  // API parameter values that are decorated as "sensitive" in the API will not
 44761  // be included in the string output. The member name will be present, but the
 44762  // value will be replaced with "sensitive".
 44763  func (s OpsItemRelatedItemAssociationNotFoundException) GoString() string {
 44764  	return s.String()
 44765  }
 44766  
 44767  func newErrorOpsItemRelatedItemAssociationNotFoundException(v protocol.ResponseMetadata) error {
 44768  	return &OpsItemRelatedItemAssociationNotFoundException{
 44769  		RespMetadata: v,
 44770  	}
 44771  }
 44772  
 44773  // Code returns the exception type name.
 44774  func (s *OpsItemRelatedItemAssociationNotFoundException) Code() string {
 44775  	return "OpsItemRelatedItemAssociationNotFoundException"
 44776  }
 44777  
 44778  // Message returns the exception's message.
 44779  func (s *OpsItemRelatedItemAssociationNotFoundException) Message() string {
 44780  	if s.Message_ != nil {
 44781  		return *s.Message_
 44782  	}
 44783  	return ""
 44784  }
 44785  
 44786  // OrigErr always returns nil, satisfies awserr.Error interface.
 44787  func (s *OpsItemRelatedItemAssociationNotFoundException) OrigErr() error {
 44788  	return nil
 44789  }
 44790  
 44791  func (s *OpsItemRelatedItemAssociationNotFoundException) Error() string {
 44792  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 44793  }
 44794  
 44795  // Status code returns the HTTP status code for the request's response error.
 44796  func (s *OpsItemRelatedItemAssociationNotFoundException) StatusCode() int {
 44797  	return s.RespMetadata.StatusCode
 44798  }
 44799  
 44800  // RequestID returns the service's response RequestID for request.
 44801  func (s *OpsItemRelatedItemAssociationNotFoundException) RequestID() string {
 44802  	return s.RespMetadata.RequestID
 44803  }
 44804  
 44805  // Summary information about related-item resources for an OpsItem.
 44806  type OpsItemRelatedItemSummary struct {
 44807  	_ struct{} `type:"structure"`
 44808  
 44809  	// The association ID.
 44810  	AssociationId *string `type:"string"`
 44811  
 44812  	// The association type.
 44813  	AssociationType *string `type:"string"`
 44814  
 44815  	// Information about the user or resource that created an OpsItem event.
 44816  	CreatedBy *OpsItemIdentity `type:"structure"`
 44817  
 44818  	// The time the related-item association was created.
 44819  	CreatedTime *time.Time `type:"timestamp"`
 44820  
 44821  	// Information about the user or resource that created an OpsItem event.
 44822  	LastModifiedBy *OpsItemIdentity `type:"structure"`
 44823  
 44824  	// The time the related-item association was last updated.
 44825  	LastModifiedTime *time.Time `type:"timestamp"`
 44826  
 44827  	// The OpsItem ID.
 44828  	OpsItemId *string `type:"string"`
 44829  
 44830  	// The resource type.
 44831  	ResourceType *string `type:"string"`
 44832  
 44833  	// The Amazon Resource Name (ARN) of the related-item resource.
 44834  	ResourceUri *string `type:"string"`
 44835  }
 44836  
 44837  // String returns the string representation.
 44838  //
 44839  // API parameter values that are decorated as "sensitive" in the API will not
 44840  // be included in the string output. The member name will be present, but the
 44841  // value will be replaced with "sensitive".
 44842  func (s OpsItemRelatedItemSummary) String() string {
 44843  	return awsutil.Prettify(s)
 44844  }
 44845  
 44846  // GoString returns the string representation.
 44847  //
 44848  // API parameter values that are decorated as "sensitive" in the API will not
 44849  // be included in the string output. The member name will be present, but the
 44850  // value will be replaced with "sensitive".
 44851  func (s OpsItemRelatedItemSummary) GoString() string {
 44852  	return s.String()
 44853  }
 44854  
 44855  // SetAssociationId sets the AssociationId field's value.
 44856  func (s *OpsItemRelatedItemSummary) SetAssociationId(v string) *OpsItemRelatedItemSummary {
 44857  	s.AssociationId = &v
 44858  	return s
 44859  }
 44860  
 44861  // SetAssociationType sets the AssociationType field's value.
 44862  func (s *OpsItemRelatedItemSummary) SetAssociationType(v string) *OpsItemRelatedItemSummary {
 44863  	s.AssociationType = &v
 44864  	return s
 44865  }
 44866  
 44867  // SetCreatedBy sets the CreatedBy field's value.
 44868  func (s *OpsItemRelatedItemSummary) SetCreatedBy(v *OpsItemIdentity) *OpsItemRelatedItemSummary {
 44869  	s.CreatedBy = v
 44870  	return s
 44871  }
 44872  
 44873  // SetCreatedTime sets the CreatedTime field's value.
 44874  func (s *OpsItemRelatedItemSummary) SetCreatedTime(v time.Time) *OpsItemRelatedItemSummary {
 44875  	s.CreatedTime = &v
 44876  	return s
 44877  }
 44878  
 44879  // SetLastModifiedBy sets the LastModifiedBy field's value.
 44880  func (s *OpsItemRelatedItemSummary) SetLastModifiedBy(v *OpsItemIdentity) *OpsItemRelatedItemSummary {
 44881  	s.LastModifiedBy = v
 44882  	return s
 44883  }
 44884  
 44885  // SetLastModifiedTime sets the LastModifiedTime field's value.
 44886  func (s *OpsItemRelatedItemSummary) SetLastModifiedTime(v time.Time) *OpsItemRelatedItemSummary {
 44887  	s.LastModifiedTime = &v
 44888  	return s
 44889  }
 44890  
 44891  // SetOpsItemId sets the OpsItemId field's value.
 44892  func (s *OpsItemRelatedItemSummary) SetOpsItemId(v string) *OpsItemRelatedItemSummary {
 44893  	s.OpsItemId = &v
 44894  	return s
 44895  }
 44896  
 44897  // SetResourceType sets the ResourceType field's value.
 44898  func (s *OpsItemRelatedItemSummary) SetResourceType(v string) *OpsItemRelatedItemSummary {
 44899  	s.ResourceType = &v
 44900  	return s
 44901  }
 44902  
 44903  // SetResourceUri sets the ResourceUri field's value.
 44904  func (s *OpsItemRelatedItemSummary) SetResourceUri(v string) *OpsItemRelatedItemSummary {
 44905  	s.ResourceUri = &v
 44906  	return s
 44907  }
 44908  
 44909  // Describes a filter for a specific list of related-item resources.
 44910  type OpsItemRelatedItemsFilter struct {
 44911  	_ struct{} `type:"structure"`
 44912  
 44913  	// The name of the filter key. Supported values include ResourceUri, ResourceType,
 44914  	// or AssociationId.
 44915  	//
 44916  	// Key is a required field
 44917  	Key *string `type:"string" required:"true" enum:"OpsItemRelatedItemsFilterKey"`
 44918  
 44919  	// The operator used by the filter call. The only supported operator is EQUAL.
 44920  	//
 44921  	// Operator is a required field
 44922  	Operator *string `type:"string" required:"true" enum:"OpsItemRelatedItemsFilterOperator"`
 44923  
 44924  	// The values for the filter.
 44925  	//
 44926  	// Values is a required field
 44927  	Values []*string `type:"list" required:"true"`
 44928  }
 44929  
 44930  // String returns the string representation.
 44931  //
 44932  // API parameter values that are decorated as "sensitive" in the API will not
 44933  // be included in the string output. The member name will be present, but the
 44934  // value will be replaced with "sensitive".
 44935  func (s OpsItemRelatedItemsFilter) String() string {
 44936  	return awsutil.Prettify(s)
 44937  }
 44938  
 44939  // GoString returns the string representation.
 44940  //
 44941  // API parameter values that are decorated as "sensitive" in the API will not
 44942  // be included in the string output. The member name will be present, but the
 44943  // value will be replaced with "sensitive".
 44944  func (s OpsItemRelatedItemsFilter) GoString() string {
 44945  	return s.String()
 44946  }
 44947  
 44948  // Validate inspects the fields of the type to determine if they are valid.
 44949  func (s *OpsItemRelatedItemsFilter) Validate() error {
 44950  	invalidParams := request.ErrInvalidParams{Context: "OpsItemRelatedItemsFilter"}
 44951  	if s.Key == nil {
 44952  		invalidParams.Add(request.NewErrParamRequired("Key"))
 44953  	}
 44954  	if s.Operator == nil {
 44955  		invalidParams.Add(request.NewErrParamRequired("Operator"))
 44956  	}
 44957  	if s.Values == nil {
 44958  		invalidParams.Add(request.NewErrParamRequired("Values"))
 44959  	}
 44960  
 44961  	if invalidParams.Len() > 0 {
 44962  		return invalidParams
 44963  	}
 44964  	return nil
 44965  }
 44966  
 44967  // SetKey sets the Key field's value.
 44968  func (s *OpsItemRelatedItemsFilter) SetKey(v string) *OpsItemRelatedItemsFilter {
 44969  	s.Key = &v
 44970  	return s
 44971  }
 44972  
 44973  // SetOperator sets the Operator field's value.
 44974  func (s *OpsItemRelatedItemsFilter) SetOperator(v string) *OpsItemRelatedItemsFilter {
 44975  	s.Operator = &v
 44976  	return s
 44977  }
 44978  
 44979  // SetValues sets the Values field's value.
 44980  func (s *OpsItemRelatedItemsFilter) SetValues(v []*string) *OpsItemRelatedItemsFilter {
 44981  	s.Values = v
 44982  	return s
 44983  }
 44984  
 44985  // A count of OpsItems.
 44986  type OpsItemSummary struct {
 44987  	_ struct{} `type:"structure"`
 44988  
 44989  	// The time a runbook workflow ended. Currently reported only for the OpsItem
 44990  	// type /aws/changerequest.
 44991  	ActualEndTime *time.Time `type:"timestamp"`
 44992  
 44993  	// The time a runbook workflow started. Currently reported only for the OpsItem
 44994  	// type /aws/changerequest.
 44995  	ActualStartTime *time.Time `type:"timestamp"`
 44996  
 44997  	// A list of OpsItems by category.
 44998  	Category *string `min:"1" type:"string"`
 44999  
 45000  	// The Amazon Resource Name (ARN) of the IAM entity that created the OpsItem.
 45001  	CreatedBy *string `type:"string"`
 45002  
 45003  	// The date and time the OpsItem was created.
 45004  	CreatedTime *time.Time `type:"timestamp"`
 45005  
 45006  	// The Amazon Resource Name (ARN) of the IAM entity that created the OpsItem.
 45007  	LastModifiedBy *string `type:"string"`
 45008  
 45009  	// The date and time the OpsItem was last updated.
 45010  	LastModifiedTime *time.Time `type:"timestamp"`
 45011  
 45012  	// Operational data is custom data that provides useful reference details about
 45013  	// the OpsItem.
 45014  	OperationalData map[string]*OpsItemDataValue `type:"map"`
 45015  
 45016  	// The ID of the OpsItem.
 45017  	OpsItemId *string `type:"string"`
 45018  
 45019  	// The type of OpsItem. Currently, the only valid values are /aws/changerequest
 45020  	// and /aws/issue.
 45021  	OpsItemType *string `type:"string"`
 45022  
 45023  	// The time specified in a change request for a runbook workflow to end. Currently
 45024  	// supported only for the OpsItem type /aws/changerequest.
 45025  	PlannedEndTime *time.Time `type:"timestamp"`
 45026  
 45027  	// The time specified in a change request for a runbook workflow to start. Currently
 45028  	// supported only for the OpsItem type /aws/changerequest.
 45029  	PlannedStartTime *time.Time `type:"timestamp"`
 45030  
 45031  	// The importance of this OpsItem in relation to other OpsItems in the system.
 45032  	Priority *int64 `min:"1" type:"integer"`
 45033  
 45034  	// A list of OpsItems by severity.
 45035  	Severity *string `min:"1" type:"string"`
 45036  
 45037  	// The impacted Amazon Web Services resource.
 45038  	Source *string `min:"1" type:"string"`
 45039  
 45040  	// The OpsItem status. Status can be Open, In Progress, or Resolved.
 45041  	Status *string `type:"string" enum:"OpsItemStatus"`
 45042  
 45043  	// A short heading that describes the nature of the OpsItem and the impacted
 45044  	// resource.
 45045  	Title *string `min:"1" type:"string"`
 45046  }
 45047  
 45048  // String returns the string representation.
 45049  //
 45050  // API parameter values that are decorated as "sensitive" in the API will not
 45051  // be included in the string output. The member name will be present, but the
 45052  // value will be replaced with "sensitive".
 45053  func (s OpsItemSummary) String() string {
 45054  	return awsutil.Prettify(s)
 45055  }
 45056  
 45057  // GoString returns the string representation.
 45058  //
 45059  // API parameter values that are decorated as "sensitive" in the API will not
 45060  // be included in the string output. The member name will be present, but the
 45061  // value will be replaced with "sensitive".
 45062  func (s OpsItemSummary) GoString() string {
 45063  	return s.String()
 45064  }
 45065  
 45066  // SetActualEndTime sets the ActualEndTime field's value.
 45067  func (s *OpsItemSummary) SetActualEndTime(v time.Time) *OpsItemSummary {
 45068  	s.ActualEndTime = &v
 45069  	return s
 45070  }
 45071  
 45072  // SetActualStartTime sets the ActualStartTime field's value.
 45073  func (s *OpsItemSummary) SetActualStartTime(v time.Time) *OpsItemSummary {
 45074  	s.ActualStartTime = &v
 45075  	return s
 45076  }
 45077  
 45078  // SetCategory sets the Category field's value.
 45079  func (s *OpsItemSummary) SetCategory(v string) *OpsItemSummary {
 45080  	s.Category = &v
 45081  	return s
 45082  }
 45083  
 45084  // SetCreatedBy sets the CreatedBy field's value.
 45085  func (s *OpsItemSummary) SetCreatedBy(v string) *OpsItemSummary {
 45086  	s.CreatedBy = &v
 45087  	return s
 45088  }
 45089  
 45090  // SetCreatedTime sets the CreatedTime field's value.
 45091  func (s *OpsItemSummary) SetCreatedTime(v time.Time) *OpsItemSummary {
 45092  	s.CreatedTime = &v
 45093  	return s
 45094  }
 45095  
 45096  // SetLastModifiedBy sets the LastModifiedBy field's value.
 45097  func (s *OpsItemSummary) SetLastModifiedBy(v string) *OpsItemSummary {
 45098  	s.LastModifiedBy = &v
 45099  	return s
 45100  }
 45101  
 45102  // SetLastModifiedTime sets the LastModifiedTime field's value.
 45103  func (s *OpsItemSummary) SetLastModifiedTime(v time.Time) *OpsItemSummary {
 45104  	s.LastModifiedTime = &v
 45105  	return s
 45106  }
 45107  
 45108  // SetOperationalData sets the OperationalData field's value.
 45109  func (s *OpsItemSummary) SetOperationalData(v map[string]*OpsItemDataValue) *OpsItemSummary {
 45110  	s.OperationalData = v
 45111  	return s
 45112  }
 45113  
 45114  // SetOpsItemId sets the OpsItemId field's value.
 45115  func (s *OpsItemSummary) SetOpsItemId(v string) *OpsItemSummary {
 45116  	s.OpsItemId = &v
 45117  	return s
 45118  }
 45119  
 45120  // SetOpsItemType sets the OpsItemType field's value.
 45121  func (s *OpsItemSummary) SetOpsItemType(v string) *OpsItemSummary {
 45122  	s.OpsItemType = &v
 45123  	return s
 45124  }
 45125  
 45126  // SetPlannedEndTime sets the PlannedEndTime field's value.
 45127  func (s *OpsItemSummary) SetPlannedEndTime(v time.Time) *OpsItemSummary {
 45128  	s.PlannedEndTime = &v
 45129  	return s
 45130  }
 45131  
 45132  // SetPlannedStartTime sets the PlannedStartTime field's value.
 45133  func (s *OpsItemSummary) SetPlannedStartTime(v time.Time) *OpsItemSummary {
 45134  	s.PlannedStartTime = &v
 45135  	return s
 45136  }
 45137  
 45138  // SetPriority sets the Priority field's value.
 45139  func (s *OpsItemSummary) SetPriority(v int64) *OpsItemSummary {
 45140  	s.Priority = &v
 45141  	return s
 45142  }
 45143  
 45144  // SetSeverity sets the Severity field's value.
 45145  func (s *OpsItemSummary) SetSeverity(v string) *OpsItemSummary {
 45146  	s.Severity = &v
 45147  	return s
 45148  }
 45149  
 45150  // SetSource sets the Source field's value.
 45151  func (s *OpsItemSummary) SetSource(v string) *OpsItemSummary {
 45152  	s.Source = &v
 45153  	return s
 45154  }
 45155  
 45156  // SetStatus sets the Status field's value.
 45157  func (s *OpsItemSummary) SetStatus(v string) *OpsItemSummary {
 45158  	s.Status = &v
 45159  	return s
 45160  }
 45161  
 45162  // SetTitle sets the Title field's value.
 45163  func (s *OpsItemSummary) SetTitle(v string) *OpsItemSummary {
 45164  	s.Title = &v
 45165  	return s
 45166  }
 45167  
 45168  // Operational metadata for an application in Application Manager.
 45169  type OpsMetadata struct {
 45170  	_ struct{} `type:"structure"`
 45171  
 45172  	// The date the OpsMetadata objects was created.
 45173  	CreationDate *time.Time `type:"timestamp"`
 45174  
 45175  	// The date the OpsMetadata object was last updated.
 45176  	LastModifiedDate *time.Time `type:"timestamp"`
 45177  
 45178  	// The user name who last updated the OpsMetadata object.
 45179  	LastModifiedUser *string `type:"string"`
 45180  
 45181  	// The Amazon Resource Name (ARN) of the OpsMetadata Object or blob.
 45182  	OpsMetadataArn *string `min:"1" type:"string"`
 45183  
 45184  	// The ID of the Application Manager application.
 45185  	ResourceId *string `min:"1" type:"string"`
 45186  }
 45187  
 45188  // String returns the string representation.
 45189  //
 45190  // API parameter values that are decorated as "sensitive" in the API will not
 45191  // be included in the string output. The member name will be present, but the
 45192  // value will be replaced with "sensitive".
 45193  func (s OpsMetadata) String() string {
 45194  	return awsutil.Prettify(s)
 45195  }
 45196  
 45197  // GoString returns the string representation.
 45198  //
 45199  // API parameter values that are decorated as "sensitive" in the API will not
 45200  // be included in the string output. The member name will be present, but the
 45201  // value will be replaced with "sensitive".
 45202  func (s OpsMetadata) GoString() string {
 45203  	return s.String()
 45204  }
 45205  
 45206  // SetCreationDate sets the CreationDate field's value.
 45207  func (s *OpsMetadata) SetCreationDate(v time.Time) *OpsMetadata {
 45208  	s.CreationDate = &v
 45209  	return s
 45210  }
 45211  
 45212  // SetLastModifiedDate sets the LastModifiedDate field's value.
 45213  func (s *OpsMetadata) SetLastModifiedDate(v time.Time) *OpsMetadata {
 45214  	s.LastModifiedDate = &v
 45215  	return s
 45216  }
 45217  
 45218  // SetLastModifiedUser sets the LastModifiedUser field's value.
 45219  func (s *OpsMetadata) SetLastModifiedUser(v string) *OpsMetadata {
 45220  	s.LastModifiedUser = &v
 45221  	return s
 45222  }
 45223  
 45224  // SetOpsMetadataArn sets the OpsMetadataArn field's value.
 45225  func (s *OpsMetadata) SetOpsMetadataArn(v string) *OpsMetadata {
 45226  	s.OpsMetadataArn = &v
 45227  	return s
 45228  }
 45229  
 45230  // SetResourceId sets the ResourceId field's value.
 45231  func (s *OpsMetadata) SetResourceId(v string) *OpsMetadata {
 45232  	s.ResourceId = &v
 45233  	return s
 45234  }
 45235  
 45236  // An OpsMetadata object already exists for the selected resource.
 45237  type OpsMetadataAlreadyExistsException struct {
 45238  	_            struct{}                  `type:"structure"`
 45239  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 45240  
 45241  	Message_ *string `locationName:"message" type:"string"`
 45242  }
 45243  
 45244  // String returns the string representation.
 45245  //
 45246  // API parameter values that are decorated as "sensitive" in the API will not
 45247  // be included in the string output. The member name will be present, but the
 45248  // value will be replaced with "sensitive".
 45249  func (s OpsMetadataAlreadyExistsException) String() string {
 45250  	return awsutil.Prettify(s)
 45251  }
 45252  
 45253  // GoString returns the string representation.
 45254  //
 45255  // API parameter values that are decorated as "sensitive" in the API will not
 45256  // be included in the string output. The member name will be present, but the
 45257  // value will be replaced with "sensitive".
 45258  func (s OpsMetadataAlreadyExistsException) GoString() string {
 45259  	return s.String()
 45260  }
 45261  
 45262  func newErrorOpsMetadataAlreadyExistsException(v protocol.ResponseMetadata) error {
 45263  	return &OpsMetadataAlreadyExistsException{
 45264  		RespMetadata: v,
 45265  	}
 45266  }
 45267  
 45268  // Code returns the exception type name.
 45269  func (s *OpsMetadataAlreadyExistsException) Code() string {
 45270  	return "OpsMetadataAlreadyExistsException"
 45271  }
 45272  
 45273  // Message returns the exception's message.
 45274  func (s *OpsMetadataAlreadyExistsException) Message() string {
 45275  	if s.Message_ != nil {
 45276  		return *s.Message_
 45277  	}
 45278  	return ""
 45279  }
 45280  
 45281  // OrigErr always returns nil, satisfies awserr.Error interface.
 45282  func (s *OpsMetadataAlreadyExistsException) OrigErr() error {
 45283  	return nil
 45284  }
 45285  
 45286  func (s *OpsMetadataAlreadyExistsException) Error() string {
 45287  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 45288  }
 45289  
 45290  // Status code returns the HTTP status code for the request's response error.
 45291  func (s *OpsMetadataAlreadyExistsException) StatusCode() int {
 45292  	return s.RespMetadata.StatusCode
 45293  }
 45294  
 45295  // RequestID returns the service's response RequestID for request.
 45296  func (s *OpsMetadataAlreadyExistsException) RequestID() string {
 45297  	return s.RespMetadata.RequestID
 45298  }
 45299  
 45300  // A filter to limit the number of OpsMetadata objects displayed.
 45301  type OpsMetadataFilter struct {
 45302  	_ struct{} `type:"structure"`
 45303  
 45304  	// A filter key.
 45305  	//
 45306  	// Key is a required field
 45307  	Key *string `min:"1" type:"string" required:"true"`
 45308  
 45309  	// A filter value.
 45310  	//
 45311  	// Values is a required field
 45312  	Values []*string `min:"1" type:"list" required:"true"`
 45313  }
 45314  
 45315  // String returns the string representation.
 45316  //
 45317  // API parameter values that are decorated as "sensitive" in the API will not
 45318  // be included in the string output. The member name will be present, but the
 45319  // value will be replaced with "sensitive".
 45320  func (s OpsMetadataFilter) String() string {
 45321  	return awsutil.Prettify(s)
 45322  }
 45323  
 45324  // GoString returns the string representation.
 45325  //
 45326  // API parameter values that are decorated as "sensitive" in the API will not
 45327  // be included in the string output. The member name will be present, but the
 45328  // value will be replaced with "sensitive".
 45329  func (s OpsMetadataFilter) GoString() string {
 45330  	return s.String()
 45331  }
 45332  
 45333  // Validate inspects the fields of the type to determine if they are valid.
 45334  func (s *OpsMetadataFilter) Validate() error {
 45335  	invalidParams := request.ErrInvalidParams{Context: "OpsMetadataFilter"}
 45336  	if s.Key == nil {
 45337  		invalidParams.Add(request.NewErrParamRequired("Key"))
 45338  	}
 45339  	if s.Key != nil && len(*s.Key) < 1 {
 45340  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 45341  	}
 45342  	if s.Values == nil {
 45343  		invalidParams.Add(request.NewErrParamRequired("Values"))
 45344  	}
 45345  	if s.Values != nil && len(s.Values) < 1 {
 45346  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 45347  	}
 45348  
 45349  	if invalidParams.Len() > 0 {
 45350  		return invalidParams
 45351  	}
 45352  	return nil
 45353  }
 45354  
 45355  // SetKey sets the Key field's value.
 45356  func (s *OpsMetadataFilter) SetKey(v string) *OpsMetadataFilter {
 45357  	s.Key = &v
 45358  	return s
 45359  }
 45360  
 45361  // SetValues sets the Values field's value.
 45362  func (s *OpsMetadataFilter) SetValues(v []*string) *OpsMetadataFilter {
 45363  	s.Values = v
 45364  	return s
 45365  }
 45366  
 45367  // One of the arguments passed is invalid.
 45368  type OpsMetadataInvalidArgumentException struct {
 45369  	_            struct{}                  `type:"structure"`
 45370  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 45371  
 45372  	Message_ *string `locationName:"message" type:"string"`
 45373  }
 45374  
 45375  // String returns the string representation.
 45376  //
 45377  // API parameter values that are decorated as "sensitive" in the API will not
 45378  // be included in the string output. The member name will be present, but the
 45379  // value will be replaced with "sensitive".
 45380  func (s OpsMetadataInvalidArgumentException) String() string {
 45381  	return awsutil.Prettify(s)
 45382  }
 45383  
 45384  // GoString returns the string representation.
 45385  //
 45386  // API parameter values that are decorated as "sensitive" in the API will not
 45387  // be included in the string output. The member name will be present, but the
 45388  // value will be replaced with "sensitive".
 45389  func (s OpsMetadataInvalidArgumentException) GoString() string {
 45390  	return s.String()
 45391  }
 45392  
 45393  func newErrorOpsMetadataInvalidArgumentException(v protocol.ResponseMetadata) error {
 45394  	return &OpsMetadataInvalidArgumentException{
 45395  		RespMetadata: v,
 45396  	}
 45397  }
 45398  
 45399  // Code returns the exception type name.
 45400  func (s *OpsMetadataInvalidArgumentException) Code() string {
 45401  	return "OpsMetadataInvalidArgumentException"
 45402  }
 45403  
 45404  // Message returns the exception's message.
 45405  func (s *OpsMetadataInvalidArgumentException) Message() string {
 45406  	if s.Message_ != nil {
 45407  		return *s.Message_
 45408  	}
 45409  	return ""
 45410  }
 45411  
 45412  // OrigErr always returns nil, satisfies awserr.Error interface.
 45413  func (s *OpsMetadataInvalidArgumentException) OrigErr() error {
 45414  	return nil
 45415  }
 45416  
 45417  func (s *OpsMetadataInvalidArgumentException) Error() string {
 45418  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 45419  }
 45420  
 45421  // Status code returns the HTTP status code for the request's response error.
 45422  func (s *OpsMetadataInvalidArgumentException) StatusCode() int {
 45423  	return s.RespMetadata.StatusCode
 45424  }
 45425  
 45426  // RequestID returns the service's response RequestID for request.
 45427  func (s *OpsMetadataInvalidArgumentException) RequestID() string {
 45428  	return s.RespMetadata.RequestID
 45429  }
 45430  
 45431  // The OpsMetadata object exceeds the maximum number of OpsMetadata keys that
 45432  // you can assign to an application in Application Manager.
 45433  type OpsMetadataKeyLimitExceededException struct {
 45434  	_            struct{}                  `type:"structure"`
 45435  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 45436  
 45437  	Message_ *string `locationName:"message" type:"string"`
 45438  }
 45439  
 45440  // String returns the string representation.
 45441  //
 45442  // API parameter values that are decorated as "sensitive" in the API will not
 45443  // be included in the string output. The member name will be present, but the
 45444  // value will be replaced with "sensitive".
 45445  func (s OpsMetadataKeyLimitExceededException) String() string {
 45446  	return awsutil.Prettify(s)
 45447  }
 45448  
 45449  // GoString returns the string representation.
 45450  //
 45451  // API parameter values that are decorated as "sensitive" in the API will not
 45452  // be included in the string output. The member name will be present, but the
 45453  // value will be replaced with "sensitive".
 45454  func (s OpsMetadataKeyLimitExceededException) GoString() string {
 45455  	return s.String()
 45456  }
 45457  
 45458  func newErrorOpsMetadataKeyLimitExceededException(v protocol.ResponseMetadata) error {
 45459  	return &OpsMetadataKeyLimitExceededException{
 45460  		RespMetadata: v,
 45461  	}
 45462  }
 45463  
 45464  // Code returns the exception type name.
 45465  func (s *OpsMetadataKeyLimitExceededException) Code() string {
 45466  	return "OpsMetadataKeyLimitExceededException"
 45467  }
 45468  
 45469  // Message returns the exception's message.
 45470  func (s *OpsMetadataKeyLimitExceededException) Message() string {
 45471  	if s.Message_ != nil {
 45472  		return *s.Message_
 45473  	}
 45474  	return ""
 45475  }
 45476  
 45477  // OrigErr always returns nil, satisfies awserr.Error interface.
 45478  func (s *OpsMetadataKeyLimitExceededException) OrigErr() error {
 45479  	return nil
 45480  }
 45481  
 45482  func (s *OpsMetadataKeyLimitExceededException) Error() string {
 45483  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 45484  }
 45485  
 45486  // Status code returns the HTTP status code for the request's response error.
 45487  func (s *OpsMetadataKeyLimitExceededException) StatusCode() int {
 45488  	return s.RespMetadata.StatusCode
 45489  }
 45490  
 45491  // RequestID returns the service's response RequestID for request.
 45492  func (s *OpsMetadataKeyLimitExceededException) RequestID() string {
 45493  	return s.RespMetadata.RequestID
 45494  }
 45495  
 45496  // Your account reached the maximum number of OpsMetadata objects allowed by
 45497  // Application Manager. The maximum is 200 OpsMetadata objects. Delete one or
 45498  // more OpsMetadata object and try again.
 45499  type OpsMetadataLimitExceededException struct {
 45500  	_            struct{}                  `type:"structure"`
 45501  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 45502  
 45503  	Message_ *string `locationName:"message" type:"string"`
 45504  }
 45505  
 45506  // String returns the string representation.
 45507  //
 45508  // API parameter values that are decorated as "sensitive" in the API will not
 45509  // be included in the string output. The member name will be present, but the
 45510  // value will be replaced with "sensitive".
 45511  func (s OpsMetadataLimitExceededException) String() string {
 45512  	return awsutil.Prettify(s)
 45513  }
 45514  
 45515  // GoString returns the string representation.
 45516  //
 45517  // API parameter values that are decorated as "sensitive" in the API will not
 45518  // be included in the string output. The member name will be present, but the
 45519  // value will be replaced with "sensitive".
 45520  func (s OpsMetadataLimitExceededException) GoString() string {
 45521  	return s.String()
 45522  }
 45523  
 45524  func newErrorOpsMetadataLimitExceededException(v protocol.ResponseMetadata) error {
 45525  	return &OpsMetadataLimitExceededException{
 45526  		RespMetadata: v,
 45527  	}
 45528  }
 45529  
 45530  // Code returns the exception type name.
 45531  func (s *OpsMetadataLimitExceededException) Code() string {
 45532  	return "OpsMetadataLimitExceededException"
 45533  }
 45534  
 45535  // Message returns the exception's message.
 45536  func (s *OpsMetadataLimitExceededException) Message() string {
 45537  	if s.Message_ != nil {
 45538  		return *s.Message_
 45539  	}
 45540  	return ""
 45541  }
 45542  
 45543  // OrigErr always returns nil, satisfies awserr.Error interface.
 45544  func (s *OpsMetadataLimitExceededException) OrigErr() error {
 45545  	return nil
 45546  }
 45547  
 45548  func (s *OpsMetadataLimitExceededException) Error() string {
 45549  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 45550  }
 45551  
 45552  // Status code returns the HTTP status code for the request's response error.
 45553  func (s *OpsMetadataLimitExceededException) StatusCode() int {
 45554  	return s.RespMetadata.StatusCode
 45555  }
 45556  
 45557  // RequestID returns the service's response RequestID for request.
 45558  func (s *OpsMetadataLimitExceededException) RequestID() string {
 45559  	return s.RespMetadata.RequestID
 45560  }
 45561  
 45562  // The OpsMetadata object doesn't exist.
 45563  type OpsMetadataNotFoundException struct {
 45564  	_            struct{}                  `type:"structure"`
 45565  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 45566  
 45567  	Message_ *string `locationName:"message" type:"string"`
 45568  }
 45569  
 45570  // String returns the string representation.
 45571  //
 45572  // API parameter values that are decorated as "sensitive" in the API will not
 45573  // be included in the string output. The member name will be present, but the
 45574  // value will be replaced with "sensitive".
 45575  func (s OpsMetadataNotFoundException) String() string {
 45576  	return awsutil.Prettify(s)
 45577  }
 45578  
 45579  // GoString returns the string representation.
 45580  //
 45581  // API parameter values that are decorated as "sensitive" in the API will not
 45582  // be included in the string output. The member name will be present, but the
 45583  // value will be replaced with "sensitive".
 45584  func (s OpsMetadataNotFoundException) GoString() string {
 45585  	return s.String()
 45586  }
 45587  
 45588  func newErrorOpsMetadataNotFoundException(v protocol.ResponseMetadata) error {
 45589  	return &OpsMetadataNotFoundException{
 45590  		RespMetadata: v,
 45591  	}
 45592  }
 45593  
 45594  // Code returns the exception type name.
 45595  func (s *OpsMetadataNotFoundException) Code() string {
 45596  	return "OpsMetadataNotFoundException"
 45597  }
 45598  
 45599  // Message returns the exception's message.
 45600  func (s *OpsMetadataNotFoundException) Message() string {
 45601  	if s.Message_ != nil {
 45602  		return *s.Message_
 45603  	}
 45604  	return ""
 45605  }
 45606  
 45607  // OrigErr always returns nil, satisfies awserr.Error interface.
 45608  func (s *OpsMetadataNotFoundException) OrigErr() error {
 45609  	return nil
 45610  }
 45611  
 45612  func (s *OpsMetadataNotFoundException) Error() string {
 45613  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 45614  }
 45615  
 45616  // Status code returns the HTTP status code for the request's response error.
 45617  func (s *OpsMetadataNotFoundException) StatusCode() int {
 45618  	return s.RespMetadata.StatusCode
 45619  }
 45620  
 45621  // RequestID returns the service's response RequestID for request.
 45622  func (s *OpsMetadataNotFoundException) RequestID() string {
 45623  	return s.RespMetadata.RequestID
 45624  }
 45625  
 45626  // The system is processing too many concurrent updates. Wait a few moments
 45627  // and try again.
 45628  type OpsMetadataTooManyUpdatesException struct {
 45629  	_            struct{}                  `type:"structure"`
 45630  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 45631  
 45632  	Message_ *string `locationName:"message" type:"string"`
 45633  }
 45634  
 45635  // String returns the string representation.
 45636  //
 45637  // API parameter values that are decorated as "sensitive" in the API will not
 45638  // be included in the string output. The member name will be present, but the
 45639  // value will be replaced with "sensitive".
 45640  func (s OpsMetadataTooManyUpdatesException) String() string {
 45641  	return awsutil.Prettify(s)
 45642  }
 45643  
 45644  // GoString returns the string representation.
 45645  //
 45646  // API parameter values that are decorated as "sensitive" in the API will not
 45647  // be included in the string output. The member name will be present, but the
 45648  // value will be replaced with "sensitive".
 45649  func (s OpsMetadataTooManyUpdatesException) GoString() string {
 45650  	return s.String()
 45651  }
 45652  
 45653  func newErrorOpsMetadataTooManyUpdatesException(v protocol.ResponseMetadata) error {
 45654  	return &OpsMetadataTooManyUpdatesException{
 45655  		RespMetadata: v,
 45656  	}
 45657  }
 45658  
 45659  // Code returns the exception type name.
 45660  func (s *OpsMetadataTooManyUpdatesException) Code() string {
 45661  	return "OpsMetadataTooManyUpdatesException"
 45662  }
 45663  
 45664  // Message returns the exception's message.
 45665  func (s *OpsMetadataTooManyUpdatesException) Message() string {
 45666  	if s.Message_ != nil {
 45667  		return *s.Message_
 45668  	}
 45669  	return ""
 45670  }
 45671  
 45672  // OrigErr always returns nil, satisfies awserr.Error interface.
 45673  func (s *OpsMetadataTooManyUpdatesException) OrigErr() error {
 45674  	return nil
 45675  }
 45676  
 45677  func (s *OpsMetadataTooManyUpdatesException) Error() string {
 45678  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 45679  }
 45680  
 45681  // Status code returns the HTTP status code for the request's response error.
 45682  func (s *OpsMetadataTooManyUpdatesException) StatusCode() int {
 45683  	return s.RespMetadata.StatusCode
 45684  }
 45685  
 45686  // RequestID returns the service's response RequestID for request.
 45687  func (s *OpsMetadataTooManyUpdatesException) RequestID() string {
 45688  	return s.RespMetadata.RequestID
 45689  }
 45690  
 45691  // The OpsItem data type to return.
 45692  type OpsResultAttribute struct {
 45693  	_ struct{} `type:"structure"`
 45694  
 45695  	// Name of the data type. Valid value: AWS:OpsItem, AWS:EC2InstanceInformation,
 45696  	// AWS:OpsItemTrendline, or AWS:ComplianceSummary.
 45697  	//
 45698  	// TypeName is a required field
 45699  	TypeName *string `min:"1" type:"string" required:"true"`
 45700  }
 45701  
 45702  // String returns the string representation.
 45703  //
 45704  // API parameter values that are decorated as "sensitive" in the API will not
 45705  // be included in the string output. The member name will be present, but the
 45706  // value will be replaced with "sensitive".
 45707  func (s OpsResultAttribute) String() string {
 45708  	return awsutil.Prettify(s)
 45709  }
 45710  
 45711  // GoString returns the string representation.
 45712  //
 45713  // API parameter values that are decorated as "sensitive" in the API will not
 45714  // be included in the string output. The member name will be present, but the
 45715  // value will be replaced with "sensitive".
 45716  func (s OpsResultAttribute) GoString() string {
 45717  	return s.String()
 45718  }
 45719  
 45720  // Validate inspects the fields of the type to determine if they are valid.
 45721  func (s *OpsResultAttribute) Validate() error {
 45722  	invalidParams := request.ErrInvalidParams{Context: "OpsResultAttribute"}
 45723  	if s.TypeName == nil {
 45724  		invalidParams.Add(request.NewErrParamRequired("TypeName"))
 45725  	}
 45726  	if s.TypeName != nil && len(*s.TypeName) < 1 {
 45727  		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
 45728  	}
 45729  
 45730  	if invalidParams.Len() > 0 {
 45731  		return invalidParams
 45732  	}
 45733  	return nil
 45734  }
 45735  
 45736  // SetTypeName sets the TypeName field's value.
 45737  func (s *OpsResultAttribute) SetTypeName(v string) *OpsResultAttribute {
 45738  	s.TypeName = &v
 45739  	return s
 45740  }
 45741  
 45742  // Information about the source where the association execution details are
 45743  // stored.
 45744  type OutputSource struct {
 45745  	_ struct{} `type:"structure"`
 45746  
 45747  	// The ID of the output source, for example the URL of an S3 bucket.
 45748  	OutputSourceId *string `min:"36" type:"string"`
 45749  
 45750  	// The type of source where the association execution details are stored, for
 45751  	// example, Amazon S3.
 45752  	OutputSourceType *string `type:"string"`
 45753  }
 45754  
 45755  // String returns the string representation.
 45756  //
 45757  // API parameter values that are decorated as "sensitive" in the API will not
 45758  // be included in the string output. The member name will be present, but the
 45759  // value will be replaced with "sensitive".
 45760  func (s OutputSource) String() string {
 45761  	return awsutil.Prettify(s)
 45762  }
 45763  
 45764  // GoString returns the string representation.
 45765  //
 45766  // API parameter values that are decorated as "sensitive" in the API will not
 45767  // be included in the string output. The member name will be present, but the
 45768  // value will be replaced with "sensitive".
 45769  func (s OutputSource) GoString() string {
 45770  	return s.String()
 45771  }
 45772  
 45773  // SetOutputSourceId sets the OutputSourceId field's value.
 45774  func (s *OutputSource) SetOutputSourceId(v string) *OutputSource {
 45775  	s.OutputSourceId = &v
 45776  	return s
 45777  }
 45778  
 45779  // SetOutputSourceType sets the OutputSourceType field's value.
 45780  func (s *OutputSource) SetOutputSourceType(v string) *OutputSource {
 45781  	s.OutputSourceType = &v
 45782  	return s
 45783  }
 45784  
 45785  // An Amazon Web Services Systems Manager parameter in Parameter Store.
 45786  type Parameter struct {
 45787  	_ struct{} `type:"structure"`
 45788  
 45789  	// The Amazon Resource Name (ARN) of the parameter.
 45790  	ARN *string `type:"string"`
 45791  
 45792  	// The data type of the parameter, such as text or aws:ec2:image. The default
 45793  	// is text.
 45794  	DataType *string `type:"string"`
 45795  
 45796  	// Date the parameter was last changed or updated and the parameter version
 45797  	// was created.
 45798  	LastModifiedDate *time.Time `type:"timestamp"`
 45799  
 45800  	// The name of the parameter.
 45801  	Name *string `min:"1" type:"string"`
 45802  
 45803  	// Either the version number or the label used to retrieve the parameter value.
 45804  	// Specify selectors by using one of the following formats:
 45805  	//
 45806  	// parameter_name:version
 45807  	//
 45808  	// parameter_name:label
 45809  	Selector *string `type:"string"`
 45810  
 45811  	// Applies to parameters that reference information in other Amazon Web Services
 45812  	// services. SourceResult is the raw result or response from the source.
 45813  	SourceResult *string `type:"string"`
 45814  
 45815  	// The type of parameter. Valid values include the following: String, StringList,
 45816  	// and SecureString.
 45817  	Type *string `type:"string" enum:"ParameterType"`
 45818  
 45819  	// The parameter value.
 45820  	//
 45821  	// Value is a sensitive parameter and its value will be
 45822  	// replaced with "sensitive" in string returned by Parameter's
 45823  	// String and GoString methods.
 45824  	Value *string `type:"string" sensitive:"true"`
 45825  
 45826  	// The parameter version.
 45827  	Version *int64 `type:"long"`
 45828  }
 45829  
 45830  // String returns the string representation.
 45831  //
 45832  // API parameter values that are decorated as "sensitive" in the API will not
 45833  // be included in the string output. The member name will be present, but the
 45834  // value will be replaced with "sensitive".
 45835  func (s Parameter) String() string {
 45836  	return awsutil.Prettify(s)
 45837  }
 45838  
 45839  // GoString returns the string representation.
 45840  //
 45841  // API parameter values that are decorated as "sensitive" in the API will not
 45842  // be included in the string output. The member name will be present, but the
 45843  // value will be replaced with "sensitive".
 45844  func (s Parameter) GoString() string {
 45845  	return s.String()
 45846  }
 45847  
 45848  // SetARN sets the ARN field's value.
 45849  func (s *Parameter) SetARN(v string) *Parameter {
 45850  	s.ARN = &v
 45851  	return s
 45852  }
 45853  
 45854  // SetDataType sets the DataType field's value.
 45855  func (s *Parameter) SetDataType(v string) *Parameter {
 45856  	s.DataType = &v
 45857  	return s
 45858  }
 45859  
 45860  // SetLastModifiedDate sets the LastModifiedDate field's value.
 45861  func (s *Parameter) SetLastModifiedDate(v time.Time) *Parameter {
 45862  	s.LastModifiedDate = &v
 45863  	return s
 45864  }
 45865  
 45866  // SetName sets the Name field's value.
 45867  func (s *Parameter) SetName(v string) *Parameter {
 45868  	s.Name = &v
 45869  	return s
 45870  }
 45871  
 45872  // SetSelector sets the Selector field's value.
 45873  func (s *Parameter) SetSelector(v string) *Parameter {
 45874  	s.Selector = &v
 45875  	return s
 45876  }
 45877  
 45878  // SetSourceResult sets the SourceResult field's value.
 45879  func (s *Parameter) SetSourceResult(v string) *Parameter {
 45880  	s.SourceResult = &v
 45881  	return s
 45882  }
 45883  
 45884  // SetType sets the Type field's value.
 45885  func (s *Parameter) SetType(v string) *Parameter {
 45886  	s.Type = &v
 45887  	return s
 45888  }
 45889  
 45890  // SetValue sets the Value field's value.
 45891  func (s *Parameter) SetValue(v string) *Parameter {
 45892  	s.Value = &v
 45893  	return s
 45894  }
 45895  
 45896  // SetVersion sets the Version field's value.
 45897  func (s *Parameter) SetVersion(v int64) *Parameter {
 45898  	s.Version = &v
 45899  	return s
 45900  }
 45901  
 45902  // The parameter already exists. You can't create duplicate parameters.
 45903  type ParameterAlreadyExists struct {
 45904  	_            struct{}                  `type:"structure"`
 45905  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 45906  
 45907  	Message_ *string `locationName:"message" type:"string"`
 45908  }
 45909  
 45910  // String returns the string representation.
 45911  //
 45912  // API parameter values that are decorated as "sensitive" in the API will not
 45913  // be included in the string output. The member name will be present, but the
 45914  // value will be replaced with "sensitive".
 45915  func (s ParameterAlreadyExists) String() string {
 45916  	return awsutil.Prettify(s)
 45917  }
 45918  
 45919  // GoString returns the string representation.
 45920  //
 45921  // API parameter values that are decorated as "sensitive" in the API will not
 45922  // be included in the string output. The member name will be present, but the
 45923  // value will be replaced with "sensitive".
 45924  func (s ParameterAlreadyExists) GoString() string {
 45925  	return s.String()
 45926  }
 45927  
 45928  func newErrorParameterAlreadyExists(v protocol.ResponseMetadata) error {
 45929  	return &ParameterAlreadyExists{
 45930  		RespMetadata: v,
 45931  	}
 45932  }
 45933  
 45934  // Code returns the exception type name.
 45935  func (s *ParameterAlreadyExists) Code() string {
 45936  	return "ParameterAlreadyExists"
 45937  }
 45938  
 45939  // Message returns the exception's message.
 45940  func (s *ParameterAlreadyExists) Message() string {
 45941  	if s.Message_ != nil {
 45942  		return *s.Message_
 45943  	}
 45944  	return ""
 45945  }
 45946  
 45947  // OrigErr always returns nil, satisfies awserr.Error interface.
 45948  func (s *ParameterAlreadyExists) OrigErr() error {
 45949  	return nil
 45950  }
 45951  
 45952  func (s *ParameterAlreadyExists) Error() string {
 45953  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 45954  }
 45955  
 45956  // Status code returns the HTTP status code for the request's response error.
 45957  func (s *ParameterAlreadyExists) StatusCode() int {
 45958  	return s.RespMetadata.StatusCode
 45959  }
 45960  
 45961  // RequestID returns the service's response RequestID for request.
 45962  func (s *ParameterAlreadyExists) RequestID() string {
 45963  	return s.RespMetadata.RequestID
 45964  }
 45965  
 45966  // Information about parameter usage.
 45967  type ParameterHistory struct {
 45968  	_ struct{} `type:"structure"`
 45969  
 45970  	// Parameter names can include the following letters and symbols.
 45971  	//
 45972  	// a-zA-Z0-9_.-
 45973  	AllowedPattern *string `type:"string"`
 45974  
 45975  	// The data type of the parameter, such as text or aws:ec2:image. The default
 45976  	// is text.
 45977  	DataType *string `type:"string"`
 45978  
 45979  	// Information about the parameter.
 45980  	Description *string `type:"string"`
 45981  
 45982  	// The ID of the query key used for this parameter.
 45983  	KeyId *string `min:"1" type:"string"`
 45984  
 45985  	// Labels assigned to the parameter version.
 45986  	Labels []*string `min:"1" type:"list"`
 45987  
 45988  	// Date the parameter was last changed or updated.
 45989  	LastModifiedDate *time.Time `type:"timestamp"`
 45990  
 45991  	// Amazon Resource Name (ARN) of the Amazon Web Services user who last changed
 45992  	// the parameter.
 45993  	LastModifiedUser *string `type:"string"`
 45994  
 45995  	// The name of the parameter.
 45996  	Name *string `min:"1" type:"string"`
 45997  
 45998  	// Information about the policies assigned to a parameter.
 45999  	//
 46000  	// Assigning parameter policies (https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-policies.html)
 46001  	// in the Amazon Web Services Systems Manager User Guide.
 46002  	Policies []*ParameterInlinePolicy `type:"list"`
 46003  
 46004  	// The parameter tier.
 46005  	Tier *string `type:"string" enum:"ParameterTier"`
 46006  
 46007  	// The type of parameter used.
 46008  	Type *string `type:"string" enum:"ParameterType"`
 46009  
 46010  	// The parameter value.
 46011  	//
 46012  	// Value is a sensitive parameter and its value will be
 46013  	// replaced with "sensitive" in string returned by ParameterHistory's
 46014  	// String and GoString methods.
 46015  	Value *string `type:"string" sensitive:"true"`
 46016  
 46017  	// The parameter version.
 46018  	Version *int64 `type:"long"`
 46019  }
 46020  
 46021  // String returns the string representation.
 46022  //
 46023  // API parameter values that are decorated as "sensitive" in the API will not
 46024  // be included in the string output. The member name will be present, but the
 46025  // value will be replaced with "sensitive".
 46026  func (s ParameterHistory) String() string {
 46027  	return awsutil.Prettify(s)
 46028  }
 46029  
 46030  // GoString returns the string representation.
 46031  //
 46032  // API parameter values that are decorated as "sensitive" in the API will not
 46033  // be included in the string output. The member name will be present, but the
 46034  // value will be replaced with "sensitive".
 46035  func (s ParameterHistory) GoString() string {
 46036  	return s.String()
 46037  }
 46038  
 46039  // SetAllowedPattern sets the AllowedPattern field's value.
 46040  func (s *ParameterHistory) SetAllowedPattern(v string) *ParameterHistory {
 46041  	s.AllowedPattern = &v
 46042  	return s
 46043  }
 46044  
 46045  // SetDataType sets the DataType field's value.
 46046  func (s *ParameterHistory) SetDataType(v string) *ParameterHistory {
 46047  	s.DataType = &v
 46048  	return s
 46049  }
 46050  
 46051  // SetDescription sets the Description field's value.
 46052  func (s *ParameterHistory) SetDescription(v string) *ParameterHistory {
 46053  	s.Description = &v
 46054  	return s
 46055  }
 46056  
 46057  // SetKeyId sets the KeyId field's value.
 46058  func (s *ParameterHistory) SetKeyId(v string) *ParameterHistory {
 46059  	s.KeyId = &v
 46060  	return s
 46061  }
 46062  
 46063  // SetLabels sets the Labels field's value.
 46064  func (s *ParameterHistory) SetLabels(v []*string) *ParameterHistory {
 46065  	s.Labels = v
 46066  	return s
 46067  }
 46068  
 46069  // SetLastModifiedDate sets the LastModifiedDate field's value.
 46070  func (s *ParameterHistory) SetLastModifiedDate(v time.Time) *ParameterHistory {
 46071  	s.LastModifiedDate = &v
 46072  	return s
 46073  }
 46074  
 46075  // SetLastModifiedUser sets the LastModifiedUser field's value.
 46076  func (s *ParameterHistory) SetLastModifiedUser(v string) *ParameterHistory {
 46077  	s.LastModifiedUser = &v
 46078  	return s
 46079  }
 46080  
 46081  // SetName sets the Name field's value.
 46082  func (s *ParameterHistory) SetName(v string) *ParameterHistory {
 46083  	s.Name = &v
 46084  	return s
 46085  }
 46086  
 46087  // SetPolicies sets the Policies field's value.
 46088  func (s *ParameterHistory) SetPolicies(v []*ParameterInlinePolicy) *ParameterHistory {
 46089  	s.Policies = v
 46090  	return s
 46091  }
 46092  
 46093  // SetTier sets the Tier field's value.
 46094  func (s *ParameterHistory) SetTier(v string) *ParameterHistory {
 46095  	s.Tier = &v
 46096  	return s
 46097  }
 46098  
 46099  // SetType sets the Type field's value.
 46100  func (s *ParameterHistory) SetType(v string) *ParameterHistory {
 46101  	s.Type = &v
 46102  	return s
 46103  }
 46104  
 46105  // SetValue sets the Value field's value.
 46106  func (s *ParameterHistory) SetValue(v string) *ParameterHistory {
 46107  	s.Value = &v
 46108  	return s
 46109  }
 46110  
 46111  // SetVersion sets the Version field's value.
 46112  func (s *ParameterHistory) SetVersion(v int64) *ParameterHistory {
 46113  	s.Version = &v
 46114  	return s
 46115  }
 46116  
 46117  // One or more policies assigned to a parameter.
 46118  type ParameterInlinePolicy struct {
 46119  	_ struct{} `type:"structure"`
 46120  
 46121  	// The status of the policy. Policies report the following statuses: Pending
 46122  	// (the policy hasn't been enforced or applied yet), Finished (the policy was
 46123  	// applied), Failed (the policy wasn't applied), or InProgress (the policy is
 46124  	// being applied now).
 46125  	PolicyStatus *string `type:"string"`
 46126  
 46127  	// The JSON text of the policy.
 46128  	PolicyText *string `type:"string"`
 46129  
 46130  	// The type of policy. Parameter Store, a capablility of Amazon Web Services
 46131  	// Systems Manager, supports the following policy types: Expiration, ExpirationNotification,
 46132  	// and NoChangeNotification.
 46133  	PolicyType *string `type:"string"`
 46134  }
 46135  
 46136  // String returns the string representation.
 46137  //
 46138  // API parameter values that are decorated as "sensitive" in the API will not
 46139  // be included in the string output. The member name will be present, but the
 46140  // value will be replaced with "sensitive".
 46141  func (s ParameterInlinePolicy) String() string {
 46142  	return awsutil.Prettify(s)
 46143  }
 46144  
 46145  // GoString returns the string representation.
 46146  //
 46147  // API parameter values that are decorated as "sensitive" in the API will not
 46148  // be included in the string output. The member name will be present, but the
 46149  // value will be replaced with "sensitive".
 46150  func (s ParameterInlinePolicy) GoString() string {
 46151  	return s.String()
 46152  }
 46153  
 46154  // SetPolicyStatus sets the PolicyStatus field's value.
 46155  func (s *ParameterInlinePolicy) SetPolicyStatus(v string) *ParameterInlinePolicy {
 46156  	s.PolicyStatus = &v
 46157  	return s
 46158  }
 46159  
 46160  // SetPolicyText sets the PolicyText field's value.
 46161  func (s *ParameterInlinePolicy) SetPolicyText(v string) *ParameterInlinePolicy {
 46162  	s.PolicyText = &v
 46163  	return s
 46164  }
 46165  
 46166  // SetPolicyType sets the PolicyType field's value.
 46167  func (s *ParameterInlinePolicy) SetPolicyType(v string) *ParameterInlinePolicy {
 46168  	s.PolicyType = &v
 46169  	return s
 46170  }
 46171  
 46172  // You have exceeded the number of parameters for this Amazon Web Services account.
 46173  // Delete one or more parameters and try again.
 46174  type ParameterLimitExceeded struct {
 46175  	_            struct{}                  `type:"structure"`
 46176  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 46177  
 46178  	Message_ *string `locationName:"message" type:"string"`
 46179  }
 46180  
 46181  // String returns the string representation.
 46182  //
 46183  // API parameter values that are decorated as "sensitive" in the API will not
 46184  // be included in the string output. The member name will be present, but the
 46185  // value will be replaced with "sensitive".
 46186  func (s ParameterLimitExceeded) String() string {
 46187  	return awsutil.Prettify(s)
 46188  }
 46189  
 46190  // GoString returns the string representation.
 46191  //
 46192  // API parameter values that are decorated as "sensitive" in the API will not
 46193  // be included in the string output. The member name will be present, but the
 46194  // value will be replaced with "sensitive".
 46195  func (s ParameterLimitExceeded) GoString() string {
 46196  	return s.String()
 46197  }
 46198  
 46199  func newErrorParameterLimitExceeded(v protocol.ResponseMetadata) error {
 46200  	return &ParameterLimitExceeded{
 46201  		RespMetadata: v,
 46202  	}
 46203  }
 46204  
 46205  // Code returns the exception type name.
 46206  func (s *ParameterLimitExceeded) Code() string {
 46207  	return "ParameterLimitExceeded"
 46208  }
 46209  
 46210  // Message returns the exception's message.
 46211  func (s *ParameterLimitExceeded) Message() string {
 46212  	if s.Message_ != nil {
 46213  		return *s.Message_
 46214  	}
 46215  	return ""
 46216  }
 46217  
 46218  // OrigErr always returns nil, satisfies awserr.Error interface.
 46219  func (s *ParameterLimitExceeded) OrigErr() error {
 46220  	return nil
 46221  }
 46222  
 46223  func (s *ParameterLimitExceeded) Error() string {
 46224  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 46225  }
 46226  
 46227  // Status code returns the HTTP status code for the request's response error.
 46228  func (s *ParameterLimitExceeded) StatusCode() int {
 46229  	return s.RespMetadata.StatusCode
 46230  }
 46231  
 46232  // RequestID returns the service's response RequestID for request.
 46233  func (s *ParameterLimitExceeded) RequestID() string {
 46234  	return s.RespMetadata.RequestID
 46235  }
 46236  
 46237  // Parameter Store retains the 100 most recently created versions of a parameter.
 46238  // After this number of versions has been created, Parameter Store deletes the
 46239  // oldest version when a new one is created. However, if the oldest version
 46240  // has a label attached to it, Parameter Store won't delete the version and
 46241  // instead presents this error message:
 46242  //
 46243  // An error occurred (ParameterMaxVersionLimitExceeded) when calling the PutParameter
 46244  // operation: You attempted to create a new version of parameter-name by calling
 46245  // the PutParameter API with the overwrite flag. Version version-number, the
 46246  // oldest version, can't be deleted because it has a label associated with it.
 46247  // Move the label to another version of the parameter, and try again.
 46248  //
 46249  // This safeguard is to prevent parameter versions with mission critical labels
 46250  // assigned to them from being deleted. To continue creating new parameters,
 46251  // first move the label from the oldest version of the parameter to a newer
 46252  // one for use in your operations. For information about moving parameter labels,
 46253  // see Move a parameter label (console) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html#sysman-paramstore-labels-console-move)
 46254  // or Move a parameter label (CLI) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html#sysman-paramstore-labels-cli-move)
 46255  // in the Amazon Web Services Systems Manager User Guide.
 46256  type ParameterMaxVersionLimitExceeded struct {
 46257  	_            struct{}                  `type:"structure"`
 46258  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 46259  
 46260  	Message_ *string `locationName:"message" type:"string"`
 46261  }
 46262  
 46263  // String returns the string representation.
 46264  //
 46265  // API parameter values that are decorated as "sensitive" in the API will not
 46266  // be included in the string output. The member name will be present, but the
 46267  // value will be replaced with "sensitive".
 46268  func (s ParameterMaxVersionLimitExceeded) String() string {
 46269  	return awsutil.Prettify(s)
 46270  }
 46271  
 46272  // GoString returns the string representation.
 46273  //
 46274  // API parameter values that are decorated as "sensitive" in the API will not
 46275  // be included in the string output. The member name will be present, but the
 46276  // value will be replaced with "sensitive".
 46277  func (s ParameterMaxVersionLimitExceeded) GoString() string {
 46278  	return s.String()
 46279  }
 46280  
 46281  func newErrorParameterMaxVersionLimitExceeded(v protocol.ResponseMetadata) error {
 46282  	return &ParameterMaxVersionLimitExceeded{
 46283  		RespMetadata: v,
 46284  	}
 46285  }
 46286  
 46287  // Code returns the exception type name.
 46288  func (s *ParameterMaxVersionLimitExceeded) Code() string {
 46289  	return "ParameterMaxVersionLimitExceeded"
 46290  }
 46291  
 46292  // Message returns the exception's message.
 46293  func (s *ParameterMaxVersionLimitExceeded) Message() string {
 46294  	if s.Message_ != nil {
 46295  		return *s.Message_
 46296  	}
 46297  	return ""
 46298  }
 46299  
 46300  // OrigErr always returns nil, satisfies awserr.Error interface.
 46301  func (s *ParameterMaxVersionLimitExceeded) OrigErr() error {
 46302  	return nil
 46303  }
 46304  
 46305  func (s *ParameterMaxVersionLimitExceeded) Error() string {
 46306  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 46307  }
 46308  
 46309  // Status code returns the HTTP status code for the request's response error.
 46310  func (s *ParameterMaxVersionLimitExceeded) StatusCode() int {
 46311  	return s.RespMetadata.StatusCode
 46312  }
 46313  
 46314  // RequestID returns the service's response RequestID for request.
 46315  func (s *ParameterMaxVersionLimitExceeded) RequestID() string {
 46316  	return s.RespMetadata.RequestID
 46317  }
 46318  
 46319  // Metadata includes information like the ARN of the last user and the date/time
 46320  // the parameter was last used.
 46321  type ParameterMetadata struct {
 46322  	_ struct{} `type:"structure"`
 46323  
 46324  	// A parameter name can include only the following letters and symbols.
 46325  	//
 46326  	// a-zA-Z0-9_.-
 46327  	AllowedPattern *string `type:"string"`
 46328  
 46329  	// The data type of the parameter, such as text or aws:ec2:image. The default
 46330  	// is text.
 46331  	DataType *string `type:"string"`
 46332  
 46333  	// Description of the parameter actions.
 46334  	Description *string `type:"string"`
 46335  
 46336  	// The ID of the query key used for this parameter.
 46337  	KeyId *string `min:"1" type:"string"`
 46338  
 46339  	// Date the parameter was last changed or updated.
 46340  	LastModifiedDate *time.Time `type:"timestamp"`
 46341  
 46342  	// Amazon Resource Name (ARN) of the Amazon Web Services user who last changed
 46343  	// the parameter.
 46344  	LastModifiedUser *string `type:"string"`
 46345  
 46346  	// The parameter name.
 46347  	Name *string `min:"1" type:"string"`
 46348  
 46349  	// A list of policies associated with a parameter.
 46350  	Policies []*ParameterInlinePolicy `type:"list"`
 46351  
 46352  	// The parameter tier.
 46353  	Tier *string `type:"string" enum:"ParameterTier"`
 46354  
 46355  	// The type of parameter. Valid parameter types include the following: String,
 46356  	// StringList, and SecureString.
 46357  	Type *string `type:"string" enum:"ParameterType"`
 46358  
 46359  	// The parameter version.
 46360  	Version *int64 `type:"long"`
 46361  }
 46362  
 46363  // String returns the string representation.
 46364  //
 46365  // API parameter values that are decorated as "sensitive" in the API will not
 46366  // be included in the string output. The member name will be present, but the
 46367  // value will be replaced with "sensitive".
 46368  func (s ParameterMetadata) String() string {
 46369  	return awsutil.Prettify(s)
 46370  }
 46371  
 46372  // GoString returns the string representation.
 46373  //
 46374  // API parameter values that are decorated as "sensitive" in the API will not
 46375  // be included in the string output. The member name will be present, but the
 46376  // value will be replaced with "sensitive".
 46377  func (s ParameterMetadata) GoString() string {
 46378  	return s.String()
 46379  }
 46380  
 46381  // SetAllowedPattern sets the AllowedPattern field's value.
 46382  func (s *ParameterMetadata) SetAllowedPattern(v string) *ParameterMetadata {
 46383  	s.AllowedPattern = &v
 46384  	return s
 46385  }
 46386  
 46387  // SetDataType sets the DataType field's value.
 46388  func (s *ParameterMetadata) SetDataType(v string) *ParameterMetadata {
 46389  	s.DataType = &v
 46390  	return s
 46391  }
 46392  
 46393  // SetDescription sets the Description field's value.
 46394  func (s *ParameterMetadata) SetDescription(v string) *ParameterMetadata {
 46395  	s.Description = &v
 46396  	return s
 46397  }
 46398  
 46399  // SetKeyId sets the KeyId field's value.
 46400  func (s *ParameterMetadata) SetKeyId(v string) *ParameterMetadata {
 46401  	s.KeyId = &v
 46402  	return s
 46403  }
 46404  
 46405  // SetLastModifiedDate sets the LastModifiedDate field's value.
 46406  func (s *ParameterMetadata) SetLastModifiedDate(v time.Time) *ParameterMetadata {
 46407  	s.LastModifiedDate = &v
 46408  	return s
 46409  }
 46410  
 46411  // SetLastModifiedUser sets the LastModifiedUser field's value.
 46412  func (s *ParameterMetadata) SetLastModifiedUser(v string) *ParameterMetadata {
 46413  	s.LastModifiedUser = &v
 46414  	return s
 46415  }
 46416  
 46417  // SetName sets the Name field's value.
 46418  func (s *ParameterMetadata) SetName(v string) *ParameterMetadata {
 46419  	s.Name = &v
 46420  	return s
 46421  }
 46422  
 46423  // SetPolicies sets the Policies field's value.
 46424  func (s *ParameterMetadata) SetPolicies(v []*ParameterInlinePolicy) *ParameterMetadata {
 46425  	s.Policies = v
 46426  	return s
 46427  }
 46428  
 46429  // SetTier sets the Tier field's value.
 46430  func (s *ParameterMetadata) SetTier(v string) *ParameterMetadata {
 46431  	s.Tier = &v
 46432  	return s
 46433  }
 46434  
 46435  // SetType sets the Type field's value.
 46436  func (s *ParameterMetadata) SetType(v string) *ParameterMetadata {
 46437  	s.Type = &v
 46438  	return s
 46439  }
 46440  
 46441  // SetVersion sets the Version field's value.
 46442  func (s *ParameterMetadata) SetVersion(v int64) *ParameterMetadata {
 46443  	s.Version = &v
 46444  	return s
 46445  }
 46446  
 46447  // The parameter couldn't be found. Verify the name and try again.
 46448  type ParameterNotFound struct {
 46449  	_            struct{}                  `type:"structure"`
 46450  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 46451  
 46452  	Message_ *string `locationName:"message" type:"string"`
 46453  }
 46454  
 46455  // String returns the string representation.
 46456  //
 46457  // API parameter values that are decorated as "sensitive" in the API will not
 46458  // be included in the string output. The member name will be present, but the
 46459  // value will be replaced with "sensitive".
 46460  func (s ParameterNotFound) String() string {
 46461  	return awsutil.Prettify(s)
 46462  }
 46463  
 46464  // GoString returns the string representation.
 46465  //
 46466  // API parameter values that are decorated as "sensitive" in the API will not
 46467  // be included in the string output. The member name will be present, but the
 46468  // value will be replaced with "sensitive".
 46469  func (s ParameterNotFound) GoString() string {
 46470  	return s.String()
 46471  }
 46472  
 46473  func newErrorParameterNotFound(v protocol.ResponseMetadata) error {
 46474  	return &ParameterNotFound{
 46475  		RespMetadata: v,
 46476  	}
 46477  }
 46478  
 46479  // Code returns the exception type name.
 46480  func (s *ParameterNotFound) Code() string {
 46481  	return "ParameterNotFound"
 46482  }
 46483  
 46484  // Message returns the exception's message.
 46485  func (s *ParameterNotFound) Message() string {
 46486  	if s.Message_ != nil {
 46487  		return *s.Message_
 46488  	}
 46489  	return ""
 46490  }
 46491  
 46492  // OrigErr always returns nil, satisfies awserr.Error interface.
 46493  func (s *ParameterNotFound) OrigErr() error {
 46494  	return nil
 46495  }
 46496  
 46497  func (s *ParameterNotFound) Error() string {
 46498  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 46499  }
 46500  
 46501  // Status code returns the HTTP status code for the request's response error.
 46502  func (s *ParameterNotFound) StatusCode() int {
 46503  	return s.RespMetadata.StatusCode
 46504  }
 46505  
 46506  // RequestID returns the service's response RequestID for request.
 46507  func (s *ParameterNotFound) RequestID() string {
 46508  	return s.RespMetadata.RequestID
 46509  }
 46510  
 46511  // The parameter name isn't valid.
 46512  type ParameterPatternMismatchException struct {
 46513  	_            struct{}                  `type:"structure"`
 46514  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 46515  
 46516  	// The parameter name isn't valid.
 46517  	Message_ *string `locationName:"message" type:"string"`
 46518  }
 46519  
 46520  // String returns the string representation.
 46521  //
 46522  // API parameter values that are decorated as "sensitive" in the API will not
 46523  // be included in the string output. The member name will be present, but the
 46524  // value will be replaced with "sensitive".
 46525  func (s ParameterPatternMismatchException) String() string {
 46526  	return awsutil.Prettify(s)
 46527  }
 46528  
 46529  // GoString returns the string representation.
 46530  //
 46531  // API parameter values that are decorated as "sensitive" in the API will not
 46532  // be included in the string output. The member name will be present, but the
 46533  // value will be replaced with "sensitive".
 46534  func (s ParameterPatternMismatchException) GoString() string {
 46535  	return s.String()
 46536  }
 46537  
 46538  func newErrorParameterPatternMismatchException(v protocol.ResponseMetadata) error {
 46539  	return &ParameterPatternMismatchException{
 46540  		RespMetadata: v,
 46541  	}
 46542  }
 46543  
 46544  // Code returns the exception type name.
 46545  func (s *ParameterPatternMismatchException) Code() string {
 46546  	return "ParameterPatternMismatchException"
 46547  }
 46548  
 46549  // Message returns the exception's message.
 46550  func (s *ParameterPatternMismatchException) Message() string {
 46551  	if s.Message_ != nil {
 46552  		return *s.Message_
 46553  	}
 46554  	return ""
 46555  }
 46556  
 46557  // OrigErr always returns nil, satisfies awserr.Error interface.
 46558  func (s *ParameterPatternMismatchException) OrigErr() error {
 46559  	return nil
 46560  }
 46561  
 46562  func (s *ParameterPatternMismatchException) Error() string {
 46563  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 46564  }
 46565  
 46566  // Status code returns the HTTP status code for the request's response error.
 46567  func (s *ParameterPatternMismatchException) StatusCode() int {
 46568  	return s.RespMetadata.StatusCode
 46569  }
 46570  
 46571  // RequestID returns the service's response RequestID for request.
 46572  func (s *ParameterPatternMismatchException) RequestID() string {
 46573  	return s.RespMetadata.RequestID
 46574  }
 46575  
 46576  // One or more filters. Use a filter to return a more specific list of results.
 46577  type ParameterStringFilter struct {
 46578  	_ struct{} `type:"structure"`
 46579  
 46580  	// The name of the filter.
 46581  	//
 46582  	// The ParameterStringFilter object is used by the DescribeParameters and GetParametersByPath
 46583  	// API operations. However, not all of the pattern values listed for Key can
 46584  	// be used with both operations.
 46585  	//
 46586  	// For DescribeActions, all of the listed patterns are valid except Label.
 46587  	//
 46588  	// For GetParametersByPath, the following patterns listed for Key aren't valid:
 46589  	// tag, DataType, Name, Path, and Tier.
 46590  	//
 46591  	// For examples of Amazon Web Services CLI commands demonstrating valid parameter
 46592  	// filter constructions, see Searching for Systems Manager parameters (https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-search.html)
 46593  	// in the Amazon Web Services Systems Manager User Guide.
 46594  	//
 46595  	// Key is a required field
 46596  	Key *string `min:"1" type:"string" required:"true"`
 46597  
 46598  	// For all filters used with DescribeParameters, valid options include Equals
 46599  	// and BeginsWith. The Name filter additionally supports the Contains option.
 46600  	// (Exception: For filters using the key Path, valid options include Recursive
 46601  	// and OneLevel.)
 46602  	//
 46603  	// For filters used with GetParametersByPath, valid options include Equals and
 46604  	// BeginsWith. (Exception: For filters using Label as the Key name, the only
 46605  	// valid option is Equals.)
 46606  	Option *string `min:"1" type:"string"`
 46607  
 46608  	// The value you want to search for.
 46609  	Values []*string `min:"1" type:"list"`
 46610  }
 46611  
 46612  // String returns the string representation.
 46613  //
 46614  // API parameter values that are decorated as "sensitive" in the API will not
 46615  // be included in the string output. The member name will be present, but the
 46616  // value will be replaced with "sensitive".
 46617  func (s ParameterStringFilter) String() string {
 46618  	return awsutil.Prettify(s)
 46619  }
 46620  
 46621  // GoString returns the string representation.
 46622  //
 46623  // API parameter values that are decorated as "sensitive" in the API will not
 46624  // be included in the string output. The member name will be present, but the
 46625  // value will be replaced with "sensitive".
 46626  func (s ParameterStringFilter) GoString() string {
 46627  	return s.String()
 46628  }
 46629  
 46630  // Validate inspects the fields of the type to determine if they are valid.
 46631  func (s *ParameterStringFilter) Validate() error {
 46632  	invalidParams := request.ErrInvalidParams{Context: "ParameterStringFilter"}
 46633  	if s.Key == nil {
 46634  		invalidParams.Add(request.NewErrParamRequired("Key"))
 46635  	}
 46636  	if s.Key != nil && len(*s.Key) < 1 {
 46637  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 46638  	}
 46639  	if s.Option != nil && len(*s.Option) < 1 {
 46640  		invalidParams.Add(request.NewErrParamMinLen("Option", 1))
 46641  	}
 46642  	if s.Values != nil && len(s.Values) < 1 {
 46643  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 46644  	}
 46645  
 46646  	if invalidParams.Len() > 0 {
 46647  		return invalidParams
 46648  	}
 46649  	return nil
 46650  }
 46651  
 46652  // SetKey sets the Key field's value.
 46653  func (s *ParameterStringFilter) SetKey(v string) *ParameterStringFilter {
 46654  	s.Key = &v
 46655  	return s
 46656  }
 46657  
 46658  // SetOption sets the Option field's value.
 46659  func (s *ParameterStringFilter) SetOption(v string) *ParameterStringFilter {
 46660  	s.Option = &v
 46661  	return s
 46662  }
 46663  
 46664  // SetValues sets the Values field's value.
 46665  func (s *ParameterStringFilter) SetValues(v []*string) *ParameterStringFilter {
 46666  	s.Values = v
 46667  	return s
 46668  }
 46669  
 46670  // A parameter version can have a maximum of ten labels.
 46671  type ParameterVersionLabelLimitExceeded struct {
 46672  	_            struct{}                  `type:"structure"`
 46673  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 46674  
 46675  	Message_ *string `locationName:"message" type:"string"`
 46676  }
 46677  
 46678  // String returns the string representation.
 46679  //
 46680  // API parameter values that are decorated as "sensitive" in the API will not
 46681  // be included in the string output. The member name will be present, but the
 46682  // value will be replaced with "sensitive".
 46683  func (s ParameterVersionLabelLimitExceeded) String() string {
 46684  	return awsutil.Prettify(s)
 46685  }
 46686  
 46687  // GoString returns the string representation.
 46688  //
 46689  // API parameter values that are decorated as "sensitive" in the API will not
 46690  // be included in the string output. The member name will be present, but the
 46691  // value will be replaced with "sensitive".
 46692  func (s ParameterVersionLabelLimitExceeded) GoString() string {
 46693  	return s.String()
 46694  }
 46695  
 46696  func newErrorParameterVersionLabelLimitExceeded(v protocol.ResponseMetadata) error {
 46697  	return &ParameterVersionLabelLimitExceeded{
 46698  		RespMetadata: v,
 46699  	}
 46700  }
 46701  
 46702  // Code returns the exception type name.
 46703  func (s *ParameterVersionLabelLimitExceeded) Code() string {
 46704  	return "ParameterVersionLabelLimitExceeded"
 46705  }
 46706  
 46707  // Message returns the exception's message.
 46708  func (s *ParameterVersionLabelLimitExceeded) Message() string {
 46709  	if s.Message_ != nil {
 46710  		return *s.Message_
 46711  	}
 46712  	return ""
 46713  }
 46714  
 46715  // OrigErr always returns nil, satisfies awserr.Error interface.
 46716  func (s *ParameterVersionLabelLimitExceeded) OrigErr() error {
 46717  	return nil
 46718  }
 46719  
 46720  func (s *ParameterVersionLabelLimitExceeded) Error() string {
 46721  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 46722  }
 46723  
 46724  // Status code returns the HTTP status code for the request's response error.
 46725  func (s *ParameterVersionLabelLimitExceeded) StatusCode() int {
 46726  	return s.RespMetadata.StatusCode
 46727  }
 46728  
 46729  // RequestID returns the service's response RequestID for request.
 46730  func (s *ParameterVersionLabelLimitExceeded) RequestID() string {
 46731  	return s.RespMetadata.RequestID
 46732  }
 46733  
 46734  // The specified parameter version wasn't found. Verify the parameter name and
 46735  // version, and try again.
 46736  type ParameterVersionNotFound struct {
 46737  	_            struct{}                  `type:"structure"`
 46738  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 46739  
 46740  	Message_ *string `locationName:"message" type:"string"`
 46741  }
 46742  
 46743  // String returns the string representation.
 46744  //
 46745  // API parameter values that are decorated as "sensitive" in the API will not
 46746  // be included in the string output. The member name will be present, but the
 46747  // value will be replaced with "sensitive".
 46748  func (s ParameterVersionNotFound) String() string {
 46749  	return awsutil.Prettify(s)
 46750  }
 46751  
 46752  // GoString returns the string representation.
 46753  //
 46754  // API parameter values that are decorated as "sensitive" in the API will not
 46755  // be included in the string output. The member name will be present, but the
 46756  // value will be replaced with "sensitive".
 46757  func (s ParameterVersionNotFound) GoString() string {
 46758  	return s.String()
 46759  }
 46760  
 46761  func newErrorParameterVersionNotFound(v protocol.ResponseMetadata) error {
 46762  	return &ParameterVersionNotFound{
 46763  		RespMetadata: v,
 46764  	}
 46765  }
 46766  
 46767  // Code returns the exception type name.
 46768  func (s *ParameterVersionNotFound) Code() string {
 46769  	return "ParameterVersionNotFound"
 46770  }
 46771  
 46772  // Message returns the exception's message.
 46773  func (s *ParameterVersionNotFound) Message() string {
 46774  	if s.Message_ != nil {
 46775  		return *s.Message_
 46776  	}
 46777  	return ""
 46778  }
 46779  
 46780  // OrigErr always returns nil, satisfies awserr.Error interface.
 46781  func (s *ParameterVersionNotFound) OrigErr() error {
 46782  	return nil
 46783  }
 46784  
 46785  func (s *ParameterVersionNotFound) Error() string {
 46786  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 46787  }
 46788  
 46789  // Status code returns the HTTP status code for the request's response error.
 46790  func (s *ParameterVersionNotFound) StatusCode() int {
 46791  	return s.RespMetadata.StatusCode
 46792  }
 46793  
 46794  // RequestID returns the service's response RequestID for request.
 46795  func (s *ParameterVersionNotFound) RequestID() string {
 46796  	return s.RespMetadata.RequestID
 46797  }
 46798  
 46799  // This data type is deprecated. Instead, use ParameterStringFilter.
 46800  type ParametersFilter struct {
 46801  	_ struct{} `type:"structure"`
 46802  
 46803  	// The name of the filter.
 46804  	//
 46805  	// Key is a required field
 46806  	Key *string `type:"string" required:"true" enum:"ParametersFilterKey"`
 46807  
 46808  	// The filter values.
 46809  	//
 46810  	// Values is a required field
 46811  	Values []*string `min:"1" type:"list" required:"true"`
 46812  }
 46813  
 46814  // String returns the string representation.
 46815  //
 46816  // API parameter values that are decorated as "sensitive" in the API will not
 46817  // be included in the string output. The member name will be present, but the
 46818  // value will be replaced with "sensitive".
 46819  func (s ParametersFilter) String() string {
 46820  	return awsutil.Prettify(s)
 46821  }
 46822  
 46823  // GoString returns the string representation.
 46824  //
 46825  // API parameter values that are decorated as "sensitive" in the API will not
 46826  // be included in the string output. The member name will be present, but the
 46827  // value will be replaced with "sensitive".
 46828  func (s ParametersFilter) GoString() string {
 46829  	return s.String()
 46830  }
 46831  
 46832  // Validate inspects the fields of the type to determine if they are valid.
 46833  func (s *ParametersFilter) Validate() error {
 46834  	invalidParams := request.ErrInvalidParams{Context: "ParametersFilter"}
 46835  	if s.Key == nil {
 46836  		invalidParams.Add(request.NewErrParamRequired("Key"))
 46837  	}
 46838  	if s.Values == nil {
 46839  		invalidParams.Add(request.NewErrParamRequired("Values"))
 46840  	}
 46841  	if s.Values != nil && len(s.Values) < 1 {
 46842  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 46843  	}
 46844  
 46845  	if invalidParams.Len() > 0 {
 46846  		return invalidParams
 46847  	}
 46848  	return nil
 46849  }
 46850  
 46851  // SetKey sets the Key field's value.
 46852  func (s *ParametersFilter) SetKey(v string) *ParametersFilter {
 46853  	s.Key = &v
 46854  	return s
 46855  }
 46856  
 46857  // SetValues sets the Values field's value.
 46858  func (s *ParametersFilter) SetValues(v []*string) *ParametersFilter {
 46859  	s.Values = v
 46860  	return s
 46861  }
 46862  
 46863  // Represents metadata about a patch.
 46864  type Patch struct {
 46865  	_ struct{} `type:"structure"`
 46866  
 46867  	// The Advisory ID of the patch. For example, RHSA-2020:3779. Applies to Linux-based
 46868  	// instances only.
 46869  	AdvisoryIds []*string `type:"list"`
 46870  
 46871  	// The architecture of the patch. For example, in example-pkg-0.710.10-2.7.abcd.x86_64,
 46872  	// the architecture is indicated by x86_64. Applies to Linux-based instances
 46873  	// only.
 46874  	Arch *string `type:"string"`
 46875  
 46876  	// The Bugzilla ID of the patch. For example, 1600646. Applies to Linux-based
 46877  	// instances only.
 46878  	BugzillaIds []*string `type:"list"`
 46879  
 46880  	// The Common Vulnerabilities and Exposures (CVE) ID of the patch. For example,
 46881  	// CVE-2011-3192. Applies to Linux-based instances only.
 46882  	CVEIds []*string `type:"list"`
 46883  
 46884  	// The classification of the patch. For example, SecurityUpdates, Updates, or
 46885  	// CriticalUpdates.
 46886  	Classification *string `type:"string"`
 46887  
 46888  	// The URL where more information can be obtained about the patch.
 46889  	ContentUrl *string `type:"string"`
 46890  
 46891  	// The description of the patch.
 46892  	Description *string `type:"string"`
 46893  
 46894  	// The epoch of the patch. For example in pkg-example-EE-20180914-2.2.amzn1.noarch,
 46895  	// the epoch value is 20180914-2. Applies to Linux-based instances only.
 46896  	Epoch *int64 `type:"integer"`
 46897  
 46898  	// The ID of the patch. Applies to Windows patches only.
 46899  	//
 46900  	// This ID isn't the same as the Microsoft Knowledge Base ID.
 46901  	Id *string `min:"1" type:"string"`
 46902  
 46903  	// The Microsoft Knowledge Base ID of the patch. Applies to Windows patches
 46904  	// only.
 46905  	KbNumber *string `type:"string"`
 46906  
 46907  	// The language of the patch if it's language-specific.
 46908  	Language *string `type:"string"`
 46909  
 46910  	// The ID of the Microsoft Security Response Center (MSRC) bulletin the patch
 46911  	// is related to. For example, MS14-045. Applies to Windows patches only.
 46912  	MsrcNumber *string `type:"string"`
 46913  
 46914  	// The severity of the patch, such as Critical, Important, or Moderate. Applies
 46915  	// to Windows patches only.
 46916  	MsrcSeverity *string `type:"string"`
 46917  
 46918  	// The name of the patch. Applies to Linux-based instances only.
 46919  	Name *string `type:"string"`
 46920  
 46921  	// The specific product the patch is applicable for. For example, WindowsServer2016
 46922  	// or AmazonLinux2018.03.
 46923  	Product *string `type:"string"`
 46924  
 46925  	// The product family the patch is applicable for. For example, Windows or Amazon
 46926  	// Linux 2.
 46927  	ProductFamily *string `type:"string"`
 46928  
 46929  	// The particular release of a patch. For example, in pkg-example-EE-20180914-2.2.amzn1.noarch,
 46930  	// the release is 2.amaz1. Applies to Linux-based instances only.
 46931  	Release *string `type:"string"`
 46932  
 46933  	// The date the patch was released.
 46934  	ReleaseDate *time.Time `type:"timestamp"`
 46935  
 46936  	// The source patch repository for the operating system and version, such as
 46937  	// trusty-security for Ubuntu Server 14.04 LTE and focal-security for Ubuntu
 46938  	// Server 20.04 LTE. Applies to Linux-based instances only.
 46939  	Repository *string `type:"string"`
 46940  
 46941  	// The severity level of the patch. For example, CRITICAL or MODERATE.
 46942  	Severity *string `type:"string"`
 46943  
 46944  	// The title of the patch.
 46945  	Title *string `type:"string"`
 46946  
 46947  	// The name of the vendor providing the patch.
 46948  	Vendor *string `type:"string"`
 46949  
 46950  	// The version number of the patch. For example, in example-pkg-1.710.10-2.7.abcd.x86_64,
 46951  	// the version number is indicated by -1. Applies to Linux-based instances only.
 46952  	Version *string `type:"string"`
 46953  }
 46954  
 46955  // String returns the string representation.
 46956  //
 46957  // API parameter values that are decorated as "sensitive" in the API will not
 46958  // be included in the string output. The member name will be present, but the
 46959  // value will be replaced with "sensitive".
 46960  func (s Patch) String() string {
 46961  	return awsutil.Prettify(s)
 46962  }
 46963  
 46964  // GoString returns the string representation.
 46965  //
 46966  // API parameter values that are decorated as "sensitive" in the API will not
 46967  // be included in the string output. The member name will be present, but the
 46968  // value will be replaced with "sensitive".
 46969  func (s Patch) GoString() string {
 46970  	return s.String()
 46971  }
 46972  
 46973  // SetAdvisoryIds sets the AdvisoryIds field's value.
 46974  func (s *Patch) SetAdvisoryIds(v []*string) *Patch {
 46975  	s.AdvisoryIds = v
 46976  	return s
 46977  }
 46978  
 46979  // SetArch sets the Arch field's value.
 46980  func (s *Patch) SetArch(v string) *Patch {
 46981  	s.Arch = &v
 46982  	return s
 46983  }
 46984  
 46985  // SetBugzillaIds sets the BugzillaIds field's value.
 46986  func (s *Patch) SetBugzillaIds(v []*string) *Patch {
 46987  	s.BugzillaIds = v
 46988  	return s
 46989  }
 46990  
 46991  // SetCVEIds sets the CVEIds field's value.
 46992  func (s *Patch) SetCVEIds(v []*string) *Patch {
 46993  	s.CVEIds = v
 46994  	return s
 46995  }
 46996  
 46997  // SetClassification sets the Classification field's value.
 46998  func (s *Patch) SetClassification(v string) *Patch {
 46999  	s.Classification = &v
 47000  	return s
 47001  }
 47002  
 47003  // SetContentUrl sets the ContentUrl field's value.
 47004  func (s *Patch) SetContentUrl(v string) *Patch {
 47005  	s.ContentUrl = &v
 47006  	return s
 47007  }
 47008  
 47009  // SetDescription sets the Description field's value.
 47010  func (s *Patch) SetDescription(v string) *Patch {
 47011  	s.Description = &v
 47012  	return s
 47013  }
 47014  
 47015  // SetEpoch sets the Epoch field's value.
 47016  func (s *Patch) SetEpoch(v int64) *Patch {
 47017  	s.Epoch = &v
 47018  	return s
 47019  }
 47020  
 47021  // SetId sets the Id field's value.
 47022  func (s *Patch) SetId(v string) *Patch {
 47023  	s.Id = &v
 47024  	return s
 47025  }
 47026  
 47027  // SetKbNumber sets the KbNumber field's value.
 47028  func (s *Patch) SetKbNumber(v string) *Patch {
 47029  	s.KbNumber = &v
 47030  	return s
 47031  }
 47032  
 47033  // SetLanguage sets the Language field's value.
 47034  func (s *Patch) SetLanguage(v string) *Patch {
 47035  	s.Language = &v
 47036  	return s
 47037  }
 47038  
 47039  // SetMsrcNumber sets the MsrcNumber field's value.
 47040  func (s *Patch) SetMsrcNumber(v string) *Patch {
 47041  	s.MsrcNumber = &v
 47042  	return s
 47043  }
 47044  
 47045  // SetMsrcSeverity sets the MsrcSeverity field's value.
 47046  func (s *Patch) SetMsrcSeverity(v string) *Patch {
 47047  	s.MsrcSeverity = &v
 47048  	return s
 47049  }
 47050  
 47051  // SetName sets the Name field's value.
 47052  func (s *Patch) SetName(v string) *Patch {
 47053  	s.Name = &v
 47054  	return s
 47055  }
 47056  
 47057  // SetProduct sets the Product field's value.
 47058  func (s *Patch) SetProduct(v string) *Patch {
 47059  	s.Product = &v
 47060  	return s
 47061  }
 47062  
 47063  // SetProductFamily sets the ProductFamily field's value.
 47064  func (s *Patch) SetProductFamily(v string) *Patch {
 47065  	s.ProductFamily = &v
 47066  	return s
 47067  }
 47068  
 47069  // SetRelease sets the Release field's value.
 47070  func (s *Patch) SetRelease(v string) *Patch {
 47071  	s.Release = &v
 47072  	return s
 47073  }
 47074  
 47075  // SetReleaseDate sets the ReleaseDate field's value.
 47076  func (s *Patch) SetReleaseDate(v time.Time) *Patch {
 47077  	s.ReleaseDate = &v
 47078  	return s
 47079  }
 47080  
 47081  // SetRepository sets the Repository field's value.
 47082  func (s *Patch) SetRepository(v string) *Patch {
 47083  	s.Repository = &v
 47084  	return s
 47085  }
 47086  
 47087  // SetSeverity sets the Severity field's value.
 47088  func (s *Patch) SetSeverity(v string) *Patch {
 47089  	s.Severity = &v
 47090  	return s
 47091  }
 47092  
 47093  // SetTitle sets the Title field's value.
 47094  func (s *Patch) SetTitle(v string) *Patch {
 47095  	s.Title = &v
 47096  	return s
 47097  }
 47098  
 47099  // SetVendor sets the Vendor field's value.
 47100  func (s *Patch) SetVendor(v string) *Patch {
 47101  	s.Vendor = &v
 47102  	return s
 47103  }
 47104  
 47105  // SetVersion sets the Version field's value.
 47106  func (s *Patch) SetVersion(v string) *Patch {
 47107  	s.Version = &v
 47108  	return s
 47109  }
 47110  
 47111  // Defines the basic information about a patch baseline.
 47112  type PatchBaselineIdentity struct {
 47113  	_ struct{} `type:"structure"`
 47114  
 47115  	// The description of the patch baseline.
 47116  	BaselineDescription *string `min:"1" type:"string"`
 47117  
 47118  	// The ID of the patch baseline.
 47119  	BaselineId *string `min:"20" type:"string"`
 47120  
 47121  	// The name of the patch baseline.
 47122  	BaselineName *string `min:"3" type:"string"`
 47123  
 47124  	// Whether this is the default baseline. Amazon Web Services Systems Manager
 47125  	// supports creating multiple default patch baselines. For example, you can
 47126  	// create a default patch baseline for each operating system.
 47127  	DefaultBaseline *bool `type:"boolean"`
 47128  
 47129  	// Defines the operating system the patch baseline applies to. The default value
 47130  	// is WINDOWS.
 47131  	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
 47132  }
 47133  
 47134  // String returns the string representation.
 47135  //
 47136  // API parameter values that are decorated as "sensitive" in the API will not
 47137  // be included in the string output. The member name will be present, but the
 47138  // value will be replaced with "sensitive".
 47139  func (s PatchBaselineIdentity) String() string {
 47140  	return awsutil.Prettify(s)
 47141  }
 47142  
 47143  // GoString returns the string representation.
 47144  //
 47145  // API parameter values that are decorated as "sensitive" in the API will not
 47146  // be included in the string output. The member name will be present, but the
 47147  // value will be replaced with "sensitive".
 47148  func (s PatchBaselineIdentity) GoString() string {
 47149  	return s.String()
 47150  }
 47151  
 47152  // SetBaselineDescription sets the BaselineDescription field's value.
 47153  func (s *PatchBaselineIdentity) SetBaselineDescription(v string) *PatchBaselineIdentity {
 47154  	s.BaselineDescription = &v
 47155  	return s
 47156  }
 47157  
 47158  // SetBaselineId sets the BaselineId field's value.
 47159  func (s *PatchBaselineIdentity) SetBaselineId(v string) *PatchBaselineIdentity {
 47160  	s.BaselineId = &v
 47161  	return s
 47162  }
 47163  
 47164  // SetBaselineName sets the BaselineName field's value.
 47165  func (s *PatchBaselineIdentity) SetBaselineName(v string) *PatchBaselineIdentity {
 47166  	s.BaselineName = &v
 47167  	return s
 47168  }
 47169  
 47170  // SetDefaultBaseline sets the DefaultBaseline field's value.
 47171  func (s *PatchBaselineIdentity) SetDefaultBaseline(v bool) *PatchBaselineIdentity {
 47172  	s.DefaultBaseline = &v
 47173  	return s
 47174  }
 47175  
 47176  // SetOperatingSystem sets the OperatingSystem field's value.
 47177  func (s *PatchBaselineIdentity) SetOperatingSystem(v string) *PatchBaselineIdentity {
 47178  	s.OperatingSystem = &v
 47179  	return s
 47180  }
 47181  
 47182  // Information about the state of a patch on a particular instance as it relates
 47183  // to the patch baseline used to patch the instance.
 47184  type PatchComplianceData struct {
 47185  	_ struct{} `type:"structure"`
 47186  
 47187  	// The IDs of one or more Common Vulnerabilities and Exposure (CVE) issues that
 47188  	// are resolved by the patch.
 47189  	CVEIds *string `type:"string"`
 47190  
 47191  	// The classification of the patch, such as SecurityUpdates, Updates, and CriticalUpdates.
 47192  	//
 47193  	// Classification is a required field
 47194  	Classification *string `type:"string" required:"true"`
 47195  
 47196  	// The date/time the patch was installed on the instance. Not all operating
 47197  	// systems provide this level of information.
 47198  	//
 47199  	// InstalledTime is a required field
 47200  	InstalledTime *time.Time `type:"timestamp" required:"true"`
 47201  
 47202  	// The operating system-specific ID of the patch.
 47203  	//
 47204  	// KBId is a required field
 47205  	KBId *string `type:"string" required:"true"`
 47206  
 47207  	// The severity of the patchsuch as Critical, Important, and Moderate.
 47208  	//
 47209  	// Severity is a required field
 47210  	Severity *string `type:"string" required:"true"`
 47211  
 47212  	// The state of the patch on the instance, such as INSTALLED or FAILED.
 47213  	//
 47214  	// For descriptions of each patch state, see About patch compliance (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-compliance-about.html#sysman-compliance-monitor-patch)
 47215  	// in the Amazon Web Services Systems Manager User Guide.
 47216  	//
 47217  	// State is a required field
 47218  	State *string `type:"string" required:"true" enum:"PatchComplianceDataState"`
 47219  
 47220  	// The title of the patch.
 47221  	//
 47222  	// Title is a required field
 47223  	Title *string `type:"string" required:"true"`
 47224  }
 47225  
 47226  // String returns the string representation.
 47227  //
 47228  // API parameter values that are decorated as "sensitive" in the API will not
 47229  // be included in the string output. The member name will be present, but the
 47230  // value will be replaced with "sensitive".
 47231  func (s PatchComplianceData) String() string {
 47232  	return awsutil.Prettify(s)
 47233  }
 47234  
 47235  // GoString returns the string representation.
 47236  //
 47237  // API parameter values that are decorated as "sensitive" in the API will not
 47238  // be included in the string output. The member name will be present, but the
 47239  // value will be replaced with "sensitive".
 47240  func (s PatchComplianceData) GoString() string {
 47241  	return s.String()
 47242  }
 47243  
 47244  // SetCVEIds sets the CVEIds field's value.
 47245  func (s *PatchComplianceData) SetCVEIds(v string) *PatchComplianceData {
 47246  	s.CVEIds = &v
 47247  	return s
 47248  }
 47249  
 47250  // SetClassification sets the Classification field's value.
 47251  func (s *PatchComplianceData) SetClassification(v string) *PatchComplianceData {
 47252  	s.Classification = &v
 47253  	return s
 47254  }
 47255  
 47256  // SetInstalledTime sets the InstalledTime field's value.
 47257  func (s *PatchComplianceData) SetInstalledTime(v time.Time) *PatchComplianceData {
 47258  	s.InstalledTime = &v
 47259  	return s
 47260  }
 47261  
 47262  // SetKBId sets the KBId field's value.
 47263  func (s *PatchComplianceData) SetKBId(v string) *PatchComplianceData {
 47264  	s.KBId = &v
 47265  	return s
 47266  }
 47267  
 47268  // SetSeverity sets the Severity field's value.
 47269  func (s *PatchComplianceData) SetSeverity(v string) *PatchComplianceData {
 47270  	s.Severity = &v
 47271  	return s
 47272  }
 47273  
 47274  // SetState sets the State field's value.
 47275  func (s *PatchComplianceData) SetState(v string) *PatchComplianceData {
 47276  	s.State = &v
 47277  	return s
 47278  }
 47279  
 47280  // SetTitle sets the Title field's value.
 47281  func (s *PatchComplianceData) SetTitle(v string) *PatchComplianceData {
 47282  	s.Title = &v
 47283  	return s
 47284  }
 47285  
 47286  // Defines which patches should be included in a patch baseline.
 47287  //
 47288  // A patch filter consists of a key and a set of values. The filter key is a
 47289  // patch property. For example, the available filter keys for WINDOWS are PATCH_SET,
 47290  // PRODUCT, PRODUCT_FAMILY, CLASSIFICATION, and MSRC_SEVERITY.
 47291  //
 47292  // The filter values define a matching criterion for the patch property indicated
 47293  // by the key. For example, if the filter key is PRODUCT and the filter values
 47294  // are ["Office 2013", "Office 2016"], then the filter accepts all patches where
 47295  // product name is either "Office 2013" or "Office 2016". The filter values
 47296  // can be exact values for the patch property given as a key, or a wildcard
 47297  // (*), which matches all values.
 47298  //
 47299  // You can view lists of valid values for the patch properties by running the
 47300  // DescribePatchProperties command. For information about which patch properties
 47301  // can be used with each major operating system, see DescribePatchProperties.
 47302  type PatchFilter struct {
 47303  	_ struct{} `type:"structure"`
 47304  
 47305  	// The key for the filter.
 47306  	//
 47307  	// Run the DescribePatchProperties command to view lists of valid keys for each
 47308  	// operating system type.
 47309  	//
 47310  	// Key is a required field
 47311  	Key *string `type:"string" required:"true" enum:"PatchFilterKey"`
 47312  
 47313  	// The value for the filter key.
 47314  	//
 47315  	// Run the DescribePatchProperties command to view lists of valid values for
 47316  	// each key based on operating system type.
 47317  	//
 47318  	// Values is a required field
 47319  	Values []*string `min:"1" type:"list" required:"true"`
 47320  }
 47321  
 47322  // String returns the string representation.
 47323  //
 47324  // API parameter values that are decorated as "sensitive" in the API will not
 47325  // be included in the string output. The member name will be present, but the
 47326  // value will be replaced with "sensitive".
 47327  func (s PatchFilter) String() string {
 47328  	return awsutil.Prettify(s)
 47329  }
 47330  
 47331  // GoString returns the string representation.
 47332  //
 47333  // API parameter values that are decorated as "sensitive" in the API will not
 47334  // be included in the string output. The member name will be present, but the
 47335  // value will be replaced with "sensitive".
 47336  func (s PatchFilter) GoString() string {
 47337  	return s.String()
 47338  }
 47339  
 47340  // Validate inspects the fields of the type to determine if they are valid.
 47341  func (s *PatchFilter) Validate() error {
 47342  	invalidParams := request.ErrInvalidParams{Context: "PatchFilter"}
 47343  	if s.Key == nil {
 47344  		invalidParams.Add(request.NewErrParamRequired("Key"))
 47345  	}
 47346  	if s.Values == nil {
 47347  		invalidParams.Add(request.NewErrParamRequired("Values"))
 47348  	}
 47349  	if s.Values != nil && len(s.Values) < 1 {
 47350  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 47351  	}
 47352  
 47353  	if invalidParams.Len() > 0 {
 47354  		return invalidParams
 47355  	}
 47356  	return nil
 47357  }
 47358  
 47359  // SetKey sets the Key field's value.
 47360  func (s *PatchFilter) SetKey(v string) *PatchFilter {
 47361  	s.Key = &v
 47362  	return s
 47363  }
 47364  
 47365  // SetValues sets the Values field's value.
 47366  func (s *PatchFilter) SetValues(v []*string) *PatchFilter {
 47367  	s.Values = v
 47368  	return s
 47369  }
 47370  
 47371  // A set of patch filters, typically used for approval rules.
 47372  type PatchFilterGroup struct {
 47373  	_ struct{} `type:"structure"`
 47374  
 47375  	// The set of patch filters that make up the group.
 47376  	//
 47377  	// PatchFilters is a required field
 47378  	PatchFilters []*PatchFilter `type:"list" required:"true"`
 47379  }
 47380  
 47381  // String returns the string representation.
 47382  //
 47383  // API parameter values that are decorated as "sensitive" in the API will not
 47384  // be included in the string output. The member name will be present, but the
 47385  // value will be replaced with "sensitive".
 47386  func (s PatchFilterGroup) String() string {
 47387  	return awsutil.Prettify(s)
 47388  }
 47389  
 47390  // GoString returns the string representation.
 47391  //
 47392  // API parameter values that are decorated as "sensitive" in the API will not
 47393  // be included in the string output. The member name will be present, but the
 47394  // value will be replaced with "sensitive".
 47395  func (s PatchFilterGroup) GoString() string {
 47396  	return s.String()
 47397  }
 47398  
 47399  // Validate inspects the fields of the type to determine if they are valid.
 47400  func (s *PatchFilterGroup) Validate() error {
 47401  	invalidParams := request.ErrInvalidParams{Context: "PatchFilterGroup"}
 47402  	if s.PatchFilters == nil {
 47403  		invalidParams.Add(request.NewErrParamRequired("PatchFilters"))
 47404  	}
 47405  	if s.PatchFilters != nil {
 47406  		for i, v := range s.PatchFilters {
 47407  			if v == nil {
 47408  				continue
 47409  			}
 47410  			if err := v.Validate(); err != nil {
 47411  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PatchFilters", i), err.(request.ErrInvalidParams))
 47412  			}
 47413  		}
 47414  	}
 47415  
 47416  	if invalidParams.Len() > 0 {
 47417  		return invalidParams
 47418  	}
 47419  	return nil
 47420  }
 47421  
 47422  // SetPatchFilters sets the PatchFilters field's value.
 47423  func (s *PatchFilterGroup) SetPatchFilters(v []*PatchFilter) *PatchFilterGroup {
 47424  	s.PatchFilters = v
 47425  	return s
 47426  }
 47427  
 47428  // The mapping between a patch group and the patch baseline the patch group
 47429  // is registered with.
 47430  type PatchGroupPatchBaselineMapping struct {
 47431  	_ struct{} `type:"structure"`
 47432  
 47433  	// The patch baseline the patch group is registered with.
 47434  	BaselineIdentity *PatchBaselineIdentity `type:"structure"`
 47435  
 47436  	// The name of the patch group registered with the patch baseline.
 47437  	PatchGroup *string `min:"1" type:"string"`
 47438  }
 47439  
 47440  // String returns the string representation.
 47441  //
 47442  // API parameter values that are decorated as "sensitive" in the API will not
 47443  // be included in the string output. The member name will be present, but the
 47444  // value will be replaced with "sensitive".
 47445  func (s PatchGroupPatchBaselineMapping) String() string {
 47446  	return awsutil.Prettify(s)
 47447  }
 47448  
 47449  // GoString returns the string representation.
 47450  //
 47451  // API parameter values that are decorated as "sensitive" in the API will not
 47452  // be included in the string output. The member name will be present, but the
 47453  // value will be replaced with "sensitive".
 47454  func (s PatchGroupPatchBaselineMapping) GoString() string {
 47455  	return s.String()
 47456  }
 47457  
 47458  // SetBaselineIdentity sets the BaselineIdentity field's value.
 47459  func (s *PatchGroupPatchBaselineMapping) SetBaselineIdentity(v *PatchBaselineIdentity) *PatchGroupPatchBaselineMapping {
 47460  	s.BaselineIdentity = v
 47461  	return s
 47462  }
 47463  
 47464  // SetPatchGroup sets the PatchGroup field's value.
 47465  func (s *PatchGroupPatchBaselineMapping) SetPatchGroup(v string) *PatchGroupPatchBaselineMapping {
 47466  	s.PatchGroup = &v
 47467  	return s
 47468  }
 47469  
 47470  // Defines a filter used in Patch Manager APIs. Supported filter keys depend
 47471  // on the API operation that includes the filter. Patch Manager API operations
 47472  // that use PatchOrchestratorFilter include the following:
 47473  //
 47474  //    * DescribeAvailablePatches
 47475  //
 47476  //    * DescribeInstancePatches
 47477  //
 47478  //    * DescribePatchBaselines
 47479  //
 47480  //    * DescribePatchGroups
 47481  type PatchOrchestratorFilter struct {
 47482  	_ struct{} `type:"structure"`
 47483  
 47484  	// The key for the filter.
 47485  	Key *string `min:"1" type:"string"`
 47486  
 47487  	// The value for the filter.
 47488  	Values []*string `type:"list"`
 47489  }
 47490  
 47491  // String returns the string representation.
 47492  //
 47493  // API parameter values that are decorated as "sensitive" in the API will not
 47494  // be included in the string output. The member name will be present, but the
 47495  // value will be replaced with "sensitive".
 47496  func (s PatchOrchestratorFilter) String() string {
 47497  	return awsutil.Prettify(s)
 47498  }
 47499  
 47500  // GoString returns the string representation.
 47501  //
 47502  // API parameter values that are decorated as "sensitive" in the API will not
 47503  // be included in the string output. The member name will be present, but the
 47504  // value will be replaced with "sensitive".
 47505  func (s PatchOrchestratorFilter) GoString() string {
 47506  	return s.String()
 47507  }
 47508  
 47509  // Validate inspects the fields of the type to determine if they are valid.
 47510  func (s *PatchOrchestratorFilter) Validate() error {
 47511  	invalidParams := request.ErrInvalidParams{Context: "PatchOrchestratorFilter"}
 47512  	if s.Key != nil && len(*s.Key) < 1 {
 47513  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 47514  	}
 47515  
 47516  	if invalidParams.Len() > 0 {
 47517  		return invalidParams
 47518  	}
 47519  	return nil
 47520  }
 47521  
 47522  // SetKey sets the Key field's value.
 47523  func (s *PatchOrchestratorFilter) SetKey(v string) *PatchOrchestratorFilter {
 47524  	s.Key = &v
 47525  	return s
 47526  }
 47527  
 47528  // SetValues sets the Values field's value.
 47529  func (s *PatchOrchestratorFilter) SetValues(v []*string) *PatchOrchestratorFilter {
 47530  	s.Values = v
 47531  	return s
 47532  }
 47533  
 47534  // Defines an approval rule for a patch baseline.
 47535  type PatchRule struct {
 47536  	_ struct{} `type:"structure"`
 47537  
 47538  	// The number of days after the release date of each patch matched by the rule
 47539  	// that the patch is marked as approved in the patch baseline. For example,
 47540  	// a value of 7 means that patches are approved seven days after they are released.
 47541  	// Not supported on Debian Server or Ubuntu Server.
 47542  	ApproveAfterDays *int64 `type:"integer"`
 47543  
 47544  	// The cutoff date for auto approval of released patches. Any patches released
 47545  	// on or before this date are installed automatically. Not supported on Debian
 47546  	// Server or Ubuntu Server.
 47547  	//
 47548  	// Enter dates in the format YYYY-MM-DD. For example, 2021-12-31.
 47549  	ApproveUntilDate *string `min:"1" type:"string"`
 47550  
 47551  	// A compliance severity level for all approved patches in a patch baseline.
 47552  	ComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
 47553  
 47554  	// For instances identified by the approval rule filters, enables a patch baseline
 47555  	// to apply non-security updates available in the specified repository. The
 47556  	// default value is false. Applies to Linux instances only.
 47557  	EnableNonSecurity *bool `type:"boolean"`
 47558  
 47559  	// The patch filter group that defines the criteria for the rule.
 47560  	//
 47561  	// PatchFilterGroup is a required field
 47562  	PatchFilterGroup *PatchFilterGroup `type:"structure" required:"true"`
 47563  }
 47564  
 47565  // String returns the string representation.
 47566  //
 47567  // API parameter values that are decorated as "sensitive" in the API will not
 47568  // be included in the string output. The member name will be present, but the
 47569  // value will be replaced with "sensitive".
 47570  func (s PatchRule) String() string {
 47571  	return awsutil.Prettify(s)
 47572  }
 47573  
 47574  // GoString returns the string representation.
 47575  //
 47576  // API parameter values that are decorated as "sensitive" in the API will not
 47577  // be included in the string output. The member name will be present, but the
 47578  // value will be replaced with "sensitive".
 47579  func (s PatchRule) GoString() string {
 47580  	return s.String()
 47581  }
 47582  
 47583  // Validate inspects the fields of the type to determine if they are valid.
 47584  func (s *PatchRule) Validate() error {
 47585  	invalidParams := request.ErrInvalidParams{Context: "PatchRule"}
 47586  	if s.ApproveUntilDate != nil && len(*s.ApproveUntilDate) < 1 {
 47587  		invalidParams.Add(request.NewErrParamMinLen("ApproveUntilDate", 1))
 47588  	}
 47589  	if s.PatchFilterGroup == nil {
 47590  		invalidParams.Add(request.NewErrParamRequired("PatchFilterGroup"))
 47591  	}
 47592  	if s.PatchFilterGroup != nil {
 47593  		if err := s.PatchFilterGroup.Validate(); err != nil {
 47594  			invalidParams.AddNested("PatchFilterGroup", err.(request.ErrInvalidParams))
 47595  		}
 47596  	}
 47597  
 47598  	if invalidParams.Len() > 0 {
 47599  		return invalidParams
 47600  	}
 47601  	return nil
 47602  }
 47603  
 47604  // SetApproveAfterDays sets the ApproveAfterDays field's value.
 47605  func (s *PatchRule) SetApproveAfterDays(v int64) *PatchRule {
 47606  	s.ApproveAfterDays = &v
 47607  	return s
 47608  }
 47609  
 47610  // SetApproveUntilDate sets the ApproveUntilDate field's value.
 47611  func (s *PatchRule) SetApproveUntilDate(v string) *PatchRule {
 47612  	s.ApproveUntilDate = &v
 47613  	return s
 47614  }
 47615  
 47616  // SetComplianceLevel sets the ComplianceLevel field's value.
 47617  func (s *PatchRule) SetComplianceLevel(v string) *PatchRule {
 47618  	s.ComplianceLevel = &v
 47619  	return s
 47620  }
 47621  
 47622  // SetEnableNonSecurity sets the EnableNonSecurity field's value.
 47623  func (s *PatchRule) SetEnableNonSecurity(v bool) *PatchRule {
 47624  	s.EnableNonSecurity = &v
 47625  	return s
 47626  }
 47627  
 47628  // SetPatchFilterGroup sets the PatchFilterGroup field's value.
 47629  func (s *PatchRule) SetPatchFilterGroup(v *PatchFilterGroup) *PatchRule {
 47630  	s.PatchFilterGroup = v
 47631  	return s
 47632  }
 47633  
 47634  // A set of rules defining the approval rules for a patch baseline.
 47635  type PatchRuleGroup struct {
 47636  	_ struct{} `type:"structure"`
 47637  
 47638  	// The rules that make up the rule group.
 47639  	//
 47640  	// PatchRules is a required field
 47641  	PatchRules []*PatchRule `type:"list" required:"true"`
 47642  }
 47643  
 47644  // String returns the string representation.
 47645  //
 47646  // API parameter values that are decorated as "sensitive" in the API will not
 47647  // be included in the string output. The member name will be present, but the
 47648  // value will be replaced with "sensitive".
 47649  func (s PatchRuleGroup) String() string {
 47650  	return awsutil.Prettify(s)
 47651  }
 47652  
 47653  // GoString returns the string representation.
 47654  //
 47655  // API parameter values that are decorated as "sensitive" in the API will not
 47656  // be included in the string output. The member name will be present, but the
 47657  // value will be replaced with "sensitive".
 47658  func (s PatchRuleGroup) GoString() string {
 47659  	return s.String()
 47660  }
 47661  
 47662  // Validate inspects the fields of the type to determine if they are valid.
 47663  func (s *PatchRuleGroup) Validate() error {
 47664  	invalidParams := request.ErrInvalidParams{Context: "PatchRuleGroup"}
 47665  	if s.PatchRules == nil {
 47666  		invalidParams.Add(request.NewErrParamRequired("PatchRules"))
 47667  	}
 47668  	if s.PatchRules != nil {
 47669  		for i, v := range s.PatchRules {
 47670  			if v == nil {
 47671  				continue
 47672  			}
 47673  			if err := v.Validate(); err != nil {
 47674  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PatchRules", i), err.(request.ErrInvalidParams))
 47675  			}
 47676  		}
 47677  	}
 47678  
 47679  	if invalidParams.Len() > 0 {
 47680  		return invalidParams
 47681  	}
 47682  	return nil
 47683  }
 47684  
 47685  // SetPatchRules sets the PatchRules field's value.
 47686  func (s *PatchRuleGroup) SetPatchRules(v []*PatchRule) *PatchRuleGroup {
 47687  	s.PatchRules = v
 47688  	return s
 47689  }
 47690  
 47691  // Information about the patches to use to update the instances, including target
 47692  // operating systems and source repository. Applies to Linux instances only.
 47693  type PatchSource struct {
 47694  	_ struct{} `type:"structure"`
 47695  
 47696  	// The value of the yum repo configuration. For example:
 47697  	//
 47698  	// [main]
 47699  	//
 47700  	// name=MyCustomRepository
 47701  	//
 47702  	// baseurl=https://my-custom-repository
 47703  	//
 47704  	// enabled=1
 47705  	//
 47706  	// For information about other options available for your yum repository configuration,
 47707  	// see dnf.conf(5) (https://man7.org/linux/man-pages/man5/dnf.conf.5.html).
 47708  	//
 47709  	// Configuration is a sensitive parameter and its value will be
 47710  	// replaced with "sensitive" in string returned by PatchSource's
 47711  	// String and GoString methods.
 47712  	//
 47713  	// Configuration is a required field
 47714  	Configuration *string `min:"1" type:"string" required:"true" sensitive:"true"`
 47715  
 47716  	// The name specified to identify the patch source.
 47717  	//
 47718  	// Name is a required field
 47719  	Name *string `type:"string" required:"true"`
 47720  
 47721  	// The specific operating system versions a patch repository applies to, such
 47722  	// as "Ubuntu16.04", "AmazonLinux2016.09", "RedhatEnterpriseLinux7.2" or "Suse12.7".
 47723  	// For lists of supported product values, see PatchFilter.
 47724  	//
 47725  	// Products is a required field
 47726  	Products []*string `min:"1" type:"list" required:"true"`
 47727  }
 47728  
 47729  // String returns the string representation.
 47730  //
 47731  // API parameter values that are decorated as "sensitive" in the API will not
 47732  // be included in the string output. The member name will be present, but the
 47733  // value will be replaced with "sensitive".
 47734  func (s PatchSource) String() string {
 47735  	return awsutil.Prettify(s)
 47736  }
 47737  
 47738  // GoString returns the string representation.
 47739  //
 47740  // API parameter values that are decorated as "sensitive" in the API will not
 47741  // be included in the string output. The member name will be present, but the
 47742  // value will be replaced with "sensitive".
 47743  func (s PatchSource) GoString() string {
 47744  	return s.String()
 47745  }
 47746  
 47747  // Validate inspects the fields of the type to determine if they are valid.
 47748  func (s *PatchSource) Validate() error {
 47749  	invalidParams := request.ErrInvalidParams{Context: "PatchSource"}
 47750  	if s.Configuration == nil {
 47751  		invalidParams.Add(request.NewErrParamRequired("Configuration"))
 47752  	}
 47753  	if s.Configuration != nil && len(*s.Configuration) < 1 {
 47754  		invalidParams.Add(request.NewErrParamMinLen("Configuration", 1))
 47755  	}
 47756  	if s.Name == nil {
 47757  		invalidParams.Add(request.NewErrParamRequired("Name"))
 47758  	}
 47759  	if s.Products == nil {
 47760  		invalidParams.Add(request.NewErrParamRequired("Products"))
 47761  	}
 47762  	if s.Products != nil && len(s.Products) < 1 {
 47763  		invalidParams.Add(request.NewErrParamMinLen("Products", 1))
 47764  	}
 47765  
 47766  	if invalidParams.Len() > 0 {
 47767  		return invalidParams
 47768  	}
 47769  	return nil
 47770  }
 47771  
 47772  // SetConfiguration sets the Configuration field's value.
 47773  func (s *PatchSource) SetConfiguration(v string) *PatchSource {
 47774  	s.Configuration = &v
 47775  	return s
 47776  }
 47777  
 47778  // SetName sets the Name field's value.
 47779  func (s *PatchSource) SetName(v string) *PatchSource {
 47780  	s.Name = &v
 47781  	return s
 47782  }
 47783  
 47784  // SetProducts sets the Products field's value.
 47785  func (s *PatchSource) SetProducts(v []*string) *PatchSource {
 47786  	s.Products = v
 47787  	return s
 47788  }
 47789  
 47790  // Information about the approval status of a patch.
 47791  type PatchStatus struct {
 47792  	_ struct{} `type:"structure"`
 47793  
 47794  	// The date the patch was approved (or will be approved if the status is PENDING_APPROVAL).
 47795  	ApprovalDate *time.Time `type:"timestamp"`
 47796  
 47797  	// The compliance severity level for a patch.
 47798  	ComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
 47799  
 47800  	// The approval status of a patch.
 47801  	DeploymentStatus *string `type:"string" enum:"PatchDeploymentStatus"`
 47802  }
 47803  
 47804  // String returns the string representation.
 47805  //
 47806  // API parameter values that are decorated as "sensitive" in the API will not
 47807  // be included in the string output. The member name will be present, but the
 47808  // value will be replaced with "sensitive".
 47809  func (s PatchStatus) String() string {
 47810  	return awsutil.Prettify(s)
 47811  }
 47812  
 47813  // GoString returns the string representation.
 47814  //
 47815  // API parameter values that are decorated as "sensitive" in the API will not
 47816  // be included in the string output. The member name will be present, but the
 47817  // value will be replaced with "sensitive".
 47818  func (s PatchStatus) GoString() string {
 47819  	return s.String()
 47820  }
 47821  
 47822  // SetApprovalDate sets the ApprovalDate field's value.
 47823  func (s *PatchStatus) SetApprovalDate(v time.Time) *PatchStatus {
 47824  	s.ApprovalDate = &v
 47825  	return s
 47826  }
 47827  
 47828  // SetComplianceLevel sets the ComplianceLevel field's value.
 47829  func (s *PatchStatus) SetComplianceLevel(v string) *PatchStatus {
 47830  	s.ComplianceLevel = &v
 47831  	return s
 47832  }
 47833  
 47834  // SetDeploymentStatus sets the DeploymentStatus field's value.
 47835  func (s *PatchStatus) SetDeploymentStatus(v string) *PatchStatus {
 47836  	s.DeploymentStatus = &v
 47837  	return s
 47838  }
 47839  
 47840  // You specified more than the maximum number of allowed policies for the parameter.
 47841  // The maximum is 10.
 47842  type PoliciesLimitExceededException struct {
 47843  	_            struct{}                  `type:"structure"`
 47844  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 47845  
 47846  	Message_ *string `locationName:"message" type:"string"`
 47847  }
 47848  
 47849  // String returns the string representation.
 47850  //
 47851  // API parameter values that are decorated as "sensitive" in the API will not
 47852  // be included in the string output. The member name will be present, but the
 47853  // value will be replaced with "sensitive".
 47854  func (s PoliciesLimitExceededException) String() string {
 47855  	return awsutil.Prettify(s)
 47856  }
 47857  
 47858  // GoString returns the string representation.
 47859  //
 47860  // API parameter values that are decorated as "sensitive" in the API will not
 47861  // be included in the string output. The member name will be present, but the
 47862  // value will be replaced with "sensitive".
 47863  func (s PoliciesLimitExceededException) GoString() string {
 47864  	return s.String()
 47865  }
 47866  
 47867  func newErrorPoliciesLimitExceededException(v protocol.ResponseMetadata) error {
 47868  	return &PoliciesLimitExceededException{
 47869  		RespMetadata: v,
 47870  	}
 47871  }
 47872  
 47873  // Code returns the exception type name.
 47874  func (s *PoliciesLimitExceededException) Code() string {
 47875  	return "PoliciesLimitExceededException"
 47876  }
 47877  
 47878  // Message returns the exception's message.
 47879  func (s *PoliciesLimitExceededException) Message() string {
 47880  	if s.Message_ != nil {
 47881  		return *s.Message_
 47882  	}
 47883  	return ""
 47884  }
 47885  
 47886  // OrigErr always returns nil, satisfies awserr.Error interface.
 47887  func (s *PoliciesLimitExceededException) OrigErr() error {
 47888  	return nil
 47889  }
 47890  
 47891  func (s *PoliciesLimitExceededException) Error() string {
 47892  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 47893  }
 47894  
 47895  // Status code returns the HTTP status code for the request's response error.
 47896  func (s *PoliciesLimitExceededException) StatusCode() int {
 47897  	return s.RespMetadata.StatusCode
 47898  }
 47899  
 47900  // RequestID returns the service's response RequestID for request.
 47901  func (s *PoliciesLimitExceededException) RequestID() string {
 47902  	return s.RespMetadata.RequestID
 47903  }
 47904  
 47905  // An aggregate of step execution statuses displayed in the Amazon Web Services
 47906  // Systems Manager console for a multi-Region and multi-account Automation execution.
 47907  type ProgressCounters struct {
 47908  	_ struct{} `type:"structure"`
 47909  
 47910  	// The total number of steps that the system cancelled in all specified Amazon
 47911  	// Web Services Regions and Amazon Web Services accounts for the current Automation
 47912  	// execution.
 47913  	CancelledSteps *int64 `type:"integer"`
 47914  
 47915  	// The total number of steps that failed to run in all specified Amazon Web
 47916  	// Services Regions and Amazon Web Services accounts for the current Automation
 47917  	// execution.
 47918  	FailedSteps *int64 `type:"integer"`
 47919  
 47920  	// The total number of steps that successfully completed in all specified Amazon
 47921  	// Web Services Regions and Amazon Web Services accounts for the current Automation
 47922  	// execution.
 47923  	SuccessSteps *int64 `type:"integer"`
 47924  
 47925  	// The total number of steps that timed out in all specified Amazon Web Services
 47926  	// Regions and Amazon Web Services accounts for the current Automation execution.
 47927  	TimedOutSteps *int64 `type:"integer"`
 47928  
 47929  	// The total number of steps run in all specified Amazon Web Services Regions
 47930  	// and Amazon Web Services accounts for the current Automation execution.
 47931  	TotalSteps *int64 `type:"integer"`
 47932  }
 47933  
 47934  // String returns the string representation.
 47935  //
 47936  // API parameter values that are decorated as "sensitive" in the API will not
 47937  // be included in the string output. The member name will be present, but the
 47938  // value will be replaced with "sensitive".
 47939  func (s ProgressCounters) String() string {
 47940  	return awsutil.Prettify(s)
 47941  }
 47942  
 47943  // GoString returns the string representation.
 47944  //
 47945  // API parameter values that are decorated as "sensitive" in the API will not
 47946  // be included in the string output. The member name will be present, but the
 47947  // value will be replaced with "sensitive".
 47948  func (s ProgressCounters) GoString() string {
 47949  	return s.String()
 47950  }
 47951  
 47952  // SetCancelledSteps sets the CancelledSteps field's value.
 47953  func (s *ProgressCounters) SetCancelledSteps(v int64) *ProgressCounters {
 47954  	s.CancelledSteps = &v
 47955  	return s
 47956  }
 47957  
 47958  // SetFailedSteps sets the FailedSteps field's value.
 47959  func (s *ProgressCounters) SetFailedSteps(v int64) *ProgressCounters {
 47960  	s.FailedSteps = &v
 47961  	return s
 47962  }
 47963  
 47964  // SetSuccessSteps sets the SuccessSteps field's value.
 47965  func (s *ProgressCounters) SetSuccessSteps(v int64) *ProgressCounters {
 47966  	s.SuccessSteps = &v
 47967  	return s
 47968  }
 47969  
 47970  // SetTimedOutSteps sets the TimedOutSteps field's value.
 47971  func (s *ProgressCounters) SetTimedOutSteps(v int64) *ProgressCounters {
 47972  	s.TimedOutSteps = &v
 47973  	return s
 47974  }
 47975  
 47976  // SetTotalSteps sets the TotalSteps field's value.
 47977  func (s *ProgressCounters) SetTotalSteps(v int64) *ProgressCounters {
 47978  	s.TotalSteps = &v
 47979  	return s
 47980  }
 47981  
 47982  type PutComplianceItemsInput struct {
 47983  	_ struct{} `type:"structure"`
 47984  
 47985  	// Specify the compliance type. For example, specify Association (for a State
 47986  	// Manager association), Patch, or Custom:string.
 47987  	//
 47988  	// ComplianceType is a required field
 47989  	ComplianceType *string `min:"1" type:"string" required:"true"`
 47990  
 47991  	// A summary of the call execution that includes an execution ID, the type of
 47992  	// execution (for example, Command), and the date/time of the execution using
 47993  	// a datetime object that is saved in the following format: yyyy-MM-dd'T'HH:mm:ss'Z'.
 47994  	//
 47995  	// ExecutionSummary is a required field
 47996  	ExecutionSummary *ComplianceExecutionSummary `type:"structure" required:"true"`
 47997  
 47998  	// MD5 or SHA-256 content hash. The content hash is used to determine if existing
 47999  	// information should be overwritten or ignored. If the content hashes match,
 48000  	// the request to put compliance information is ignored.
 48001  	ItemContentHash *string `type:"string"`
 48002  
 48003  	// Information about the compliance as defined by the resource type. For example,
 48004  	// for a patch compliance type, Items includes information about the PatchSeverity,
 48005  	// Classification, and so on.
 48006  	//
 48007  	// Items is a required field
 48008  	Items []*ComplianceItemEntry `type:"list" required:"true"`
 48009  
 48010  	// Specify an ID for this resource. For a managed instance, this is the instance
 48011  	// ID.
 48012  	//
 48013  	// ResourceId is a required field
 48014  	ResourceId *string `min:"1" type:"string" required:"true"`
 48015  
 48016  	// Specify the type of resource. ManagedInstance is currently the only supported
 48017  	// resource type.
 48018  	//
 48019  	// ResourceType is a required field
 48020  	ResourceType *string `min:"1" type:"string" required:"true"`
 48021  
 48022  	// The mode for uploading compliance items. You can specify COMPLETE or PARTIAL.
 48023  	// In COMPLETE mode, the system overwrites all existing compliance information
 48024  	// for the resource. You must provide a full list of compliance items each time
 48025  	// you send the request.
 48026  	//
 48027  	// In PARTIAL mode, the system overwrites compliance information for a specific
 48028  	// association. The association must be configured with SyncCompliance set to
 48029  	// MANUAL. By default, all requests use COMPLETE mode.
 48030  	//
 48031  	// This attribute is only valid for association compliance.
 48032  	UploadType *string `type:"string" enum:"ComplianceUploadType"`
 48033  }
 48034  
 48035  // String returns the string representation.
 48036  //
 48037  // API parameter values that are decorated as "sensitive" in the API will not
 48038  // be included in the string output. The member name will be present, but the
 48039  // value will be replaced with "sensitive".
 48040  func (s PutComplianceItemsInput) String() string {
 48041  	return awsutil.Prettify(s)
 48042  }
 48043  
 48044  // GoString returns the string representation.
 48045  //
 48046  // API parameter values that are decorated as "sensitive" in the API will not
 48047  // be included in the string output. The member name will be present, but the
 48048  // value will be replaced with "sensitive".
 48049  func (s PutComplianceItemsInput) GoString() string {
 48050  	return s.String()
 48051  }
 48052  
 48053  // Validate inspects the fields of the type to determine if they are valid.
 48054  func (s *PutComplianceItemsInput) Validate() error {
 48055  	invalidParams := request.ErrInvalidParams{Context: "PutComplianceItemsInput"}
 48056  	if s.ComplianceType == nil {
 48057  		invalidParams.Add(request.NewErrParamRequired("ComplianceType"))
 48058  	}
 48059  	if s.ComplianceType != nil && len(*s.ComplianceType) < 1 {
 48060  		invalidParams.Add(request.NewErrParamMinLen("ComplianceType", 1))
 48061  	}
 48062  	if s.ExecutionSummary == nil {
 48063  		invalidParams.Add(request.NewErrParamRequired("ExecutionSummary"))
 48064  	}
 48065  	if s.Items == nil {
 48066  		invalidParams.Add(request.NewErrParamRequired("Items"))
 48067  	}
 48068  	if s.ResourceId == nil {
 48069  		invalidParams.Add(request.NewErrParamRequired("ResourceId"))
 48070  	}
 48071  	if s.ResourceId != nil && len(*s.ResourceId) < 1 {
 48072  		invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1))
 48073  	}
 48074  	if s.ResourceType == nil {
 48075  		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
 48076  	}
 48077  	if s.ResourceType != nil && len(*s.ResourceType) < 1 {
 48078  		invalidParams.Add(request.NewErrParamMinLen("ResourceType", 1))
 48079  	}
 48080  	if s.ExecutionSummary != nil {
 48081  		if err := s.ExecutionSummary.Validate(); err != nil {
 48082  			invalidParams.AddNested("ExecutionSummary", err.(request.ErrInvalidParams))
 48083  		}
 48084  	}
 48085  	if s.Items != nil {
 48086  		for i, v := range s.Items {
 48087  			if v == nil {
 48088  				continue
 48089  			}
 48090  			if err := v.Validate(); err != nil {
 48091  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
 48092  			}
 48093  		}
 48094  	}
 48095  
 48096  	if invalidParams.Len() > 0 {
 48097  		return invalidParams
 48098  	}
 48099  	return nil
 48100  }
 48101  
 48102  // SetComplianceType sets the ComplianceType field's value.
 48103  func (s *PutComplianceItemsInput) SetComplianceType(v string) *PutComplianceItemsInput {
 48104  	s.ComplianceType = &v
 48105  	return s
 48106  }
 48107  
 48108  // SetExecutionSummary sets the ExecutionSummary field's value.
 48109  func (s *PutComplianceItemsInput) SetExecutionSummary(v *ComplianceExecutionSummary) *PutComplianceItemsInput {
 48110  	s.ExecutionSummary = v
 48111  	return s
 48112  }
 48113  
 48114  // SetItemContentHash sets the ItemContentHash field's value.
 48115  func (s *PutComplianceItemsInput) SetItemContentHash(v string) *PutComplianceItemsInput {
 48116  	s.ItemContentHash = &v
 48117  	return s
 48118  }
 48119  
 48120  // SetItems sets the Items field's value.
 48121  func (s *PutComplianceItemsInput) SetItems(v []*ComplianceItemEntry) *PutComplianceItemsInput {
 48122  	s.Items = v
 48123  	return s
 48124  }
 48125  
 48126  // SetResourceId sets the ResourceId field's value.
 48127  func (s *PutComplianceItemsInput) SetResourceId(v string) *PutComplianceItemsInput {
 48128  	s.ResourceId = &v
 48129  	return s
 48130  }
 48131  
 48132  // SetResourceType sets the ResourceType field's value.
 48133  func (s *PutComplianceItemsInput) SetResourceType(v string) *PutComplianceItemsInput {
 48134  	s.ResourceType = &v
 48135  	return s
 48136  }
 48137  
 48138  // SetUploadType sets the UploadType field's value.
 48139  func (s *PutComplianceItemsInput) SetUploadType(v string) *PutComplianceItemsInput {
 48140  	s.UploadType = &v
 48141  	return s
 48142  }
 48143  
 48144  type PutComplianceItemsOutput struct {
 48145  	_ struct{} `type:"structure"`
 48146  }
 48147  
 48148  // String returns the string representation.
 48149  //
 48150  // API parameter values that are decorated as "sensitive" in the API will not
 48151  // be included in the string output. The member name will be present, but the
 48152  // value will be replaced with "sensitive".
 48153  func (s PutComplianceItemsOutput) String() string {
 48154  	return awsutil.Prettify(s)
 48155  }
 48156  
 48157  // GoString returns the string representation.
 48158  //
 48159  // API parameter values that are decorated as "sensitive" in the API will not
 48160  // be included in the string output. The member name will be present, but the
 48161  // value will be replaced with "sensitive".
 48162  func (s PutComplianceItemsOutput) GoString() string {
 48163  	return s.String()
 48164  }
 48165  
 48166  type PutInventoryInput struct {
 48167  	_ struct{} `type:"structure"`
 48168  
 48169  	// An instance ID where you want to add or update inventory items.
 48170  	//
 48171  	// InstanceId is a required field
 48172  	InstanceId *string `type:"string" required:"true"`
 48173  
 48174  	// The inventory items that you want to add or update on instances.
 48175  	//
 48176  	// Items is a required field
 48177  	Items []*InventoryItem `min:"1" type:"list" required:"true"`
 48178  }
 48179  
 48180  // String returns the string representation.
 48181  //
 48182  // API parameter values that are decorated as "sensitive" in the API will not
 48183  // be included in the string output. The member name will be present, but the
 48184  // value will be replaced with "sensitive".
 48185  func (s PutInventoryInput) String() string {
 48186  	return awsutil.Prettify(s)
 48187  }
 48188  
 48189  // GoString returns the string representation.
 48190  //
 48191  // API parameter values that are decorated as "sensitive" in the API will not
 48192  // be included in the string output. The member name will be present, but the
 48193  // value will be replaced with "sensitive".
 48194  func (s PutInventoryInput) GoString() string {
 48195  	return s.String()
 48196  }
 48197  
 48198  // Validate inspects the fields of the type to determine if they are valid.
 48199  func (s *PutInventoryInput) Validate() error {
 48200  	invalidParams := request.ErrInvalidParams{Context: "PutInventoryInput"}
 48201  	if s.InstanceId == nil {
 48202  		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
 48203  	}
 48204  	if s.Items == nil {
 48205  		invalidParams.Add(request.NewErrParamRequired("Items"))
 48206  	}
 48207  	if s.Items != nil && len(s.Items) < 1 {
 48208  		invalidParams.Add(request.NewErrParamMinLen("Items", 1))
 48209  	}
 48210  	if s.Items != nil {
 48211  		for i, v := range s.Items {
 48212  			if v == nil {
 48213  				continue
 48214  			}
 48215  			if err := v.Validate(); err != nil {
 48216  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
 48217  			}
 48218  		}
 48219  	}
 48220  
 48221  	if invalidParams.Len() > 0 {
 48222  		return invalidParams
 48223  	}
 48224  	return nil
 48225  }
 48226  
 48227  // SetInstanceId sets the InstanceId field's value.
 48228  func (s *PutInventoryInput) SetInstanceId(v string) *PutInventoryInput {
 48229  	s.InstanceId = &v
 48230  	return s
 48231  }
 48232  
 48233  // SetItems sets the Items field's value.
 48234  func (s *PutInventoryInput) SetItems(v []*InventoryItem) *PutInventoryInput {
 48235  	s.Items = v
 48236  	return s
 48237  }
 48238  
 48239  type PutInventoryOutput struct {
 48240  	_ struct{} `type:"structure"`
 48241  
 48242  	// Information about the request.
 48243  	Message *string `type:"string"`
 48244  }
 48245  
 48246  // String returns the string representation.
 48247  //
 48248  // API parameter values that are decorated as "sensitive" in the API will not
 48249  // be included in the string output. The member name will be present, but the
 48250  // value will be replaced with "sensitive".
 48251  func (s PutInventoryOutput) String() string {
 48252  	return awsutil.Prettify(s)
 48253  }
 48254  
 48255  // GoString returns the string representation.
 48256  //
 48257  // API parameter values that are decorated as "sensitive" in the API will not
 48258  // be included in the string output. The member name will be present, but the
 48259  // value will be replaced with "sensitive".
 48260  func (s PutInventoryOutput) GoString() string {
 48261  	return s.String()
 48262  }
 48263  
 48264  // SetMessage sets the Message field's value.
 48265  func (s *PutInventoryOutput) SetMessage(v string) *PutInventoryOutput {
 48266  	s.Message = &v
 48267  	return s
 48268  }
 48269  
 48270  type PutParameterInput struct {
 48271  	_ struct{} `type:"structure"`
 48272  
 48273  	// A regular expression used to validate the parameter value. For example, for
 48274  	// String types with values restricted to numbers, you can specify the following:
 48275  	// AllowedPattern=^\d+$
 48276  	AllowedPattern *string `type:"string"`
 48277  
 48278  	// The data type for a String parameter. Supported data types include plain
 48279  	// text and Amazon Machine Image (AMI) IDs.
 48280  	//
 48281  	// The following data type values are supported.
 48282  	//
 48283  	//    * text
 48284  	//
 48285  	//    * aws:ec2:image
 48286  	//
 48287  	// When you create a String parameter and specify aws:ec2:image, Amazon Web
 48288  	// Services Systems Manager validates the parameter value is in the required
 48289  	// format, such as ami-12345abcdeEXAMPLE, and that the specified AMI is available
 48290  	// in your Amazon Web Services account. For more information, see Native parameter
 48291  	// support for Amazon Machine Image (AMI) IDs (https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-ec2-aliases.html)
 48292  	// in the Amazon Web Services Systems Manager User Guide.
 48293  	DataType *string `type:"string"`
 48294  
 48295  	// Information about the parameter that you want to add to the system. Optional
 48296  	// but recommended.
 48297  	//
 48298  	// Don't enter personally identifiable information in this field.
 48299  	Description *string `type:"string"`
 48300  
 48301  	// The Key Management Service (KMS) ID that you want to use to encrypt a parameter.
 48302  	// Either the default KMS key automatically assigned to your Amazon Web Services
 48303  	// account or a custom key. Required for parameters that use the SecureString
 48304  	// data type.
 48305  	//
 48306  	// If you don't specify a key ID, the system uses the default key associated
 48307  	// with your Amazon Web Services account.
 48308  	//
 48309  	//    * To use your default KMS key, choose the SecureString data type, and
 48310  	//    do not specify the Key ID when you create the parameter. The system automatically
 48311  	//    populates Key ID with your default KMS key.
 48312  	//
 48313  	//    * To use a custom KMS key, choose the SecureString data type with the
 48314  	//    Key ID parameter.
 48315  	KeyId *string `min:"1" type:"string"`
 48316  
 48317  	// The fully qualified name of the parameter that you want to add to the system.
 48318  	// The fully qualified name includes the complete hierarchy of the parameter
 48319  	// path and name. For parameters in a hierarchy, you must include a leading
 48320  	// forward slash character (/) when you create or reference a parameter. For
 48321  	// example: /Dev/DBServer/MySQL/db-string13
 48322  	//
 48323  	// Naming Constraints:
 48324  	//
 48325  	//    * Parameter names are case sensitive.
 48326  	//
 48327  	//    * A parameter name must be unique within an Amazon Web Services Region
 48328  	//
 48329  	//    * A parameter name can't be prefixed with "aws" or "ssm" (case-insensitive).
 48330  	//
 48331  	//    * Parameter names can include only the following symbols and letters:
 48332  	//    a-zA-Z0-9_.- In addition, the slash character ( / ) is used to delineate
 48333  	//    hierarchies in parameter names. For example: /Dev/Production/East/Project-ABC/MyParameter
 48334  	//
 48335  	//    * A parameter name can't include spaces.
 48336  	//
 48337  	//    * Parameter hierarchies are limited to a maximum depth of fifteen levels.
 48338  	//
 48339  	// For additional information about valid values for parameter names, see Creating
 48340  	// Systems Manager parameters (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html)
 48341  	// in the Amazon Web Services Systems Manager User Guide.
 48342  	//
 48343  	// The maximum length constraint listed below includes capacity for additional
 48344  	// system attributes that aren't part of the name. The maximum length for a
 48345  	// parameter name, including the full length of the parameter ARN, is 1011 characters.
 48346  	// For example, the length of the following parameter name is 65 characters,
 48347  	// not 20 characters:
 48348  	//
 48349  	// arn:aws:ssm:us-east-2:111122223333:parameter/ExampleParameterName
 48350  	//
 48351  	// Name is a required field
 48352  	Name *string `min:"1" type:"string" required:"true"`
 48353  
 48354  	// Overwrite an existing parameter. The default value is false.
 48355  	Overwrite *bool `type:"boolean"`
 48356  
 48357  	// One or more policies to apply to a parameter. This operation takes a JSON
 48358  	// array. Parameter Store, a capability of Amazon Web Services Systems Manager
 48359  	// supports the following policy types:
 48360  	//
 48361  	// Expiration: This policy deletes the parameter after it expires. When you
 48362  	// create the policy, you specify the expiration date. You can update the expiration
 48363  	// date and time by updating the policy. Updating the parameter doesn't affect
 48364  	// the expiration date and time. When the expiration time is reached, Parameter
 48365  	// Store deletes the parameter.
 48366  	//
 48367  	// ExpirationNotification: This policy triggers an event in Amazon CloudWatch
 48368  	// Events that notifies you about the expiration. By using this policy, you
 48369  	// can receive notification before or after the expiration time is reached,
 48370  	// in units of days or hours.
 48371  	//
 48372  	// NoChangeNotification: This policy triggers a CloudWatch Events event if a
 48373  	// parameter hasn't been modified for a specified period of time. This policy
 48374  	// type is useful when, for example, a secret needs to be changed within a period
 48375  	// of time, but it hasn't been changed.
 48376  	//
 48377  	// All existing policies are preserved until you send new policies or an empty
 48378  	// policy. For more information about parameter policies, see Assigning parameter
 48379  	// policies (https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-policies.html).
 48380  	Policies *string `min:"1" type:"string"`
 48381  
 48382  	// Optional metadata that you assign to a resource. Tags enable you to categorize
 48383  	// a resource in different ways, such as by purpose, owner, or environment.
 48384  	// For example, you might want to tag a Systems Manager parameter to identify
 48385  	// the type of resource to which it applies, the environment, or the type of
 48386  	// configuration data referenced by the parameter. In this case, you could specify
 48387  	// the following key-value pairs:
 48388  	//
 48389  	//    * Key=Resource,Value=S3bucket
 48390  	//
 48391  	//    * Key=OS,Value=Windows
 48392  	//
 48393  	//    * Key=ParameterType,Value=LicenseKey
 48394  	//
 48395  	// To add tags to an existing Systems Manager parameter, use the AddTagsToResource
 48396  	// operation.
 48397  	Tags []*Tag `type:"list"`
 48398  
 48399  	// The parameter tier to assign to a parameter.
 48400  	//
 48401  	// Parameter Store offers a standard tier and an advanced tier for parameters.
 48402  	// Standard parameters have a content size limit of 4 KB and can't be configured
 48403  	// to use parameter policies. You can create a maximum of 10,000 standard parameters
 48404  	// for each Region in an Amazon Web Services account. Standard parameters are
 48405  	// offered at no additional cost.
 48406  	//
 48407  	// Advanced parameters have a content size limit of 8 KB and can be configured
 48408  	// to use parameter policies. You can create a maximum of 100,000 advanced parameters
 48409  	// for each Region in an Amazon Web Services account. Advanced parameters incur
 48410  	// a charge. For more information, see Standard and advanced parameter tiers
 48411  	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-advanced-parameters.html)
 48412  	// in the Amazon Web Services Systems Manager User Guide.
 48413  	//
 48414  	// You can change a standard parameter to an advanced parameter any time. But
 48415  	// you can't revert an advanced parameter to a standard parameter. Reverting
 48416  	// an advanced parameter to a standard parameter would result in data loss because
 48417  	// the system would truncate the size of the parameter from 8 KB to 4 KB. Reverting
 48418  	// would also remove any policies attached to the parameter. Lastly, advanced
 48419  	// parameters use a different form of encryption than standard parameters.
 48420  	//
 48421  	// If you no longer need an advanced parameter, or if you no longer want to
 48422  	// incur charges for an advanced parameter, you must delete it and recreate
 48423  	// it as a new standard parameter.
 48424  	//
 48425  	// Using the Default Tier Configuration
 48426  	//
 48427  	// In PutParameter requests, you can specify the tier to create the parameter
 48428  	// in. Whenever you specify a tier in the request, Parameter Store creates or
 48429  	// updates the parameter according to that request. However, if you don't specify
 48430  	// a tier in a request, Parameter Store assigns the tier based on the current
 48431  	// Parameter Store default tier configuration.
 48432  	//
 48433  	// The default tier when you begin using Parameter Store is the standard-parameter
 48434  	// tier. If you use the advanced-parameter tier, you can specify one of the
 48435  	// following as the default:
 48436  	//
 48437  	//    * Advanced: With this option, Parameter Store evaluates all requests as
 48438  	//    advanced parameters.
 48439  	//
 48440  	//    * Intelligent-Tiering: With this option, Parameter Store evaluates each
 48441  	//    request to determine if the parameter is standard or advanced. If the
 48442  	//    request doesn't include any options that require an advanced parameter,
 48443  	//    the parameter is created in the standard-parameter tier. If one or more
 48444  	//    options requiring an advanced parameter are included in the request, Parameter
 48445  	//    Store create a parameter in the advanced-parameter tier. This approach
 48446  	//    helps control your parameter-related costs by always creating standard
 48447  	//    parameters unless an advanced parameter is necessary.
 48448  	//
 48449  	// Options that require an advanced parameter include the following:
 48450  	//
 48451  	//    * The content size of the parameter is more than 4 KB.
 48452  	//
 48453  	//    * The parameter uses a parameter policy.
 48454  	//
 48455  	//    * More than 10,000 parameters already exist in your Amazon Web Services
 48456  	//    account in the current Amazon Web Services Region.
 48457  	//
 48458  	// For more information about configuring the default tier option, see Specifying
 48459  	// a default parameter tier (https://docs.aws.amazon.com/systems-manager/latest/userguide/ps-default-tier.html)
 48460  	// in the Amazon Web Services Systems Manager User Guide.
 48461  	Tier *string `type:"string" enum:"ParameterTier"`
 48462  
 48463  	// The type of parameter that you want to add to the system.
 48464  	//
 48465  	// SecureString isn't currently supported for CloudFormation templates.
 48466  	//
 48467  	// Items in a StringList must be separated by a comma (,). You can't use other
 48468  	// punctuation or special character to escape items in the list. If you have
 48469  	// a parameter value that requires a comma, then use the String data type.
 48470  	//
 48471  	// Specifying a parameter type isn't required when updating a parameter. You
 48472  	// must specify a parameter type when creating a parameter.
 48473  	Type *string `type:"string" enum:"ParameterType"`
 48474  
 48475  	// The parameter value that you want to add to the system. Standard parameters
 48476  	// have a value limit of 4 KB. Advanced parameters have a value limit of 8 KB.
 48477  	//
 48478  	// Parameters can't be referenced or nested in the values of other parameters.
 48479  	// You can't include {{}} or {{ssm:parameter-name}} in a parameter value.
 48480  	//
 48481  	// Value is a sensitive parameter and its value will be
 48482  	// replaced with "sensitive" in string returned by PutParameterInput's
 48483  	// String and GoString methods.
 48484  	//
 48485  	// Value is a required field
 48486  	Value *string `type:"string" required:"true" sensitive:"true"`
 48487  }
 48488  
 48489  // String returns the string representation.
 48490  //
 48491  // API parameter values that are decorated as "sensitive" in the API will not
 48492  // be included in the string output. The member name will be present, but the
 48493  // value will be replaced with "sensitive".
 48494  func (s PutParameterInput) String() string {
 48495  	return awsutil.Prettify(s)
 48496  }
 48497  
 48498  // GoString returns the string representation.
 48499  //
 48500  // API parameter values that are decorated as "sensitive" in the API will not
 48501  // be included in the string output. The member name will be present, but the
 48502  // value will be replaced with "sensitive".
 48503  func (s PutParameterInput) GoString() string {
 48504  	return s.String()
 48505  }
 48506  
 48507  // Validate inspects the fields of the type to determine if they are valid.
 48508  func (s *PutParameterInput) Validate() error {
 48509  	invalidParams := request.ErrInvalidParams{Context: "PutParameterInput"}
 48510  	if s.KeyId != nil && len(*s.KeyId) < 1 {
 48511  		invalidParams.Add(request.NewErrParamMinLen("KeyId", 1))
 48512  	}
 48513  	if s.Name == nil {
 48514  		invalidParams.Add(request.NewErrParamRequired("Name"))
 48515  	}
 48516  	if s.Name != nil && len(*s.Name) < 1 {
 48517  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 48518  	}
 48519  	if s.Policies != nil && len(*s.Policies) < 1 {
 48520  		invalidParams.Add(request.NewErrParamMinLen("Policies", 1))
 48521  	}
 48522  	if s.Value == nil {
 48523  		invalidParams.Add(request.NewErrParamRequired("Value"))
 48524  	}
 48525  	if s.Tags != nil {
 48526  		for i, v := range s.Tags {
 48527  			if v == nil {
 48528  				continue
 48529  			}
 48530  			if err := v.Validate(); err != nil {
 48531  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 48532  			}
 48533  		}
 48534  	}
 48535  
 48536  	if invalidParams.Len() > 0 {
 48537  		return invalidParams
 48538  	}
 48539  	return nil
 48540  }
 48541  
 48542  // SetAllowedPattern sets the AllowedPattern field's value.
 48543  func (s *PutParameterInput) SetAllowedPattern(v string) *PutParameterInput {
 48544  	s.AllowedPattern = &v
 48545  	return s
 48546  }
 48547  
 48548  // SetDataType sets the DataType field's value.
 48549  func (s *PutParameterInput) SetDataType(v string) *PutParameterInput {
 48550  	s.DataType = &v
 48551  	return s
 48552  }
 48553  
 48554  // SetDescription sets the Description field's value.
 48555  func (s *PutParameterInput) SetDescription(v string) *PutParameterInput {
 48556  	s.Description = &v
 48557  	return s
 48558  }
 48559  
 48560  // SetKeyId sets the KeyId field's value.
 48561  func (s *PutParameterInput) SetKeyId(v string) *PutParameterInput {
 48562  	s.KeyId = &v
 48563  	return s
 48564  }
 48565  
 48566  // SetName sets the Name field's value.
 48567  func (s *PutParameterInput) SetName(v string) *PutParameterInput {
 48568  	s.Name = &v
 48569  	return s
 48570  }
 48571  
 48572  // SetOverwrite sets the Overwrite field's value.
 48573  func (s *PutParameterInput) SetOverwrite(v bool) *PutParameterInput {
 48574  	s.Overwrite = &v
 48575  	return s
 48576  }
 48577  
 48578  // SetPolicies sets the Policies field's value.
 48579  func (s *PutParameterInput) SetPolicies(v string) *PutParameterInput {
 48580  	s.Policies = &v
 48581  	return s
 48582  }
 48583  
 48584  // SetTags sets the Tags field's value.
 48585  func (s *PutParameterInput) SetTags(v []*Tag) *PutParameterInput {
 48586  	s.Tags = v
 48587  	return s
 48588  }
 48589  
 48590  // SetTier sets the Tier field's value.
 48591  func (s *PutParameterInput) SetTier(v string) *PutParameterInput {
 48592  	s.Tier = &v
 48593  	return s
 48594  }
 48595  
 48596  // SetType sets the Type field's value.
 48597  func (s *PutParameterInput) SetType(v string) *PutParameterInput {
 48598  	s.Type = &v
 48599  	return s
 48600  }
 48601  
 48602  // SetValue sets the Value field's value.
 48603  func (s *PutParameterInput) SetValue(v string) *PutParameterInput {
 48604  	s.Value = &v
 48605  	return s
 48606  }
 48607  
 48608  type PutParameterOutput struct {
 48609  	_ struct{} `type:"structure"`
 48610  
 48611  	// The tier assigned to the parameter.
 48612  	Tier *string `type:"string" enum:"ParameterTier"`
 48613  
 48614  	// The new version number of a parameter. If you edit a parameter value, Parameter
 48615  	// Store automatically creates a new version and assigns this new version a
 48616  	// unique ID. You can reference a parameter version ID in API operations or
 48617  	// in Systems Manager documents (SSM documents). By default, if you don't specify
 48618  	// a specific version, the system returns the latest parameter value when a
 48619  	// parameter is called.
 48620  	Version *int64 `type:"long"`
 48621  }
 48622  
 48623  // String returns the string representation.
 48624  //
 48625  // API parameter values that are decorated as "sensitive" in the API will not
 48626  // be included in the string output. The member name will be present, but the
 48627  // value will be replaced with "sensitive".
 48628  func (s PutParameterOutput) String() string {
 48629  	return awsutil.Prettify(s)
 48630  }
 48631  
 48632  // GoString returns the string representation.
 48633  //
 48634  // API parameter values that are decorated as "sensitive" in the API will not
 48635  // be included in the string output. The member name will be present, but the
 48636  // value will be replaced with "sensitive".
 48637  func (s PutParameterOutput) GoString() string {
 48638  	return s.String()
 48639  }
 48640  
 48641  // SetTier sets the Tier field's value.
 48642  func (s *PutParameterOutput) SetTier(v string) *PutParameterOutput {
 48643  	s.Tier = &v
 48644  	return s
 48645  }
 48646  
 48647  // SetVersion sets the Version field's value.
 48648  func (s *PutParameterOutput) SetVersion(v int64) *PutParameterOutput {
 48649  	s.Version = &v
 48650  	return s
 48651  }
 48652  
 48653  type RegisterDefaultPatchBaselineInput struct {
 48654  	_ struct{} `type:"structure"`
 48655  
 48656  	// The ID of the patch baseline that should be the default patch baseline.
 48657  	//
 48658  	// BaselineId is a required field
 48659  	BaselineId *string `min:"20" type:"string" required:"true"`
 48660  }
 48661  
 48662  // String returns the string representation.
 48663  //
 48664  // API parameter values that are decorated as "sensitive" in the API will not
 48665  // be included in the string output. The member name will be present, but the
 48666  // value will be replaced with "sensitive".
 48667  func (s RegisterDefaultPatchBaselineInput) String() string {
 48668  	return awsutil.Prettify(s)
 48669  }
 48670  
 48671  // GoString returns the string representation.
 48672  //
 48673  // API parameter values that are decorated as "sensitive" in the API will not
 48674  // be included in the string output. The member name will be present, but the
 48675  // value will be replaced with "sensitive".
 48676  func (s RegisterDefaultPatchBaselineInput) GoString() string {
 48677  	return s.String()
 48678  }
 48679  
 48680  // Validate inspects the fields of the type to determine if they are valid.
 48681  func (s *RegisterDefaultPatchBaselineInput) Validate() error {
 48682  	invalidParams := request.ErrInvalidParams{Context: "RegisterDefaultPatchBaselineInput"}
 48683  	if s.BaselineId == nil {
 48684  		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
 48685  	}
 48686  	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
 48687  		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
 48688  	}
 48689  
 48690  	if invalidParams.Len() > 0 {
 48691  		return invalidParams
 48692  	}
 48693  	return nil
 48694  }
 48695  
 48696  // SetBaselineId sets the BaselineId field's value.
 48697  func (s *RegisterDefaultPatchBaselineInput) SetBaselineId(v string) *RegisterDefaultPatchBaselineInput {
 48698  	s.BaselineId = &v
 48699  	return s
 48700  }
 48701  
 48702  type RegisterDefaultPatchBaselineOutput struct {
 48703  	_ struct{} `type:"structure"`
 48704  
 48705  	// The ID of the default patch baseline.
 48706  	BaselineId *string `min:"20" type:"string"`
 48707  }
 48708  
 48709  // String returns the string representation.
 48710  //
 48711  // API parameter values that are decorated as "sensitive" in the API will not
 48712  // be included in the string output. The member name will be present, but the
 48713  // value will be replaced with "sensitive".
 48714  func (s RegisterDefaultPatchBaselineOutput) String() string {
 48715  	return awsutil.Prettify(s)
 48716  }
 48717  
 48718  // GoString returns the string representation.
 48719  //
 48720  // API parameter values that are decorated as "sensitive" in the API will not
 48721  // be included in the string output. The member name will be present, but the
 48722  // value will be replaced with "sensitive".
 48723  func (s RegisterDefaultPatchBaselineOutput) GoString() string {
 48724  	return s.String()
 48725  }
 48726  
 48727  // SetBaselineId sets the BaselineId field's value.
 48728  func (s *RegisterDefaultPatchBaselineOutput) SetBaselineId(v string) *RegisterDefaultPatchBaselineOutput {
 48729  	s.BaselineId = &v
 48730  	return s
 48731  }
 48732  
 48733  type RegisterPatchBaselineForPatchGroupInput struct {
 48734  	_ struct{} `type:"structure"`
 48735  
 48736  	// The ID of the patch baseline to register with the patch group.
 48737  	//
 48738  	// BaselineId is a required field
 48739  	BaselineId *string `min:"20" type:"string" required:"true"`
 48740  
 48741  	// The name of the patch group to be registered with the patch baseline.
 48742  	//
 48743  	// PatchGroup is a required field
 48744  	PatchGroup *string `min:"1" type:"string" required:"true"`
 48745  }
 48746  
 48747  // String returns the string representation.
 48748  //
 48749  // API parameter values that are decorated as "sensitive" in the API will not
 48750  // be included in the string output. The member name will be present, but the
 48751  // value will be replaced with "sensitive".
 48752  func (s RegisterPatchBaselineForPatchGroupInput) String() string {
 48753  	return awsutil.Prettify(s)
 48754  }
 48755  
 48756  // GoString returns the string representation.
 48757  //
 48758  // API parameter values that are decorated as "sensitive" in the API will not
 48759  // be included in the string output. The member name will be present, but the
 48760  // value will be replaced with "sensitive".
 48761  func (s RegisterPatchBaselineForPatchGroupInput) GoString() string {
 48762  	return s.String()
 48763  }
 48764  
 48765  // Validate inspects the fields of the type to determine if they are valid.
 48766  func (s *RegisterPatchBaselineForPatchGroupInput) Validate() error {
 48767  	invalidParams := request.ErrInvalidParams{Context: "RegisterPatchBaselineForPatchGroupInput"}
 48768  	if s.BaselineId == nil {
 48769  		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
 48770  	}
 48771  	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
 48772  		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
 48773  	}
 48774  	if s.PatchGroup == nil {
 48775  		invalidParams.Add(request.NewErrParamRequired("PatchGroup"))
 48776  	}
 48777  	if s.PatchGroup != nil && len(*s.PatchGroup) < 1 {
 48778  		invalidParams.Add(request.NewErrParamMinLen("PatchGroup", 1))
 48779  	}
 48780  
 48781  	if invalidParams.Len() > 0 {
 48782  		return invalidParams
 48783  	}
 48784  	return nil
 48785  }
 48786  
 48787  // SetBaselineId sets the BaselineId field's value.
 48788  func (s *RegisterPatchBaselineForPatchGroupInput) SetBaselineId(v string) *RegisterPatchBaselineForPatchGroupInput {
 48789  	s.BaselineId = &v
 48790  	return s
 48791  }
 48792  
 48793  // SetPatchGroup sets the PatchGroup field's value.
 48794  func (s *RegisterPatchBaselineForPatchGroupInput) SetPatchGroup(v string) *RegisterPatchBaselineForPatchGroupInput {
 48795  	s.PatchGroup = &v
 48796  	return s
 48797  }
 48798  
 48799  type RegisterPatchBaselineForPatchGroupOutput struct {
 48800  	_ struct{} `type:"structure"`
 48801  
 48802  	// The ID of the patch baseline the patch group was registered with.
 48803  	BaselineId *string `min:"20" type:"string"`
 48804  
 48805  	// The name of the patch group registered with the patch baseline.
 48806  	PatchGroup *string `min:"1" type:"string"`
 48807  }
 48808  
 48809  // String returns the string representation.
 48810  //
 48811  // API parameter values that are decorated as "sensitive" in the API will not
 48812  // be included in the string output. The member name will be present, but the
 48813  // value will be replaced with "sensitive".
 48814  func (s RegisterPatchBaselineForPatchGroupOutput) String() string {
 48815  	return awsutil.Prettify(s)
 48816  }
 48817  
 48818  // GoString returns the string representation.
 48819  //
 48820  // API parameter values that are decorated as "sensitive" in the API will not
 48821  // be included in the string output. The member name will be present, but the
 48822  // value will be replaced with "sensitive".
 48823  func (s RegisterPatchBaselineForPatchGroupOutput) GoString() string {
 48824  	return s.String()
 48825  }
 48826  
 48827  // SetBaselineId sets the BaselineId field's value.
 48828  func (s *RegisterPatchBaselineForPatchGroupOutput) SetBaselineId(v string) *RegisterPatchBaselineForPatchGroupOutput {
 48829  	s.BaselineId = &v
 48830  	return s
 48831  }
 48832  
 48833  // SetPatchGroup sets the PatchGroup field's value.
 48834  func (s *RegisterPatchBaselineForPatchGroupOutput) SetPatchGroup(v string) *RegisterPatchBaselineForPatchGroupOutput {
 48835  	s.PatchGroup = &v
 48836  	return s
 48837  }
 48838  
 48839  type RegisterTargetWithMaintenanceWindowInput struct {
 48840  	_ struct{} `type:"structure"`
 48841  
 48842  	// User-provided idempotency token.
 48843  	ClientToken *string `min:"1" type:"string" idempotencyToken:"true"`
 48844  
 48845  	// An optional description for the target.
 48846  	//
 48847  	// Description is a sensitive parameter and its value will be
 48848  	// replaced with "sensitive" in string returned by RegisterTargetWithMaintenanceWindowInput's
 48849  	// String and GoString methods.
 48850  	Description *string `min:"1" type:"string" sensitive:"true"`
 48851  
 48852  	// An optional name for the target.
 48853  	Name *string `min:"3" type:"string"`
 48854  
 48855  	// User-provided value that will be included in any Amazon CloudWatch Events
 48856  	// events raised while running tasks for these targets in this maintenance window.
 48857  	//
 48858  	// OwnerInformation is a sensitive parameter and its value will be
 48859  	// replaced with "sensitive" in string returned by RegisterTargetWithMaintenanceWindowInput's
 48860  	// String and GoString methods.
 48861  	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
 48862  
 48863  	// The type of target being registered with the maintenance window.
 48864  	//
 48865  	// ResourceType is a required field
 48866  	ResourceType *string `type:"string" required:"true" enum:"MaintenanceWindowResourceType"`
 48867  
 48868  	// The targets to register with the maintenance window. In other words, the
 48869  	// instances to run commands on when the maintenance window runs.
 48870  	//
 48871  	// If a single maintenance window task is registered with multiple targets,
 48872  	// its task invocations occur sequentially and not in parallel. If your task
 48873  	// must run on multiple targets at the same time, register a task for each target
 48874  	// individually and assign each task the same priority level.
 48875  	//
 48876  	// You can specify targets using instance IDs, resource group names, or tags
 48877  	// that have been applied to instances.
 48878  	//
 48879  	// Example 1: Specify instance IDs
 48880  	//
 48881  	// Key=InstanceIds,Values=instance-id-1,instance-id-2,instance-id-3
 48882  	//
 48883  	// Example 2: Use tag key-pairs applied to instances
 48884  	//
 48885  	// Key=tag:my-tag-key,Values=my-tag-value-1,my-tag-value-2
 48886  	//
 48887  	// Example 3: Use tag-keys applied to instances
 48888  	//
 48889  	// Key=tag-key,Values=my-tag-key-1,my-tag-key-2
 48890  	//
 48891  	// Example 4: Use resource group names
 48892  	//
 48893  	// Key=resource-groups:Name,Values=resource-group-name
 48894  	//
 48895  	// Example 5: Use filters for resource group types
 48896  	//
 48897  	// Key=resource-groups:ResourceTypeFilters,Values=resource-type-1,resource-type-2
 48898  	//
 48899  	// For Key=resource-groups:ResourceTypeFilters, specify resource types in the
 48900  	// following format
 48901  	//
 48902  	// Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::INSTANCE,AWS::EC2::VPC
 48903  	//
 48904  	// For more information about these examples formats, including the best use
 48905  	// case for each one, see Examples: Register targets with a maintenance window
 48906  	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/mw-cli-tutorial-targets-examples.html)
 48907  	// in the Amazon Web Services Systems Manager User Guide.
 48908  	//
 48909  	// Targets is a required field
 48910  	Targets []*Target `type:"list" required:"true"`
 48911  
 48912  	// The ID of the maintenance window the target should be registered with.
 48913  	//
 48914  	// WindowId is a required field
 48915  	WindowId *string `min:"20" type:"string" required:"true"`
 48916  }
 48917  
 48918  // String returns the string representation.
 48919  //
 48920  // API parameter values that are decorated as "sensitive" in the API will not
 48921  // be included in the string output. The member name will be present, but the
 48922  // value will be replaced with "sensitive".
 48923  func (s RegisterTargetWithMaintenanceWindowInput) String() string {
 48924  	return awsutil.Prettify(s)
 48925  }
 48926  
 48927  // GoString returns the string representation.
 48928  //
 48929  // API parameter values that are decorated as "sensitive" in the API will not
 48930  // be included in the string output. The member name will be present, but the
 48931  // value will be replaced with "sensitive".
 48932  func (s RegisterTargetWithMaintenanceWindowInput) GoString() string {
 48933  	return s.String()
 48934  }
 48935  
 48936  // Validate inspects the fields of the type to determine if they are valid.
 48937  func (s *RegisterTargetWithMaintenanceWindowInput) Validate() error {
 48938  	invalidParams := request.ErrInvalidParams{Context: "RegisterTargetWithMaintenanceWindowInput"}
 48939  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 48940  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 48941  	}
 48942  	if s.Description != nil && len(*s.Description) < 1 {
 48943  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 48944  	}
 48945  	if s.Name != nil && len(*s.Name) < 3 {
 48946  		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
 48947  	}
 48948  	if s.OwnerInformation != nil && len(*s.OwnerInformation) < 1 {
 48949  		invalidParams.Add(request.NewErrParamMinLen("OwnerInformation", 1))
 48950  	}
 48951  	if s.ResourceType == nil {
 48952  		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
 48953  	}
 48954  	if s.Targets == nil {
 48955  		invalidParams.Add(request.NewErrParamRequired("Targets"))
 48956  	}
 48957  	if s.WindowId == nil {
 48958  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 48959  	}
 48960  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 48961  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 48962  	}
 48963  	if s.Targets != nil {
 48964  		for i, v := range s.Targets {
 48965  			if v == nil {
 48966  				continue
 48967  			}
 48968  			if err := v.Validate(); err != nil {
 48969  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 48970  			}
 48971  		}
 48972  	}
 48973  
 48974  	if invalidParams.Len() > 0 {
 48975  		return invalidParams
 48976  	}
 48977  	return nil
 48978  }
 48979  
 48980  // SetClientToken sets the ClientToken field's value.
 48981  func (s *RegisterTargetWithMaintenanceWindowInput) SetClientToken(v string) *RegisterTargetWithMaintenanceWindowInput {
 48982  	s.ClientToken = &v
 48983  	return s
 48984  }
 48985  
 48986  // SetDescription sets the Description field's value.
 48987  func (s *RegisterTargetWithMaintenanceWindowInput) SetDescription(v string) *RegisterTargetWithMaintenanceWindowInput {
 48988  	s.Description = &v
 48989  	return s
 48990  }
 48991  
 48992  // SetName sets the Name field's value.
 48993  func (s *RegisterTargetWithMaintenanceWindowInput) SetName(v string) *RegisterTargetWithMaintenanceWindowInput {
 48994  	s.Name = &v
 48995  	return s
 48996  }
 48997  
 48998  // SetOwnerInformation sets the OwnerInformation field's value.
 48999  func (s *RegisterTargetWithMaintenanceWindowInput) SetOwnerInformation(v string) *RegisterTargetWithMaintenanceWindowInput {
 49000  	s.OwnerInformation = &v
 49001  	return s
 49002  }
 49003  
 49004  // SetResourceType sets the ResourceType field's value.
 49005  func (s *RegisterTargetWithMaintenanceWindowInput) SetResourceType(v string) *RegisterTargetWithMaintenanceWindowInput {
 49006  	s.ResourceType = &v
 49007  	return s
 49008  }
 49009  
 49010  // SetTargets sets the Targets field's value.
 49011  func (s *RegisterTargetWithMaintenanceWindowInput) SetTargets(v []*Target) *RegisterTargetWithMaintenanceWindowInput {
 49012  	s.Targets = v
 49013  	return s
 49014  }
 49015  
 49016  // SetWindowId sets the WindowId field's value.
 49017  func (s *RegisterTargetWithMaintenanceWindowInput) SetWindowId(v string) *RegisterTargetWithMaintenanceWindowInput {
 49018  	s.WindowId = &v
 49019  	return s
 49020  }
 49021  
 49022  type RegisterTargetWithMaintenanceWindowOutput struct {
 49023  	_ struct{} `type:"structure"`
 49024  
 49025  	// The ID of the target definition in this maintenance window.
 49026  	WindowTargetId *string `min:"36" type:"string"`
 49027  }
 49028  
 49029  // String returns the string representation.
 49030  //
 49031  // API parameter values that are decorated as "sensitive" in the API will not
 49032  // be included in the string output. The member name will be present, but the
 49033  // value will be replaced with "sensitive".
 49034  func (s RegisterTargetWithMaintenanceWindowOutput) String() string {
 49035  	return awsutil.Prettify(s)
 49036  }
 49037  
 49038  // GoString returns the string representation.
 49039  //
 49040  // API parameter values that are decorated as "sensitive" in the API will not
 49041  // be included in the string output. The member name will be present, but the
 49042  // value will be replaced with "sensitive".
 49043  func (s RegisterTargetWithMaintenanceWindowOutput) GoString() string {
 49044  	return s.String()
 49045  }
 49046  
 49047  // SetWindowTargetId sets the WindowTargetId field's value.
 49048  func (s *RegisterTargetWithMaintenanceWindowOutput) SetWindowTargetId(v string) *RegisterTargetWithMaintenanceWindowOutput {
 49049  	s.WindowTargetId = &v
 49050  	return s
 49051  }
 49052  
 49053  type RegisterTaskWithMaintenanceWindowInput struct {
 49054  	_ struct{} `type:"structure"`
 49055  
 49056  	// User-provided idempotency token.
 49057  	ClientToken *string `min:"1" type:"string" idempotencyToken:"true"`
 49058  
 49059  	// Indicates whether tasks should continue to run after the cutoff time specified
 49060  	// in the maintenance windows is reached.
 49061  	//
 49062  	//    * CONTINUE_TASK: When the cutoff time is reached, any tasks that are running
 49063  	//    continue. The default value.
 49064  	//
 49065  	//    * CANCEL_TASK: For Automation, Lambda, Step Functions tasks: When the
 49066  	//    cutoff time is reached, any task invocations that are already running
 49067  	//    continue, but no new task invocations are started. For Run Command tasks:
 49068  	//    When the cutoff time is reached, the system sends a CancelCommand operation
 49069  	//    that attempts to cancel the command associated with the task. However,
 49070  	//    there is no guarantee that the command will be terminated and the underlying
 49071  	//    process stopped. The status for tasks that are not completed is TIMED_OUT.
 49072  	CutoffBehavior *string `type:"string" enum:"MaintenanceWindowTaskCutoffBehavior"`
 49073  
 49074  	// An optional description for the task.
 49075  	//
 49076  	// Description is a sensitive parameter and its value will be
 49077  	// replaced with "sensitive" in string returned by RegisterTaskWithMaintenanceWindowInput's
 49078  	// String and GoString methods.
 49079  	Description *string `min:"1" type:"string" sensitive:"true"`
 49080  
 49081  	// A structure containing information about an Amazon Simple Storage Service
 49082  	// (Amazon S3) bucket to write instance-level logs to.
 49083  	//
 49084  	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
 49085  	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
 49086  	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
 49087  	// information about how Amazon Web Services Systems Manager handles these options
 49088  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 49089  	LoggingInfo *LoggingInfo `type:"structure"`
 49090  
 49091  	// The maximum number of targets this task can be run for in parallel.
 49092  	//
 49093  	// For maintenance window tasks without a target specified, you can't supply
 49094  	// a value for this option. Instead, the system inserts a placeholder value
 49095  	// of 1. This value doesn't affect the running of your task.
 49096  	MaxConcurrency *string `min:"1" type:"string"`
 49097  
 49098  	// The maximum number of errors allowed before this task stops being scheduled.
 49099  	//
 49100  	// For maintenance window tasks without a target specified, you can't supply
 49101  	// a value for this option. Instead, the system inserts a placeholder value
 49102  	// of 1. This value doesn't affect the running of your task.
 49103  	MaxErrors *string `min:"1" type:"string"`
 49104  
 49105  	// An optional name for the task.
 49106  	Name *string `min:"3" type:"string"`
 49107  
 49108  	// The priority of the task in the maintenance window, the lower the number
 49109  	// the higher the priority. Tasks in a maintenance window are scheduled in priority
 49110  	// order with tasks that have the same priority scheduled in parallel.
 49111  	Priority *int64 `type:"integer"`
 49112  
 49113  	// The Amazon Resource Name (ARN) of the IAM service role for Amazon Web Services
 49114  	// Systems Manager to assume when running a maintenance window task. If you
 49115  	// do not specify a service role ARN, Systems Manager uses your account's service-linked
 49116  	// role. If no service-linked role for Systems Manager exists in your account,
 49117  	// it is created when you run RegisterTaskWithMaintenanceWindow.
 49118  	//
 49119  	// For more information, see the following topics in the in the Amazon Web Services
 49120  	// Systems Manager User Guide:
 49121  	//
 49122  	//    * Using service-linked roles for Systems Manager (https://docs.aws.amazon.com/systems-manager/latest/userguide/using-service-linked-roles.html#slr-permissions)
 49123  	//
 49124  	//    * Should I use a service-linked role or a custom service role to run maintenance
 49125  	//    window tasks? (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html#maintenance-window-tasks-service-role)
 49126  	ServiceRoleArn *string `type:"string"`
 49127  
 49128  	// The targets (either instances or maintenance window targets).
 49129  	//
 49130  	// One or more targets must be specified for maintenance window Run Command-type
 49131  	// tasks. Depending on the task, targets are optional for other maintenance
 49132  	// window task types (Automation, Lambda, and Step Functions). For more information
 49133  	// about running tasks that don't specify targets, see Registering maintenance
 49134  	// window tasks without targets (https://docs.aws.amazon.com/systems-manager/latest/userguide/maintenance-windows-targetless-tasks.html)
 49135  	// in the Amazon Web Services Systems Manager User Guide.
 49136  	//
 49137  	// Specify instances using the following format:
 49138  	//
 49139  	// Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>
 49140  	//
 49141  	// Specify maintenance window targets using the following format:
 49142  	//
 49143  	// Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
 49144  	Targets []*Target `type:"list"`
 49145  
 49146  	// The ARN of the task to run.
 49147  	//
 49148  	// TaskArn is a required field
 49149  	TaskArn *string `min:"1" type:"string" required:"true"`
 49150  
 49151  	// The parameters that the task should use during execution. Populate only the
 49152  	// fields that match the task type. All other fields should be empty.
 49153  	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters `type:"structure"`
 49154  
 49155  	// The parameters that should be passed to the task when it is run.
 49156  	//
 49157  	// TaskParameters has been deprecated. To specify parameters to pass to a task
 49158  	// when it runs, instead use the Parameters option in the TaskInvocationParameters
 49159  	// structure. For information about how Systems Manager handles these options
 49160  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 49161  	//
 49162  	// TaskParameters is a sensitive parameter and its value will be
 49163  	// replaced with "sensitive" in string returned by RegisterTaskWithMaintenanceWindowInput's
 49164  	// String and GoString methods.
 49165  	TaskParameters map[string]*MaintenanceWindowTaskParameterValueExpression `type:"map" sensitive:"true"`
 49166  
 49167  	// The type of task being registered.
 49168  	//
 49169  	// TaskType is a required field
 49170  	TaskType *string `type:"string" required:"true" enum:"MaintenanceWindowTaskType"`
 49171  
 49172  	// The ID of the maintenance window the task should be added to.
 49173  	//
 49174  	// WindowId is a required field
 49175  	WindowId *string `min:"20" type:"string" required:"true"`
 49176  }
 49177  
 49178  // String returns the string representation.
 49179  //
 49180  // API parameter values that are decorated as "sensitive" in the API will not
 49181  // be included in the string output. The member name will be present, but the
 49182  // value will be replaced with "sensitive".
 49183  func (s RegisterTaskWithMaintenanceWindowInput) String() string {
 49184  	return awsutil.Prettify(s)
 49185  }
 49186  
 49187  // GoString returns the string representation.
 49188  //
 49189  // API parameter values that are decorated as "sensitive" in the API will not
 49190  // be included in the string output. The member name will be present, but the
 49191  // value will be replaced with "sensitive".
 49192  func (s RegisterTaskWithMaintenanceWindowInput) GoString() string {
 49193  	return s.String()
 49194  }
 49195  
 49196  // Validate inspects the fields of the type to determine if they are valid.
 49197  func (s *RegisterTaskWithMaintenanceWindowInput) Validate() error {
 49198  	invalidParams := request.ErrInvalidParams{Context: "RegisterTaskWithMaintenanceWindowInput"}
 49199  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 49200  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 49201  	}
 49202  	if s.Description != nil && len(*s.Description) < 1 {
 49203  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 49204  	}
 49205  	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
 49206  		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
 49207  	}
 49208  	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
 49209  		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
 49210  	}
 49211  	if s.Name != nil && len(*s.Name) < 3 {
 49212  		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
 49213  	}
 49214  	if s.TaskArn == nil {
 49215  		invalidParams.Add(request.NewErrParamRequired("TaskArn"))
 49216  	}
 49217  	if s.TaskArn != nil && len(*s.TaskArn) < 1 {
 49218  		invalidParams.Add(request.NewErrParamMinLen("TaskArn", 1))
 49219  	}
 49220  	if s.TaskType == nil {
 49221  		invalidParams.Add(request.NewErrParamRequired("TaskType"))
 49222  	}
 49223  	if s.WindowId == nil {
 49224  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 49225  	}
 49226  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 49227  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 49228  	}
 49229  	if s.LoggingInfo != nil {
 49230  		if err := s.LoggingInfo.Validate(); err != nil {
 49231  			invalidParams.AddNested("LoggingInfo", err.(request.ErrInvalidParams))
 49232  		}
 49233  	}
 49234  	if s.Targets != nil {
 49235  		for i, v := range s.Targets {
 49236  			if v == nil {
 49237  				continue
 49238  			}
 49239  			if err := v.Validate(); err != nil {
 49240  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 49241  			}
 49242  		}
 49243  	}
 49244  	if s.TaskInvocationParameters != nil {
 49245  		if err := s.TaskInvocationParameters.Validate(); err != nil {
 49246  			invalidParams.AddNested("TaskInvocationParameters", err.(request.ErrInvalidParams))
 49247  		}
 49248  	}
 49249  
 49250  	if invalidParams.Len() > 0 {
 49251  		return invalidParams
 49252  	}
 49253  	return nil
 49254  }
 49255  
 49256  // SetClientToken sets the ClientToken field's value.
 49257  func (s *RegisterTaskWithMaintenanceWindowInput) SetClientToken(v string) *RegisterTaskWithMaintenanceWindowInput {
 49258  	s.ClientToken = &v
 49259  	return s
 49260  }
 49261  
 49262  // SetCutoffBehavior sets the CutoffBehavior field's value.
 49263  func (s *RegisterTaskWithMaintenanceWindowInput) SetCutoffBehavior(v string) *RegisterTaskWithMaintenanceWindowInput {
 49264  	s.CutoffBehavior = &v
 49265  	return s
 49266  }
 49267  
 49268  // SetDescription sets the Description field's value.
 49269  func (s *RegisterTaskWithMaintenanceWindowInput) SetDescription(v string) *RegisterTaskWithMaintenanceWindowInput {
 49270  	s.Description = &v
 49271  	return s
 49272  }
 49273  
 49274  // SetLoggingInfo sets the LoggingInfo field's value.
 49275  func (s *RegisterTaskWithMaintenanceWindowInput) SetLoggingInfo(v *LoggingInfo) *RegisterTaskWithMaintenanceWindowInput {
 49276  	s.LoggingInfo = v
 49277  	return s
 49278  }
 49279  
 49280  // SetMaxConcurrency sets the MaxConcurrency field's value.
 49281  func (s *RegisterTaskWithMaintenanceWindowInput) SetMaxConcurrency(v string) *RegisterTaskWithMaintenanceWindowInput {
 49282  	s.MaxConcurrency = &v
 49283  	return s
 49284  }
 49285  
 49286  // SetMaxErrors sets the MaxErrors field's value.
 49287  func (s *RegisterTaskWithMaintenanceWindowInput) SetMaxErrors(v string) *RegisterTaskWithMaintenanceWindowInput {
 49288  	s.MaxErrors = &v
 49289  	return s
 49290  }
 49291  
 49292  // SetName sets the Name field's value.
 49293  func (s *RegisterTaskWithMaintenanceWindowInput) SetName(v string) *RegisterTaskWithMaintenanceWindowInput {
 49294  	s.Name = &v
 49295  	return s
 49296  }
 49297  
 49298  // SetPriority sets the Priority field's value.
 49299  func (s *RegisterTaskWithMaintenanceWindowInput) SetPriority(v int64) *RegisterTaskWithMaintenanceWindowInput {
 49300  	s.Priority = &v
 49301  	return s
 49302  }
 49303  
 49304  // SetServiceRoleArn sets the ServiceRoleArn field's value.
 49305  func (s *RegisterTaskWithMaintenanceWindowInput) SetServiceRoleArn(v string) *RegisterTaskWithMaintenanceWindowInput {
 49306  	s.ServiceRoleArn = &v
 49307  	return s
 49308  }
 49309  
 49310  // SetTargets sets the Targets field's value.
 49311  func (s *RegisterTaskWithMaintenanceWindowInput) SetTargets(v []*Target) *RegisterTaskWithMaintenanceWindowInput {
 49312  	s.Targets = v
 49313  	return s
 49314  }
 49315  
 49316  // SetTaskArn sets the TaskArn field's value.
 49317  func (s *RegisterTaskWithMaintenanceWindowInput) SetTaskArn(v string) *RegisterTaskWithMaintenanceWindowInput {
 49318  	s.TaskArn = &v
 49319  	return s
 49320  }
 49321  
 49322  // SetTaskInvocationParameters sets the TaskInvocationParameters field's value.
 49323  func (s *RegisterTaskWithMaintenanceWindowInput) SetTaskInvocationParameters(v *MaintenanceWindowTaskInvocationParameters) *RegisterTaskWithMaintenanceWindowInput {
 49324  	s.TaskInvocationParameters = v
 49325  	return s
 49326  }
 49327  
 49328  // SetTaskParameters sets the TaskParameters field's value.
 49329  func (s *RegisterTaskWithMaintenanceWindowInput) SetTaskParameters(v map[string]*MaintenanceWindowTaskParameterValueExpression) *RegisterTaskWithMaintenanceWindowInput {
 49330  	s.TaskParameters = v
 49331  	return s
 49332  }
 49333  
 49334  // SetTaskType sets the TaskType field's value.
 49335  func (s *RegisterTaskWithMaintenanceWindowInput) SetTaskType(v string) *RegisterTaskWithMaintenanceWindowInput {
 49336  	s.TaskType = &v
 49337  	return s
 49338  }
 49339  
 49340  // SetWindowId sets the WindowId field's value.
 49341  func (s *RegisterTaskWithMaintenanceWindowInput) SetWindowId(v string) *RegisterTaskWithMaintenanceWindowInput {
 49342  	s.WindowId = &v
 49343  	return s
 49344  }
 49345  
 49346  type RegisterTaskWithMaintenanceWindowOutput struct {
 49347  	_ struct{} `type:"structure"`
 49348  
 49349  	// The ID of the task in the maintenance window.
 49350  	WindowTaskId *string `min:"36" type:"string"`
 49351  }
 49352  
 49353  // String returns the string representation.
 49354  //
 49355  // API parameter values that are decorated as "sensitive" in the API will not
 49356  // be included in the string output. The member name will be present, but the
 49357  // value will be replaced with "sensitive".
 49358  func (s RegisterTaskWithMaintenanceWindowOutput) String() string {
 49359  	return awsutil.Prettify(s)
 49360  }
 49361  
 49362  // GoString returns the string representation.
 49363  //
 49364  // API parameter values that are decorated as "sensitive" in the API will not
 49365  // be included in the string output. The member name will be present, but the
 49366  // value will be replaced with "sensitive".
 49367  func (s RegisterTaskWithMaintenanceWindowOutput) GoString() string {
 49368  	return s.String()
 49369  }
 49370  
 49371  // SetWindowTaskId sets the WindowTaskId field's value.
 49372  func (s *RegisterTaskWithMaintenanceWindowOutput) SetWindowTaskId(v string) *RegisterTaskWithMaintenanceWindowOutput {
 49373  	s.WindowTaskId = &v
 49374  	return s
 49375  }
 49376  
 49377  // An OpsItems that shares something in common with the current OpsItem. For
 49378  // example, related OpsItems can include OpsItems with similar error messages,
 49379  // impacted resources, or statuses for the impacted resource.
 49380  type RelatedOpsItem struct {
 49381  	_ struct{} `type:"structure"`
 49382  
 49383  	// The ID of an OpsItem related to the current OpsItem.
 49384  	//
 49385  	// OpsItemId is a required field
 49386  	OpsItemId *string `type:"string" required:"true"`
 49387  }
 49388  
 49389  // String returns the string representation.
 49390  //
 49391  // API parameter values that are decorated as "sensitive" in the API will not
 49392  // be included in the string output. The member name will be present, but the
 49393  // value will be replaced with "sensitive".
 49394  func (s RelatedOpsItem) String() string {
 49395  	return awsutil.Prettify(s)
 49396  }
 49397  
 49398  // GoString returns the string representation.
 49399  //
 49400  // API parameter values that are decorated as "sensitive" in the API will not
 49401  // be included in the string output. The member name will be present, but the
 49402  // value will be replaced with "sensitive".
 49403  func (s RelatedOpsItem) GoString() string {
 49404  	return s.String()
 49405  }
 49406  
 49407  // Validate inspects the fields of the type to determine if they are valid.
 49408  func (s *RelatedOpsItem) Validate() error {
 49409  	invalidParams := request.ErrInvalidParams{Context: "RelatedOpsItem"}
 49410  	if s.OpsItemId == nil {
 49411  		invalidParams.Add(request.NewErrParamRequired("OpsItemId"))
 49412  	}
 49413  
 49414  	if invalidParams.Len() > 0 {
 49415  		return invalidParams
 49416  	}
 49417  	return nil
 49418  }
 49419  
 49420  // SetOpsItemId sets the OpsItemId field's value.
 49421  func (s *RelatedOpsItem) SetOpsItemId(v string) *RelatedOpsItem {
 49422  	s.OpsItemId = &v
 49423  	return s
 49424  }
 49425  
 49426  type RemoveTagsFromResourceInput struct {
 49427  	_ struct{} `type:"structure"`
 49428  
 49429  	// The ID of the resource from which you want to remove tags. For example:
 49430  	//
 49431  	// ManagedInstance: mi-012345abcde
 49432  	//
 49433  	// MaintenanceWindow: mw-012345abcde
 49434  	//
 49435  	// PatchBaseline: pb-012345abcde
 49436  	//
 49437  	// OpsMetadata object: ResourceID for tagging is created from the Amazon Resource
 49438  	// Name (ARN) for the object. Specifically, ResourceID is created from the strings
 49439  	// that come after the word opsmetadata in the ARN. For example, an OpsMetadata
 49440  	// object with an ARN of arn:aws:ssm:us-east-2:1234567890:opsmetadata/aws/ssm/MyGroup/appmanager
 49441  	// has a ResourceID of either aws/ssm/MyGroup/appmanager or /aws/ssm/MyGroup/appmanager.
 49442  	//
 49443  	// For the Document and Parameter values, use the name of the resource.
 49444  	//
 49445  	// The ManagedInstance type for this API operation is only for on-premises managed
 49446  	// instances. Specify the name of the managed instance in the following format:
 49447  	// mi-ID_number. For example, mi-1a2b3c4d5e6f.
 49448  	//
 49449  	// ResourceId is a required field
 49450  	ResourceId *string `type:"string" required:"true"`
 49451  
 49452  	// The type of resource from which you want to remove a tag.
 49453  	//
 49454  	// The ManagedInstance type for this API operation is only for on-premises managed
 49455  	// instances. Specify the name of the managed instance in the following format:
 49456  	// mi-ID_number . For example, mi-1a2b3c4d5e6f.
 49457  	//
 49458  	// ResourceType is a required field
 49459  	ResourceType *string `type:"string" required:"true" enum:"ResourceTypeForTagging"`
 49460  
 49461  	// Tag keys that you want to remove from the specified resource.
 49462  	//
 49463  	// TagKeys is a required field
 49464  	TagKeys []*string `type:"list" required:"true"`
 49465  }
 49466  
 49467  // String returns the string representation.
 49468  //
 49469  // API parameter values that are decorated as "sensitive" in the API will not
 49470  // be included in the string output. The member name will be present, but the
 49471  // value will be replaced with "sensitive".
 49472  func (s RemoveTagsFromResourceInput) String() string {
 49473  	return awsutil.Prettify(s)
 49474  }
 49475  
 49476  // GoString returns the string representation.
 49477  //
 49478  // API parameter values that are decorated as "sensitive" in the API will not
 49479  // be included in the string output. The member name will be present, but the
 49480  // value will be replaced with "sensitive".
 49481  func (s RemoveTagsFromResourceInput) GoString() string {
 49482  	return s.String()
 49483  }
 49484  
 49485  // Validate inspects the fields of the type to determine if they are valid.
 49486  func (s *RemoveTagsFromResourceInput) Validate() error {
 49487  	invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromResourceInput"}
 49488  	if s.ResourceId == nil {
 49489  		invalidParams.Add(request.NewErrParamRequired("ResourceId"))
 49490  	}
 49491  	if s.ResourceType == nil {
 49492  		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
 49493  	}
 49494  	if s.TagKeys == nil {
 49495  		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
 49496  	}
 49497  
 49498  	if invalidParams.Len() > 0 {
 49499  		return invalidParams
 49500  	}
 49501  	return nil
 49502  }
 49503  
 49504  // SetResourceId sets the ResourceId field's value.
 49505  func (s *RemoveTagsFromResourceInput) SetResourceId(v string) *RemoveTagsFromResourceInput {
 49506  	s.ResourceId = &v
 49507  	return s
 49508  }
 49509  
 49510  // SetResourceType sets the ResourceType field's value.
 49511  func (s *RemoveTagsFromResourceInput) SetResourceType(v string) *RemoveTagsFromResourceInput {
 49512  	s.ResourceType = &v
 49513  	return s
 49514  }
 49515  
 49516  // SetTagKeys sets the TagKeys field's value.
 49517  func (s *RemoveTagsFromResourceInput) SetTagKeys(v []*string) *RemoveTagsFromResourceInput {
 49518  	s.TagKeys = v
 49519  	return s
 49520  }
 49521  
 49522  type RemoveTagsFromResourceOutput struct {
 49523  	_ struct{} `type:"structure"`
 49524  }
 49525  
 49526  // String returns the string representation.
 49527  //
 49528  // API parameter values that are decorated as "sensitive" in the API will not
 49529  // be included in the string output. The member name will be present, but the
 49530  // value will be replaced with "sensitive".
 49531  func (s RemoveTagsFromResourceOutput) String() string {
 49532  	return awsutil.Prettify(s)
 49533  }
 49534  
 49535  // GoString returns the string representation.
 49536  //
 49537  // API parameter values that are decorated as "sensitive" in the API will not
 49538  // be included in the string output. The member name will be present, but the
 49539  // value will be replaced with "sensitive".
 49540  func (s RemoveTagsFromResourceOutput) GoString() string {
 49541  	return s.String()
 49542  }
 49543  
 49544  // The request body of the ResetServiceSetting API operation.
 49545  type ResetServiceSettingInput struct {
 49546  	_ struct{} `type:"structure"`
 49547  
 49548  	// The Amazon Resource Name (ARN) of the service setting to reset. The setting
 49549  	// ID can be one of the following.
 49550  	//
 49551  	//    * /ssm/automation/customer-script-log-destination
 49552  	//
 49553  	//    * /ssm/automation/customer-script-log-group-name
 49554  	//
 49555  	//    * /ssm/documents/console/public-sharing-permission
 49556  	//
 49557  	//    * /ssm/parameter-store/default-parameter-tier
 49558  	//
 49559  	//    * /ssm/parameter-store/high-throughput-enabled
 49560  	//
 49561  	//    * /ssm/managed-instance/activation-tier
 49562  	//
 49563  	// SettingId is a required field
 49564  	SettingId *string `min:"1" type:"string" required:"true"`
 49565  }
 49566  
 49567  // String returns the string representation.
 49568  //
 49569  // API parameter values that are decorated as "sensitive" in the API will not
 49570  // be included in the string output. The member name will be present, but the
 49571  // value will be replaced with "sensitive".
 49572  func (s ResetServiceSettingInput) String() string {
 49573  	return awsutil.Prettify(s)
 49574  }
 49575  
 49576  // GoString returns the string representation.
 49577  //
 49578  // API parameter values that are decorated as "sensitive" in the API will not
 49579  // be included in the string output. The member name will be present, but the
 49580  // value will be replaced with "sensitive".
 49581  func (s ResetServiceSettingInput) GoString() string {
 49582  	return s.String()
 49583  }
 49584  
 49585  // Validate inspects the fields of the type to determine if they are valid.
 49586  func (s *ResetServiceSettingInput) Validate() error {
 49587  	invalidParams := request.ErrInvalidParams{Context: "ResetServiceSettingInput"}
 49588  	if s.SettingId == nil {
 49589  		invalidParams.Add(request.NewErrParamRequired("SettingId"))
 49590  	}
 49591  	if s.SettingId != nil && len(*s.SettingId) < 1 {
 49592  		invalidParams.Add(request.NewErrParamMinLen("SettingId", 1))
 49593  	}
 49594  
 49595  	if invalidParams.Len() > 0 {
 49596  		return invalidParams
 49597  	}
 49598  	return nil
 49599  }
 49600  
 49601  // SetSettingId sets the SettingId field's value.
 49602  func (s *ResetServiceSettingInput) SetSettingId(v string) *ResetServiceSettingInput {
 49603  	s.SettingId = &v
 49604  	return s
 49605  }
 49606  
 49607  // The result body of the ResetServiceSetting API operation.
 49608  type ResetServiceSettingOutput struct {
 49609  	_ struct{} `type:"structure"`
 49610  
 49611  	// The current, effective service setting after calling the ResetServiceSetting
 49612  	// API operation.
 49613  	ServiceSetting *ServiceSetting `type:"structure"`
 49614  }
 49615  
 49616  // String returns the string representation.
 49617  //
 49618  // API parameter values that are decorated as "sensitive" in the API will not
 49619  // be included in the string output. The member name will be present, but the
 49620  // value will be replaced with "sensitive".
 49621  func (s ResetServiceSettingOutput) String() string {
 49622  	return awsutil.Prettify(s)
 49623  }
 49624  
 49625  // GoString returns the string representation.
 49626  //
 49627  // API parameter values that are decorated as "sensitive" in the API will not
 49628  // be included in the string output. The member name will be present, but the
 49629  // value will be replaced with "sensitive".
 49630  func (s ResetServiceSettingOutput) GoString() string {
 49631  	return s.String()
 49632  }
 49633  
 49634  // SetServiceSetting sets the ServiceSetting field's value.
 49635  func (s *ResetServiceSettingOutput) SetServiceSetting(v *ServiceSetting) *ResetServiceSettingOutput {
 49636  	s.ServiceSetting = v
 49637  	return s
 49638  }
 49639  
 49640  // Information about targets that resolved during the Automation execution.
 49641  type ResolvedTargets struct {
 49642  	_ struct{} `type:"structure"`
 49643  
 49644  	// A list of parameter values sent to targets that resolved during the Automation
 49645  	// execution.
 49646  	ParameterValues []*string `type:"list"`
 49647  
 49648  	// A boolean value indicating whether the resolved target list is truncated.
 49649  	Truncated *bool `type:"boolean"`
 49650  }
 49651  
 49652  // String returns the string representation.
 49653  //
 49654  // API parameter values that are decorated as "sensitive" in the API will not
 49655  // be included in the string output. The member name will be present, but the
 49656  // value will be replaced with "sensitive".
 49657  func (s ResolvedTargets) String() string {
 49658  	return awsutil.Prettify(s)
 49659  }
 49660  
 49661  // GoString returns the string representation.
 49662  //
 49663  // API parameter values that are decorated as "sensitive" in the API will not
 49664  // be included in the string output. The member name will be present, but the
 49665  // value will be replaced with "sensitive".
 49666  func (s ResolvedTargets) GoString() string {
 49667  	return s.String()
 49668  }
 49669  
 49670  // SetParameterValues sets the ParameterValues field's value.
 49671  func (s *ResolvedTargets) SetParameterValues(v []*string) *ResolvedTargets {
 49672  	s.ParameterValues = v
 49673  	return s
 49674  }
 49675  
 49676  // SetTruncated sets the Truncated field's value.
 49677  func (s *ResolvedTargets) SetTruncated(v bool) *ResolvedTargets {
 49678  	s.Truncated = &v
 49679  	return s
 49680  }
 49681  
 49682  // Compliance summary information for a specific resource.
 49683  type ResourceComplianceSummaryItem struct {
 49684  	_ struct{} `type:"structure"`
 49685  
 49686  	// The compliance type.
 49687  	ComplianceType *string `min:"1" type:"string"`
 49688  
 49689  	// A list of items that are compliant for the resource.
 49690  	CompliantSummary *CompliantSummary `type:"structure"`
 49691  
 49692  	// Information about the execution.
 49693  	ExecutionSummary *ComplianceExecutionSummary `type:"structure"`
 49694  
 49695  	// A list of items that aren't compliant for the resource.
 49696  	NonCompliantSummary *NonCompliantSummary `type:"structure"`
 49697  
 49698  	// The highest severity item found for the resource. The resource is compliant
 49699  	// for this item.
 49700  	OverallSeverity *string `type:"string" enum:"ComplianceSeverity"`
 49701  
 49702  	// The resource ID.
 49703  	ResourceId *string `min:"1" type:"string"`
 49704  
 49705  	// The resource type.
 49706  	ResourceType *string `min:"1" type:"string"`
 49707  
 49708  	// The compliance status for the resource.
 49709  	Status *string `type:"string" enum:"ComplianceStatus"`
 49710  }
 49711  
 49712  // String returns the string representation.
 49713  //
 49714  // API parameter values that are decorated as "sensitive" in the API will not
 49715  // be included in the string output. The member name will be present, but the
 49716  // value will be replaced with "sensitive".
 49717  func (s ResourceComplianceSummaryItem) String() string {
 49718  	return awsutil.Prettify(s)
 49719  }
 49720  
 49721  // GoString returns the string representation.
 49722  //
 49723  // API parameter values that are decorated as "sensitive" in the API will not
 49724  // be included in the string output. The member name will be present, but the
 49725  // value will be replaced with "sensitive".
 49726  func (s ResourceComplianceSummaryItem) GoString() string {
 49727  	return s.String()
 49728  }
 49729  
 49730  // SetComplianceType sets the ComplianceType field's value.
 49731  func (s *ResourceComplianceSummaryItem) SetComplianceType(v string) *ResourceComplianceSummaryItem {
 49732  	s.ComplianceType = &v
 49733  	return s
 49734  }
 49735  
 49736  // SetCompliantSummary sets the CompliantSummary field's value.
 49737  func (s *ResourceComplianceSummaryItem) SetCompliantSummary(v *CompliantSummary) *ResourceComplianceSummaryItem {
 49738  	s.CompliantSummary = v
 49739  	return s
 49740  }
 49741  
 49742  // SetExecutionSummary sets the ExecutionSummary field's value.
 49743  func (s *ResourceComplianceSummaryItem) SetExecutionSummary(v *ComplianceExecutionSummary) *ResourceComplianceSummaryItem {
 49744  	s.ExecutionSummary = v
 49745  	return s
 49746  }
 49747  
 49748  // SetNonCompliantSummary sets the NonCompliantSummary field's value.
 49749  func (s *ResourceComplianceSummaryItem) SetNonCompliantSummary(v *NonCompliantSummary) *ResourceComplianceSummaryItem {
 49750  	s.NonCompliantSummary = v
 49751  	return s
 49752  }
 49753  
 49754  // SetOverallSeverity sets the OverallSeverity field's value.
 49755  func (s *ResourceComplianceSummaryItem) SetOverallSeverity(v string) *ResourceComplianceSummaryItem {
 49756  	s.OverallSeverity = &v
 49757  	return s
 49758  }
 49759  
 49760  // SetResourceId sets the ResourceId field's value.
 49761  func (s *ResourceComplianceSummaryItem) SetResourceId(v string) *ResourceComplianceSummaryItem {
 49762  	s.ResourceId = &v
 49763  	return s
 49764  }
 49765  
 49766  // SetResourceType sets the ResourceType field's value.
 49767  func (s *ResourceComplianceSummaryItem) SetResourceType(v string) *ResourceComplianceSummaryItem {
 49768  	s.ResourceType = &v
 49769  	return s
 49770  }
 49771  
 49772  // SetStatus sets the Status field's value.
 49773  func (s *ResourceComplianceSummaryItem) SetStatus(v string) *ResourceComplianceSummaryItem {
 49774  	s.Status = &v
 49775  	return s
 49776  }
 49777  
 49778  // A sync configuration with the same name already exists.
 49779  type ResourceDataSyncAlreadyExistsException struct {
 49780  	_            struct{}                  `type:"structure"`
 49781  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 49782  
 49783  	Message_ *string `locationName:"message" type:"string"`
 49784  
 49785  	SyncName *string `min:"1" type:"string"`
 49786  }
 49787  
 49788  // String returns the string representation.
 49789  //
 49790  // API parameter values that are decorated as "sensitive" in the API will not
 49791  // be included in the string output. The member name will be present, but the
 49792  // value will be replaced with "sensitive".
 49793  func (s ResourceDataSyncAlreadyExistsException) String() string {
 49794  	return awsutil.Prettify(s)
 49795  }
 49796  
 49797  // GoString returns the string representation.
 49798  //
 49799  // API parameter values that are decorated as "sensitive" in the API will not
 49800  // be included in the string output. The member name will be present, but the
 49801  // value will be replaced with "sensitive".
 49802  func (s ResourceDataSyncAlreadyExistsException) GoString() string {
 49803  	return s.String()
 49804  }
 49805  
 49806  func newErrorResourceDataSyncAlreadyExistsException(v protocol.ResponseMetadata) error {
 49807  	return &ResourceDataSyncAlreadyExistsException{
 49808  		RespMetadata: v,
 49809  	}
 49810  }
 49811  
 49812  // Code returns the exception type name.
 49813  func (s *ResourceDataSyncAlreadyExistsException) Code() string {
 49814  	return "ResourceDataSyncAlreadyExistsException"
 49815  }
 49816  
 49817  // Message returns the exception's message.
 49818  func (s *ResourceDataSyncAlreadyExistsException) Message() string {
 49819  	if s.Message_ != nil {
 49820  		return *s.Message_
 49821  	}
 49822  	return ""
 49823  }
 49824  
 49825  // OrigErr always returns nil, satisfies awserr.Error interface.
 49826  func (s *ResourceDataSyncAlreadyExistsException) OrigErr() error {
 49827  	return nil
 49828  }
 49829  
 49830  func (s *ResourceDataSyncAlreadyExistsException) Error() string {
 49831  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 49832  }
 49833  
 49834  // Status code returns the HTTP status code for the request's response error.
 49835  func (s *ResourceDataSyncAlreadyExistsException) StatusCode() int {
 49836  	return s.RespMetadata.StatusCode
 49837  }
 49838  
 49839  // RequestID returns the service's response RequestID for request.
 49840  func (s *ResourceDataSyncAlreadyExistsException) RequestID() string {
 49841  	return s.RespMetadata.RequestID
 49842  }
 49843  
 49844  // Information about the AwsOrganizationsSource resource data sync source. A
 49845  // sync source of this type can synchronize data from Organizations or, if an
 49846  // Amazon Web Services organization isn't present, from multiple Amazon Web
 49847  // Services Regions.
 49848  type ResourceDataSyncAwsOrganizationsSource struct {
 49849  	_ struct{} `type:"structure"`
 49850  
 49851  	// If an Amazon Web Services organization is present, this is either OrganizationalUnits
 49852  	// or EntireOrganization. For OrganizationalUnits, the data is aggregated from
 49853  	// a set of organization units. For EntireOrganization, the data is aggregated
 49854  	// from the entire Amazon Web Services organization.
 49855  	//
 49856  	// OrganizationSourceType is a required field
 49857  	OrganizationSourceType *string `min:"1" type:"string" required:"true"`
 49858  
 49859  	// The Organizations organization units included in the sync.
 49860  	OrganizationalUnits []*ResourceDataSyncOrganizationalUnit `min:"1" type:"list"`
 49861  }
 49862  
 49863  // String returns the string representation.
 49864  //
 49865  // API parameter values that are decorated as "sensitive" in the API will not
 49866  // be included in the string output. The member name will be present, but the
 49867  // value will be replaced with "sensitive".
 49868  func (s ResourceDataSyncAwsOrganizationsSource) String() string {
 49869  	return awsutil.Prettify(s)
 49870  }
 49871  
 49872  // GoString returns the string representation.
 49873  //
 49874  // API parameter values that are decorated as "sensitive" in the API will not
 49875  // be included in the string output. The member name will be present, but the
 49876  // value will be replaced with "sensitive".
 49877  func (s ResourceDataSyncAwsOrganizationsSource) GoString() string {
 49878  	return s.String()
 49879  }
 49880  
 49881  // Validate inspects the fields of the type to determine if they are valid.
 49882  func (s *ResourceDataSyncAwsOrganizationsSource) Validate() error {
 49883  	invalidParams := request.ErrInvalidParams{Context: "ResourceDataSyncAwsOrganizationsSource"}
 49884  	if s.OrganizationSourceType == nil {
 49885  		invalidParams.Add(request.NewErrParamRequired("OrganizationSourceType"))
 49886  	}
 49887  	if s.OrganizationSourceType != nil && len(*s.OrganizationSourceType) < 1 {
 49888  		invalidParams.Add(request.NewErrParamMinLen("OrganizationSourceType", 1))
 49889  	}
 49890  	if s.OrganizationalUnits != nil && len(s.OrganizationalUnits) < 1 {
 49891  		invalidParams.Add(request.NewErrParamMinLen("OrganizationalUnits", 1))
 49892  	}
 49893  	if s.OrganizationalUnits != nil {
 49894  		for i, v := range s.OrganizationalUnits {
 49895  			if v == nil {
 49896  				continue
 49897  			}
 49898  			if err := v.Validate(); err != nil {
 49899  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OrganizationalUnits", i), err.(request.ErrInvalidParams))
 49900  			}
 49901  		}
 49902  	}
 49903  
 49904  	if invalidParams.Len() > 0 {
 49905  		return invalidParams
 49906  	}
 49907  	return nil
 49908  }
 49909  
 49910  // SetOrganizationSourceType sets the OrganizationSourceType field's value.
 49911  func (s *ResourceDataSyncAwsOrganizationsSource) SetOrganizationSourceType(v string) *ResourceDataSyncAwsOrganizationsSource {
 49912  	s.OrganizationSourceType = &v
 49913  	return s
 49914  }
 49915  
 49916  // SetOrganizationalUnits sets the OrganizationalUnits field's value.
 49917  func (s *ResourceDataSyncAwsOrganizationsSource) SetOrganizationalUnits(v []*ResourceDataSyncOrganizationalUnit) *ResourceDataSyncAwsOrganizationsSource {
 49918  	s.OrganizationalUnits = v
 49919  	return s
 49920  }
 49921  
 49922  // Another UpdateResourceDataSync request is being processed. Wait a few minutes
 49923  // and try again.
 49924  type ResourceDataSyncConflictException struct {
 49925  	_            struct{}                  `type:"structure"`
 49926  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 49927  
 49928  	Message_ *string `locationName:"Message" type:"string"`
 49929  }
 49930  
 49931  // String returns the string representation.
 49932  //
 49933  // API parameter values that are decorated as "sensitive" in the API will not
 49934  // be included in the string output. The member name will be present, but the
 49935  // value will be replaced with "sensitive".
 49936  func (s ResourceDataSyncConflictException) String() string {
 49937  	return awsutil.Prettify(s)
 49938  }
 49939  
 49940  // GoString returns the string representation.
 49941  //
 49942  // API parameter values that are decorated as "sensitive" in the API will not
 49943  // be included in the string output. The member name will be present, but the
 49944  // value will be replaced with "sensitive".
 49945  func (s ResourceDataSyncConflictException) GoString() string {
 49946  	return s.String()
 49947  }
 49948  
 49949  func newErrorResourceDataSyncConflictException(v protocol.ResponseMetadata) error {
 49950  	return &ResourceDataSyncConflictException{
 49951  		RespMetadata: v,
 49952  	}
 49953  }
 49954  
 49955  // Code returns the exception type name.
 49956  func (s *ResourceDataSyncConflictException) Code() string {
 49957  	return "ResourceDataSyncConflictException"
 49958  }
 49959  
 49960  // Message returns the exception's message.
 49961  func (s *ResourceDataSyncConflictException) Message() string {
 49962  	if s.Message_ != nil {
 49963  		return *s.Message_
 49964  	}
 49965  	return ""
 49966  }
 49967  
 49968  // OrigErr always returns nil, satisfies awserr.Error interface.
 49969  func (s *ResourceDataSyncConflictException) OrigErr() error {
 49970  	return nil
 49971  }
 49972  
 49973  func (s *ResourceDataSyncConflictException) Error() string {
 49974  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 49975  }
 49976  
 49977  // Status code returns the HTTP status code for the request's response error.
 49978  func (s *ResourceDataSyncConflictException) StatusCode() int {
 49979  	return s.RespMetadata.StatusCode
 49980  }
 49981  
 49982  // RequestID returns the service's response RequestID for request.
 49983  func (s *ResourceDataSyncConflictException) RequestID() string {
 49984  	return s.RespMetadata.RequestID
 49985  }
 49986  
 49987  // You have exceeded the allowed maximum sync configurations.
 49988  type ResourceDataSyncCountExceededException struct {
 49989  	_            struct{}                  `type:"structure"`
 49990  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 49991  
 49992  	Message_ *string `locationName:"Message" type:"string"`
 49993  }
 49994  
 49995  // String returns the string representation.
 49996  //
 49997  // API parameter values that are decorated as "sensitive" in the API will not
 49998  // be included in the string output. The member name will be present, but the
 49999  // value will be replaced with "sensitive".
 50000  func (s ResourceDataSyncCountExceededException) String() string {
 50001  	return awsutil.Prettify(s)
 50002  }
 50003  
 50004  // GoString returns the string representation.
 50005  //
 50006  // API parameter values that are decorated as "sensitive" in the API will not
 50007  // be included in the string output. The member name will be present, but the
 50008  // value will be replaced with "sensitive".
 50009  func (s ResourceDataSyncCountExceededException) GoString() string {
 50010  	return s.String()
 50011  }
 50012  
 50013  func newErrorResourceDataSyncCountExceededException(v protocol.ResponseMetadata) error {
 50014  	return &ResourceDataSyncCountExceededException{
 50015  		RespMetadata: v,
 50016  	}
 50017  }
 50018  
 50019  // Code returns the exception type name.
 50020  func (s *ResourceDataSyncCountExceededException) Code() string {
 50021  	return "ResourceDataSyncCountExceededException"
 50022  }
 50023  
 50024  // Message returns the exception's message.
 50025  func (s *ResourceDataSyncCountExceededException) Message() string {
 50026  	if s.Message_ != nil {
 50027  		return *s.Message_
 50028  	}
 50029  	return ""
 50030  }
 50031  
 50032  // OrigErr always returns nil, satisfies awserr.Error interface.
 50033  func (s *ResourceDataSyncCountExceededException) OrigErr() error {
 50034  	return nil
 50035  }
 50036  
 50037  func (s *ResourceDataSyncCountExceededException) Error() string {
 50038  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 50039  }
 50040  
 50041  // Status code returns the HTTP status code for the request's response error.
 50042  func (s *ResourceDataSyncCountExceededException) StatusCode() int {
 50043  	return s.RespMetadata.StatusCode
 50044  }
 50045  
 50046  // RequestID returns the service's response RequestID for request.
 50047  func (s *ResourceDataSyncCountExceededException) RequestID() string {
 50048  	return s.RespMetadata.RequestID
 50049  }
 50050  
 50051  // Synchronize Amazon Web Services Systems Manager Inventory data from multiple
 50052  // Amazon Web Services accounts defined in Organizations to a centralized Amazon
 50053  // S3 bucket. Data is synchronized to individual key prefixes in the central
 50054  // bucket. Each key prefix represents a different Amazon Web Services account
 50055  // ID.
 50056  type ResourceDataSyncDestinationDataSharing struct {
 50057  	_ struct{} `type:"structure"`
 50058  
 50059  	// The sharing data type. Only Organization is supported.
 50060  	DestinationDataSharingType *string `min:"1" type:"string"`
 50061  }
 50062  
 50063  // String returns the string representation.
 50064  //
 50065  // API parameter values that are decorated as "sensitive" in the API will not
 50066  // be included in the string output. The member name will be present, but the
 50067  // value will be replaced with "sensitive".
 50068  func (s ResourceDataSyncDestinationDataSharing) String() string {
 50069  	return awsutil.Prettify(s)
 50070  }
 50071  
 50072  // GoString returns the string representation.
 50073  //
 50074  // API parameter values that are decorated as "sensitive" in the API will not
 50075  // be included in the string output. The member name will be present, but the
 50076  // value will be replaced with "sensitive".
 50077  func (s ResourceDataSyncDestinationDataSharing) GoString() string {
 50078  	return s.String()
 50079  }
 50080  
 50081  // Validate inspects the fields of the type to determine if they are valid.
 50082  func (s *ResourceDataSyncDestinationDataSharing) Validate() error {
 50083  	invalidParams := request.ErrInvalidParams{Context: "ResourceDataSyncDestinationDataSharing"}
 50084  	if s.DestinationDataSharingType != nil && len(*s.DestinationDataSharingType) < 1 {
 50085  		invalidParams.Add(request.NewErrParamMinLen("DestinationDataSharingType", 1))
 50086  	}
 50087  
 50088  	if invalidParams.Len() > 0 {
 50089  		return invalidParams
 50090  	}
 50091  	return nil
 50092  }
 50093  
 50094  // SetDestinationDataSharingType sets the DestinationDataSharingType field's value.
 50095  func (s *ResourceDataSyncDestinationDataSharing) SetDestinationDataSharingType(v string) *ResourceDataSyncDestinationDataSharing {
 50096  	s.DestinationDataSharingType = &v
 50097  	return s
 50098  }
 50099  
 50100  // The specified sync configuration is invalid.
 50101  type ResourceDataSyncInvalidConfigurationException struct {
 50102  	_            struct{}                  `type:"structure"`
 50103  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 50104  
 50105  	Message_ *string `locationName:"Message" type:"string"`
 50106  }
 50107  
 50108  // String returns the string representation.
 50109  //
 50110  // API parameter values that are decorated as "sensitive" in the API will not
 50111  // be included in the string output. The member name will be present, but the
 50112  // value will be replaced with "sensitive".
 50113  func (s ResourceDataSyncInvalidConfigurationException) String() string {
 50114  	return awsutil.Prettify(s)
 50115  }
 50116  
 50117  // GoString returns the string representation.
 50118  //
 50119  // API parameter values that are decorated as "sensitive" in the API will not
 50120  // be included in the string output. The member name will be present, but the
 50121  // value will be replaced with "sensitive".
 50122  func (s ResourceDataSyncInvalidConfigurationException) GoString() string {
 50123  	return s.String()
 50124  }
 50125  
 50126  func newErrorResourceDataSyncInvalidConfigurationException(v protocol.ResponseMetadata) error {
 50127  	return &ResourceDataSyncInvalidConfigurationException{
 50128  		RespMetadata: v,
 50129  	}
 50130  }
 50131  
 50132  // Code returns the exception type name.
 50133  func (s *ResourceDataSyncInvalidConfigurationException) Code() string {
 50134  	return "ResourceDataSyncInvalidConfigurationException"
 50135  }
 50136  
 50137  // Message returns the exception's message.
 50138  func (s *ResourceDataSyncInvalidConfigurationException) Message() string {
 50139  	if s.Message_ != nil {
 50140  		return *s.Message_
 50141  	}
 50142  	return ""
 50143  }
 50144  
 50145  // OrigErr always returns nil, satisfies awserr.Error interface.
 50146  func (s *ResourceDataSyncInvalidConfigurationException) OrigErr() error {
 50147  	return nil
 50148  }
 50149  
 50150  func (s *ResourceDataSyncInvalidConfigurationException) Error() string {
 50151  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 50152  }
 50153  
 50154  // Status code returns the HTTP status code for the request's response error.
 50155  func (s *ResourceDataSyncInvalidConfigurationException) StatusCode() int {
 50156  	return s.RespMetadata.StatusCode
 50157  }
 50158  
 50159  // RequestID returns the service's response RequestID for request.
 50160  func (s *ResourceDataSyncInvalidConfigurationException) RequestID() string {
 50161  	return s.RespMetadata.RequestID
 50162  }
 50163  
 50164  // Information about a resource data sync configuration, including its current
 50165  // status and last successful sync.
 50166  type ResourceDataSyncItem struct {
 50167  	_ struct{} `type:"structure"`
 50168  
 50169  	// The status reported by the last sync.
 50170  	LastStatus *string `type:"string" enum:"LastResourceDataSyncStatus"`
 50171  
 50172  	// The last time the sync operations returned a status of SUCCESSFUL (UTC).
 50173  	LastSuccessfulSyncTime *time.Time `type:"timestamp"`
 50174  
 50175  	// The status message details reported by the last sync.
 50176  	LastSyncStatusMessage *string `type:"string"`
 50177  
 50178  	// The last time the configuration attempted to sync (UTC).
 50179  	LastSyncTime *time.Time `type:"timestamp"`
 50180  
 50181  	// Configuration information for the target S3 bucket.
 50182  	S3Destination *ResourceDataSyncS3Destination `type:"structure"`
 50183  
 50184  	// The date and time the configuration was created (UTC).
 50185  	SyncCreatedTime *time.Time `type:"timestamp"`
 50186  
 50187  	// The date and time the resource data sync was changed.
 50188  	SyncLastModifiedTime *time.Time `type:"timestamp"`
 50189  
 50190  	// The name of the resource data sync.
 50191  	SyncName *string `min:"1" type:"string"`
 50192  
 50193  	// Information about the source where the data was synchronized.
 50194  	SyncSource *ResourceDataSyncSourceWithState `type:"structure"`
 50195  
 50196  	// The type of resource data sync. If SyncType is SyncToDestination, then the
 50197  	// resource data sync synchronizes data to an S3 bucket. If the SyncType is
 50198  	// SyncFromSource then the resource data sync synchronizes data from Organizations
 50199  	// or from multiple Amazon Web Services Regions.
 50200  	SyncType *string `min:"1" type:"string"`
 50201  }
 50202  
 50203  // String returns the string representation.
 50204  //
 50205  // API parameter values that are decorated as "sensitive" in the API will not
 50206  // be included in the string output. The member name will be present, but the
 50207  // value will be replaced with "sensitive".
 50208  func (s ResourceDataSyncItem) String() string {
 50209  	return awsutil.Prettify(s)
 50210  }
 50211  
 50212  // GoString returns the string representation.
 50213  //
 50214  // API parameter values that are decorated as "sensitive" in the API will not
 50215  // be included in the string output. The member name will be present, but the
 50216  // value will be replaced with "sensitive".
 50217  func (s ResourceDataSyncItem) GoString() string {
 50218  	return s.String()
 50219  }
 50220  
 50221  // SetLastStatus sets the LastStatus field's value.
 50222  func (s *ResourceDataSyncItem) SetLastStatus(v string) *ResourceDataSyncItem {
 50223  	s.LastStatus = &v
 50224  	return s
 50225  }
 50226  
 50227  // SetLastSuccessfulSyncTime sets the LastSuccessfulSyncTime field's value.
 50228  func (s *ResourceDataSyncItem) SetLastSuccessfulSyncTime(v time.Time) *ResourceDataSyncItem {
 50229  	s.LastSuccessfulSyncTime = &v
 50230  	return s
 50231  }
 50232  
 50233  // SetLastSyncStatusMessage sets the LastSyncStatusMessage field's value.
 50234  func (s *ResourceDataSyncItem) SetLastSyncStatusMessage(v string) *ResourceDataSyncItem {
 50235  	s.LastSyncStatusMessage = &v
 50236  	return s
 50237  }
 50238  
 50239  // SetLastSyncTime sets the LastSyncTime field's value.
 50240  func (s *ResourceDataSyncItem) SetLastSyncTime(v time.Time) *ResourceDataSyncItem {
 50241  	s.LastSyncTime = &v
 50242  	return s
 50243  }
 50244  
 50245  // SetS3Destination sets the S3Destination field's value.
 50246  func (s *ResourceDataSyncItem) SetS3Destination(v *ResourceDataSyncS3Destination) *ResourceDataSyncItem {
 50247  	s.S3Destination = v
 50248  	return s
 50249  }
 50250  
 50251  // SetSyncCreatedTime sets the SyncCreatedTime field's value.
 50252  func (s *ResourceDataSyncItem) SetSyncCreatedTime(v time.Time) *ResourceDataSyncItem {
 50253  	s.SyncCreatedTime = &v
 50254  	return s
 50255  }
 50256  
 50257  // SetSyncLastModifiedTime sets the SyncLastModifiedTime field's value.
 50258  func (s *ResourceDataSyncItem) SetSyncLastModifiedTime(v time.Time) *ResourceDataSyncItem {
 50259  	s.SyncLastModifiedTime = &v
 50260  	return s
 50261  }
 50262  
 50263  // SetSyncName sets the SyncName field's value.
 50264  func (s *ResourceDataSyncItem) SetSyncName(v string) *ResourceDataSyncItem {
 50265  	s.SyncName = &v
 50266  	return s
 50267  }
 50268  
 50269  // SetSyncSource sets the SyncSource field's value.
 50270  func (s *ResourceDataSyncItem) SetSyncSource(v *ResourceDataSyncSourceWithState) *ResourceDataSyncItem {
 50271  	s.SyncSource = v
 50272  	return s
 50273  }
 50274  
 50275  // SetSyncType sets the SyncType field's value.
 50276  func (s *ResourceDataSyncItem) SetSyncType(v string) *ResourceDataSyncItem {
 50277  	s.SyncType = &v
 50278  	return s
 50279  }
 50280  
 50281  // The specified sync name wasn't found.
 50282  type ResourceDataSyncNotFoundException struct {
 50283  	_            struct{}                  `type:"structure"`
 50284  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 50285  
 50286  	Message_ *string `locationName:"Message" type:"string"`
 50287  
 50288  	SyncName *string `min:"1" type:"string"`
 50289  
 50290  	SyncType *string `min:"1" type:"string"`
 50291  }
 50292  
 50293  // String returns the string representation.
 50294  //
 50295  // API parameter values that are decorated as "sensitive" in the API will not
 50296  // be included in the string output. The member name will be present, but the
 50297  // value will be replaced with "sensitive".
 50298  func (s ResourceDataSyncNotFoundException) String() string {
 50299  	return awsutil.Prettify(s)
 50300  }
 50301  
 50302  // GoString returns the string representation.
 50303  //
 50304  // API parameter values that are decorated as "sensitive" in the API will not
 50305  // be included in the string output. The member name will be present, but the
 50306  // value will be replaced with "sensitive".
 50307  func (s ResourceDataSyncNotFoundException) GoString() string {
 50308  	return s.String()
 50309  }
 50310  
 50311  func newErrorResourceDataSyncNotFoundException(v protocol.ResponseMetadata) error {
 50312  	return &ResourceDataSyncNotFoundException{
 50313  		RespMetadata: v,
 50314  	}
 50315  }
 50316  
 50317  // Code returns the exception type name.
 50318  func (s *ResourceDataSyncNotFoundException) Code() string {
 50319  	return "ResourceDataSyncNotFoundException"
 50320  }
 50321  
 50322  // Message returns the exception's message.
 50323  func (s *ResourceDataSyncNotFoundException) Message() string {
 50324  	if s.Message_ != nil {
 50325  		return *s.Message_
 50326  	}
 50327  	return ""
 50328  }
 50329  
 50330  // OrigErr always returns nil, satisfies awserr.Error interface.
 50331  func (s *ResourceDataSyncNotFoundException) OrigErr() error {
 50332  	return nil
 50333  }
 50334  
 50335  func (s *ResourceDataSyncNotFoundException) Error() string {
 50336  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 50337  }
 50338  
 50339  // Status code returns the HTTP status code for the request's response error.
 50340  func (s *ResourceDataSyncNotFoundException) StatusCode() int {
 50341  	return s.RespMetadata.StatusCode
 50342  }
 50343  
 50344  // RequestID returns the service's response RequestID for request.
 50345  func (s *ResourceDataSyncNotFoundException) RequestID() string {
 50346  	return s.RespMetadata.RequestID
 50347  }
 50348  
 50349  // The Organizations organizational unit data source for the sync.
 50350  type ResourceDataSyncOrganizationalUnit struct {
 50351  	_ struct{} `type:"structure"`
 50352  
 50353  	// The Organizations unit ID data source for the sync.
 50354  	OrganizationalUnitId *string `min:"1" type:"string"`
 50355  }
 50356  
 50357  // String returns the string representation.
 50358  //
 50359  // API parameter values that are decorated as "sensitive" in the API will not
 50360  // be included in the string output. The member name will be present, but the
 50361  // value will be replaced with "sensitive".
 50362  func (s ResourceDataSyncOrganizationalUnit) String() string {
 50363  	return awsutil.Prettify(s)
 50364  }
 50365  
 50366  // GoString returns the string representation.
 50367  //
 50368  // API parameter values that are decorated as "sensitive" in the API will not
 50369  // be included in the string output. The member name will be present, but the
 50370  // value will be replaced with "sensitive".
 50371  func (s ResourceDataSyncOrganizationalUnit) GoString() string {
 50372  	return s.String()
 50373  }
 50374  
 50375  // Validate inspects the fields of the type to determine if they are valid.
 50376  func (s *ResourceDataSyncOrganizationalUnit) Validate() error {
 50377  	invalidParams := request.ErrInvalidParams{Context: "ResourceDataSyncOrganizationalUnit"}
 50378  	if s.OrganizationalUnitId != nil && len(*s.OrganizationalUnitId) < 1 {
 50379  		invalidParams.Add(request.NewErrParamMinLen("OrganizationalUnitId", 1))
 50380  	}
 50381  
 50382  	if invalidParams.Len() > 0 {
 50383  		return invalidParams
 50384  	}
 50385  	return nil
 50386  }
 50387  
 50388  // SetOrganizationalUnitId sets the OrganizationalUnitId field's value.
 50389  func (s *ResourceDataSyncOrganizationalUnit) SetOrganizationalUnitId(v string) *ResourceDataSyncOrganizationalUnit {
 50390  	s.OrganizationalUnitId = &v
 50391  	return s
 50392  }
 50393  
 50394  // Information about the target S3 bucket for the resource data sync.
 50395  type ResourceDataSyncS3Destination struct {
 50396  	_ struct{} `type:"structure"`
 50397  
 50398  	// The ARN of an encryption key for a destination in Amazon S3. Must belong
 50399  	// to the same Region as the destination S3 bucket.
 50400  	AWSKMSKeyARN *string `min:"1" type:"string"`
 50401  
 50402  	// The name of the S3 bucket where the aggregated data is stored.
 50403  	//
 50404  	// BucketName is a required field
 50405  	BucketName *string `min:"1" type:"string" required:"true"`
 50406  
 50407  	// Enables destination data sharing. By default, this field is null.
 50408  	DestinationDataSharing *ResourceDataSyncDestinationDataSharing `type:"structure"`
 50409  
 50410  	// An Amazon S3 prefix for the bucket.
 50411  	Prefix *string `min:"1" type:"string"`
 50412  
 50413  	// The Amazon Web Services Region with the S3 bucket targeted by the resource
 50414  	// data sync.
 50415  	//
 50416  	// Region is a required field
 50417  	Region *string `min:"1" type:"string" required:"true"`
 50418  
 50419  	// A supported sync format. The following format is currently supported: JsonSerDe
 50420  	//
 50421  	// SyncFormat is a required field
 50422  	SyncFormat *string `type:"string" required:"true" enum:"ResourceDataSyncS3Format"`
 50423  }
 50424  
 50425  // String returns the string representation.
 50426  //
 50427  // API parameter values that are decorated as "sensitive" in the API will not
 50428  // be included in the string output. The member name will be present, but the
 50429  // value will be replaced with "sensitive".
 50430  func (s ResourceDataSyncS3Destination) String() string {
 50431  	return awsutil.Prettify(s)
 50432  }
 50433  
 50434  // GoString returns the string representation.
 50435  //
 50436  // API parameter values that are decorated as "sensitive" in the API will not
 50437  // be included in the string output. The member name will be present, but the
 50438  // value will be replaced with "sensitive".
 50439  func (s ResourceDataSyncS3Destination) GoString() string {
 50440  	return s.String()
 50441  }
 50442  
 50443  // Validate inspects the fields of the type to determine if they are valid.
 50444  func (s *ResourceDataSyncS3Destination) Validate() error {
 50445  	invalidParams := request.ErrInvalidParams{Context: "ResourceDataSyncS3Destination"}
 50446  	if s.AWSKMSKeyARN != nil && len(*s.AWSKMSKeyARN) < 1 {
 50447  		invalidParams.Add(request.NewErrParamMinLen("AWSKMSKeyARN", 1))
 50448  	}
 50449  	if s.BucketName == nil {
 50450  		invalidParams.Add(request.NewErrParamRequired("BucketName"))
 50451  	}
 50452  	if s.BucketName != nil && len(*s.BucketName) < 1 {
 50453  		invalidParams.Add(request.NewErrParamMinLen("BucketName", 1))
 50454  	}
 50455  	if s.Prefix != nil && len(*s.Prefix) < 1 {
 50456  		invalidParams.Add(request.NewErrParamMinLen("Prefix", 1))
 50457  	}
 50458  	if s.Region == nil {
 50459  		invalidParams.Add(request.NewErrParamRequired("Region"))
 50460  	}
 50461  	if s.Region != nil && len(*s.Region) < 1 {
 50462  		invalidParams.Add(request.NewErrParamMinLen("Region", 1))
 50463  	}
 50464  	if s.SyncFormat == nil {
 50465  		invalidParams.Add(request.NewErrParamRequired("SyncFormat"))
 50466  	}
 50467  	if s.DestinationDataSharing != nil {
 50468  		if err := s.DestinationDataSharing.Validate(); err != nil {
 50469  			invalidParams.AddNested("DestinationDataSharing", err.(request.ErrInvalidParams))
 50470  		}
 50471  	}
 50472  
 50473  	if invalidParams.Len() > 0 {
 50474  		return invalidParams
 50475  	}
 50476  	return nil
 50477  }
 50478  
 50479  // SetAWSKMSKeyARN sets the AWSKMSKeyARN field's value.
 50480  func (s *ResourceDataSyncS3Destination) SetAWSKMSKeyARN(v string) *ResourceDataSyncS3Destination {
 50481  	s.AWSKMSKeyARN = &v
 50482  	return s
 50483  }
 50484  
 50485  // SetBucketName sets the BucketName field's value.
 50486  func (s *ResourceDataSyncS3Destination) SetBucketName(v string) *ResourceDataSyncS3Destination {
 50487  	s.BucketName = &v
 50488  	return s
 50489  }
 50490  
 50491  // SetDestinationDataSharing sets the DestinationDataSharing field's value.
 50492  func (s *ResourceDataSyncS3Destination) SetDestinationDataSharing(v *ResourceDataSyncDestinationDataSharing) *ResourceDataSyncS3Destination {
 50493  	s.DestinationDataSharing = v
 50494  	return s
 50495  }
 50496  
 50497  // SetPrefix sets the Prefix field's value.
 50498  func (s *ResourceDataSyncS3Destination) SetPrefix(v string) *ResourceDataSyncS3Destination {
 50499  	s.Prefix = &v
 50500  	return s
 50501  }
 50502  
 50503  // SetRegion sets the Region field's value.
 50504  func (s *ResourceDataSyncS3Destination) SetRegion(v string) *ResourceDataSyncS3Destination {
 50505  	s.Region = &v
 50506  	return s
 50507  }
 50508  
 50509  // SetSyncFormat sets the SyncFormat field's value.
 50510  func (s *ResourceDataSyncS3Destination) SetSyncFormat(v string) *ResourceDataSyncS3Destination {
 50511  	s.SyncFormat = &v
 50512  	return s
 50513  }
 50514  
 50515  // Information about the source of the data included in the resource data sync.
 50516  type ResourceDataSyncSource struct {
 50517  	_ struct{} `type:"structure"`
 50518  
 50519  	// Information about the AwsOrganizationsSource resource data sync source. A
 50520  	// sync source of this type can synchronize data from Organizations.
 50521  	AwsOrganizationsSource *ResourceDataSyncAwsOrganizationsSource `type:"structure"`
 50522  
 50523  	// When you create a resource data sync, if you choose one of the Organizations
 50524  	// options, then Systems Manager automatically enables all OpsData sources in
 50525  	// the selected Amazon Web Services Regions for all Amazon Web Services accounts
 50526  	// in your organization (or in the selected organization units). For more information,
 50527  	// see About multiple account and Region resource data syncs (https://docs.aws.amazon.com/systems-manager/latest/userguide/Explorer-resouce-data-sync-multiple-accounts-and-regions.html)
 50528  	// in the Amazon Web Services Systems Manager User Guide.
 50529  	EnableAllOpsDataSources *bool `type:"boolean"`
 50530  
 50531  	// Whether to automatically synchronize and aggregate data from new Amazon Web
 50532  	// Services Regions when those Regions come online.
 50533  	IncludeFutureRegions *bool `type:"boolean"`
 50534  
 50535  	// The SyncSource Amazon Web Services Regions included in the resource data
 50536  	// sync.
 50537  	//
 50538  	// SourceRegions is a required field
 50539  	SourceRegions []*string `type:"list" required:"true"`
 50540  
 50541  	// The type of data source for the resource data sync. SourceType is either
 50542  	// AwsOrganizations (if an organization is present in Organizations) or SingleAccountMultiRegions.
 50543  	//
 50544  	// SourceType is a required field
 50545  	SourceType *string `min:"1" type:"string" required:"true"`
 50546  }
 50547  
 50548  // String returns the string representation.
 50549  //
 50550  // API parameter values that are decorated as "sensitive" in the API will not
 50551  // be included in the string output. The member name will be present, but the
 50552  // value will be replaced with "sensitive".
 50553  func (s ResourceDataSyncSource) String() string {
 50554  	return awsutil.Prettify(s)
 50555  }
 50556  
 50557  // GoString returns the string representation.
 50558  //
 50559  // API parameter values that are decorated as "sensitive" in the API will not
 50560  // be included in the string output. The member name will be present, but the
 50561  // value will be replaced with "sensitive".
 50562  func (s ResourceDataSyncSource) GoString() string {
 50563  	return s.String()
 50564  }
 50565  
 50566  // Validate inspects the fields of the type to determine if they are valid.
 50567  func (s *ResourceDataSyncSource) Validate() error {
 50568  	invalidParams := request.ErrInvalidParams{Context: "ResourceDataSyncSource"}
 50569  	if s.SourceRegions == nil {
 50570  		invalidParams.Add(request.NewErrParamRequired("SourceRegions"))
 50571  	}
 50572  	if s.SourceType == nil {
 50573  		invalidParams.Add(request.NewErrParamRequired("SourceType"))
 50574  	}
 50575  	if s.SourceType != nil && len(*s.SourceType) < 1 {
 50576  		invalidParams.Add(request.NewErrParamMinLen("SourceType", 1))
 50577  	}
 50578  	if s.AwsOrganizationsSource != nil {
 50579  		if err := s.AwsOrganizationsSource.Validate(); err != nil {
 50580  			invalidParams.AddNested("AwsOrganizationsSource", err.(request.ErrInvalidParams))
 50581  		}
 50582  	}
 50583  
 50584  	if invalidParams.Len() > 0 {
 50585  		return invalidParams
 50586  	}
 50587  	return nil
 50588  }
 50589  
 50590  // SetAwsOrganizationsSource sets the AwsOrganizationsSource field's value.
 50591  func (s *ResourceDataSyncSource) SetAwsOrganizationsSource(v *ResourceDataSyncAwsOrganizationsSource) *ResourceDataSyncSource {
 50592  	s.AwsOrganizationsSource = v
 50593  	return s
 50594  }
 50595  
 50596  // SetEnableAllOpsDataSources sets the EnableAllOpsDataSources field's value.
 50597  func (s *ResourceDataSyncSource) SetEnableAllOpsDataSources(v bool) *ResourceDataSyncSource {
 50598  	s.EnableAllOpsDataSources = &v
 50599  	return s
 50600  }
 50601  
 50602  // SetIncludeFutureRegions sets the IncludeFutureRegions field's value.
 50603  func (s *ResourceDataSyncSource) SetIncludeFutureRegions(v bool) *ResourceDataSyncSource {
 50604  	s.IncludeFutureRegions = &v
 50605  	return s
 50606  }
 50607  
 50608  // SetSourceRegions sets the SourceRegions field's value.
 50609  func (s *ResourceDataSyncSource) SetSourceRegions(v []*string) *ResourceDataSyncSource {
 50610  	s.SourceRegions = v
 50611  	return s
 50612  }
 50613  
 50614  // SetSourceType sets the SourceType field's value.
 50615  func (s *ResourceDataSyncSource) SetSourceType(v string) *ResourceDataSyncSource {
 50616  	s.SourceType = &v
 50617  	return s
 50618  }
 50619  
 50620  // The data type name for including resource data sync state. There are four
 50621  // sync states:
 50622  //
 50623  // OrganizationNotExists (Your organization doesn't exist)
 50624  //
 50625  // NoPermissions (The system can't locate the service-linked role. This role
 50626  // is automatically created when a user creates a resource data sync in Amazon
 50627  // Web Services Systems Manager Explorer.)
 50628  //
 50629  // InvalidOrganizationalUnit (You specified or selected an invalid unit in the
 50630  // resource data sync configuration.)
 50631  //
 50632  // TrustedAccessDisabled (You disabled Systems Manager access in the organization
 50633  // in Organizations.)
 50634  type ResourceDataSyncSourceWithState struct {
 50635  	_ struct{} `type:"structure"`
 50636  
 50637  	// The field name in SyncSource for the ResourceDataSyncAwsOrganizationsSource
 50638  	// type.
 50639  	AwsOrganizationsSource *ResourceDataSyncAwsOrganizationsSource `type:"structure"`
 50640  
 50641  	// When you create a resource data sync, if you choose one of the Organizations
 50642  	// options, then Systems Manager automatically enables all OpsData sources in
 50643  	// the selected Amazon Web Services Regions for all Amazon Web Services accounts
 50644  	// in your organization (or in the selected organization units). For more information,
 50645  	// see About multiple account and Region resource data syncs (https://docs.aws.amazon.com/systems-manager/latest/userguide/Explorer-resouce-data-sync-multiple-accounts-and-regions.html)
 50646  	// in the Amazon Web Services Systems Manager User Guide.
 50647  	EnableAllOpsDataSources *bool `type:"boolean"`
 50648  
 50649  	// Whether to automatically synchronize and aggregate data from new Amazon Web
 50650  	// Services Regions when those Regions come online.
 50651  	IncludeFutureRegions *bool `type:"boolean"`
 50652  
 50653  	// The SyncSource Amazon Web Services Regions included in the resource data
 50654  	// sync.
 50655  	SourceRegions []*string `type:"list"`
 50656  
 50657  	// The type of data source for the resource data sync. SourceType is either
 50658  	// AwsOrganizations (if an organization is present in Organizations) or singleAccountMultiRegions.
 50659  	SourceType *string `min:"1" type:"string"`
 50660  
 50661  	// The data type name for including resource data sync state. There are four
 50662  	// sync states:
 50663  	//
 50664  	// OrganizationNotExists: Your organization doesn't exist.
 50665  	//
 50666  	// NoPermissions: The system can't locate the service-linked role. This role
 50667  	// is automatically created when a user creates a resource data sync in Explorer.
 50668  	//
 50669  	// InvalidOrganizationalUnit: You specified or selected an invalid unit in the
 50670  	// resource data sync configuration.
 50671  	//
 50672  	// TrustedAccessDisabled: You disabled Systems Manager access in the organization
 50673  	// in Organizations.
 50674  	State *string `min:"1" type:"string"`
 50675  }
 50676  
 50677  // String returns the string representation.
 50678  //
 50679  // API parameter values that are decorated as "sensitive" in the API will not
 50680  // be included in the string output. The member name will be present, but the
 50681  // value will be replaced with "sensitive".
 50682  func (s ResourceDataSyncSourceWithState) String() string {
 50683  	return awsutil.Prettify(s)
 50684  }
 50685  
 50686  // GoString returns the string representation.
 50687  //
 50688  // API parameter values that are decorated as "sensitive" in the API will not
 50689  // be included in the string output. The member name will be present, but the
 50690  // value will be replaced with "sensitive".
 50691  func (s ResourceDataSyncSourceWithState) GoString() string {
 50692  	return s.String()
 50693  }
 50694  
 50695  // SetAwsOrganizationsSource sets the AwsOrganizationsSource field's value.
 50696  func (s *ResourceDataSyncSourceWithState) SetAwsOrganizationsSource(v *ResourceDataSyncAwsOrganizationsSource) *ResourceDataSyncSourceWithState {
 50697  	s.AwsOrganizationsSource = v
 50698  	return s
 50699  }
 50700  
 50701  // SetEnableAllOpsDataSources sets the EnableAllOpsDataSources field's value.
 50702  func (s *ResourceDataSyncSourceWithState) SetEnableAllOpsDataSources(v bool) *ResourceDataSyncSourceWithState {
 50703  	s.EnableAllOpsDataSources = &v
 50704  	return s
 50705  }
 50706  
 50707  // SetIncludeFutureRegions sets the IncludeFutureRegions field's value.
 50708  func (s *ResourceDataSyncSourceWithState) SetIncludeFutureRegions(v bool) *ResourceDataSyncSourceWithState {
 50709  	s.IncludeFutureRegions = &v
 50710  	return s
 50711  }
 50712  
 50713  // SetSourceRegions sets the SourceRegions field's value.
 50714  func (s *ResourceDataSyncSourceWithState) SetSourceRegions(v []*string) *ResourceDataSyncSourceWithState {
 50715  	s.SourceRegions = v
 50716  	return s
 50717  }
 50718  
 50719  // SetSourceType sets the SourceType field's value.
 50720  func (s *ResourceDataSyncSourceWithState) SetSourceType(v string) *ResourceDataSyncSourceWithState {
 50721  	s.SourceType = &v
 50722  	return s
 50723  }
 50724  
 50725  // SetState sets the State field's value.
 50726  func (s *ResourceDataSyncSourceWithState) SetState(v string) *ResourceDataSyncSourceWithState {
 50727  	s.State = &v
 50728  	return s
 50729  }
 50730  
 50731  // Error returned if an attempt is made to delete a patch baseline that is registered
 50732  // for a patch group.
 50733  type ResourceInUseException struct {
 50734  	_            struct{}                  `type:"structure"`
 50735  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 50736  
 50737  	Message_ *string `locationName:"Message" type:"string"`
 50738  }
 50739  
 50740  // String returns the string representation.
 50741  //
 50742  // API parameter values that are decorated as "sensitive" in the API will not
 50743  // be included in the string output. The member name will be present, but the
 50744  // value will be replaced with "sensitive".
 50745  func (s ResourceInUseException) String() string {
 50746  	return awsutil.Prettify(s)
 50747  }
 50748  
 50749  // GoString returns the string representation.
 50750  //
 50751  // API parameter values that are decorated as "sensitive" in the API will not
 50752  // be included in the string output. The member name will be present, but the
 50753  // value will be replaced with "sensitive".
 50754  func (s ResourceInUseException) GoString() string {
 50755  	return s.String()
 50756  }
 50757  
 50758  func newErrorResourceInUseException(v protocol.ResponseMetadata) error {
 50759  	return &ResourceInUseException{
 50760  		RespMetadata: v,
 50761  	}
 50762  }
 50763  
 50764  // Code returns the exception type name.
 50765  func (s *ResourceInUseException) Code() string {
 50766  	return "ResourceInUseException"
 50767  }
 50768  
 50769  // Message returns the exception's message.
 50770  func (s *ResourceInUseException) Message() string {
 50771  	if s.Message_ != nil {
 50772  		return *s.Message_
 50773  	}
 50774  	return ""
 50775  }
 50776  
 50777  // OrigErr always returns nil, satisfies awserr.Error interface.
 50778  func (s *ResourceInUseException) OrigErr() error {
 50779  	return nil
 50780  }
 50781  
 50782  func (s *ResourceInUseException) Error() string {
 50783  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 50784  }
 50785  
 50786  // Status code returns the HTTP status code for the request's response error.
 50787  func (s *ResourceInUseException) StatusCode() int {
 50788  	return s.RespMetadata.StatusCode
 50789  }
 50790  
 50791  // RequestID returns the service's response RequestID for request.
 50792  func (s *ResourceInUseException) RequestID() string {
 50793  	return s.RespMetadata.RequestID
 50794  }
 50795  
 50796  // Error returned when the caller has exceeded the default resource quotas.
 50797  // For example, too many maintenance windows or patch baselines have been created.
 50798  //
 50799  // For information about resource quotas in Systems Manager, see Systems Manager
 50800  // service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
 50801  // in the Amazon Web Services General Reference.
 50802  type ResourceLimitExceededException struct {
 50803  	_            struct{}                  `type:"structure"`
 50804  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 50805  
 50806  	Message_ *string `locationName:"Message" type:"string"`
 50807  }
 50808  
 50809  // String returns the string representation.
 50810  //
 50811  // API parameter values that are decorated as "sensitive" in the API will not
 50812  // be included in the string output. The member name will be present, but the
 50813  // value will be replaced with "sensitive".
 50814  func (s ResourceLimitExceededException) String() string {
 50815  	return awsutil.Prettify(s)
 50816  }
 50817  
 50818  // GoString returns the string representation.
 50819  //
 50820  // API parameter values that are decorated as "sensitive" in the API will not
 50821  // be included in the string output. The member name will be present, but the
 50822  // value will be replaced with "sensitive".
 50823  func (s ResourceLimitExceededException) GoString() string {
 50824  	return s.String()
 50825  }
 50826  
 50827  func newErrorResourceLimitExceededException(v protocol.ResponseMetadata) error {
 50828  	return &ResourceLimitExceededException{
 50829  		RespMetadata: v,
 50830  	}
 50831  }
 50832  
 50833  // Code returns the exception type name.
 50834  func (s *ResourceLimitExceededException) Code() string {
 50835  	return "ResourceLimitExceededException"
 50836  }
 50837  
 50838  // Message returns the exception's message.
 50839  func (s *ResourceLimitExceededException) Message() string {
 50840  	if s.Message_ != nil {
 50841  		return *s.Message_
 50842  	}
 50843  	return ""
 50844  }
 50845  
 50846  // OrigErr always returns nil, satisfies awserr.Error interface.
 50847  func (s *ResourceLimitExceededException) OrigErr() error {
 50848  	return nil
 50849  }
 50850  
 50851  func (s *ResourceLimitExceededException) Error() string {
 50852  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 50853  }
 50854  
 50855  // Status code returns the HTTP status code for the request's response error.
 50856  func (s *ResourceLimitExceededException) StatusCode() int {
 50857  	return s.RespMetadata.StatusCode
 50858  }
 50859  
 50860  // RequestID returns the service's response RequestID for request.
 50861  func (s *ResourceLimitExceededException) RequestID() string {
 50862  	return s.RespMetadata.RequestID
 50863  }
 50864  
 50865  // The inventory item result attribute.
 50866  type ResultAttribute struct {
 50867  	_ struct{} `type:"structure"`
 50868  
 50869  	// Name of the inventory item type. Valid value: AWS:InstanceInformation. Default
 50870  	// Value: AWS:InstanceInformation.
 50871  	//
 50872  	// TypeName is a required field
 50873  	TypeName *string `min:"1" type:"string" required:"true"`
 50874  }
 50875  
 50876  // String returns the string representation.
 50877  //
 50878  // API parameter values that are decorated as "sensitive" in the API will not
 50879  // be included in the string output. The member name will be present, but the
 50880  // value will be replaced with "sensitive".
 50881  func (s ResultAttribute) String() string {
 50882  	return awsutil.Prettify(s)
 50883  }
 50884  
 50885  // GoString returns the string representation.
 50886  //
 50887  // API parameter values that are decorated as "sensitive" in the API will not
 50888  // be included in the string output. The member name will be present, but the
 50889  // value will be replaced with "sensitive".
 50890  func (s ResultAttribute) GoString() string {
 50891  	return s.String()
 50892  }
 50893  
 50894  // Validate inspects the fields of the type to determine if they are valid.
 50895  func (s *ResultAttribute) Validate() error {
 50896  	invalidParams := request.ErrInvalidParams{Context: "ResultAttribute"}
 50897  	if s.TypeName == nil {
 50898  		invalidParams.Add(request.NewErrParamRequired("TypeName"))
 50899  	}
 50900  	if s.TypeName != nil && len(*s.TypeName) < 1 {
 50901  		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
 50902  	}
 50903  
 50904  	if invalidParams.Len() > 0 {
 50905  		return invalidParams
 50906  	}
 50907  	return nil
 50908  }
 50909  
 50910  // SetTypeName sets the TypeName field's value.
 50911  func (s *ResultAttribute) SetTypeName(v string) *ResultAttribute {
 50912  	s.TypeName = &v
 50913  	return s
 50914  }
 50915  
 50916  type ResumeSessionInput struct {
 50917  	_ struct{} `type:"structure"`
 50918  
 50919  	// The ID of the disconnected session to resume.
 50920  	//
 50921  	// SessionId is a required field
 50922  	SessionId *string `min:"1" type:"string" required:"true"`
 50923  }
 50924  
 50925  // String returns the string representation.
 50926  //
 50927  // API parameter values that are decorated as "sensitive" in the API will not
 50928  // be included in the string output. The member name will be present, but the
 50929  // value will be replaced with "sensitive".
 50930  func (s ResumeSessionInput) String() string {
 50931  	return awsutil.Prettify(s)
 50932  }
 50933  
 50934  // GoString returns the string representation.
 50935  //
 50936  // API parameter values that are decorated as "sensitive" in the API will not
 50937  // be included in the string output. The member name will be present, but the
 50938  // value will be replaced with "sensitive".
 50939  func (s ResumeSessionInput) GoString() string {
 50940  	return s.String()
 50941  }
 50942  
 50943  // Validate inspects the fields of the type to determine if they are valid.
 50944  func (s *ResumeSessionInput) Validate() error {
 50945  	invalidParams := request.ErrInvalidParams{Context: "ResumeSessionInput"}
 50946  	if s.SessionId == nil {
 50947  		invalidParams.Add(request.NewErrParamRequired("SessionId"))
 50948  	}
 50949  	if s.SessionId != nil && len(*s.SessionId) < 1 {
 50950  		invalidParams.Add(request.NewErrParamMinLen("SessionId", 1))
 50951  	}
 50952  
 50953  	if invalidParams.Len() > 0 {
 50954  		return invalidParams
 50955  	}
 50956  	return nil
 50957  }
 50958  
 50959  // SetSessionId sets the SessionId field's value.
 50960  func (s *ResumeSessionInput) SetSessionId(v string) *ResumeSessionInput {
 50961  	s.SessionId = &v
 50962  	return s
 50963  }
 50964  
 50965  type ResumeSessionOutput struct {
 50966  	_ struct{} `type:"structure"`
 50967  
 50968  	// The ID of the session.
 50969  	SessionId *string `min:"1" type:"string"`
 50970  
 50971  	// A URL back to SSM Agent on the instance that the Session Manager client uses
 50972  	// to send commands and receive output from the instance. Format: wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output).
 50973  	//
 50974  	// region represents the Region identifier for an Amazon Web Services Region
 50975  	// supported by Amazon Web Services Systems Manager, such as us-east-2 for the
 50976  	// US East (Ohio) Region. For a list of supported region values, see the Region
 50977  	// column in Systems Manager service endpoints (https://docs.aws.amazon.com/general/latest/gr/ssm.html#ssm_region)
 50978  	// in the Amazon Web Services General Reference.
 50979  	//
 50980  	// session-id represents the ID of a Session Manager session, such as 1a2b3c4dEXAMPLE.
 50981  	StreamUrl *string `type:"string"`
 50982  
 50983  	// An encrypted token value containing session and caller information. Used
 50984  	// to authenticate the connection to the instance.
 50985  	TokenValue *string `type:"string"`
 50986  }
 50987  
 50988  // String returns the string representation.
 50989  //
 50990  // API parameter values that are decorated as "sensitive" in the API will not
 50991  // be included in the string output. The member name will be present, but the
 50992  // value will be replaced with "sensitive".
 50993  func (s ResumeSessionOutput) String() string {
 50994  	return awsutil.Prettify(s)
 50995  }
 50996  
 50997  // GoString returns the string representation.
 50998  //
 50999  // API parameter values that are decorated as "sensitive" in the API will not
 51000  // be included in the string output. The member name will be present, but the
 51001  // value will be replaced with "sensitive".
 51002  func (s ResumeSessionOutput) GoString() string {
 51003  	return s.String()
 51004  }
 51005  
 51006  // SetSessionId sets the SessionId field's value.
 51007  func (s *ResumeSessionOutput) SetSessionId(v string) *ResumeSessionOutput {
 51008  	s.SessionId = &v
 51009  	return s
 51010  }
 51011  
 51012  // SetStreamUrl sets the StreamUrl field's value.
 51013  func (s *ResumeSessionOutput) SetStreamUrl(v string) *ResumeSessionOutput {
 51014  	s.StreamUrl = &v
 51015  	return s
 51016  }
 51017  
 51018  // SetTokenValue sets the TokenValue field's value.
 51019  func (s *ResumeSessionOutput) SetTokenValue(v string) *ResumeSessionOutput {
 51020  	s.TokenValue = &v
 51021  	return s
 51022  }
 51023  
 51024  // Information about the result of a document review request.
 51025  type ReviewInformation struct {
 51026  	_ struct{} `type:"structure"`
 51027  
 51028  	// The time that the reviewer took action on the document review request.
 51029  	ReviewedTime *time.Time `type:"timestamp"`
 51030  
 51031  	// The reviewer assigned to take action on the document review request.
 51032  	Reviewer *string `type:"string"`
 51033  
 51034  	// The current status of the document review request.
 51035  	Status *string `type:"string" enum:"ReviewStatus"`
 51036  }
 51037  
 51038  // String returns the string representation.
 51039  //
 51040  // API parameter values that are decorated as "sensitive" in the API will not
 51041  // be included in the string output. The member name will be present, but the
 51042  // value will be replaced with "sensitive".
 51043  func (s ReviewInformation) String() string {
 51044  	return awsutil.Prettify(s)
 51045  }
 51046  
 51047  // GoString returns the string representation.
 51048  //
 51049  // API parameter values that are decorated as "sensitive" in the API will not
 51050  // be included in the string output. The member name will be present, but the
 51051  // value will be replaced with "sensitive".
 51052  func (s ReviewInformation) GoString() string {
 51053  	return s.String()
 51054  }
 51055  
 51056  // SetReviewedTime sets the ReviewedTime field's value.
 51057  func (s *ReviewInformation) SetReviewedTime(v time.Time) *ReviewInformation {
 51058  	s.ReviewedTime = &v
 51059  	return s
 51060  }
 51061  
 51062  // SetReviewer sets the Reviewer field's value.
 51063  func (s *ReviewInformation) SetReviewer(v string) *ReviewInformation {
 51064  	s.Reviewer = &v
 51065  	return s
 51066  }
 51067  
 51068  // SetStatus sets the Status field's value.
 51069  func (s *ReviewInformation) SetStatus(v string) *ReviewInformation {
 51070  	s.Status = &v
 51071  	return s
 51072  }
 51073  
 51074  // Information about an Automation runbook used in a runbook workflow in Change
 51075  // Manager.
 51076  //
 51077  // The Automation runbooks specified for the runbook workflow can't run until
 51078  // all required approvals for the change request have been received.
 51079  type Runbook struct {
 51080  	_ struct{} `type:"structure"`
 51081  
 51082  	// The name of the Automation runbook used in a runbook workflow.
 51083  	//
 51084  	// DocumentName is a required field
 51085  	DocumentName *string `type:"string" required:"true"`
 51086  
 51087  	// The version of the Automation runbook used in a runbook workflow.
 51088  	DocumentVersion *string `type:"string"`
 51089  
 51090  	// The MaxConcurrency value specified by the user when the operation started,
 51091  	// indicating the maximum number of resources that the runbook operation can
 51092  	// run on at the same time.
 51093  	MaxConcurrency *string `min:"1" type:"string"`
 51094  
 51095  	// The MaxErrors value specified by the user when the execution started, indicating
 51096  	// the maximum number of errors that can occur during the operation before the
 51097  	// updates are stopped or rolled back.
 51098  	MaxErrors *string `min:"1" type:"string"`
 51099  
 51100  	// The key-value map of execution parameters, which were supplied when calling
 51101  	// StartChangeRequestExecution.
 51102  	Parameters map[string][]*string `min:"1" type:"map"`
 51103  
 51104  	// Information about the Amazon Web Services Regions and Amazon Web Services
 51105  	// accounts targeted by the current Runbook operation.
 51106  	TargetLocations []*TargetLocation `min:"1" type:"list"`
 51107  
 51108  	// The name of the parameter used as the target resource for the rate-controlled
 51109  	// runbook workflow. Required if you specify Targets.
 51110  	TargetParameterName *string `min:"1" type:"string"`
 51111  
 51112  	// A key-value mapping to target resources that the runbook operation performs
 51113  	// tasks on. Required if you specify TargetParameterName.
 51114  	Targets []*Target `type:"list"`
 51115  }
 51116  
 51117  // String returns the string representation.
 51118  //
 51119  // API parameter values that are decorated as "sensitive" in the API will not
 51120  // be included in the string output. The member name will be present, but the
 51121  // value will be replaced with "sensitive".
 51122  func (s Runbook) String() string {
 51123  	return awsutil.Prettify(s)
 51124  }
 51125  
 51126  // GoString returns the string representation.
 51127  //
 51128  // API parameter values that are decorated as "sensitive" in the API will not
 51129  // be included in the string output. The member name will be present, but the
 51130  // value will be replaced with "sensitive".
 51131  func (s Runbook) GoString() string {
 51132  	return s.String()
 51133  }
 51134  
 51135  // Validate inspects the fields of the type to determine if they are valid.
 51136  func (s *Runbook) Validate() error {
 51137  	invalidParams := request.ErrInvalidParams{Context: "Runbook"}
 51138  	if s.DocumentName == nil {
 51139  		invalidParams.Add(request.NewErrParamRequired("DocumentName"))
 51140  	}
 51141  	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
 51142  		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
 51143  	}
 51144  	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
 51145  		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
 51146  	}
 51147  	if s.Parameters != nil && len(s.Parameters) < 1 {
 51148  		invalidParams.Add(request.NewErrParamMinLen("Parameters", 1))
 51149  	}
 51150  	if s.TargetLocations != nil && len(s.TargetLocations) < 1 {
 51151  		invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1))
 51152  	}
 51153  	if s.TargetParameterName != nil && len(*s.TargetParameterName) < 1 {
 51154  		invalidParams.Add(request.NewErrParamMinLen("TargetParameterName", 1))
 51155  	}
 51156  	if s.TargetLocations != nil {
 51157  		for i, v := range s.TargetLocations {
 51158  			if v == nil {
 51159  				continue
 51160  			}
 51161  			if err := v.Validate(); err != nil {
 51162  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetLocations", i), err.(request.ErrInvalidParams))
 51163  			}
 51164  		}
 51165  	}
 51166  	if s.Targets != nil {
 51167  		for i, v := range s.Targets {
 51168  			if v == nil {
 51169  				continue
 51170  			}
 51171  			if err := v.Validate(); err != nil {
 51172  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 51173  			}
 51174  		}
 51175  	}
 51176  
 51177  	if invalidParams.Len() > 0 {
 51178  		return invalidParams
 51179  	}
 51180  	return nil
 51181  }
 51182  
 51183  // SetDocumentName sets the DocumentName field's value.
 51184  func (s *Runbook) SetDocumentName(v string) *Runbook {
 51185  	s.DocumentName = &v
 51186  	return s
 51187  }
 51188  
 51189  // SetDocumentVersion sets the DocumentVersion field's value.
 51190  func (s *Runbook) SetDocumentVersion(v string) *Runbook {
 51191  	s.DocumentVersion = &v
 51192  	return s
 51193  }
 51194  
 51195  // SetMaxConcurrency sets the MaxConcurrency field's value.
 51196  func (s *Runbook) SetMaxConcurrency(v string) *Runbook {
 51197  	s.MaxConcurrency = &v
 51198  	return s
 51199  }
 51200  
 51201  // SetMaxErrors sets the MaxErrors field's value.
 51202  func (s *Runbook) SetMaxErrors(v string) *Runbook {
 51203  	s.MaxErrors = &v
 51204  	return s
 51205  }
 51206  
 51207  // SetParameters sets the Parameters field's value.
 51208  func (s *Runbook) SetParameters(v map[string][]*string) *Runbook {
 51209  	s.Parameters = v
 51210  	return s
 51211  }
 51212  
 51213  // SetTargetLocations sets the TargetLocations field's value.
 51214  func (s *Runbook) SetTargetLocations(v []*TargetLocation) *Runbook {
 51215  	s.TargetLocations = v
 51216  	return s
 51217  }
 51218  
 51219  // SetTargetParameterName sets the TargetParameterName field's value.
 51220  func (s *Runbook) SetTargetParameterName(v string) *Runbook {
 51221  	s.TargetParameterName = &v
 51222  	return s
 51223  }
 51224  
 51225  // SetTargets sets the Targets field's value.
 51226  func (s *Runbook) SetTargets(v []*Target) *Runbook {
 51227  	s.Targets = v
 51228  	return s
 51229  }
 51230  
 51231  // An S3 bucket where you want to store the results of this request.
 51232  type S3OutputLocation struct {
 51233  	_ struct{} `type:"structure"`
 51234  
 51235  	// The name of the S3 bucket.
 51236  	OutputS3BucketName *string `min:"3" type:"string"`
 51237  
 51238  	// The S3 bucket subfolder.
 51239  	OutputS3KeyPrefix *string `type:"string"`
 51240  
 51241  	// The Amazon Web Services Region of the S3 bucket.
 51242  	OutputS3Region *string `min:"3" type:"string"`
 51243  }
 51244  
 51245  // String returns the string representation.
 51246  //
 51247  // API parameter values that are decorated as "sensitive" in the API will not
 51248  // be included in the string output. The member name will be present, but the
 51249  // value will be replaced with "sensitive".
 51250  func (s S3OutputLocation) String() string {
 51251  	return awsutil.Prettify(s)
 51252  }
 51253  
 51254  // GoString returns the string representation.
 51255  //
 51256  // API parameter values that are decorated as "sensitive" in the API will not
 51257  // be included in the string output. The member name will be present, but the
 51258  // value will be replaced with "sensitive".
 51259  func (s S3OutputLocation) GoString() string {
 51260  	return s.String()
 51261  }
 51262  
 51263  // Validate inspects the fields of the type to determine if they are valid.
 51264  func (s *S3OutputLocation) Validate() error {
 51265  	invalidParams := request.ErrInvalidParams{Context: "S3OutputLocation"}
 51266  	if s.OutputS3BucketName != nil && len(*s.OutputS3BucketName) < 3 {
 51267  		invalidParams.Add(request.NewErrParamMinLen("OutputS3BucketName", 3))
 51268  	}
 51269  	if s.OutputS3Region != nil && len(*s.OutputS3Region) < 3 {
 51270  		invalidParams.Add(request.NewErrParamMinLen("OutputS3Region", 3))
 51271  	}
 51272  
 51273  	if invalidParams.Len() > 0 {
 51274  		return invalidParams
 51275  	}
 51276  	return nil
 51277  }
 51278  
 51279  // SetOutputS3BucketName sets the OutputS3BucketName field's value.
 51280  func (s *S3OutputLocation) SetOutputS3BucketName(v string) *S3OutputLocation {
 51281  	s.OutputS3BucketName = &v
 51282  	return s
 51283  }
 51284  
 51285  // SetOutputS3KeyPrefix sets the OutputS3KeyPrefix field's value.
 51286  func (s *S3OutputLocation) SetOutputS3KeyPrefix(v string) *S3OutputLocation {
 51287  	s.OutputS3KeyPrefix = &v
 51288  	return s
 51289  }
 51290  
 51291  // SetOutputS3Region sets the OutputS3Region field's value.
 51292  func (s *S3OutputLocation) SetOutputS3Region(v string) *S3OutputLocation {
 51293  	s.OutputS3Region = &v
 51294  	return s
 51295  }
 51296  
 51297  // A URL for the Amazon Web Services Systems Manager (Systems Manager) bucket
 51298  // where you want to store the results of this request.
 51299  type S3OutputUrl struct {
 51300  	_ struct{} `type:"structure"`
 51301  
 51302  	// A URL for an S3 bucket where you want to store the results of this request.
 51303  	OutputUrl *string `type:"string"`
 51304  }
 51305  
 51306  // String returns the string representation.
 51307  //
 51308  // API parameter values that are decorated as "sensitive" in the API will not
 51309  // be included in the string output. The member name will be present, but the
 51310  // value will be replaced with "sensitive".
 51311  func (s S3OutputUrl) String() string {
 51312  	return awsutil.Prettify(s)
 51313  }
 51314  
 51315  // GoString returns the string representation.
 51316  //
 51317  // API parameter values that are decorated as "sensitive" in the API will not
 51318  // be included in the string output. The member name will be present, but the
 51319  // value will be replaced with "sensitive".
 51320  func (s S3OutputUrl) GoString() string {
 51321  	return s.String()
 51322  }
 51323  
 51324  // SetOutputUrl sets the OutputUrl field's value.
 51325  func (s *S3OutputUrl) SetOutputUrl(v string) *S3OutputUrl {
 51326  	s.OutputUrl = &v
 51327  	return s
 51328  }
 51329  
 51330  // Information about a scheduled execution for a maintenance window.
 51331  type ScheduledWindowExecution struct {
 51332  	_ struct{} `type:"structure"`
 51333  
 51334  	// The time, in ISO-8601 Extended format, that the maintenance window is scheduled
 51335  	// to be run.
 51336  	ExecutionTime *string `type:"string"`
 51337  
 51338  	// The name of the maintenance window to be run.
 51339  	Name *string `min:"3" type:"string"`
 51340  
 51341  	// The ID of the maintenance window to be run.
 51342  	WindowId *string `min:"20" type:"string"`
 51343  }
 51344  
 51345  // String returns the string representation.
 51346  //
 51347  // API parameter values that are decorated as "sensitive" in the API will not
 51348  // be included in the string output. The member name will be present, but the
 51349  // value will be replaced with "sensitive".
 51350  func (s ScheduledWindowExecution) String() string {
 51351  	return awsutil.Prettify(s)
 51352  }
 51353  
 51354  // GoString returns the string representation.
 51355  //
 51356  // API parameter values that are decorated as "sensitive" in the API will not
 51357  // be included in the string output. The member name will be present, but the
 51358  // value will be replaced with "sensitive".
 51359  func (s ScheduledWindowExecution) GoString() string {
 51360  	return s.String()
 51361  }
 51362  
 51363  // SetExecutionTime sets the ExecutionTime field's value.
 51364  func (s *ScheduledWindowExecution) SetExecutionTime(v string) *ScheduledWindowExecution {
 51365  	s.ExecutionTime = &v
 51366  	return s
 51367  }
 51368  
 51369  // SetName sets the Name field's value.
 51370  func (s *ScheduledWindowExecution) SetName(v string) *ScheduledWindowExecution {
 51371  	s.Name = &v
 51372  	return s
 51373  }
 51374  
 51375  // SetWindowId sets the WindowId field's value.
 51376  func (s *ScheduledWindowExecution) SetWindowId(v string) *ScheduledWindowExecution {
 51377  	s.WindowId = &v
 51378  	return s
 51379  }
 51380  
 51381  type SendAutomationSignalInput struct {
 51382  	_ struct{} `type:"structure"`
 51383  
 51384  	// The unique identifier for an existing Automation execution that you want
 51385  	// to send the signal to.
 51386  	//
 51387  	// AutomationExecutionId is a required field
 51388  	AutomationExecutionId *string `min:"36" type:"string" required:"true"`
 51389  
 51390  	// The data sent with the signal. The data schema depends on the type of signal
 51391  	// used in the request.
 51392  	//
 51393  	// For Approve and Reject signal types, the payload is an optional comment that
 51394  	// you can send with the signal type. For example:
 51395  	//
 51396  	// Comment="Looks good"
 51397  	//
 51398  	// For StartStep and Resume signal types, you must send the name of the Automation
 51399  	// step to start or resume as the payload. For example:
 51400  	//
 51401  	// StepName="step1"
 51402  	//
 51403  	// For the StopStep signal type, you must send the step execution ID as the
 51404  	// payload. For example:
 51405  	//
 51406  	// StepExecutionId="97fff367-fc5a-4299-aed8-0123456789ab"
 51407  	Payload map[string][]*string `min:"1" type:"map"`
 51408  
 51409  	// The type of signal to send to an Automation execution.
 51410  	//
 51411  	// SignalType is a required field
 51412  	SignalType *string `type:"string" required:"true" enum:"SignalType"`
 51413  }
 51414  
 51415  // String returns the string representation.
 51416  //
 51417  // API parameter values that are decorated as "sensitive" in the API will not
 51418  // be included in the string output. The member name will be present, but the
 51419  // value will be replaced with "sensitive".
 51420  func (s SendAutomationSignalInput) String() string {
 51421  	return awsutil.Prettify(s)
 51422  }
 51423  
 51424  // GoString returns the string representation.
 51425  //
 51426  // API parameter values that are decorated as "sensitive" in the API will not
 51427  // be included in the string output. The member name will be present, but the
 51428  // value will be replaced with "sensitive".
 51429  func (s SendAutomationSignalInput) GoString() string {
 51430  	return s.String()
 51431  }
 51432  
 51433  // Validate inspects the fields of the type to determine if they are valid.
 51434  func (s *SendAutomationSignalInput) Validate() error {
 51435  	invalidParams := request.ErrInvalidParams{Context: "SendAutomationSignalInput"}
 51436  	if s.AutomationExecutionId == nil {
 51437  		invalidParams.Add(request.NewErrParamRequired("AutomationExecutionId"))
 51438  	}
 51439  	if s.AutomationExecutionId != nil && len(*s.AutomationExecutionId) < 36 {
 51440  		invalidParams.Add(request.NewErrParamMinLen("AutomationExecutionId", 36))
 51441  	}
 51442  	if s.Payload != nil && len(s.Payload) < 1 {
 51443  		invalidParams.Add(request.NewErrParamMinLen("Payload", 1))
 51444  	}
 51445  	if s.SignalType == nil {
 51446  		invalidParams.Add(request.NewErrParamRequired("SignalType"))
 51447  	}
 51448  
 51449  	if invalidParams.Len() > 0 {
 51450  		return invalidParams
 51451  	}
 51452  	return nil
 51453  }
 51454  
 51455  // SetAutomationExecutionId sets the AutomationExecutionId field's value.
 51456  func (s *SendAutomationSignalInput) SetAutomationExecutionId(v string) *SendAutomationSignalInput {
 51457  	s.AutomationExecutionId = &v
 51458  	return s
 51459  }
 51460  
 51461  // SetPayload sets the Payload field's value.
 51462  func (s *SendAutomationSignalInput) SetPayload(v map[string][]*string) *SendAutomationSignalInput {
 51463  	s.Payload = v
 51464  	return s
 51465  }
 51466  
 51467  // SetSignalType sets the SignalType field's value.
 51468  func (s *SendAutomationSignalInput) SetSignalType(v string) *SendAutomationSignalInput {
 51469  	s.SignalType = &v
 51470  	return s
 51471  }
 51472  
 51473  type SendAutomationSignalOutput struct {
 51474  	_ struct{} `type:"structure"`
 51475  }
 51476  
 51477  // String returns the string representation.
 51478  //
 51479  // API parameter values that are decorated as "sensitive" in the API will not
 51480  // be included in the string output. The member name will be present, but the
 51481  // value will be replaced with "sensitive".
 51482  func (s SendAutomationSignalOutput) String() string {
 51483  	return awsutil.Prettify(s)
 51484  }
 51485  
 51486  // GoString returns the string representation.
 51487  //
 51488  // API parameter values that are decorated as "sensitive" in the API will not
 51489  // be included in the string output. The member name will be present, but the
 51490  // value will be replaced with "sensitive".
 51491  func (s SendAutomationSignalOutput) GoString() string {
 51492  	return s.String()
 51493  }
 51494  
 51495  type SendCommandInput struct {
 51496  	_ struct{} `type:"structure"`
 51497  
 51498  	// Enables Amazon Web Services Systems Manager to send Run Command output to
 51499  	// Amazon CloudWatch Logs. Run Command is a capability of Amazon Web Services
 51500  	// Systems Manager.
 51501  	CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"`
 51502  
 51503  	// User-specified information about the command, such as a brief description
 51504  	// of what the command should do.
 51505  	Comment *string `type:"string"`
 51506  
 51507  	// The Sha256 or Sha1 hash created by the system when the document was created.
 51508  	//
 51509  	// Sha1 hashes have been deprecated.
 51510  	DocumentHash *string `type:"string"`
 51511  
 51512  	// Sha256 or Sha1.
 51513  	//
 51514  	// Sha1 hashes have been deprecated.
 51515  	DocumentHashType *string `type:"string" enum:"DocumentHashType"`
 51516  
 51517  	// The name of the Amazon Web Services Systems Manager document (SSM document)
 51518  	// to run. This can be a public document or a custom document. To run a shared
 51519  	// document belonging to another account, specify the document Amazon Resource
 51520  	// Name (ARN). For more information about how to use shared documents, see Using
 51521  	// shared SSM documents (https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-using-shared.html)
 51522  	// in the Amazon Web Services Systems Manager User Guide.
 51523  	//
 51524  	// If you specify a document name or ARN that hasn't been shared with your account,
 51525  	// you receive an InvalidDocument error.
 51526  	//
 51527  	// DocumentName is a required field
 51528  	DocumentName *string `type:"string" required:"true"`
 51529  
 51530  	// The SSM document version to use in the request. You can specify $DEFAULT,
 51531  	// $LATEST, or a specific version number. If you run commands by using the Command
 51532  	// Line Interface (Amazon Web Services CLI), then you must escape the first
 51533  	// two options by using a backslash. If you specify a version number, then you
 51534  	// don't need to use the backslash. For example:
 51535  	//
 51536  	// --document-version "\$DEFAULT"
 51537  	//
 51538  	// --document-version "\$LATEST"
 51539  	//
 51540  	// --document-version "3"
 51541  	DocumentVersion *string `type:"string"`
 51542  
 51543  	// The IDs of the instances where the command should run. Specifying instance
 51544  	// IDs is most useful when you are targeting a limited number of instances,
 51545  	// though you can specify up to 50 IDs.
 51546  	//
 51547  	// To target a larger number of instances, or if you prefer not to list individual
 51548  	// instance IDs, we recommend using the Targets option instead. Using Targets,
 51549  	// which accepts tag key-value pairs to identify the instances to send commands
 51550  	// to, you can a send command to tens, hundreds, or thousands of instances at
 51551  	// once.
 51552  	//
 51553  	// For more information about how to use targets, see Using targets and rate
 51554  	// controls to send commands to a fleet (https://docs.aws.amazon.com/systems-manager/latest/userguide/send-commands-multiple.html)
 51555  	// in the Amazon Web Services Systems Manager User Guide.
 51556  	InstanceIds []*string `type:"list"`
 51557  
 51558  	// (Optional) The maximum number of instances that are allowed to run the command
 51559  	// at the same time. You can specify a number such as 10 or a percentage such
 51560  	// as 10%. The default value is 50. For more information about how to use MaxConcurrency,
 51561  	// see Using concurrency controls (https://docs.aws.amazon.com/systems-manager/latest/userguide/send-commands-multiple.html#send-commands-velocity)
 51562  	// in the Amazon Web Services Systems Manager User Guide.
 51563  	MaxConcurrency *string `min:"1" type:"string"`
 51564  
 51565  	// The maximum number of errors allowed without the command failing. When the
 51566  	// command fails one more time beyond the value of MaxErrors, the systems stops
 51567  	// sending the command to additional targets. You can specify a number like
 51568  	// 10 or a percentage like 10%. The default value is 0. For more information
 51569  	// about how to use MaxErrors, see Using error controls (https://docs.aws.amazon.com/systems-manager/latest/userguide/send-commands-multiple.html#send-commands-maxerrors)
 51570  	// in the Amazon Web Services Systems Manager User Guide.
 51571  	MaxErrors *string `min:"1" type:"string"`
 51572  
 51573  	// Configurations for sending notifications.
 51574  	NotificationConfig *NotificationConfig `type:"structure"`
 51575  
 51576  	// The name of the S3 bucket where command execution responses should be stored.
 51577  	OutputS3BucketName *string `min:"3" type:"string"`
 51578  
 51579  	// The directory structure within the S3 bucket where the responses should be
 51580  	// stored.
 51581  	OutputS3KeyPrefix *string `type:"string"`
 51582  
 51583  	// (Deprecated) You can no longer specify this parameter. The system ignores
 51584  	// it. Instead, Systems Manager automatically determines the Amazon Web Services
 51585  	// Region of the S3 bucket.
 51586  	OutputS3Region *string `min:"3" type:"string"`
 51587  
 51588  	// The required and optional parameters specified in the document being run.
 51589  	Parameters map[string][]*string `type:"map"`
 51590  
 51591  	// The ARN of the Identity and Access Management (IAM) service role to use to
 51592  	// publish Amazon Simple Notification Service (Amazon SNS) notifications for
 51593  	// Run Command commands.
 51594  	ServiceRoleArn *string `type:"string"`
 51595  
 51596  	// An array of search criteria that targets instances using a Key,Value combination
 51597  	// that you specify. Specifying targets is most useful when you want to send
 51598  	// a command to a large number of instances at once. Using Targets, which accepts
 51599  	// tag key-value pairs to identify instances, you can send a command to tens,
 51600  	// hundreds, or thousands of instances at once.
 51601  	//
 51602  	// To send a command to a smaller number of instances, you can use the InstanceIds
 51603  	// option instead.
 51604  	//
 51605  	// For more information about how to use targets, see Sending commands to a
 51606  	// fleet (https://docs.aws.amazon.com/systems-manager/latest/userguide/send-commands-multiple.html)
 51607  	// in the Amazon Web Services Systems Manager User Guide.
 51608  	Targets []*Target `type:"list"`
 51609  
 51610  	// If this time is reached and the command hasn't already started running, it
 51611  	// won't run.
 51612  	TimeoutSeconds *int64 `min:"30" type:"integer"`
 51613  }
 51614  
 51615  // String returns the string representation.
 51616  //
 51617  // API parameter values that are decorated as "sensitive" in the API will not
 51618  // be included in the string output. The member name will be present, but the
 51619  // value will be replaced with "sensitive".
 51620  func (s SendCommandInput) String() string {
 51621  	return awsutil.Prettify(s)
 51622  }
 51623  
 51624  // GoString returns the string representation.
 51625  //
 51626  // API parameter values that are decorated as "sensitive" in the API will not
 51627  // be included in the string output. The member name will be present, but the
 51628  // value will be replaced with "sensitive".
 51629  func (s SendCommandInput) GoString() string {
 51630  	return s.String()
 51631  }
 51632  
 51633  // Validate inspects the fields of the type to determine if they are valid.
 51634  func (s *SendCommandInput) Validate() error {
 51635  	invalidParams := request.ErrInvalidParams{Context: "SendCommandInput"}
 51636  	if s.DocumentName == nil {
 51637  		invalidParams.Add(request.NewErrParamRequired("DocumentName"))
 51638  	}
 51639  	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
 51640  		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
 51641  	}
 51642  	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
 51643  		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
 51644  	}
 51645  	if s.OutputS3BucketName != nil && len(*s.OutputS3BucketName) < 3 {
 51646  		invalidParams.Add(request.NewErrParamMinLen("OutputS3BucketName", 3))
 51647  	}
 51648  	if s.OutputS3Region != nil && len(*s.OutputS3Region) < 3 {
 51649  		invalidParams.Add(request.NewErrParamMinLen("OutputS3Region", 3))
 51650  	}
 51651  	if s.TimeoutSeconds != nil && *s.TimeoutSeconds < 30 {
 51652  		invalidParams.Add(request.NewErrParamMinValue("TimeoutSeconds", 30))
 51653  	}
 51654  	if s.CloudWatchOutputConfig != nil {
 51655  		if err := s.CloudWatchOutputConfig.Validate(); err != nil {
 51656  			invalidParams.AddNested("CloudWatchOutputConfig", err.(request.ErrInvalidParams))
 51657  		}
 51658  	}
 51659  	if s.Targets != nil {
 51660  		for i, v := range s.Targets {
 51661  			if v == nil {
 51662  				continue
 51663  			}
 51664  			if err := v.Validate(); err != nil {
 51665  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 51666  			}
 51667  		}
 51668  	}
 51669  
 51670  	if invalidParams.Len() > 0 {
 51671  		return invalidParams
 51672  	}
 51673  	return nil
 51674  }
 51675  
 51676  // SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value.
 51677  func (s *SendCommandInput) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *SendCommandInput {
 51678  	s.CloudWatchOutputConfig = v
 51679  	return s
 51680  }
 51681  
 51682  // SetComment sets the Comment field's value.
 51683  func (s *SendCommandInput) SetComment(v string) *SendCommandInput {
 51684  	s.Comment = &v
 51685  	return s
 51686  }
 51687  
 51688  // SetDocumentHash sets the DocumentHash field's value.
 51689  func (s *SendCommandInput) SetDocumentHash(v string) *SendCommandInput {
 51690  	s.DocumentHash = &v
 51691  	return s
 51692  }
 51693  
 51694  // SetDocumentHashType sets the DocumentHashType field's value.
 51695  func (s *SendCommandInput) SetDocumentHashType(v string) *SendCommandInput {
 51696  	s.DocumentHashType = &v
 51697  	return s
 51698  }
 51699  
 51700  // SetDocumentName sets the DocumentName field's value.
 51701  func (s *SendCommandInput) SetDocumentName(v string) *SendCommandInput {
 51702  	s.DocumentName = &v
 51703  	return s
 51704  }
 51705  
 51706  // SetDocumentVersion sets the DocumentVersion field's value.
 51707  func (s *SendCommandInput) SetDocumentVersion(v string) *SendCommandInput {
 51708  	s.DocumentVersion = &v
 51709  	return s
 51710  }
 51711  
 51712  // SetInstanceIds sets the InstanceIds field's value.
 51713  func (s *SendCommandInput) SetInstanceIds(v []*string) *SendCommandInput {
 51714  	s.InstanceIds = v
 51715  	return s
 51716  }
 51717  
 51718  // SetMaxConcurrency sets the MaxConcurrency field's value.
 51719  func (s *SendCommandInput) SetMaxConcurrency(v string) *SendCommandInput {
 51720  	s.MaxConcurrency = &v
 51721  	return s
 51722  }
 51723  
 51724  // SetMaxErrors sets the MaxErrors field's value.
 51725  func (s *SendCommandInput) SetMaxErrors(v string) *SendCommandInput {
 51726  	s.MaxErrors = &v
 51727  	return s
 51728  }
 51729  
 51730  // SetNotificationConfig sets the NotificationConfig field's value.
 51731  func (s *SendCommandInput) SetNotificationConfig(v *NotificationConfig) *SendCommandInput {
 51732  	s.NotificationConfig = v
 51733  	return s
 51734  }
 51735  
 51736  // SetOutputS3BucketName sets the OutputS3BucketName field's value.
 51737  func (s *SendCommandInput) SetOutputS3BucketName(v string) *SendCommandInput {
 51738  	s.OutputS3BucketName = &v
 51739  	return s
 51740  }
 51741  
 51742  // SetOutputS3KeyPrefix sets the OutputS3KeyPrefix field's value.
 51743  func (s *SendCommandInput) SetOutputS3KeyPrefix(v string) *SendCommandInput {
 51744  	s.OutputS3KeyPrefix = &v
 51745  	return s
 51746  }
 51747  
 51748  // SetOutputS3Region sets the OutputS3Region field's value.
 51749  func (s *SendCommandInput) SetOutputS3Region(v string) *SendCommandInput {
 51750  	s.OutputS3Region = &v
 51751  	return s
 51752  }
 51753  
 51754  // SetParameters sets the Parameters field's value.
 51755  func (s *SendCommandInput) SetParameters(v map[string][]*string) *SendCommandInput {
 51756  	s.Parameters = v
 51757  	return s
 51758  }
 51759  
 51760  // SetServiceRoleArn sets the ServiceRoleArn field's value.
 51761  func (s *SendCommandInput) SetServiceRoleArn(v string) *SendCommandInput {
 51762  	s.ServiceRoleArn = &v
 51763  	return s
 51764  }
 51765  
 51766  // SetTargets sets the Targets field's value.
 51767  func (s *SendCommandInput) SetTargets(v []*Target) *SendCommandInput {
 51768  	s.Targets = v
 51769  	return s
 51770  }
 51771  
 51772  // SetTimeoutSeconds sets the TimeoutSeconds field's value.
 51773  func (s *SendCommandInput) SetTimeoutSeconds(v int64) *SendCommandInput {
 51774  	s.TimeoutSeconds = &v
 51775  	return s
 51776  }
 51777  
 51778  type SendCommandOutput struct {
 51779  	_ struct{} `type:"structure"`
 51780  
 51781  	// The request as it was received by Systems Manager. Also provides the command
 51782  	// ID which can be used future references to this request.
 51783  	Command *Command `type:"structure"`
 51784  }
 51785  
 51786  // String returns the string representation.
 51787  //
 51788  // API parameter values that are decorated as "sensitive" in the API will not
 51789  // be included in the string output. The member name will be present, but the
 51790  // value will be replaced with "sensitive".
 51791  func (s SendCommandOutput) String() string {
 51792  	return awsutil.Prettify(s)
 51793  }
 51794  
 51795  // GoString returns the string representation.
 51796  //
 51797  // API parameter values that are decorated as "sensitive" in the API will not
 51798  // be included in the string output. The member name will be present, but the
 51799  // value will be replaced with "sensitive".
 51800  func (s SendCommandOutput) GoString() string {
 51801  	return s.String()
 51802  }
 51803  
 51804  // SetCommand sets the Command field's value.
 51805  func (s *SendCommandOutput) SetCommand(v *Command) *SendCommandOutput {
 51806  	s.Command = v
 51807  	return s
 51808  }
 51809  
 51810  // The service setting data structure.
 51811  //
 51812  // ServiceSetting is an account-level setting for an Amazon Web Services service.
 51813  // This setting defines how a user interacts with or uses a service or a feature
 51814  // of a service. For example, if an Amazon Web Services service charges money
 51815  // to the account based on feature or service usage, then the Amazon Web Services
 51816  // service team might create a default setting of "false". This means the user
 51817  // can't use this feature unless they change the setting to "true" and intentionally
 51818  // opt in for a paid feature.
 51819  //
 51820  // Services map a SettingId object to a setting value. Amazon Web Services services
 51821  // teams define the default value for a SettingId. You can't create a new SettingId,
 51822  // but you can overwrite the default value if you have the ssm:UpdateServiceSetting
 51823  // permission for the setting. Use the UpdateServiceSetting API operation to
 51824  // change the default setting. Or, use the ResetServiceSetting to change the
 51825  // value back to the original value defined by the Amazon Web Services service
 51826  // team.
 51827  type ServiceSetting struct {
 51828  	_ struct{} `type:"structure"`
 51829  
 51830  	// The ARN of the service setting.
 51831  	ARN *string `type:"string"`
 51832  
 51833  	// The last time the service setting was modified.
 51834  	LastModifiedDate *time.Time `type:"timestamp"`
 51835  
 51836  	// The ARN of the last modified user. This field is populated only if the setting
 51837  	// value was overwritten.
 51838  	LastModifiedUser *string `type:"string"`
 51839  
 51840  	// The ID of the service setting.
 51841  	SettingId *string `min:"1" type:"string"`
 51842  
 51843  	// The value of the service setting.
 51844  	SettingValue *string `min:"1" type:"string"`
 51845  
 51846  	// The status of the service setting. The value can be Default, Customized or
 51847  	// PendingUpdate.
 51848  	//
 51849  	//    * Default: The current setting uses a default value provisioned by the
 51850  	//    Amazon Web Services service team.
 51851  	//
 51852  	//    * Customized: The current setting use a custom value specified by the
 51853  	//    customer.
 51854  	//
 51855  	//    * PendingUpdate: The current setting uses a default or custom value, but
 51856  	//    a setting change request is pending approval.
 51857  	Status *string `type:"string"`
 51858  }
 51859  
 51860  // String returns the string representation.
 51861  //
 51862  // API parameter values that are decorated as "sensitive" in the API will not
 51863  // be included in the string output. The member name will be present, but the
 51864  // value will be replaced with "sensitive".
 51865  func (s ServiceSetting) String() string {
 51866  	return awsutil.Prettify(s)
 51867  }
 51868  
 51869  // GoString returns the string representation.
 51870  //
 51871  // API parameter values that are decorated as "sensitive" in the API will not
 51872  // be included in the string output. The member name will be present, but the
 51873  // value will be replaced with "sensitive".
 51874  func (s ServiceSetting) GoString() string {
 51875  	return s.String()
 51876  }
 51877  
 51878  // SetARN sets the ARN field's value.
 51879  func (s *ServiceSetting) SetARN(v string) *ServiceSetting {
 51880  	s.ARN = &v
 51881  	return s
 51882  }
 51883  
 51884  // SetLastModifiedDate sets the LastModifiedDate field's value.
 51885  func (s *ServiceSetting) SetLastModifiedDate(v time.Time) *ServiceSetting {
 51886  	s.LastModifiedDate = &v
 51887  	return s
 51888  }
 51889  
 51890  // SetLastModifiedUser sets the LastModifiedUser field's value.
 51891  func (s *ServiceSetting) SetLastModifiedUser(v string) *ServiceSetting {
 51892  	s.LastModifiedUser = &v
 51893  	return s
 51894  }
 51895  
 51896  // SetSettingId sets the SettingId field's value.
 51897  func (s *ServiceSetting) SetSettingId(v string) *ServiceSetting {
 51898  	s.SettingId = &v
 51899  	return s
 51900  }
 51901  
 51902  // SetSettingValue sets the SettingValue field's value.
 51903  func (s *ServiceSetting) SetSettingValue(v string) *ServiceSetting {
 51904  	s.SettingValue = &v
 51905  	return s
 51906  }
 51907  
 51908  // SetStatus sets the Status field's value.
 51909  func (s *ServiceSetting) SetStatus(v string) *ServiceSetting {
 51910  	s.Status = &v
 51911  	return s
 51912  }
 51913  
 51914  // The specified service setting wasn't found. Either the service name or the
 51915  // setting hasn't been provisioned by the Amazon Web Services service team.
 51916  type ServiceSettingNotFound struct {
 51917  	_            struct{}                  `type:"structure"`
 51918  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 51919  
 51920  	Message_ *string `locationName:"Message" type:"string"`
 51921  }
 51922  
 51923  // String returns the string representation.
 51924  //
 51925  // API parameter values that are decorated as "sensitive" in the API will not
 51926  // be included in the string output. The member name will be present, but the
 51927  // value will be replaced with "sensitive".
 51928  func (s ServiceSettingNotFound) String() string {
 51929  	return awsutil.Prettify(s)
 51930  }
 51931  
 51932  // GoString returns the string representation.
 51933  //
 51934  // API parameter values that are decorated as "sensitive" in the API will not
 51935  // be included in the string output. The member name will be present, but the
 51936  // value will be replaced with "sensitive".
 51937  func (s ServiceSettingNotFound) GoString() string {
 51938  	return s.String()
 51939  }
 51940  
 51941  func newErrorServiceSettingNotFound(v protocol.ResponseMetadata) error {
 51942  	return &ServiceSettingNotFound{
 51943  		RespMetadata: v,
 51944  	}
 51945  }
 51946  
 51947  // Code returns the exception type name.
 51948  func (s *ServiceSettingNotFound) Code() string {
 51949  	return "ServiceSettingNotFound"
 51950  }
 51951  
 51952  // Message returns the exception's message.
 51953  func (s *ServiceSettingNotFound) Message() string {
 51954  	if s.Message_ != nil {
 51955  		return *s.Message_
 51956  	}
 51957  	return ""
 51958  }
 51959  
 51960  // OrigErr always returns nil, satisfies awserr.Error interface.
 51961  func (s *ServiceSettingNotFound) OrigErr() error {
 51962  	return nil
 51963  }
 51964  
 51965  func (s *ServiceSettingNotFound) Error() string {
 51966  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 51967  }
 51968  
 51969  // Status code returns the HTTP status code for the request's response error.
 51970  func (s *ServiceSettingNotFound) StatusCode() int {
 51971  	return s.RespMetadata.StatusCode
 51972  }
 51973  
 51974  // RequestID returns the service's response RequestID for request.
 51975  func (s *ServiceSettingNotFound) RequestID() string {
 51976  	return s.RespMetadata.RequestID
 51977  }
 51978  
 51979  // Information about a Session Manager connection to an instance.
 51980  type Session struct {
 51981  	_ struct{} `type:"structure"`
 51982  
 51983  	// Reserved for future use.
 51984  	Details *string `min:"1" type:"string"`
 51985  
 51986  	// The name of the Session Manager SSM document used to define the parameters
 51987  	// and plugin settings for the session. For example, SSM-SessionManagerRunShell.
 51988  	DocumentName *string `type:"string"`
 51989  
 51990  	// The date and time, in ISO-8601 Extended format, when the session was terminated.
 51991  	EndDate *time.Time `type:"timestamp"`
 51992  
 51993  	// Reserved for future use.
 51994  	OutputUrl *SessionManagerOutputUrl `type:"structure"`
 51995  
 51996  	// The ID of the Amazon Web Services user account that started the session.
 51997  	Owner *string `min:"1" type:"string"`
 51998  
 51999  	// The ID of the session.
 52000  	SessionId *string `min:"1" type:"string"`
 52001  
 52002  	// The date and time, in ISO-8601 Extended format, when the session began.
 52003  	StartDate *time.Time `type:"timestamp"`
 52004  
 52005  	// The status of the session. For example, "Connected" or "Terminated".
 52006  	Status *string `type:"string" enum:"SessionStatus"`
 52007  
 52008  	// The instance that the Session Manager session connected to.
 52009  	Target *string `min:"1" type:"string"`
 52010  }
 52011  
 52012  // String returns the string representation.
 52013  //
 52014  // API parameter values that are decorated as "sensitive" in the API will not
 52015  // be included in the string output. The member name will be present, but the
 52016  // value will be replaced with "sensitive".
 52017  func (s Session) String() string {
 52018  	return awsutil.Prettify(s)
 52019  }
 52020  
 52021  // GoString returns the string representation.
 52022  //
 52023  // API parameter values that are decorated as "sensitive" in the API will not
 52024  // be included in the string output. The member name will be present, but the
 52025  // value will be replaced with "sensitive".
 52026  func (s Session) GoString() string {
 52027  	return s.String()
 52028  }
 52029  
 52030  // SetDetails sets the Details field's value.
 52031  func (s *Session) SetDetails(v string) *Session {
 52032  	s.Details = &v
 52033  	return s
 52034  }
 52035  
 52036  // SetDocumentName sets the DocumentName field's value.
 52037  func (s *Session) SetDocumentName(v string) *Session {
 52038  	s.DocumentName = &v
 52039  	return s
 52040  }
 52041  
 52042  // SetEndDate sets the EndDate field's value.
 52043  func (s *Session) SetEndDate(v time.Time) *Session {
 52044  	s.EndDate = &v
 52045  	return s
 52046  }
 52047  
 52048  // SetOutputUrl sets the OutputUrl field's value.
 52049  func (s *Session) SetOutputUrl(v *SessionManagerOutputUrl) *Session {
 52050  	s.OutputUrl = v
 52051  	return s
 52052  }
 52053  
 52054  // SetOwner sets the Owner field's value.
 52055  func (s *Session) SetOwner(v string) *Session {
 52056  	s.Owner = &v
 52057  	return s
 52058  }
 52059  
 52060  // SetSessionId sets the SessionId field's value.
 52061  func (s *Session) SetSessionId(v string) *Session {
 52062  	s.SessionId = &v
 52063  	return s
 52064  }
 52065  
 52066  // SetStartDate sets the StartDate field's value.
 52067  func (s *Session) SetStartDate(v time.Time) *Session {
 52068  	s.StartDate = &v
 52069  	return s
 52070  }
 52071  
 52072  // SetStatus sets the Status field's value.
 52073  func (s *Session) SetStatus(v string) *Session {
 52074  	s.Status = &v
 52075  	return s
 52076  }
 52077  
 52078  // SetTarget sets the Target field's value.
 52079  func (s *Session) SetTarget(v string) *Session {
 52080  	s.Target = &v
 52081  	return s
 52082  }
 52083  
 52084  // Describes a filter for Session Manager information.
 52085  type SessionFilter struct {
 52086  	_ struct{} `type:"structure"`
 52087  
 52088  	// The name of the filter.
 52089  	//
 52090  	// Key is a required field
 52091  	Key *string `locationName:"key" type:"string" required:"true" enum:"SessionFilterKey"`
 52092  
 52093  	// The filter value. Valid values for each filter key are as follows:
 52094  	//
 52095  	//    * InvokedAfter: Specify a timestamp to limit your results. For example,
 52096  	//    specify 2018-08-29T00:00:00Z to see sessions that started August 29, 2018,
 52097  	//    and later.
 52098  	//
 52099  	//    * InvokedBefore: Specify a timestamp to limit your results. For example,
 52100  	//    specify 2018-08-29T00:00:00Z to see sessions that started before August
 52101  	//    29, 2018.
 52102  	//
 52103  	//    * Target: Specify an instance to which session connections have been made.
 52104  	//
 52105  	//    * Owner: Specify an Amazon Web Services user account to see a list of
 52106  	//    sessions started by that user.
 52107  	//
 52108  	//    * Status: Specify a valid session status to see a list of all sessions
 52109  	//    with that status. Status values you can specify include: Connected Connecting
 52110  	//    Disconnected Terminated Terminating Failed
 52111  	//
 52112  	//    * SessionId: Specify a session ID to return details about the session.
 52113  	//
 52114  	// Value is a required field
 52115  	Value *string `locationName:"value" min:"1" type:"string" required:"true"`
 52116  }
 52117  
 52118  // String returns the string representation.
 52119  //
 52120  // API parameter values that are decorated as "sensitive" in the API will not
 52121  // be included in the string output. The member name will be present, but the
 52122  // value will be replaced with "sensitive".
 52123  func (s SessionFilter) String() string {
 52124  	return awsutil.Prettify(s)
 52125  }
 52126  
 52127  // GoString returns the string representation.
 52128  //
 52129  // API parameter values that are decorated as "sensitive" in the API will not
 52130  // be included in the string output. The member name will be present, but the
 52131  // value will be replaced with "sensitive".
 52132  func (s SessionFilter) GoString() string {
 52133  	return s.String()
 52134  }
 52135  
 52136  // Validate inspects the fields of the type to determine if they are valid.
 52137  func (s *SessionFilter) Validate() error {
 52138  	invalidParams := request.ErrInvalidParams{Context: "SessionFilter"}
 52139  	if s.Key == nil {
 52140  		invalidParams.Add(request.NewErrParamRequired("Key"))
 52141  	}
 52142  	if s.Value == nil {
 52143  		invalidParams.Add(request.NewErrParamRequired("Value"))
 52144  	}
 52145  	if s.Value != nil && len(*s.Value) < 1 {
 52146  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 52147  	}
 52148  
 52149  	if invalidParams.Len() > 0 {
 52150  		return invalidParams
 52151  	}
 52152  	return nil
 52153  }
 52154  
 52155  // SetKey sets the Key field's value.
 52156  func (s *SessionFilter) SetKey(v string) *SessionFilter {
 52157  	s.Key = &v
 52158  	return s
 52159  }
 52160  
 52161  // SetValue sets the Value field's value.
 52162  func (s *SessionFilter) SetValue(v string) *SessionFilter {
 52163  	s.Value = &v
 52164  	return s
 52165  }
 52166  
 52167  // Reserved for future use.
 52168  type SessionManagerOutputUrl struct {
 52169  	_ struct{} `type:"structure"`
 52170  
 52171  	// Reserved for future use.
 52172  	CloudWatchOutputUrl *string `min:"1" type:"string"`
 52173  
 52174  	// Reserved for future use.
 52175  	S3OutputUrl *string `min:"1" type:"string"`
 52176  }
 52177  
 52178  // String returns the string representation.
 52179  //
 52180  // API parameter values that are decorated as "sensitive" in the API will not
 52181  // be included in the string output. The member name will be present, but the
 52182  // value will be replaced with "sensitive".
 52183  func (s SessionManagerOutputUrl) String() string {
 52184  	return awsutil.Prettify(s)
 52185  }
 52186  
 52187  // GoString returns the string representation.
 52188  //
 52189  // API parameter values that are decorated as "sensitive" in the API will not
 52190  // be included in the string output. The member name will be present, but the
 52191  // value will be replaced with "sensitive".
 52192  func (s SessionManagerOutputUrl) GoString() string {
 52193  	return s.String()
 52194  }
 52195  
 52196  // SetCloudWatchOutputUrl sets the CloudWatchOutputUrl field's value.
 52197  func (s *SessionManagerOutputUrl) SetCloudWatchOutputUrl(v string) *SessionManagerOutputUrl {
 52198  	s.CloudWatchOutputUrl = &v
 52199  	return s
 52200  }
 52201  
 52202  // SetS3OutputUrl sets the S3OutputUrl field's value.
 52203  func (s *SessionManagerOutputUrl) SetS3OutputUrl(v string) *SessionManagerOutputUrl {
 52204  	s.S3OutputUrl = &v
 52205  	return s
 52206  }
 52207  
 52208  // The number of managed instances found for each patch severity level defined
 52209  // in the request filter.
 52210  type SeveritySummary struct {
 52211  	_ struct{} `type:"structure"`
 52212  
 52213  	// The total number of resources or compliance items that have a severity level
 52214  	// of critical. Critical severity is determined by the organization that published
 52215  	// the compliance items.
 52216  	CriticalCount *int64 `type:"integer"`
 52217  
 52218  	// The total number of resources or compliance items that have a severity level
 52219  	// of high. High severity is determined by the organization that published the
 52220  	// compliance items.
 52221  	HighCount *int64 `type:"integer"`
 52222  
 52223  	// The total number of resources or compliance items that have a severity level
 52224  	// of informational. Informational severity is determined by the organization
 52225  	// that published the compliance items.
 52226  	InformationalCount *int64 `type:"integer"`
 52227  
 52228  	// The total number of resources or compliance items that have a severity level
 52229  	// of low. Low severity is determined by the organization that published the
 52230  	// compliance items.
 52231  	LowCount *int64 `type:"integer"`
 52232  
 52233  	// The total number of resources or compliance items that have a severity level
 52234  	// of medium. Medium severity is determined by the organization that published
 52235  	// the compliance items.
 52236  	MediumCount *int64 `type:"integer"`
 52237  
 52238  	// The total number of resources or compliance items that have a severity level
 52239  	// of unspecified. Unspecified severity is determined by the organization that
 52240  	// published the compliance items.
 52241  	UnspecifiedCount *int64 `type:"integer"`
 52242  }
 52243  
 52244  // String returns the string representation.
 52245  //
 52246  // API parameter values that are decorated as "sensitive" in the API will not
 52247  // be included in the string output. The member name will be present, but the
 52248  // value will be replaced with "sensitive".
 52249  func (s SeveritySummary) String() string {
 52250  	return awsutil.Prettify(s)
 52251  }
 52252  
 52253  // GoString returns the string representation.
 52254  //
 52255  // API parameter values that are decorated as "sensitive" in the API will not
 52256  // be included in the string output. The member name will be present, but the
 52257  // value will be replaced with "sensitive".
 52258  func (s SeveritySummary) GoString() string {
 52259  	return s.String()
 52260  }
 52261  
 52262  // SetCriticalCount sets the CriticalCount field's value.
 52263  func (s *SeveritySummary) SetCriticalCount(v int64) *SeveritySummary {
 52264  	s.CriticalCount = &v
 52265  	return s
 52266  }
 52267  
 52268  // SetHighCount sets the HighCount field's value.
 52269  func (s *SeveritySummary) SetHighCount(v int64) *SeveritySummary {
 52270  	s.HighCount = &v
 52271  	return s
 52272  }
 52273  
 52274  // SetInformationalCount sets the InformationalCount field's value.
 52275  func (s *SeveritySummary) SetInformationalCount(v int64) *SeveritySummary {
 52276  	s.InformationalCount = &v
 52277  	return s
 52278  }
 52279  
 52280  // SetLowCount sets the LowCount field's value.
 52281  func (s *SeveritySummary) SetLowCount(v int64) *SeveritySummary {
 52282  	s.LowCount = &v
 52283  	return s
 52284  }
 52285  
 52286  // SetMediumCount sets the MediumCount field's value.
 52287  func (s *SeveritySummary) SetMediumCount(v int64) *SeveritySummary {
 52288  	s.MediumCount = &v
 52289  	return s
 52290  }
 52291  
 52292  // SetUnspecifiedCount sets the UnspecifiedCount field's value.
 52293  func (s *SeveritySummary) SetUnspecifiedCount(v int64) *SeveritySummary {
 52294  	s.UnspecifiedCount = &v
 52295  	return s
 52296  }
 52297  
 52298  type StartAssociationsOnceInput struct {
 52299  	_ struct{} `type:"structure"`
 52300  
 52301  	// The association IDs that you want to run immediately and only one time.
 52302  	//
 52303  	// AssociationIds is a required field
 52304  	AssociationIds []*string `min:"1" type:"list" required:"true"`
 52305  }
 52306  
 52307  // String returns the string representation.
 52308  //
 52309  // API parameter values that are decorated as "sensitive" in the API will not
 52310  // be included in the string output. The member name will be present, but the
 52311  // value will be replaced with "sensitive".
 52312  func (s StartAssociationsOnceInput) String() string {
 52313  	return awsutil.Prettify(s)
 52314  }
 52315  
 52316  // GoString returns the string representation.
 52317  //
 52318  // API parameter values that are decorated as "sensitive" in the API will not
 52319  // be included in the string output. The member name will be present, but the
 52320  // value will be replaced with "sensitive".
 52321  func (s StartAssociationsOnceInput) GoString() string {
 52322  	return s.String()
 52323  }
 52324  
 52325  // Validate inspects the fields of the type to determine if they are valid.
 52326  func (s *StartAssociationsOnceInput) Validate() error {
 52327  	invalidParams := request.ErrInvalidParams{Context: "StartAssociationsOnceInput"}
 52328  	if s.AssociationIds == nil {
 52329  		invalidParams.Add(request.NewErrParamRequired("AssociationIds"))
 52330  	}
 52331  	if s.AssociationIds != nil && len(s.AssociationIds) < 1 {
 52332  		invalidParams.Add(request.NewErrParamMinLen("AssociationIds", 1))
 52333  	}
 52334  
 52335  	if invalidParams.Len() > 0 {
 52336  		return invalidParams
 52337  	}
 52338  	return nil
 52339  }
 52340  
 52341  // SetAssociationIds sets the AssociationIds field's value.
 52342  func (s *StartAssociationsOnceInput) SetAssociationIds(v []*string) *StartAssociationsOnceInput {
 52343  	s.AssociationIds = v
 52344  	return s
 52345  }
 52346  
 52347  type StartAssociationsOnceOutput struct {
 52348  	_ struct{} `type:"structure"`
 52349  }
 52350  
 52351  // String returns the string representation.
 52352  //
 52353  // API parameter values that are decorated as "sensitive" in the API will not
 52354  // be included in the string output. The member name will be present, but the
 52355  // value will be replaced with "sensitive".
 52356  func (s StartAssociationsOnceOutput) String() string {
 52357  	return awsutil.Prettify(s)
 52358  }
 52359  
 52360  // GoString returns the string representation.
 52361  //
 52362  // API parameter values that are decorated as "sensitive" in the API will not
 52363  // be included in the string output. The member name will be present, but the
 52364  // value will be replaced with "sensitive".
 52365  func (s StartAssociationsOnceOutput) GoString() string {
 52366  	return s.String()
 52367  }
 52368  
 52369  type StartAutomationExecutionInput struct {
 52370  	_ struct{} `type:"structure"`
 52371  
 52372  	// User-provided idempotency token. The token must be unique, is case insensitive,
 52373  	// enforces the UUID format, and can't be reused.
 52374  	ClientToken *string `min:"36" type:"string"`
 52375  
 52376  	// The name of the SSM document to run. This can be a public document or a custom
 52377  	// document. To run a shared document belonging to another account, specify
 52378  	// the document ARN. For more information about how to use shared documents,
 52379  	// see Using shared SSM documents (https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-using-shared.html)
 52380  	// in the Amazon Web Services Systems Manager User Guide.
 52381  	//
 52382  	// DocumentName is a required field
 52383  	DocumentName *string `type:"string" required:"true"`
 52384  
 52385  	// The version of the Automation runbook to use for this execution.
 52386  	DocumentVersion *string `type:"string"`
 52387  
 52388  	// The maximum number of targets allowed to run this task in parallel. You can
 52389  	// specify a number, such as 10, or a percentage, such as 10%. The default value
 52390  	// is 10.
 52391  	MaxConcurrency *string `min:"1" type:"string"`
 52392  
 52393  	// The number of errors that are allowed before the system stops running the
 52394  	// automation on additional targets. You can specify either an absolute number
 52395  	// of errors, for example 10, or a percentage of the target set, for example
 52396  	// 10%. If you specify 3, for example, the system stops running the automation
 52397  	// when the fourth error is received. If you specify 0, then the system stops
 52398  	// running the automation on additional targets after the first error result
 52399  	// is returned. If you run an automation on 50 resources and set max-errors
 52400  	// to 10%, then the system stops running the automation on additional targets
 52401  	// when the sixth error is received.
 52402  	//
 52403  	// Executions that are already running an automation when max-errors is reached
 52404  	// are allowed to complete, but some of these executions may fail as well. If
 52405  	// you need to ensure that there won't be more than max-errors failed executions,
 52406  	// set max-concurrency to 1 so the executions proceed one at a time.
 52407  	MaxErrors *string `min:"1" type:"string"`
 52408  
 52409  	// The execution mode of the automation. Valid modes include the following:
 52410  	// Auto and Interactive. The default mode is Auto.
 52411  	Mode *string `type:"string" enum:"ExecutionMode"`
 52412  
 52413  	// A key-value map of execution parameters, which match the declared parameters
 52414  	// in the Automation runbook.
 52415  	Parameters map[string][]*string `min:"1" type:"map"`
 52416  
 52417  	// Optional metadata that you assign to a resource. You can specify a maximum
 52418  	// of five tags for an automation. Tags enable you to categorize a resource
 52419  	// in different ways, such as by purpose, owner, or environment. For example,
 52420  	// you might want to tag an automation to identify an environment or operating
 52421  	// system. In this case, you could specify the following key-value pairs:
 52422  	//
 52423  	//    * Key=environment,Value=test
 52424  	//
 52425  	//    * Key=OS,Value=Windows
 52426  	//
 52427  	// To add tags to an existing patch baseline, use the AddTagsToResource operation.
 52428  	Tags []*Tag `type:"list"`
 52429  
 52430  	// A location is a combination of Amazon Web Services Regions and/or Amazon
 52431  	// Web Services accounts where you want to run the automation. Use this operation
 52432  	// to start an automation in multiple Amazon Web Services Regions and multiple
 52433  	// Amazon Web Services accounts. For more information, see Running Automation
 52434  	// workflows in multiple Amazon Web Services Regions and Amazon Web Services
 52435  	// accounts (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation-multiple-accounts-and-regions.html)
 52436  	// in the Amazon Web Services Systems Manager User Guide.
 52437  	TargetLocations []*TargetLocation `min:"1" type:"list"`
 52438  
 52439  	// A key-value mapping of document parameters to target resources. Both Targets
 52440  	// and TargetMaps can't be specified together.
 52441  	TargetMaps []map[string][]*string `type:"list"`
 52442  
 52443  	// The name of the parameter used as the target resource for the rate-controlled
 52444  	// execution. Required if you specify targets.
 52445  	TargetParameterName *string `min:"1" type:"string"`
 52446  
 52447  	// A key-value mapping to target resources. Required if you specify TargetParameterName.
 52448  	Targets []*Target `type:"list"`
 52449  }
 52450  
 52451  // String returns the string representation.
 52452  //
 52453  // API parameter values that are decorated as "sensitive" in the API will not
 52454  // be included in the string output. The member name will be present, but the
 52455  // value will be replaced with "sensitive".
 52456  func (s StartAutomationExecutionInput) String() string {
 52457  	return awsutil.Prettify(s)
 52458  }
 52459  
 52460  // GoString returns the string representation.
 52461  //
 52462  // API parameter values that are decorated as "sensitive" in the API will not
 52463  // be included in the string output. The member name will be present, but the
 52464  // value will be replaced with "sensitive".
 52465  func (s StartAutomationExecutionInput) GoString() string {
 52466  	return s.String()
 52467  }
 52468  
 52469  // Validate inspects the fields of the type to determine if they are valid.
 52470  func (s *StartAutomationExecutionInput) Validate() error {
 52471  	invalidParams := request.ErrInvalidParams{Context: "StartAutomationExecutionInput"}
 52472  	if s.ClientToken != nil && len(*s.ClientToken) < 36 {
 52473  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36))
 52474  	}
 52475  	if s.DocumentName == nil {
 52476  		invalidParams.Add(request.NewErrParamRequired("DocumentName"))
 52477  	}
 52478  	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
 52479  		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
 52480  	}
 52481  	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
 52482  		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
 52483  	}
 52484  	if s.Parameters != nil && len(s.Parameters) < 1 {
 52485  		invalidParams.Add(request.NewErrParamMinLen("Parameters", 1))
 52486  	}
 52487  	if s.TargetLocations != nil && len(s.TargetLocations) < 1 {
 52488  		invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1))
 52489  	}
 52490  	if s.TargetParameterName != nil && len(*s.TargetParameterName) < 1 {
 52491  		invalidParams.Add(request.NewErrParamMinLen("TargetParameterName", 1))
 52492  	}
 52493  	if s.Tags != nil {
 52494  		for i, v := range s.Tags {
 52495  			if v == nil {
 52496  				continue
 52497  			}
 52498  			if err := v.Validate(); err != nil {
 52499  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 52500  			}
 52501  		}
 52502  	}
 52503  	if s.TargetLocations != nil {
 52504  		for i, v := range s.TargetLocations {
 52505  			if v == nil {
 52506  				continue
 52507  			}
 52508  			if err := v.Validate(); err != nil {
 52509  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetLocations", i), err.(request.ErrInvalidParams))
 52510  			}
 52511  		}
 52512  	}
 52513  	if s.Targets != nil {
 52514  		for i, v := range s.Targets {
 52515  			if v == nil {
 52516  				continue
 52517  			}
 52518  			if err := v.Validate(); err != nil {
 52519  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 52520  			}
 52521  		}
 52522  	}
 52523  
 52524  	if invalidParams.Len() > 0 {
 52525  		return invalidParams
 52526  	}
 52527  	return nil
 52528  }
 52529  
 52530  // SetClientToken sets the ClientToken field's value.
 52531  func (s *StartAutomationExecutionInput) SetClientToken(v string) *StartAutomationExecutionInput {
 52532  	s.ClientToken = &v
 52533  	return s
 52534  }
 52535  
 52536  // SetDocumentName sets the DocumentName field's value.
 52537  func (s *StartAutomationExecutionInput) SetDocumentName(v string) *StartAutomationExecutionInput {
 52538  	s.DocumentName = &v
 52539  	return s
 52540  }
 52541  
 52542  // SetDocumentVersion sets the DocumentVersion field's value.
 52543  func (s *StartAutomationExecutionInput) SetDocumentVersion(v string) *StartAutomationExecutionInput {
 52544  	s.DocumentVersion = &v
 52545  	return s
 52546  }
 52547  
 52548  // SetMaxConcurrency sets the MaxConcurrency field's value.
 52549  func (s *StartAutomationExecutionInput) SetMaxConcurrency(v string) *StartAutomationExecutionInput {
 52550  	s.MaxConcurrency = &v
 52551  	return s
 52552  }
 52553  
 52554  // SetMaxErrors sets the MaxErrors field's value.
 52555  func (s *StartAutomationExecutionInput) SetMaxErrors(v string) *StartAutomationExecutionInput {
 52556  	s.MaxErrors = &v
 52557  	return s
 52558  }
 52559  
 52560  // SetMode sets the Mode field's value.
 52561  func (s *StartAutomationExecutionInput) SetMode(v string) *StartAutomationExecutionInput {
 52562  	s.Mode = &v
 52563  	return s
 52564  }
 52565  
 52566  // SetParameters sets the Parameters field's value.
 52567  func (s *StartAutomationExecutionInput) SetParameters(v map[string][]*string) *StartAutomationExecutionInput {
 52568  	s.Parameters = v
 52569  	return s
 52570  }
 52571  
 52572  // SetTags sets the Tags field's value.
 52573  func (s *StartAutomationExecutionInput) SetTags(v []*Tag) *StartAutomationExecutionInput {
 52574  	s.Tags = v
 52575  	return s
 52576  }
 52577  
 52578  // SetTargetLocations sets the TargetLocations field's value.
 52579  func (s *StartAutomationExecutionInput) SetTargetLocations(v []*TargetLocation) *StartAutomationExecutionInput {
 52580  	s.TargetLocations = v
 52581  	return s
 52582  }
 52583  
 52584  // SetTargetMaps sets the TargetMaps field's value.
 52585  func (s *StartAutomationExecutionInput) SetTargetMaps(v []map[string][]*string) *StartAutomationExecutionInput {
 52586  	s.TargetMaps = v
 52587  	return s
 52588  }
 52589  
 52590  // SetTargetParameterName sets the TargetParameterName field's value.
 52591  func (s *StartAutomationExecutionInput) SetTargetParameterName(v string) *StartAutomationExecutionInput {
 52592  	s.TargetParameterName = &v
 52593  	return s
 52594  }
 52595  
 52596  // SetTargets sets the Targets field's value.
 52597  func (s *StartAutomationExecutionInput) SetTargets(v []*Target) *StartAutomationExecutionInput {
 52598  	s.Targets = v
 52599  	return s
 52600  }
 52601  
 52602  type StartAutomationExecutionOutput struct {
 52603  	_ struct{} `type:"structure"`
 52604  
 52605  	// The unique ID of a newly scheduled automation execution.
 52606  	AutomationExecutionId *string `min:"36" type:"string"`
 52607  }
 52608  
 52609  // String returns the string representation.
 52610  //
 52611  // API parameter values that are decorated as "sensitive" in the API will not
 52612  // be included in the string output. The member name will be present, but the
 52613  // value will be replaced with "sensitive".
 52614  func (s StartAutomationExecutionOutput) String() string {
 52615  	return awsutil.Prettify(s)
 52616  }
 52617  
 52618  // GoString returns the string representation.
 52619  //
 52620  // API parameter values that are decorated as "sensitive" in the API will not
 52621  // be included in the string output. The member name will be present, but the
 52622  // value will be replaced with "sensitive".
 52623  func (s StartAutomationExecutionOutput) GoString() string {
 52624  	return s.String()
 52625  }
 52626  
 52627  // SetAutomationExecutionId sets the AutomationExecutionId field's value.
 52628  func (s *StartAutomationExecutionOutput) SetAutomationExecutionId(v string) *StartAutomationExecutionOutput {
 52629  	s.AutomationExecutionId = &v
 52630  	return s
 52631  }
 52632  
 52633  type StartChangeRequestExecutionInput struct {
 52634  	_ struct{} `type:"structure"`
 52635  
 52636  	// Indicates whether the change request can be approved automatically without
 52637  	// the need for manual approvals.
 52638  	//
 52639  	// If AutoApprovable is enabled in a change template, then setting AutoApprove
 52640  	// to true in StartChangeRequestExecution creates a change request that bypasses
 52641  	// approver review.
 52642  	//
 52643  	// Change Calendar restrictions are not bypassed in this scenario. If the state
 52644  	// of an associated calendar is CLOSED, change freeze approvers must still grant
 52645  	// permission for this change request to run. If they don't, the change won't
 52646  	// be processed until the calendar state is again OPEN.
 52647  	AutoApprove *bool `type:"boolean"`
 52648  
 52649  	// User-provided details about the change. If no details are provided, content
 52650  	// specified in the Template information section of the associated change template
 52651  	// is added.
 52652  	ChangeDetails *string `min:"1" type:"string"`
 52653  
 52654  	// The name of the change request associated with the runbook workflow to be
 52655  	// run.
 52656  	ChangeRequestName *string `min:"1" type:"string"`
 52657  
 52658  	// The user-provided idempotency token. The token must be unique, is case insensitive,
 52659  	// enforces the UUID format, and can't be reused.
 52660  	ClientToken *string `min:"36" type:"string"`
 52661  
 52662  	// The name of the change template document to run during the runbook workflow.
 52663  	//
 52664  	// DocumentName is a required field
 52665  	DocumentName *string `type:"string" required:"true"`
 52666  
 52667  	// The version of the change template document to run during the runbook workflow.
 52668  	DocumentVersion *string `type:"string"`
 52669  
 52670  	// A key-value map of parameters that match the declared parameters in the change
 52671  	// template document.
 52672  	Parameters map[string][]*string `min:"1" type:"map"`
 52673  
 52674  	// Information about the Automation runbooks that are run during the runbook
 52675  	// workflow.
 52676  	//
 52677  	// The Automation runbooks specified for the runbook workflow can't run until
 52678  	// all required approvals for the change request have been received.
 52679  	//
 52680  	// Runbooks is a required field
 52681  	Runbooks []*Runbook `min:"1" type:"list" required:"true"`
 52682  
 52683  	// The time that the requester expects the runbook workflow related to the change
 52684  	// request to complete. The time is an estimate only that the requester provides
 52685  	// for reviewers.
 52686  	ScheduledEndTime *time.Time `type:"timestamp"`
 52687  
 52688  	// The date and time specified in the change request to run the Automation runbooks.
 52689  	//
 52690  	// The Automation runbooks specified for the runbook workflow can't run until
 52691  	// all required approvals for the change request have been received.
 52692  	ScheduledTime *time.Time `type:"timestamp"`
 52693  
 52694  	// Optional metadata that you assign to a resource. You can specify a maximum
 52695  	// of five tags for a change request. Tags enable you to categorize a resource
 52696  	// in different ways, such as by purpose, owner, or environment. For example,
 52697  	// you might want to tag a change request to identify an environment or target
 52698  	// Amazon Web Services Region. In this case, you could specify the following
 52699  	// key-value pairs:
 52700  	//
 52701  	//    * Key=Environment,Value=Production
 52702  	//
 52703  	//    * Key=Region,Value=us-east-2
 52704  	Tags []*Tag `type:"list"`
 52705  }
 52706  
 52707  // String returns the string representation.
 52708  //
 52709  // API parameter values that are decorated as "sensitive" in the API will not
 52710  // be included in the string output. The member name will be present, but the
 52711  // value will be replaced with "sensitive".
 52712  func (s StartChangeRequestExecutionInput) String() string {
 52713  	return awsutil.Prettify(s)
 52714  }
 52715  
 52716  // GoString returns the string representation.
 52717  //
 52718  // API parameter values that are decorated as "sensitive" in the API will not
 52719  // be included in the string output. The member name will be present, but the
 52720  // value will be replaced with "sensitive".
 52721  func (s StartChangeRequestExecutionInput) GoString() string {
 52722  	return s.String()
 52723  }
 52724  
 52725  // Validate inspects the fields of the type to determine if they are valid.
 52726  func (s *StartChangeRequestExecutionInput) Validate() error {
 52727  	invalidParams := request.ErrInvalidParams{Context: "StartChangeRequestExecutionInput"}
 52728  	if s.ChangeDetails != nil && len(*s.ChangeDetails) < 1 {
 52729  		invalidParams.Add(request.NewErrParamMinLen("ChangeDetails", 1))
 52730  	}
 52731  	if s.ChangeRequestName != nil && len(*s.ChangeRequestName) < 1 {
 52732  		invalidParams.Add(request.NewErrParamMinLen("ChangeRequestName", 1))
 52733  	}
 52734  	if s.ClientToken != nil && len(*s.ClientToken) < 36 {
 52735  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36))
 52736  	}
 52737  	if s.DocumentName == nil {
 52738  		invalidParams.Add(request.NewErrParamRequired("DocumentName"))
 52739  	}
 52740  	if s.Parameters != nil && len(s.Parameters) < 1 {
 52741  		invalidParams.Add(request.NewErrParamMinLen("Parameters", 1))
 52742  	}
 52743  	if s.Runbooks == nil {
 52744  		invalidParams.Add(request.NewErrParamRequired("Runbooks"))
 52745  	}
 52746  	if s.Runbooks != nil && len(s.Runbooks) < 1 {
 52747  		invalidParams.Add(request.NewErrParamMinLen("Runbooks", 1))
 52748  	}
 52749  	if s.Runbooks != nil {
 52750  		for i, v := range s.Runbooks {
 52751  			if v == nil {
 52752  				continue
 52753  			}
 52754  			if err := v.Validate(); err != nil {
 52755  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Runbooks", i), err.(request.ErrInvalidParams))
 52756  			}
 52757  		}
 52758  	}
 52759  	if s.Tags != nil {
 52760  		for i, v := range s.Tags {
 52761  			if v == nil {
 52762  				continue
 52763  			}
 52764  			if err := v.Validate(); err != nil {
 52765  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 52766  			}
 52767  		}
 52768  	}
 52769  
 52770  	if invalidParams.Len() > 0 {
 52771  		return invalidParams
 52772  	}
 52773  	return nil
 52774  }
 52775  
 52776  // SetAutoApprove sets the AutoApprove field's value.
 52777  func (s *StartChangeRequestExecutionInput) SetAutoApprove(v bool) *StartChangeRequestExecutionInput {
 52778  	s.AutoApprove = &v
 52779  	return s
 52780  }
 52781  
 52782  // SetChangeDetails sets the ChangeDetails field's value.
 52783  func (s *StartChangeRequestExecutionInput) SetChangeDetails(v string) *StartChangeRequestExecutionInput {
 52784  	s.ChangeDetails = &v
 52785  	return s
 52786  }
 52787  
 52788  // SetChangeRequestName sets the ChangeRequestName field's value.
 52789  func (s *StartChangeRequestExecutionInput) SetChangeRequestName(v string) *StartChangeRequestExecutionInput {
 52790  	s.ChangeRequestName = &v
 52791  	return s
 52792  }
 52793  
 52794  // SetClientToken sets the ClientToken field's value.
 52795  func (s *StartChangeRequestExecutionInput) SetClientToken(v string) *StartChangeRequestExecutionInput {
 52796  	s.ClientToken = &v
 52797  	return s
 52798  }
 52799  
 52800  // SetDocumentName sets the DocumentName field's value.
 52801  func (s *StartChangeRequestExecutionInput) SetDocumentName(v string) *StartChangeRequestExecutionInput {
 52802  	s.DocumentName = &v
 52803  	return s
 52804  }
 52805  
 52806  // SetDocumentVersion sets the DocumentVersion field's value.
 52807  func (s *StartChangeRequestExecutionInput) SetDocumentVersion(v string) *StartChangeRequestExecutionInput {
 52808  	s.DocumentVersion = &v
 52809  	return s
 52810  }
 52811  
 52812  // SetParameters sets the Parameters field's value.
 52813  func (s *StartChangeRequestExecutionInput) SetParameters(v map[string][]*string) *StartChangeRequestExecutionInput {
 52814  	s.Parameters = v
 52815  	return s
 52816  }
 52817  
 52818  // SetRunbooks sets the Runbooks field's value.
 52819  func (s *StartChangeRequestExecutionInput) SetRunbooks(v []*Runbook) *StartChangeRequestExecutionInput {
 52820  	s.Runbooks = v
 52821  	return s
 52822  }
 52823  
 52824  // SetScheduledEndTime sets the ScheduledEndTime field's value.
 52825  func (s *StartChangeRequestExecutionInput) SetScheduledEndTime(v time.Time) *StartChangeRequestExecutionInput {
 52826  	s.ScheduledEndTime = &v
 52827  	return s
 52828  }
 52829  
 52830  // SetScheduledTime sets the ScheduledTime field's value.
 52831  func (s *StartChangeRequestExecutionInput) SetScheduledTime(v time.Time) *StartChangeRequestExecutionInput {
 52832  	s.ScheduledTime = &v
 52833  	return s
 52834  }
 52835  
 52836  // SetTags sets the Tags field's value.
 52837  func (s *StartChangeRequestExecutionInput) SetTags(v []*Tag) *StartChangeRequestExecutionInput {
 52838  	s.Tags = v
 52839  	return s
 52840  }
 52841  
 52842  type StartChangeRequestExecutionOutput struct {
 52843  	_ struct{} `type:"structure"`
 52844  
 52845  	// The unique ID of a runbook workflow operation. (A runbook workflow is a type
 52846  	// of Automation operation.)
 52847  	AutomationExecutionId *string `min:"36" type:"string"`
 52848  }
 52849  
 52850  // String returns the string representation.
 52851  //
 52852  // API parameter values that are decorated as "sensitive" in the API will not
 52853  // be included in the string output. The member name will be present, but the
 52854  // value will be replaced with "sensitive".
 52855  func (s StartChangeRequestExecutionOutput) String() string {
 52856  	return awsutil.Prettify(s)
 52857  }
 52858  
 52859  // GoString returns the string representation.
 52860  //
 52861  // API parameter values that are decorated as "sensitive" in the API will not
 52862  // be included in the string output. The member name will be present, but the
 52863  // value will be replaced with "sensitive".
 52864  func (s StartChangeRequestExecutionOutput) GoString() string {
 52865  	return s.String()
 52866  }
 52867  
 52868  // SetAutomationExecutionId sets the AutomationExecutionId field's value.
 52869  func (s *StartChangeRequestExecutionOutput) SetAutomationExecutionId(v string) *StartChangeRequestExecutionOutput {
 52870  	s.AutomationExecutionId = &v
 52871  	return s
 52872  }
 52873  
 52874  type StartSessionInput struct {
 52875  	_ struct{} `type:"structure"`
 52876  
 52877  	// The name of the SSM document to define the parameters and plugin settings
 52878  	// for the session. For example, SSM-SessionManagerRunShell. You can call the
 52879  	// GetDocument API to verify the document exists before attempting to start
 52880  	// a session. If no document name is provided, a shell to the instance is launched
 52881  	// by default.
 52882  	DocumentName *string `type:"string"`
 52883  
 52884  	// Reserved for future use.
 52885  	Parameters map[string][]*string `type:"map"`
 52886  
 52887  	// The instance to connect to for the session.
 52888  	//
 52889  	// Target is a required field
 52890  	Target *string `min:"1" type:"string" required:"true"`
 52891  }
 52892  
 52893  // String returns the string representation.
 52894  //
 52895  // API parameter values that are decorated as "sensitive" in the API will not
 52896  // be included in the string output. The member name will be present, but the
 52897  // value will be replaced with "sensitive".
 52898  func (s StartSessionInput) String() string {
 52899  	return awsutil.Prettify(s)
 52900  }
 52901  
 52902  // GoString returns the string representation.
 52903  //
 52904  // API parameter values that are decorated as "sensitive" in the API will not
 52905  // be included in the string output. The member name will be present, but the
 52906  // value will be replaced with "sensitive".
 52907  func (s StartSessionInput) GoString() string {
 52908  	return s.String()
 52909  }
 52910  
 52911  // Validate inspects the fields of the type to determine if they are valid.
 52912  func (s *StartSessionInput) Validate() error {
 52913  	invalidParams := request.ErrInvalidParams{Context: "StartSessionInput"}
 52914  	if s.Target == nil {
 52915  		invalidParams.Add(request.NewErrParamRequired("Target"))
 52916  	}
 52917  	if s.Target != nil && len(*s.Target) < 1 {
 52918  		invalidParams.Add(request.NewErrParamMinLen("Target", 1))
 52919  	}
 52920  
 52921  	if invalidParams.Len() > 0 {
 52922  		return invalidParams
 52923  	}
 52924  	return nil
 52925  }
 52926  
 52927  // SetDocumentName sets the DocumentName field's value.
 52928  func (s *StartSessionInput) SetDocumentName(v string) *StartSessionInput {
 52929  	s.DocumentName = &v
 52930  	return s
 52931  }
 52932  
 52933  // SetParameters sets the Parameters field's value.
 52934  func (s *StartSessionInput) SetParameters(v map[string][]*string) *StartSessionInput {
 52935  	s.Parameters = v
 52936  	return s
 52937  }
 52938  
 52939  // SetTarget sets the Target field's value.
 52940  func (s *StartSessionInput) SetTarget(v string) *StartSessionInput {
 52941  	s.Target = &v
 52942  	return s
 52943  }
 52944  
 52945  type StartSessionOutput struct {
 52946  	_ struct{} `type:"structure"`
 52947  
 52948  	// The ID of the session.
 52949  	SessionId *string `min:"1" type:"string"`
 52950  
 52951  	// A URL back to SSM Agent on the instance that the Session Manager client uses
 52952  	// to send commands and receive output from the instance. Format: wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output)
 52953  	//
 52954  	// region represents the Region identifier for an Amazon Web Services Region
 52955  	// supported by Amazon Web Services Systems Manager, such as us-east-2 for the
 52956  	// US East (Ohio) Region. For a list of supported region values, see the Region
 52957  	// column in Systems Manager service endpoints (https://docs.aws.amazon.com/general/latest/gr/ssm.html#ssm_region)
 52958  	// in the Amazon Web Services General Reference.
 52959  	//
 52960  	// session-id represents the ID of a Session Manager session, such as 1a2b3c4dEXAMPLE.
 52961  	StreamUrl *string `type:"string"`
 52962  
 52963  	// An encrypted token value containing session and caller information. Used
 52964  	// to authenticate the connection to the instance.
 52965  	TokenValue *string `type:"string"`
 52966  }
 52967  
 52968  // String returns the string representation.
 52969  //
 52970  // API parameter values that are decorated as "sensitive" in the API will not
 52971  // be included in the string output. The member name will be present, but the
 52972  // value will be replaced with "sensitive".
 52973  func (s StartSessionOutput) String() string {
 52974  	return awsutil.Prettify(s)
 52975  }
 52976  
 52977  // GoString returns the string representation.
 52978  //
 52979  // API parameter values that are decorated as "sensitive" in the API will not
 52980  // be included in the string output. The member name will be present, but the
 52981  // value will be replaced with "sensitive".
 52982  func (s StartSessionOutput) GoString() string {
 52983  	return s.String()
 52984  }
 52985  
 52986  // SetSessionId sets the SessionId field's value.
 52987  func (s *StartSessionOutput) SetSessionId(v string) *StartSessionOutput {
 52988  	s.SessionId = &v
 52989  	return s
 52990  }
 52991  
 52992  // SetStreamUrl sets the StreamUrl field's value.
 52993  func (s *StartSessionOutput) SetStreamUrl(v string) *StartSessionOutput {
 52994  	s.StreamUrl = &v
 52995  	return s
 52996  }
 52997  
 52998  // SetTokenValue sets the TokenValue field's value.
 52999  func (s *StartSessionOutput) SetTokenValue(v string) *StartSessionOutput {
 53000  	s.TokenValue = &v
 53001  	return s
 53002  }
 53003  
 53004  // The updated status is the same as the current status.
 53005  type StatusUnchanged struct {
 53006  	_            struct{}                  `type:"structure"`
 53007  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 53008  
 53009  	Message_ *string `locationName:"message" type:"string"`
 53010  }
 53011  
 53012  // String returns the string representation.
 53013  //
 53014  // API parameter values that are decorated as "sensitive" in the API will not
 53015  // be included in the string output. The member name will be present, but the
 53016  // value will be replaced with "sensitive".
 53017  func (s StatusUnchanged) String() string {
 53018  	return awsutil.Prettify(s)
 53019  }
 53020  
 53021  // GoString returns the string representation.
 53022  //
 53023  // API parameter values that are decorated as "sensitive" in the API will not
 53024  // be included in the string output. The member name will be present, but the
 53025  // value will be replaced with "sensitive".
 53026  func (s StatusUnchanged) GoString() string {
 53027  	return s.String()
 53028  }
 53029  
 53030  func newErrorStatusUnchanged(v protocol.ResponseMetadata) error {
 53031  	return &StatusUnchanged{
 53032  		RespMetadata: v,
 53033  	}
 53034  }
 53035  
 53036  // Code returns the exception type name.
 53037  func (s *StatusUnchanged) Code() string {
 53038  	return "StatusUnchanged"
 53039  }
 53040  
 53041  // Message returns the exception's message.
 53042  func (s *StatusUnchanged) Message() string {
 53043  	if s.Message_ != nil {
 53044  		return *s.Message_
 53045  	}
 53046  	return ""
 53047  }
 53048  
 53049  // OrigErr always returns nil, satisfies awserr.Error interface.
 53050  func (s *StatusUnchanged) OrigErr() error {
 53051  	return nil
 53052  }
 53053  
 53054  func (s *StatusUnchanged) Error() string {
 53055  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 53056  }
 53057  
 53058  // Status code returns the HTTP status code for the request's response error.
 53059  func (s *StatusUnchanged) StatusCode() int {
 53060  	return s.RespMetadata.StatusCode
 53061  }
 53062  
 53063  // RequestID returns the service's response RequestID for request.
 53064  func (s *StatusUnchanged) RequestID() string {
 53065  	return s.RespMetadata.RequestID
 53066  }
 53067  
 53068  // Detailed information about an the execution state of an Automation step.
 53069  type StepExecution struct {
 53070  	_ struct{} `type:"structure"`
 53071  
 53072  	// The action this step performs. The action determines the behavior of the
 53073  	// step.
 53074  	Action *string `type:"string"`
 53075  
 53076  	// If a step has finished execution, this contains the time the execution ended.
 53077  	// If the step hasn't yet concluded, this field isn't populated.
 53078  	ExecutionEndTime *time.Time `type:"timestamp"`
 53079  
 53080  	// If a step has begun execution, this contains the time the step started. If
 53081  	// the step is in Pending status, this field isn't populated.
 53082  	ExecutionStartTime *time.Time `type:"timestamp"`
 53083  
 53084  	// Information about the Automation failure.
 53085  	FailureDetails *FailureDetails `type:"structure"`
 53086  
 53087  	// If a step failed, this message explains why the execution failed.
 53088  	FailureMessage *string `type:"string"`
 53089  
 53090  	// Fully-resolved values passed into the step before execution.
 53091  	Inputs map[string]*string `type:"map"`
 53092  
 53093  	// The flag which can be used to help decide whether the failure of current
 53094  	// step leads to the Automation failure.
 53095  	IsCritical *bool `type:"boolean"`
 53096  
 53097  	// The flag which can be used to end automation no matter whether the step succeeds
 53098  	// or fails.
 53099  	IsEnd *bool `type:"boolean"`
 53100  
 53101  	// The maximum number of tries to run the action of the step. The default value
 53102  	// is 1.
 53103  	MaxAttempts *int64 `type:"integer"`
 53104  
 53105  	// The next step after the step succeeds.
 53106  	NextStep *string `type:"string"`
 53107  
 53108  	// The action to take if the step fails. The default value is Abort.
 53109  	OnFailure *string `type:"string"`
 53110  
 53111  	// Returned values from the execution of the step.
 53112  	Outputs map[string][]*string `min:"1" type:"map"`
 53113  
 53114  	// A user-specified list of parameters to override when running a step.
 53115  	OverriddenParameters map[string][]*string `min:"1" type:"map"`
 53116  
 53117  	// A message associated with the response code for an execution.
 53118  	Response *string `type:"string"`
 53119  
 53120  	// The response code returned by the execution of the step.
 53121  	ResponseCode *string `type:"string"`
 53122  
 53123  	// The unique ID of a step execution.
 53124  	StepExecutionId *string `type:"string"`
 53125  
 53126  	// The name of this execution step.
 53127  	StepName *string `type:"string"`
 53128  
 53129  	// The execution status for this step.
 53130  	StepStatus *string `type:"string" enum:"AutomationExecutionStatus"`
 53131  
 53132  	// The combination of Amazon Web Services Regions and Amazon Web Services accounts
 53133  	// targeted by the current Automation execution.
 53134  	TargetLocation *TargetLocation `type:"structure"`
 53135  
 53136  	// The targets for the step execution.
 53137  	Targets []*Target `type:"list"`
 53138  
 53139  	// The timeout seconds of the step.
 53140  	TimeoutSeconds *int64 `type:"long"`
 53141  
 53142  	// Strategies used when step fails, we support Continue and Abort. Abort will
 53143  	// fail the automation when the step fails. Continue will ignore the failure
 53144  	// of current step and allow automation to run the next step. With conditional
 53145  	// branching, we add step:stepName to support the automation to go to another
 53146  	// specific step.
 53147  	ValidNextSteps []*string `type:"list"`
 53148  }
 53149  
 53150  // String returns the string representation.
 53151  //
 53152  // API parameter values that are decorated as "sensitive" in the API will not
 53153  // be included in the string output. The member name will be present, but the
 53154  // value will be replaced with "sensitive".
 53155  func (s StepExecution) String() string {
 53156  	return awsutil.Prettify(s)
 53157  }
 53158  
 53159  // GoString returns the string representation.
 53160  //
 53161  // API parameter values that are decorated as "sensitive" in the API will not
 53162  // be included in the string output. The member name will be present, but the
 53163  // value will be replaced with "sensitive".
 53164  func (s StepExecution) GoString() string {
 53165  	return s.String()
 53166  }
 53167  
 53168  // SetAction sets the Action field's value.
 53169  func (s *StepExecution) SetAction(v string) *StepExecution {
 53170  	s.Action = &v
 53171  	return s
 53172  }
 53173  
 53174  // SetExecutionEndTime sets the ExecutionEndTime field's value.
 53175  func (s *StepExecution) SetExecutionEndTime(v time.Time) *StepExecution {
 53176  	s.ExecutionEndTime = &v
 53177  	return s
 53178  }
 53179  
 53180  // SetExecutionStartTime sets the ExecutionStartTime field's value.
 53181  func (s *StepExecution) SetExecutionStartTime(v time.Time) *StepExecution {
 53182  	s.ExecutionStartTime = &v
 53183  	return s
 53184  }
 53185  
 53186  // SetFailureDetails sets the FailureDetails field's value.
 53187  func (s *StepExecution) SetFailureDetails(v *FailureDetails) *StepExecution {
 53188  	s.FailureDetails = v
 53189  	return s
 53190  }
 53191  
 53192  // SetFailureMessage sets the FailureMessage field's value.
 53193  func (s *StepExecution) SetFailureMessage(v string) *StepExecution {
 53194  	s.FailureMessage = &v
 53195  	return s
 53196  }
 53197  
 53198  // SetInputs sets the Inputs field's value.
 53199  func (s *StepExecution) SetInputs(v map[string]*string) *StepExecution {
 53200  	s.Inputs = v
 53201  	return s
 53202  }
 53203  
 53204  // SetIsCritical sets the IsCritical field's value.
 53205  func (s *StepExecution) SetIsCritical(v bool) *StepExecution {
 53206  	s.IsCritical = &v
 53207  	return s
 53208  }
 53209  
 53210  // SetIsEnd sets the IsEnd field's value.
 53211  func (s *StepExecution) SetIsEnd(v bool) *StepExecution {
 53212  	s.IsEnd = &v
 53213  	return s
 53214  }
 53215  
 53216  // SetMaxAttempts sets the MaxAttempts field's value.
 53217  func (s *StepExecution) SetMaxAttempts(v int64) *StepExecution {
 53218  	s.MaxAttempts = &v
 53219  	return s
 53220  }
 53221  
 53222  // SetNextStep sets the NextStep field's value.
 53223  func (s *StepExecution) SetNextStep(v string) *StepExecution {
 53224  	s.NextStep = &v
 53225  	return s
 53226  }
 53227  
 53228  // SetOnFailure sets the OnFailure field's value.
 53229  func (s *StepExecution) SetOnFailure(v string) *StepExecution {
 53230  	s.OnFailure = &v
 53231  	return s
 53232  }
 53233  
 53234  // SetOutputs sets the Outputs field's value.
 53235  func (s *StepExecution) SetOutputs(v map[string][]*string) *StepExecution {
 53236  	s.Outputs = v
 53237  	return s
 53238  }
 53239  
 53240  // SetOverriddenParameters sets the OverriddenParameters field's value.
 53241  func (s *StepExecution) SetOverriddenParameters(v map[string][]*string) *StepExecution {
 53242  	s.OverriddenParameters = v
 53243  	return s
 53244  }
 53245  
 53246  // SetResponse sets the Response field's value.
 53247  func (s *StepExecution) SetResponse(v string) *StepExecution {
 53248  	s.Response = &v
 53249  	return s
 53250  }
 53251  
 53252  // SetResponseCode sets the ResponseCode field's value.
 53253  func (s *StepExecution) SetResponseCode(v string) *StepExecution {
 53254  	s.ResponseCode = &v
 53255  	return s
 53256  }
 53257  
 53258  // SetStepExecutionId sets the StepExecutionId field's value.
 53259  func (s *StepExecution) SetStepExecutionId(v string) *StepExecution {
 53260  	s.StepExecutionId = &v
 53261  	return s
 53262  }
 53263  
 53264  // SetStepName sets the StepName field's value.
 53265  func (s *StepExecution) SetStepName(v string) *StepExecution {
 53266  	s.StepName = &v
 53267  	return s
 53268  }
 53269  
 53270  // SetStepStatus sets the StepStatus field's value.
 53271  func (s *StepExecution) SetStepStatus(v string) *StepExecution {
 53272  	s.StepStatus = &v
 53273  	return s
 53274  }
 53275  
 53276  // SetTargetLocation sets the TargetLocation field's value.
 53277  func (s *StepExecution) SetTargetLocation(v *TargetLocation) *StepExecution {
 53278  	s.TargetLocation = v
 53279  	return s
 53280  }
 53281  
 53282  // SetTargets sets the Targets field's value.
 53283  func (s *StepExecution) SetTargets(v []*Target) *StepExecution {
 53284  	s.Targets = v
 53285  	return s
 53286  }
 53287  
 53288  // SetTimeoutSeconds sets the TimeoutSeconds field's value.
 53289  func (s *StepExecution) SetTimeoutSeconds(v int64) *StepExecution {
 53290  	s.TimeoutSeconds = &v
 53291  	return s
 53292  }
 53293  
 53294  // SetValidNextSteps sets the ValidNextSteps field's value.
 53295  func (s *StepExecution) SetValidNextSteps(v []*string) *StepExecution {
 53296  	s.ValidNextSteps = v
 53297  	return s
 53298  }
 53299  
 53300  // A filter to limit the amount of step execution information returned by the
 53301  // call.
 53302  type StepExecutionFilter struct {
 53303  	_ struct{} `type:"structure"`
 53304  
 53305  	// One or more keys to limit the results. Valid filter keys include the following:
 53306  	// StepName, Action, StepExecutionId, StepExecutionStatus, StartTimeBefore,
 53307  	// StartTimeAfter.
 53308  	//
 53309  	// Key is a required field
 53310  	Key *string `type:"string" required:"true" enum:"StepExecutionFilterKey"`
 53311  
 53312  	// The values of the filter key.
 53313  	//
 53314  	// Values is a required field
 53315  	Values []*string `min:"1" type:"list" required:"true"`
 53316  }
 53317  
 53318  // String returns the string representation.
 53319  //
 53320  // API parameter values that are decorated as "sensitive" in the API will not
 53321  // be included in the string output. The member name will be present, but the
 53322  // value will be replaced with "sensitive".
 53323  func (s StepExecutionFilter) String() string {
 53324  	return awsutil.Prettify(s)
 53325  }
 53326  
 53327  // GoString returns the string representation.
 53328  //
 53329  // API parameter values that are decorated as "sensitive" in the API will not
 53330  // be included in the string output. The member name will be present, but the
 53331  // value will be replaced with "sensitive".
 53332  func (s StepExecutionFilter) GoString() string {
 53333  	return s.String()
 53334  }
 53335  
 53336  // Validate inspects the fields of the type to determine if they are valid.
 53337  func (s *StepExecutionFilter) Validate() error {
 53338  	invalidParams := request.ErrInvalidParams{Context: "StepExecutionFilter"}
 53339  	if s.Key == nil {
 53340  		invalidParams.Add(request.NewErrParamRequired("Key"))
 53341  	}
 53342  	if s.Values == nil {
 53343  		invalidParams.Add(request.NewErrParamRequired("Values"))
 53344  	}
 53345  	if s.Values != nil && len(s.Values) < 1 {
 53346  		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
 53347  	}
 53348  
 53349  	if invalidParams.Len() > 0 {
 53350  		return invalidParams
 53351  	}
 53352  	return nil
 53353  }
 53354  
 53355  // SetKey sets the Key field's value.
 53356  func (s *StepExecutionFilter) SetKey(v string) *StepExecutionFilter {
 53357  	s.Key = &v
 53358  	return s
 53359  }
 53360  
 53361  // SetValues sets the Values field's value.
 53362  func (s *StepExecutionFilter) SetValues(v []*string) *StepExecutionFilter {
 53363  	s.Values = v
 53364  	return s
 53365  }
 53366  
 53367  type StopAutomationExecutionInput struct {
 53368  	_ struct{} `type:"structure"`
 53369  
 53370  	// The execution ID of the Automation to stop.
 53371  	//
 53372  	// AutomationExecutionId is a required field
 53373  	AutomationExecutionId *string `min:"36" type:"string" required:"true"`
 53374  
 53375  	// The stop request type. Valid types include the following: Cancel and Complete.
 53376  	// The default type is Cancel.
 53377  	Type *string `type:"string" enum:"StopType"`
 53378  }
 53379  
 53380  // String returns the string representation.
 53381  //
 53382  // API parameter values that are decorated as "sensitive" in the API will not
 53383  // be included in the string output. The member name will be present, but the
 53384  // value will be replaced with "sensitive".
 53385  func (s StopAutomationExecutionInput) String() string {
 53386  	return awsutil.Prettify(s)
 53387  }
 53388  
 53389  // GoString returns the string representation.
 53390  //
 53391  // API parameter values that are decorated as "sensitive" in the API will not
 53392  // be included in the string output. The member name will be present, but the
 53393  // value will be replaced with "sensitive".
 53394  func (s StopAutomationExecutionInput) GoString() string {
 53395  	return s.String()
 53396  }
 53397  
 53398  // Validate inspects the fields of the type to determine if they are valid.
 53399  func (s *StopAutomationExecutionInput) Validate() error {
 53400  	invalidParams := request.ErrInvalidParams{Context: "StopAutomationExecutionInput"}
 53401  	if s.AutomationExecutionId == nil {
 53402  		invalidParams.Add(request.NewErrParamRequired("AutomationExecutionId"))
 53403  	}
 53404  	if s.AutomationExecutionId != nil && len(*s.AutomationExecutionId) < 36 {
 53405  		invalidParams.Add(request.NewErrParamMinLen("AutomationExecutionId", 36))
 53406  	}
 53407  
 53408  	if invalidParams.Len() > 0 {
 53409  		return invalidParams
 53410  	}
 53411  	return nil
 53412  }
 53413  
 53414  // SetAutomationExecutionId sets the AutomationExecutionId field's value.
 53415  func (s *StopAutomationExecutionInput) SetAutomationExecutionId(v string) *StopAutomationExecutionInput {
 53416  	s.AutomationExecutionId = &v
 53417  	return s
 53418  }
 53419  
 53420  // SetType sets the Type field's value.
 53421  func (s *StopAutomationExecutionInput) SetType(v string) *StopAutomationExecutionInput {
 53422  	s.Type = &v
 53423  	return s
 53424  }
 53425  
 53426  type StopAutomationExecutionOutput struct {
 53427  	_ struct{} `type:"structure"`
 53428  }
 53429  
 53430  // String returns the string representation.
 53431  //
 53432  // API parameter values that are decorated as "sensitive" in the API will not
 53433  // be included in the string output. The member name will be present, but the
 53434  // value will be replaced with "sensitive".
 53435  func (s StopAutomationExecutionOutput) String() string {
 53436  	return awsutil.Prettify(s)
 53437  }
 53438  
 53439  // GoString returns the string representation.
 53440  //
 53441  // API parameter values that are decorated as "sensitive" in the API will not
 53442  // be included in the string output. The member name will be present, but the
 53443  // value will be replaced with "sensitive".
 53444  func (s StopAutomationExecutionOutput) GoString() string {
 53445  	return s.String()
 53446  }
 53447  
 53448  // The sub-type count exceeded the limit for the inventory type.
 53449  type SubTypeCountLimitExceededException struct {
 53450  	_            struct{}                  `type:"structure"`
 53451  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 53452  
 53453  	Message_ *string `locationName:"Message" type:"string"`
 53454  }
 53455  
 53456  // String returns the string representation.
 53457  //
 53458  // API parameter values that are decorated as "sensitive" in the API will not
 53459  // be included in the string output. The member name will be present, but the
 53460  // value will be replaced with "sensitive".
 53461  func (s SubTypeCountLimitExceededException) String() string {
 53462  	return awsutil.Prettify(s)
 53463  }
 53464  
 53465  // GoString returns the string representation.
 53466  //
 53467  // API parameter values that are decorated as "sensitive" in the API will not
 53468  // be included in the string output. The member name will be present, but the
 53469  // value will be replaced with "sensitive".
 53470  func (s SubTypeCountLimitExceededException) GoString() string {
 53471  	return s.String()
 53472  }
 53473  
 53474  func newErrorSubTypeCountLimitExceededException(v protocol.ResponseMetadata) error {
 53475  	return &SubTypeCountLimitExceededException{
 53476  		RespMetadata: v,
 53477  	}
 53478  }
 53479  
 53480  // Code returns the exception type name.
 53481  func (s *SubTypeCountLimitExceededException) Code() string {
 53482  	return "SubTypeCountLimitExceededException"
 53483  }
 53484  
 53485  // Message returns the exception's message.
 53486  func (s *SubTypeCountLimitExceededException) Message() string {
 53487  	if s.Message_ != nil {
 53488  		return *s.Message_
 53489  	}
 53490  	return ""
 53491  }
 53492  
 53493  // OrigErr always returns nil, satisfies awserr.Error interface.
 53494  func (s *SubTypeCountLimitExceededException) OrigErr() error {
 53495  	return nil
 53496  }
 53497  
 53498  func (s *SubTypeCountLimitExceededException) Error() string {
 53499  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 53500  }
 53501  
 53502  // Status code returns the HTTP status code for the request's response error.
 53503  func (s *SubTypeCountLimitExceededException) StatusCode() int {
 53504  	return s.RespMetadata.StatusCode
 53505  }
 53506  
 53507  // RequestID returns the service's response RequestID for request.
 53508  func (s *SubTypeCountLimitExceededException) RequestID() string {
 53509  	return s.RespMetadata.RequestID
 53510  }
 53511  
 53512  // Metadata that you assign to your Amazon Web Services resources. Tags enable
 53513  // you to categorize your resources in different ways, for example, by purpose,
 53514  // owner, or environment. In Amazon Web Services Systems Manager, you can apply
 53515  // tags to Systems Manager documents (SSM documents), managed instances, maintenance
 53516  // windows, parameters, patch baselines, OpsItems, and OpsMetadata.
 53517  type Tag struct {
 53518  	_ struct{} `type:"structure"`
 53519  
 53520  	// The name of the tag.
 53521  	//
 53522  	// Key is a required field
 53523  	Key *string `min:"1" type:"string" required:"true"`
 53524  
 53525  	// The value of the tag.
 53526  	//
 53527  	// Value is a required field
 53528  	Value *string `min:"1" type:"string" required:"true"`
 53529  }
 53530  
 53531  // String returns the string representation.
 53532  //
 53533  // API parameter values that are decorated as "sensitive" in the API will not
 53534  // be included in the string output. The member name will be present, but the
 53535  // value will be replaced with "sensitive".
 53536  func (s Tag) String() string {
 53537  	return awsutil.Prettify(s)
 53538  }
 53539  
 53540  // GoString returns the string representation.
 53541  //
 53542  // API parameter values that are decorated as "sensitive" in the API will not
 53543  // be included in the string output. The member name will be present, but the
 53544  // value will be replaced with "sensitive".
 53545  func (s Tag) GoString() string {
 53546  	return s.String()
 53547  }
 53548  
 53549  // Validate inspects the fields of the type to determine if they are valid.
 53550  func (s *Tag) Validate() error {
 53551  	invalidParams := request.ErrInvalidParams{Context: "Tag"}
 53552  	if s.Key == nil {
 53553  		invalidParams.Add(request.NewErrParamRequired("Key"))
 53554  	}
 53555  	if s.Key != nil && len(*s.Key) < 1 {
 53556  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 53557  	}
 53558  	if s.Value == nil {
 53559  		invalidParams.Add(request.NewErrParamRequired("Value"))
 53560  	}
 53561  	if s.Value != nil && len(*s.Value) < 1 {
 53562  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 53563  	}
 53564  
 53565  	if invalidParams.Len() > 0 {
 53566  		return invalidParams
 53567  	}
 53568  	return nil
 53569  }
 53570  
 53571  // SetKey sets the Key field's value.
 53572  func (s *Tag) SetKey(v string) *Tag {
 53573  	s.Key = &v
 53574  	return s
 53575  }
 53576  
 53577  // SetValue sets the Value field's value.
 53578  func (s *Tag) SetValue(v string) *Tag {
 53579  	s.Value = &v
 53580  	return s
 53581  }
 53582  
 53583  // An array of search criteria that targets instances using a key-value pair
 53584  // that you specify.
 53585  //
 53586  // One or more targets must be specified for maintenance window Run Command-type
 53587  // tasks. Depending on the task, targets are optional for other maintenance
 53588  // window task types (Automation, Lambda, and Step Functions). For more information
 53589  // about running tasks that don't specify targets, see Registering maintenance
 53590  // window tasks without targets (https://docs.aws.amazon.com/systems-manager/latest/userguide/maintenance-windows-targetless-tasks.html)
 53591  // in the Amazon Web Services Systems Manager User Guide.
 53592  //
 53593  // Supported formats include the following.
 53594  //
 53595  //    * Key=InstanceIds,Values=instance-id-1,instance-id-2,instance-id-3
 53596  //
 53597  //    * Key=tag:my-tag-key,Values=my-tag-value-1,my-tag-value-2
 53598  //
 53599  //    * Key=tag-key,Values=my-tag-key-1,my-tag-key-2
 53600  //
 53601  //    * Run Command and Maintenance window targets only: Key=resource-groups:Name,Values=resource-group-name
 53602  //
 53603  //    * Maintenance window targets only: Key=resource-groups:ResourceTypeFilters,Values=resource-type-1,resource-type-2
 53604  //
 53605  //    * Automation targets only: Key=ResourceGroup;Values=resource-group-name
 53606  //
 53607  // For example:
 53608  //
 53609  //    * Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE,i-07782c72faEXAMPLE
 53610  //
 53611  //    * Key=tag:CostCenter,Values=CostCenter1,CostCenter2,CostCenter3
 53612  //
 53613  //    * Key=tag-key,Values=Name,Instance-Type,CostCenter
 53614  //
 53615  //    * Run Command and Maintenance window targets only: Key=resource-groups:Name,Values=ProductionResourceGroup
 53616  //    This example demonstrates how to target all resources in the resource
 53617  //    group ProductionResourceGroup in your maintenance window.
 53618  //
 53619  //    * Maintenance window targets only: Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::INSTANCE,AWS::EC2::VPC
 53620  //    This example demonstrates how to target only Amazon Elastic Compute Cloud
 53621  //    (Amazon EC2) instances and VPCs in your maintenance window.
 53622  //
 53623  //    * Automation targets only: Key=ResourceGroup,Values=MyResourceGroup
 53624  //
 53625  //    * State Manager association targets only: Key=InstanceIds,Values=* This
 53626  //    example demonstrates how to target all managed instances in the Amazon
 53627  //    Web Services Region where the association was created.
 53628  //
 53629  // For more information about how to send commands that target instances using
 53630  // Key,Value parameters, see Targeting multiple instances (https://docs.aws.amazon.com/systems-manager/latest/userguide/send-commands-multiple.html#send-commands-targeting)
 53631  // in the Amazon Web Services Systems Manager User Guide.
 53632  type Target struct {
 53633  	_ struct{} `type:"structure"`
 53634  
 53635  	// User-defined criteria for sending commands that target instances that meet
 53636  	// the criteria.
 53637  	Key *string `min:"1" type:"string"`
 53638  
 53639  	// User-defined criteria that maps to Key. For example, if you specified tag:ServerRole,
 53640  	// you could specify value:WebServer to run a command on instances that include
 53641  	// EC2 tags of ServerRole,WebServer.
 53642  	//
 53643  	// Depending on the type of target, the maximum number of values for a key might
 53644  	// be lower than the global maximum of 50.
 53645  	Values []*string `type:"list"`
 53646  }
 53647  
 53648  // String returns the string representation.
 53649  //
 53650  // API parameter values that are decorated as "sensitive" in the API will not
 53651  // be included in the string output. The member name will be present, but the
 53652  // value will be replaced with "sensitive".
 53653  func (s Target) String() string {
 53654  	return awsutil.Prettify(s)
 53655  }
 53656  
 53657  // GoString returns the string representation.
 53658  //
 53659  // API parameter values that are decorated as "sensitive" in the API will not
 53660  // be included in the string output. The member name will be present, but the
 53661  // value will be replaced with "sensitive".
 53662  func (s Target) GoString() string {
 53663  	return s.String()
 53664  }
 53665  
 53666  // Validate inspects the fields of the type to determine if they are valid.
 53667  func (s *Target) Validate() error {
 53668  	invalidParams := request.ErrInvalidParams{Context: "Target"}
 53669  	if s.Key != nil && len(*s.Key) < 1 {
 53670  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 53671  	}
 53672  
 53673  	if invalidParams.Len() > 0 {
 53674  		return invalidParams
 53675  	}
 53676  	return nil
 53677  }
 53678  
 53679  // SetKey sets the Key field's value.
 53680  func (s *Target) SetKey(v string) *Target {
 53681  	s.Key = &v
 53682  	return s
 53683  }
 53684  
 53685  // SetValues sets the Values field's value.
 53686  func (s *Target) SetValues(v []*string) *Target {
 53687  	s.Values = v
 53688  	return s
 53689  }
 53690  
 53691  // You specified the Safe option for the DeregisterTargetFromMaintenanceWindow
 53692  // operation, but the target is still referenced in a task.
 53693  type TargetInUseException struct {
 53694  	_            struct{}                  `type:"structure"`
 53695  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 53696  
 53697  	Message_ *string `locationName:"Message" type:"string"`
 53698  }
 53699  
 53700  // String returns the string representation.
 53701  //
 53702  // API parameter values that are decorated as "sensitive" in the API will not
 53703  // be included in the string output. The member name will be present, but the
 53704  // value will be replaced with "sensitive".
 53705  func (s TargetInUseException) String() string {
 53706  	return awsutil.Prettify(s)
 53707  }
 53708  
 53709  // GoString returns the string representation.
 53710  //
 53711  // API parameter values that are decorated as "sensitive" in the API will not
 53712  // be included in the string output. The member name will be present, but the
 53713  // value will be replaced with "sensitive".
 53714  func (s TargetInUseException) GoString() string {
 53715  	return s.String()
 53716  }
 53717  
 53718  func newErrorTargetInUseException(v protocol.ResponseMetadata) error {
 53719  	return &TargetInUseException{
 53720  		RespMetadata: v,
 53721  	}
 53722  }
 53723  
 53724  // Code returns the exception type name.
 53725  func (s *TargetInUseException) Code() string {
 53726  	return "TargetInUseException"
 53727  }
 53728  
 53729  // Message returns the exception's message.
 53730  func (s *TargetInUseException) Message() string {
 53731  	if s.Message_ != nil {
 53732  		return *s.Message_
 53733  	}
 53734  	return ""
 53735  }
 53736  
 53737  // OrigErr always returns nil, satisfies awserr.Error interface.
 53738  func (s *TargetInUseException) OrigErr() error {
 53739  	return nil
 53740  }
 53741  
 53742  func (s *TargetInUseException) Error() string {
 53743  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 53744  }
 53745  
 53746  // Status code returns the HTTP status code for the request's response error.
 53747  func (s *TargetInUseException) StatusCode() int {
 53748  	return s.RespMetadata.StatusCode
 53749  }
 53750  
 53751  // RequestID returns the service's response RequestID for request.
 53752  func (s *TargetInUseException) RequestID() string {
 53753  	return s.RespMetadata.RequestID
 53754  }
 53755  
 53756  // The combination of Amazon Web Services Regions and Amazon Web Services accounts
 53757  // targeted by the current Automation execution.
 53758  type TargetLocation struct {
 53759  	_ struct{} `type:"structure"`
 53760  
 53761  	// The Amazon Web Services accounts targeted by the current Automation execution.
 53762  	Accounts []*string `min:"1" type:"list"`
 53763  
 53764  	// The Automation execution role used by the currently running Automation. If
 53765  	// not specified, the default value is AWS-SystemsManager-AutomationExecutionRole.
 53766  	ExecutionRoleName *string `min:"1" type:"string"`
 53767  
 53768  	// The Amazon Web Services Regions targeted by the current Automation execution.
 53769  	Regions []*string `min:"1" type:"list"`
 53770  
 53771  	// The maximum number of Amazon Web Services Regions and Amazon Web Services
 53772  	// accounts allowed to run the Automation concurrently.
 53773  	TargetLocationMaxConcurrency *string `min:"1" type:"string"`
 53774  
 53775  	// The maximum number of errors allowed before the system stops queueing additional
 53776  	// Automation executions for the currently running Automation.
 53777  	TargetLocationMaxErrors *string `min:"1" type:"string"`
 53778  }
 53779  
 53780  // String returns the string representation.
 53781  //
 53782  // API parameter values that are decorated as "sensitive" in the API will not
 53783  // be included in the string output. The member name will be present, but the
 53784  // value will be replaced with "sensitive".
 53785  func (s TargetLocation) String() string {
 53786  	return awsutil.Prettify(s)
 53787  }
 53788  
 53789  // GoString returns the string representation.
 53790  //
 53791  // API parameter values that are decorated as "sensitive" in the API will not
 53792  // be included in the string output. The member name will be present, but the
 53793  // value will be replaced with "sensitive".
 53794  func (s TargetLocation) GoString() string {
 53795  	return s.String()
 53796  }
 53797  
 53798  // Validate inspects the fields of the type to determine if they are valid.
 53799  func (s *TargetLocation) Validate() error {
 53800  	invalidParams := request.ErrInvalidParams{Context: "TargetLocation"}
 53801  	if s.Accounts != nil && len(s.Accounts) < 1 {
 53802  		invalidParams.Add(request.NewErrParamMinLen("Accounts", 1))
 53803  	}
 53804  	if s.ExecutionRoleName != nil && len(*s.ExecutionRoleName) < 1 {
 53805  		invalidParams.Add(request.NewErrParamMinLen("ExecutionRoleName", 1))
 53806  	}
 53807  	if s.Regions != nil && len(s.Regions) < 1 {
 53808  		invalidParams.Add(request.NewErrParamMinLen("Regions", 1))
 53809  	}
 53810  	if s.TargetLocationMaxConcurrency != nil && len(*s.TargetLocationMaxConcurrency) < 1 {
 53811  		invalidParams.Add(request.NewErrParamMinLen("TargetLocationMaxConcurrency", 1))
 53812  	}
 53813  	if s.TargetLocationMaxErrors != nil && len(*s.TargetLocationMaxErrors) < 1 {
 53814  		invalidParams.Add(request.NewErrParamMinLen("TargetLocationMaxErrors", 1))
 53815  	}
 53816  
 53817  	if invalidParams.Len() > 0 {
 53818  		return invalidParams
 53819  	}
 53820  	return nil
 53821  }
 53822  
 53823  // SetAccounts sets the Accounts field's value.
 53824  func (s *TargetLocation) SetAccounts(v []*string) *TargetLocation {
 53825  	s.Accounts = v
 53826  	return s
 53827  }
 53828  
 53829  // SetExecutionRoleName sets the ExecutionRoleName field's value.
 53830  func (s *TargetLocation) SetExecutionRoleName(v string) *TargetLocation {
 53831  	s.ExecutionRoleName = &v
 53832  	return s
 53833  }
 53834  
 53835  // SetRegions sets the Regions field's value.
 53836  func (s *TargetLocation) SetRegions(v []*string) *TargetLocation {
 53837  	s.Regions = v
 53838  	return s
 53839  }
 53840  
 53841  // SetTargetLocationMaxConcurrency sets the TargetLocationMaxConcurrency field's value.
 53842  func (s *TargetLocation) SetTargetLocationMaxConcurrency(v string) *TargetLocation {
 53843  	s.TargetLocationMaxConcurrency = &v
 53844  	return s
 53845  }
 53846  
 53847  // SetTargetLocationMaxErrors sets the TargetLocationMaxErrors field's value.
 53848  func (s *TargetLocation) SetTargetLocationMaxErrors(v string) *TargetLocation {
 53849  	s.TargetLocationMaxErrors = &v
 53850  	return s
 53851  }
 53852  
 53853  // The specified target instance for the session isn't fully configured for
 53854  // use with Session Manager. For more information, see Getting started with
 53855  // Session Manager (https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started.html)
 53856  // in the Amazon Web Services Systems Manager User Guide. This error is also
 53857  // returned if you attempt to start a session on an instance that is located
 53858  // in a different account or Region
 53859  type TargetNotConnected struct {
 53860  	_            struct{}                  `type:"structure"`
 53861  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 53862  
 53863  	Message_ *string `locationName:"Message" type:"string"`
 53864  }
 53865  
 53866  // String returns the string representation.
 53867  //
 53868  // API parameter values that are decorated as "sensitive" in the API will not
 53869  // be included in the string output. The member name will be present, but the
 53870  // value will be replaced with "sensitive".
 53871  func (s TargetNotConnected) String() string {
 53872  	return awsutil.Prettify(s)
 53873  }
 53874  
 53875  // GoString returns the string representation.
 53876  //
 53877  // API parameter values that are decorated as "sensitive" in the API will not
 53878  // be included in the string output. The member name will be present, but the
 53879  // value will be replaced with "sensitive".
 53880  func (s TargetNotConnected) GoString() string {
 53881  	return s.String()
 53882  }
 53883  
 53884  func newErrorTargetNotConnected(v protocol.ResponseMetadata) error {
 53885  	return &TargetNotConnected{
 53886  		RespMetadata: v,
 53887  	}
 53888  }
 53889  
 53890  // Code returns the exception type name.
 53891  func (s *TargetNotConnected) Code() string {
 53892  	return "TargetNotConnected"
 53893  }
 53894  
 53895  // Message returns the exception's message.
 53896  func (s *TargetNotConnected) Message() string {
 53897  	if s.Message_ != nil {
 53898  		return *s.Message_
 53899  	}
 53900  	return ""
 53901  }
 53902  
 53903  // OrigErr always returns nil, satisfies awserr.Error interface.
 53904  func (s *TargetNotConnected) OrigErr() error {
 53905  	return nil
 53906  }
 53907  
 53908  func (s *TargetNotConnected) Error() string {
 53909  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 53910  }
 53911  
 53912  // Status code returns the HTTP status code for the request's response error.
 53913  func (s *TargetNotConnected) StatusCode() int {
 53914  	return s.RespMetadata.StatusCode
 53915  }
 53916  
 53917  // RequestID returns the service's response RequestID for request.
 53918  func (s *TargetNotConnected) RequestID() string {
 53919  	return s.RespMetadata.RequestID
 53920  }
 53921  
 53922  type TerminateSessionInput struct {
 53923  	_ struct{} `type:"structure"`
 53924  
 53925  	// The ID of the session to terminate.
 53926  	//
 53927  	// SessionId is a required field
 53928  	SessionId *string `min:"1" type:"string" required:"true"`
 53929  }
 53930  
 53931  // String returns the string representation.
 53932  //
 53933  // API parameter values that are decorated as "sensitive" in the API will not
 53934  // be included in the string output. The member name will be present, but the
 53935  // value will be replaced with "sensitive".
 53936  func (s TerminateSessionInput) String() string {
 53937  	return awsutil.Prettify(s)
 53938  }
 53939  
 53940  // GoString returns the string representation.
 53941  //
 53942  // API parameter values that are decorated as "sensitive" in the API will not
 53943  // be included in the string output. The member name will be present, but the
 53944  // value will be replaced with "sensitive".
 53945  func (s TerminateSessionInput) GoString() string {
 53946  	return s.String()
 53947  }
 53948  
 53949  // Validate inspects the fields of the type to determine if they are valid.
 53950  func (s *TerminateSessionInput) Validate() error {
 53951  	invalidParams := request.ErrInvalidParams{Context: "TerminateSessionInput"}
 53952  	if s.SessionId == nil {
 53953  		invalidParams.Add(request.NewErrParamRequired("SessionId"))
 53954  	}
 53955  	if s.SessionId != nil && len(*s.SessionId) < 1 {
 53956  		invalidParams.Add(request.NewErrParamMinLen("SessionId", 1))
 53957  	}
 53958  
 53959  	if invalidParams.Len() > 0 {
 53960  		return invalidParams
 53961  	}
 53962  	return nil
 53963  }
 53964  
 53965  // SetSessionId sets the SessionId field's value.
 53966  func (s *TerminateSessionInput) SetSessionId(v string) *TerminateSessionInput {
 53967  	s.SessionId = &v
 53968  	return s
 53969  }
 53970  
 53971  type TerminateSessionOutput struct {
 53972  	_ struct{} `type:"structure"`
 53973  
 53974  	// The ID of the session that has been terminated.
 53975  	SessionId *string `min:"1" type:"string"`
 53976  }
 53977  
 53978  // String returns the string representation.
 53979  //
 53980  // API parameter values that are decorated as "sensitive" in the API will not
 53981  // be included in the string output. The member name will be present, but the
 53982  // value will be replaced with "sensitive".
 53983  func (s TerminateSessionOutput) String() string {
 53984  	return awsutil.Prettify(s)
 53985  }
 53986  
 53987  // GoString returns the string representation.
 53988  //
 53989  // API parameter values that are decorated as "sensitive" in the API will not
 53990  // be included in the string output. The member name will be present, but the
 53991  // value will be replaced with "sensitive".
 53992  func (s TerminateSessionOutput) GoString() string {
 53993  	return s.String()
 53994  }
 53995  
 53996  // SetSessionId sets the SessionId field's value.
 53997  func (s *TerminateSessionOutput) SetSessionId(v string) *TerminateSessionOutput {
 53998  	s.SessionId = &v
 53999  	return s
 54000  }
 54001  
 54002  // The Targets parameter includes too many tags. Remove one or more tags and
 54003  // try the command again.
 54004  type TooManyTagsError struct {
 54005  	_            struct{}                  `type:"structure"`
 54006  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 54007  
 54008  	Message_ *string `locationName:"message" type:"string"`
 54009  }
 54010  
 54011  // String returns the string representation.
 54012  //
 54013  // API parameter values that are decorated as "sensitive" in the API will not
 54014  // be included in the string output. The member name will be present, but the
 54015  // value will be replaced with "sensitive".
 54016  func (s TooManyTagsError) String() string {
 54017  	return awsutil.Prettify(s)
 54018  }
 54019  
 54020  // GoString returns the string representation.
 54021  //
 54022  // API parameter values that are decorated as "sensitive" in the API will not
 54023  // be included in the string output. The member name will be present, but the
 54024  // value will be replaced with "sensitive".
 54025  func (s TooManyTagsError) GoString() string {
 54026  	return s.String()
 54027  }
 54028  
 54029  func newErrorTooManyTagsError(v protocol.ResponseMetadata) error {
 54030  	return &TooManyTagsError{
 54031  		RespMetadata: v,
 54032  	}
 54033  }
 54034  
 54035  // Code returns the exception type name.
 54036  func (s *TooManyTagsError) Code() string {
 54037  	return "TooManyTagsError"
 54038  }
 54039  
 54040  // Message returns the exception's message.
 54041  func (s *TooManyTagsError) Message() string {
 54042  	if s.Message_ != nil {
 54043  		return *s.Message_
 54044  	}
 54045  	return ""
 54046  }
 54047  
 54048  // OrigErr always returns nil, satisfies awserr.Error interface.
 54049  func (s *TooManyTagsError) OrigErr() error {
 54050  	return nil
 54051  }
 54052  
 54053  func (s *TooManyTagsError) Error() string {
 54054  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 54055  }
 54056  
 54057  // Status code returns the HTTP status code for the request's response error.
 54058  func (s *TooManyTagsError) StatusCode() int {
 54059  	return s.RespMetadata.StatusCode
 54060  }
 54061  
 54062  // RequestID returns the service's response RequestID for request.
 54063  func (s *TooManyTagsError) RequestID() string {
 54064  	return s.RespMetadata.RequestID
 54065  }
 54066  
 54067  // There are concurrent updates for a resource that supports one update at a
 54068  // time.
 54069  type TooManyUpdates struct {
 54070  	_            struct{}                  `type:"structure"`
 54071  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 54072  
 54073  	Message_ *string `locationName:"Message" type:"string"`
 54074  }
 54075  
 54076  // String returns the string representation.
 54077  //
 54078  // API parameter values that are decorated as "sensitive" in the API will not
 54079  // be included in the string output. The member name will be present, but the
 54080  // value will be replaced with "sensitive".
 54081  func (s TooManyUpdates) String() string {
 54082  	return awsutil.Prettify(s)
 54083  }
 54084  
 54085  // GoString returns the string representation.
 54086  //
 54087  // API parameter values that are decorated as "sensitive" in the API will not
 54088  // be included in the string output. The member name will be present, but the
 54089  // value will be replaced with "sensitive".
 54090  func (s TooManyUpdates) GoString() string {
 54091  	return s.String()
 54092  }
 54093  
 54094  func newErrorTooManyUpdates(v protocol.ResponseMetadata) error {
 54095  	return &TooManyUpdates{
 54096  		RespMetadata: v,
 54097  	}
 54098  }
 54099  
 54100  // Code returns the exception type name.
 54101  func (s *TooManyUpdates) Code() string {
 54102  	return "TooManyUpdates"
 54103  }
 54104  
 54105  // Message returns the exception's message.
 54106  func (s *TooManyUpdates) Message() string {
 54107  	if s.Message_ != nil {
 54108  		return *s.Message_
 54109  	}
 54110  	return ""
 54111  }
 54112  
 54113  // OrigErr always returns nil, satisfies awserr.Error interface.
 54114  func (s *TooManyUpdates) OrigErr() error {
 54115  	return nil
 54116  }
 54117  
 54118  func (s *TooManyUpdates) Error() string {
 54119  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 54120  }
 54121  
 54122  // Status code returns the HTTP status code for the request's response error.
 54123  func (s *TooManyUpdates) StatusCode() int {
 54124  	return s.RespMetadata.StatusCode
 54125  }
 54126  
 54127  // RequestID returns the service's response RequestID for request.
 54128  func (s *TooManyUpdates) RequestID() string {
 54129  	return s.RespMetadata.RequestID
 54130  }
 54131  
 54132  // The size of inventory data has exceeded the total size limit for the resource.
 54133  type TotalSizeLimitExceededException struct {
 54134  	_            struct{}                  `type:"structure"`
 54135  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 54136  
 54137  	Message_ *string `locationName:"Message" type:"string"`
 54138  }
 54139  
 54140  // String returns the string representation.
 54141  //
 54142  // API parameter values that are decorated as "sensitive" in the API will not
 54143  // be included in the string output. The member name will be present, but the
 54144  // value will be replaced with "sensitive".
 54145  func (s TotalSizeLimitExceededException) String() string {
 54146  	return awsutil.Prettify(s)
 54147  }
 54148  
 54149  // GoString returns the string representation.
 54150  //
 54151  // API parameter values that are decorated as "sensitive" in the API will not
 54152  // be included in the string output. The member name will be present, but the
 54153  // value will be replaced with "sensitive".
 54154  func (s TotalSizeLimitExceededException) GoString() string {
 54155  	return s.String()
 54156  }
 54157  
 54158  func newErrorTotalSizeLimitExceededException(v protocol.ResponseMetadata) error {
 54159  	return &TotalSizeLimitExceededException{
 54160  		RespMetadata: v,
 54161  	}
 54162  }
 54163  
 54164  // Code returns the exception type name.
 54165  func (s *TotalSizeLimitExceededException) Code() string {
 54166  	return "TotalSizeLimitExceededException"
 54167  }
 54168  
 54169  // Message returns the exception's message.
 54170  func (s *TotalSizeLimitExceededException) Message() string {
 54171  	if s.Message_ != nil {
 54172  		return *s.Message_
 54173  	}
 54174  	return ""
 54175  }
 54176  
 54177  // OrigErr always returns nil, satisfies awserr.Error interface.
 54178  func (s *TotalSizeLimitExceededException) OrigErr() error {
 54179  	return nil
 54180  }
 54181  
 54182  func (s *TotalSizeLimitExceededException) Error() string {
 54183  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 54184  }
 54185  
 54186  // Status code returns the HTTP status code for the request's response error.
 54187  func (s *TotalSizeLimitExceededException) StatusCode() int {
 54188  	return s.RespMetadata.StatusCode
 54189  }
 54190  
 54191  // RequestID returns the service's response RequestID for request.
 54192  func (s *TotalSizeLimitExceededException) RequestID() string {
 54193  	return s.RespMetadata.RequestID
 54194  }
 54195  
 54196  type UnlabelParameterVersionInput struct {
 54197  	_ struct{} `type:"structure"`
 54198  
 54199  	// One or more labels to delete from the specified parameter version.
 54200  	//
 54201  	// Labels is a required field
 54202  	Labels []*string `min:"1" type:"list" required:"true"`
 54203  
 54204  	// The name of the parameter from which you want to delete one or more labels.
 54205  	//
 54206  	// Name is a required field
 54207  	Name *string `min:"1" type:"string" required:"true"`
 54208  
 54209  	// The specific version of the parameter which you want to delete one or more
 54210  	// labels from. If it isn't present, the call will fail.
 54211  	//
 54212  	// ParameterVersion is a required field
 54213  	ParameterVersion *int64 `type:"long" required:"true"`
 54214  }
 54215  
 54216  // String returns the string representation.
 54217  //
 54218  // API parameter values that are decorated as "sensitive" in the API will not
 54219  // be included in the string output. The member name will be present, but the
 54220  // value will be replaced with "sensitive".
 54221  func (s UnlabelParameterVersionInput) String() string {
 54222  	return awsutil.Prettify(s)
 54223  }
 54224  
 54225  // GoString returns the string representation.
 54226  //
 54227  // API parameter values that are decorated as "sensitive" in the API will not
 54228  // be included in the string output. The member name will be present, but the
 54229  // value will be replaced with "sensitive".
 54230  func (s UnlabelParameterVersionInput) GoString() string {
 54231  	return s.String()
 54232  }
 54233  
 54234  // Validate inspects the fields of the type to determine if they are valid.
 54235  func (s *UnlabelParameterVersionInput) Validate() error {
 54236  	invalidParams := request.ErrInvalidParams{Context: "UnlabelParameterVersionInput"}
 54237  	if s.Labels == nil {
 54238  		invalidParams.Add(request.NewErrParamRequired("Labels"))
 54239  	}
 54240  	if s.Labels != nil && len(s.Labels) < 1 {
 54241  		invalidParams.Add(request.NewErrParamMinLen("Labels", 1))
 54242  	}
 54243  	if s.Name == nil {
 54244  		invalidParams.Add(request.NewErrParamRequired("Name"))
 54245  	}
 54246  	if s.Name != nil && len(*s.Name) < 1 {
 54247  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 54248  	}
 54249  	if s.ParameterVersion == nil {
 54250  		invalidParams.Add(request.NewErrParamRequired("ParameterVersion"))
 54251  	}
 54252  
 54253  	if invalidParams.Len() > 0 {
 54254  		return invalidParams
 54255  	}
 54256  	return nil
 54257  }
 54258  
 54259  // SetLabels sets the Labels field's value.
 54260  func (s *UnlabelParameterVersionInput) SetLabels(v []*string) *UnlabelParameterVersionInput {
 54261  	s.Labels = v
 54262  	return s
 54263  }
 54264  
 54265  // SetName sets the Name field's value.
 54266  func (s *UnlabelParameterVersionInput) SetName(v string) *UnlabelParameterVersionInput {
 54267  	s.Name = &v
 54268  	return s
 54269  }
 54270  
 54271  // SetParameterVersion sets the ParameterVersion field's value.
 54272  func (s *UnlabelParameterVersionInput) SetParameterVersion(v int64) *UnlabelParameterVersionInput {
 54273  	s.ParameterVersion = &v
 54274  	return s
 54275  }
 54276  
 54277  type UnlabelParameterVersionOutput struct {
 54278  	_ struct{} `type:"structure"`
 54279  
 54280  	// The labels that aren't attached to the given parameter version.
 54281  	InvalidLabels []*string `min:"1" type:"list"`
 54282  
 54283  	// A list of all labels deleted from the parameter.
 54284  	RemovedLabels []*string `min:"1" type:"list"`
 54285  }
 54286  
 54287  // String returns the string representation.
 54288  //
 54289  // API parameter values that are decorated as "sensitive" in the API will not
 54290  // be included in the string output. The member name will be present, but the
 54291  // value will be replaced with "sensitive".
 54292  func (s UnlabelParameterVersionOutput) String() string {
 54293  	return awsutil.Prettify(s)
 54294  }
 54295  
 54296  // GoString returns the string representation.
 54297  //
 54298  // API parameter values that are decorated as "sensitive" in the API will not
 54299  // be included in the string output. The member name will be present, but the
 54300  // value will be replaced with "sensitive".
 54301  func (s UnlabelParameterVersionOutput) GoString() string {
 54302  	return s.String()
 54303  }
 54304  
 54305  // SetInvalidLabels sets the InvalidLabels field's value.
 54306  func (s *UnlabelParameterVersionOutput) SetInvalidLabels(v []*string) *UnlabelParameterVersionOutput {
 54307  	s.InvalidLabels = v
 54308  	return s
 54309  }
 54310  
 54311  // SetRemovedLabels sets the RemovedLabels field's value.
 54312  func (s *UnlabelParameterVersionOutput) SetRemovedLabels(v []*string) *UnlabelParameterVersionOutput {
 54313  	s.RemovedLabels = v
 54314  	return s
 54315  }
 54316  
 54317  // The calendar entry contained in the specified SSM document isn't supported.
 54318  type UnsupportedCalendarException struct {
 54319  	_            struct{}                  `type:"structure"`
 54320  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 54321  
 54322  	Message_ *string `locationName:"Message" type:"string"`
 54323  }
 54324  
 54325  // String returns the string representation.
 54326  //
 54327  // API parameter values that are decorated as "sensitive" in the API will not
 54328  // be included in the string output. The member name will be present, but the
 54329  // value will be replaced with "sensitive".
 54330  func (s UnsupportedCalendarException) String() string {
 54331  	return awsutil.Prettify(s)
 54332  }
 54333  
 54334  // GoString returns the string representation.
 54335  //
 54336  // API parameter values that are decorated as "sensitive" in the API will not
 54337  // be included in the string output. The member name will be present, but the
 54338  // value will be replaced with "sensitive".
 54339  func (s UnsupportedCalendarException) GoString() string {
 54340  	return s.String()
 54341  }
 54342  
 54343  func newErrorUnsupportedCalendarException(v protocol.ResponseMetadata) error {
 54344  	return &UnsupportedCalendarException{
 54345  		RespMetadata: v,
 54346  	}
 54347  }
 54348  
 54349  // Code returns the exception type name.
 54350  func (s *UnsupportedCalendarException) Code() string {
 54351  	return "UnsupportedCalendarException"
 54352  }
 54353  
 54354  // Message returns the exception's message.
 54355  func (s *UnsupportedCalendarException) Message() string {
 54356  	if s.Message_ != nil {
 54357  		return *s.Message_
 54358  	}
 54359  	return ""
 54360  }
 54361  
 54362  // OrigErr always returns nil, satisfies awserr.Error interface.
 54363  func (s *UnsupportedCalendarException) OrigErr() error {
 54364  	return nil
 54365  }
 54366  
 54367  func (s *UnsupportedCalendarException) Error() string {
 54368  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 54369  }
 54370  
 54371  // Status code returns the HTTP status code for the request's response error.
 54372  func (s *UnsupportedCalendarException) StatusCode() int {
 54373  	return s.RespMetadata.StatusCode
 54374  }
 54375  
 54376  // RequestID returns the service's response RequestID for request.
 54377  func (s *UnsupportedCalendarException) RequestID() string {
 54378  	return s.RespMetadata.RequestID
 54379  }
 54380  
 54381  // Patching for applications released by Microsoft is only available on EC2
 54382  // instances and advanced instances. To patch applications released by Microsoft
 54383  // on on-premises servers and VMs, you must enable advanced instances. For more
 54384  // information, see Enabling the advanced-instances tier (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances-advanced.html)
 54385  // in the Amazon Web Services Systems Manager User Guide.
 54386  type UnsupportedFeatureRequiredException struct {
 54387  	_            struct{}                  `type:"structure"`
 54388  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 54389  
 54390  	Message_ *string `locationName:"Message" type:"string"`
 54391  }
 54392  
 54393  // String returns the string representation.
 54394  //
 54395  // API parameter values that are decorated as "sensitive" in the API will not
 54396  // be included in the string output. The member name will be present, but the
 54397  // value will be replaced with "sensitive".
 54398  func (s UnsupportedFeatureRequiredException) String() string {
 54399  	return awsutil.Prettify(s)
 54400  }
 54401  
 54402  // GoString returns the string representation.
 54403  //
 54404  // API parameter values that are decorated as "sensitive" in the API will not
 54405  // be included in the string output. The member name will be present, but the
 54406  // value will be replaced with "sensitive".
 54407  func (s UnsupportedFeatureRequiredException) GoString() string {
 54408  	return s.String()
 54409  }
 54410  
 54411  func newErrorUnsupportedFeatureRequiredException(v protocol.ResponseMetadata) error {
 54412  	return &UnsupportedFeatureRequiredException{
 54413  		RespMetadata: v,
 54414  	}
 54415  }
 54416  
 54417  // Code returns the exception type name.
 54418  func (s *UnsupportedFeatureRequiredException) Code() string {
 54419  	return "UnsupportedFeatureRequiredException"
 54420  }
 54421  
 54422  // Message returns the exception's message.
 54423  func (s *UnsupportedFeatureRequiredException) Message() string {
 54424  	if s.Message_ != nil {
 54425  		return *s.Message_
 54426  	}
 54427  	return ""
 54428  }
 54429  
 54430  // OrigErr always returns nil, satisfies awserr.Error interface.
 54431  func (s *UnsupportedFeatureRequiredException) OrigErr() error {
 54432  	return nil
 54433  }
 54434  
 54435  func (s *UnsupportedFeatureRequiredException) Error() string {
 54436  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 54437  }
 54438  
 54439  // Status code returns the HTTP status code for the request's response error.
 54440  func (s *UnsupportedFeatureRequiredException) StatusCode() int {
 54441  	return s.RespMetadata.StatusCode
 54442  }
 54443  
 54444  // RequestID returns the service's response RequestID for request.
 54445  func (s *UnsupportedFeatureRequiredException) RequestID() string {
 54446  	return s.RespMetadata.RequestID
 54447  }
 54448  
 54449  // The Context attribute that you specified for the InventoryItem isn't allowed
 54450  // for this inventory type. You can only use the Context attribute with inventory
 54451  // types like AWS:ComplianceItem.
 54452  type UnsupportedInventoryItemContextException struct {
 54453  	_            struct{}                  `type:"structure"`
 54454  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 54455  
 54456  	Message_ *string `locationName:"Message" type:"string"`
 54457  
 54458  	TypeName *string `min:"1" type:"string"`
 54459  }
 54460  
 54461  // String returns the string representation.
 54462  //
 54463  // API parameter values that are decorated as "sensitive" in the API will not
 54464  // be included in the string output. The member name will be present, but the
 54465  // value will be replaced with "sensitive".
 54466  func (s UnsupportedInventoryItemContextException) String() string {
 54467  	return awsutil.Prettify(s)
 54468  }
 54469  
 54470  // GoString returns the string representation.
 54471  //
 54472  // API parameter values that are decorated as "sensitive" in the API will not
 54473  // be included in the string output. The member name will be present, but the
 54474  // value will be replaced with "sensitive".
 54475  func (s UnsupportedInventoryItemContextException) GoString() string {
 54476  	return s.String()
 54477  }
 54478  
 54479  func newErrorUnsupportedInventoryItemContextException(v protocol.ResponseMetadata) error {
 54480  	return &UnsupportedInventoryItemContextException{
 54481  		RespMetadata: v,
 54482  	}
 54483  }
 54484  
 54485  // Code returns the exception type name.
 54486  func (s *UnsupportedInventoryItemContextException) Code() string {
 54487  	return "UnsupportedInventoryItemContextException"
 54488  }
 54489  
 54490  // Message returns the exception's message.
 54491  func (s *UnsupportedInventoryItemContextException) Message() string {
 54492  	if s.Message_ != nil {
 54493  		return *s.Message_
 54494  	}
 54495  	return ""
 54496  }
 54497  
 54498  // OrigErr always returns nil, satisfies awserr.Error interface.
 54499  func (s *UnsupportedInventoryItemContextException) OrigErr() error {
 54500  	return nil
 54501  }
 54502  
 54503  func (s *UnsupportedInventoryItemContextException) Error() string {
 54504  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 54505  }
 54506  
 54507  // Status code returns the HTTP status code for the request's response error.
 54508  func (s *UnsupportedInventoryItemContextException) StatusCode() int {
 54509  	return s.RespMetadata.StatusCode
 54510  }
 54511  
 54512  // RequestID returns the service's response RequestID for request.
 54513  func (s *UnsupportedInventoryItemContextException) RequestID() string {
 54514  	return s.RespMetadata.RequestID
 54515  }
 54516  
 54517  // Inventory item type schema version has to match supported versions in the
 54518  // service. Check output of GetInventorySchema to see the available schema version
 54519  // for each type.
 54520  type UnsupportedInventorySchemaVersionException struct {
 54521  	_            struct{}                  `type:"structure"`
 54522  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 54523  
 54524  	Message_ *string `locationName:"Message" type:"string"`
 54525  }
 54526  
 54527  // String returns the string representation.
 54528  //
 54529  // API parameter values that are decorated as "sensitive" in the API will not
 54530  // be included in the string output. The member name will be present, but the
 54531  // value will be replaced with "sensitive".
 54532  func (s UnsupportedInventorySchemaVersionException) String() string {
 54533  	return awsutil.Prettify(s)
 54534  }
 54535  
 54536  // GoString returns the string representation.
 54537  //
 54538  // API parameter values that are decorated as "sensitive" in the API will not
 54539  // be included in the string output. The member name will be present, but the
 54540  // value will be replaced with "sensitive".
 54541  func (s UnsupportedInventorySchemaVersionException) GoString() string {
 54542  	return s.String()
 54543  }
 54544  
 54545  func newErrorUnsupportedInventorySchemaVersionException(v protocol.ResponseMetadata) error {
 54546  	return &UnsupportedInventorySchemaVersionException{
 54547  		RespMetadata: v,
 54548  	}
 54549  }
 54550  
 54551  // Code returns the exception type name.
 54552  func (s *UnsupportedInventorySchemaVersionException) Code() string {
 54553  	return "UnsupportedInventorySchemaVersionException"
 54554  }
 54555  
 54556  // Message returns the exception's message.
 54557  func (s *UnsupportedInventorySchemaVersionException) Message() string {
 54558  	if s.Message_ != nil {
 54559  		return *s.Message_
 54560  	}
 54561  	return ""
 54562  }
 54563  
 54564  // OrigErr always returns nil, satisfies awserr.Error interface.
 54565  func (s *UnsupportedInventorySchemaVersionException) OrigErr() error {
 54566  	return nil
 54567  }
 54568  
 54569  func (s *UnsupportedInventorySchemaVersionException) Error() string {
 54570  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 54571  }
 54572  
 54573  // Status code returns the HTTP status code for the request's response error.
 54574  func (s *UnsupportedInventorySchemaVersionException) StatusCode() int {
 54575  	return s.RespMetadata.StatusCode
 54576  }
 54577  
 54578  // RequestID returns the service's response RequestID for request.
 54579  func (s *UnsupportedInventorySchemaVersionException) RequestID() string {
 54580  	return s.RespMetadata.RequestID
 54581  }
 54582  
 54583  // The operating systems you specified isn't supported, or the operation isn't
 54584  // supported for the operating system.
 54585  type UnsupportedOperatingSystem struct {
 54586  	_            struct{}                  `type:"structure"`
 54587  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 54588  
 54589  	Message_ *string `locationName:"Message" type:"string"`
 54590  }
 54591  
 54592  // String returns the string representation.
 54593  //
 54594  // API parameter values that are decorated as "sensitive" in the API will not
 54595  // be included in the string output. The member name will be present, but the
 54596  // value will be replaced with "sensitive".
 54597  func (s UnsupportedOperatingSystem) String() string {
 54598  	return awsutil.Prettify(s)
 54599  }
 54600  
 54601  // GoString returns the string representation.
 54602  //
 54603  // API parameter values that are decorated as "sensitive" in the API will not
 54604  // be included in the string output. The member name will be present, but the
 54605  // value will be replaced with "sensitive".
 54606  func (s UnsupportedOperatingSystem) GoString() string {
 54607  	return s.String()
 54608  }
 54609  
 54610  func newErrorUnsupportedOperatingSystem(v protocol.ResponseMetadata) error {
 54611  	return &UnsupportedOperatingSystem{
 54612  		RespMetadata: v,
 54613  	}
 54614  }
 54615  
 54616  // Code returns the exception type name.
 54617  func (s *UnsupportedOperatingSystem) Code() string {
 54618  	return "UnsupportedOperatingSystem"
 54619  }
 54620  
 54621  // Message returns the exception's message.
 54622  func (s *UnsupportedOperatingSystem) Message() string {
 54623  	if s.Message_ != nil {
 54624  		return *s.Message_
 54625  	}
 54626  	return ""
 54627  }
 54628  
 54629  // OrigErr always returns nil, satisfies awserr.Error interface.
 54630  func (s *UnsupportedOperatingSystem) OrigErr() error {
 54631  	return nil
 54632  }
 54633  
 54634  func (s *UnsupportedOperatingSystem) Error() string {
 54635  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 54636  }
 54637  
 54638  // Status code returns the HTTP status code for the request's response error.
 54639  func (s *UnsupportedOperatingSystem) StatusCode() int {
 54640  	return s.RespMetadata.StatusCode
 54641  }
 54642  
 54643  // RequestID returns the service's response RequestID for request.
 54644  func (s *UnsupportedOperatingSystem) RequestID() string {
 54645  	return s.RespMetadata.RequestID
 54646  }
 54647  
 54648  // The parameter type isn't supported.
 54649  type UnsupportedParameterType struct {
 54650  	_            struct{}                  `type:"structure"`
 54651  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 54652  
 54653  	Message_ *string `locationName:"message" type:"string"`
 54654  }
 54655  
 54656  // String returns the string representation.
 54657  //
 54658  // API parameter values that are decorated as "sensitive" in the API will not
 54659  // be included in the string output. The member name will be present, but the
 54660  // value will be replaced with "sensitive".
 54661  func (s UnsupportedParameterType) String() string {
 54662  	return awsutil.Prettify(s)
 54663  }
 54664  
 54665  // GoString returns the string representation.
 54666  //
 54667  // API parameter values that are decorated as "sensitive" in the API will not
 54668  // be included in the string output. The member name will be present, but the
 54669  // value will be replaced with "sensitive".
 54670  func (s UnsupportedParameterType) GoString() string {
 54671  	return s.String()
 54672  }
 54673  
 54674  func newErrorUnsupportedParameterType(v protocol.ResponseMetadata) error {
 54675  	return &UnsupportedParameterType{
 54676  		RespMetadata: v,
 54677  	}
 54678  }
 54679  
 54680  // Code returns the exception type name.
 54681  func (s *UnsupportedParameterType) Code() string {
 54682  	return "UnsupportedParameterType"
 54683  }
 54684  
 54685  // Message returns the exception's message.
 54686  func (s *UnsupportedParameterType) Message() string {
 54687  	if s.Message_ != nil {
 54688  		return *s.Message_
 54689  	}
 54690  	return ""
 54691  }
 54692  
 54693  // OrigErr always returns nil, satisfies awserr.Error interface.
 54694  func (s *UnsupportedParameterType) OrigErr() error {
 54695  	return nil
 54696  }
 54697  
 54698  func (s *UnsupportedParameterType) Error() string {
 54699  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 54700  }
 54701  
 54702  // Status code returns the HTTP status code for the request's response error.
 54703  func (s *UnsupportedParameterType) StatusCode() int {
 54704  	return s.RespMetadata.StatusCode
 54705  }
 54706  
 54707  // RequestID returns the service's response RequestID for request.
 54708  func (s *UnsupportedParameterType) RequestID() string {
 54709  	return s.RespMetadata.RequestID
 54710  }
 54711  
 54712  // The document doesn't support the platform type of the given instance ID(s).
 54713  // For example, you sent an document for a Windows instance to a Linux instance.
 54714  type UnsupportedPlatformType struct {
 54715  	_            struct{}                  `type:"structure"`
 54716  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 54717  
 54718  	Message_ *string `locationName:"Message" type:"string"`
 54719  }
 54720  
 54721  // String returns the string representation.
 54722  //
 54723  // API parameter values that are decorated as "sensitive" in the API will not
 54724  // be included in the string output. The member name will be present, but the
 54725  // value will be replaced with "sensitive".
 54726  func (s UnsupportedPlatformType) String() string {
 54727  	return awsutil.Prettify(s)
 54728  }
 54729  
 54730  // GoString returns the string representation.
 54731  //
 54732  // API parameter values that are decorated as "sensitive" in the API will not
 54733  // be included in the string output. The member name will be present, but the
 54734  // value will be replaced with "sensitive".
 54735  func (s UnsupportedPlatformType) GoString() string {
 54736  	return s.String()
 54737  }
 54738  
 54739  func newErrorUnsupportedPlatformType(v protocol.ResponseMetadata) error {
 54740  	return &UnsupportedPlatformType{
 54741  		RespMetadata: v,
 54742  	}
 54743  }
 54744  
 54745  // Code returns the exception type name.
 54746  func (s *UnsupportedPlatformType) Code() string {
 54747  	return "UnsupportedPlatformType"
 54748  }
 54749  
 54750  // Message returns the exception's message.
 54751  func (s *UnsupportedPlatformType) Message() string {
 54752  	if s.Message_ != nil {
 54753  		return *s.Message_
 54754  	}
 54755  	return ""
 54756  }
 54757  
 54758  // OrigErr always returns nil, satisfies awserr.Error interface.
 54759  func (s *UnsupportedPlatformType) OrigErr() error {
 54760  	return nil
 54761  }
 54762  
 54763  func (s *UnsupportedPlatformType) Error() string {
 54764  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 54765  }
 54766  
 54767  // Status code returns the HTTP status code for the request's response error.
 54768  func (s *UnsupportedPlatformType) StatusCode() int {
 54769  	return s.RespMetadata.StatusCode
 54770  }
 54771  
 54772  // RequestID returns the service's response RequestID for request.
 54773  func (s *UnsupportedPlatformType) RequestID() string {
 54774  	return s.RespMetadata.RequestID
 54775  }
 54776  
 54777  type UpdateAssociationInput struct {
 54778  	_ struct{} `type:"structure"`
 54779  
 54780  	// By default, when you update an association, the system runs it immediately
 54781  	// after it is updated and then according to the schedule you specified. Specify
 54782  	// this option if you don't want an association to run immediately after you
 54783  	// update it. This parameter isn't supported for rate expressions.
 54784  	//
 54785  	// Also, if you specified this option when you created the association, you
 54786  	// can reset it. To do so, specify the no-apply-only-at-cron-interval parameter
 54787  	// when you update the association from the command line. This parameter forces
 54788  	// the association to run immediately after updating it and according to the
 54789  	// interval specified.
 54790  	ApplyOnlyAtCronInterval *bool `type:"boolean"`
 54791  
 54792  	// The ID of the association you want to update.
 54793  	//
 54794  	// AssociationId is a required field
 54795  	AssociationId *string `type:"string" required:"true"`
 54796  
 54797  	// The name of the association that you want to update.
 54798  	AssociationName *string `type:"string"`
 54799  
 54800  	// This parameter is provided for concurrency control purposes. You must specify
 54801  	// the latest association version in the service. If you want to ensure that
 54802  	// this request succeeds, either specify $LATEST, or omit this parameter.
 54803  	AssociationVersion *string `type:"string"`
 54804  
 54805  	// Specify the target for the association. This target is required for associations
 54806  	// that use an Automation runbook and target resources by using rate controls.
 54807  	// Automation is a capability of Amazon Web Services Systems Manager.
 54808  	AutomationTargetParameterName *string `min:"1" type:"string"`
 54809  
 54810  	// The names or Amazon Resource Names (ARNs) of the Change Calendar type documents
 54811  	// you want to gate your associations under. The associations only run when
 54812  	// that change calendar is open. For more information, see Amazon Web Services
 54813  	// Systems Manager Change Calendar (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar).
 54814  	CalendarNames []*string `type:"list"`
 54815  
 54816  	// The severity level to assign to the association.
 54817  	ComplianceSeverity *string `type:"string" enum:"AssociationComplianceSeverity"`
 54818  
 54819  	// The document version you want update for the association.
 54820  	DocumentVersion *string `type:"string"`
 54821  
 54822  	// The maximum number of targets allowed to run the association at the same
 54823  	// time. You can specify a number, for example 10, or a percentage of the target
 54824  	// set, for example 10%. The default value is 100%, which means all targets
 54825  	// run the association at the same time.
 54826  	//
 54827  	// If a new instance starts and attempts to run an association while Systems
 54828  	// Manager is running MaxConcurrency associations, the association is allowed
 54829  	// to run. During the next association interval, the new instance will process
 54830  	// its association within the limit specified for MaxConcurrency.
 54831  	MaxConcurrency *string `min:"1" type:"string"`
 54832  
 54833  	// The number of errors that are allowed before the system stops sending requests
 54834  	// to run the association on additional targets. You can specify either an absolute
 54835  	// number of errors, for example 10, or a percentage of the target set, for
 54836  	// example 10%. If you specify 3, for example, the system stops sending requests
 54837  	// when the fourth error is received. If you specify 0, then the system stops
 54838  	// sending requests after the first error is returned. If you run an association
 54839  	// on 50 instances and set MaxError to 10%, then the system stops sending the
 54840  	// request when the sixth error is received.
 54841  	//
 54842  	// Executions that are already running an association when MaxErrors is reached
 54843  	// are allowed to complete, but some of these executions may fail as well. If
 54844  	// you need to ensure that there won't be more than max-errors failed executions,
 54845  	// set MaxConcurrency to 1 so that executions proceed one at a time.
 54846  	MaxErrors *string `min:"1" type:"string"`
 54847  
 54848  	// The name of the SSM Command document or Automation runbook that contains
 54849  	// the configuration information for the instance.
 54850  	//
 54851  	// You can specify Amazon Web Services-predefined documents, documents you created,
 54852  	// or a document that is shared with you from another account.
 54853  	//
 54854  	// For Systems Manager document (SSM document) that are shared with you from
 54855  	// other Amazon Web Services accounts, you must specify the complete SSM document
 54856  	// ARN, in the following format:
 54857  	//
 54858  	// arn:aws:ssm:region:account-id:document/document-name
 54859  	//
 54860  	// For example:
 54861  	//
 54862  	// arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document
 54863  	//
 54864  	// For Amazon Web Services-predefined documents and SSM documents you created
 54865  	// in your account, you only need to specify the document name. For example,
 54866  	// AWS-ApplyPatchBaseline or My-Document.
 54867  	Name *string `type:"string"`
 54868  
 54869  	// An S3 bucket where you want to store the results of this request.
 54870  	OutputLocation *InstanceAssociationOutputLocation `type:"structure"`
 54871  
 54872  	// The parameters you want to update for the association. If you create a parameter
 54873  	// using Parameter Store, a capability of Amazon Web Services Systems Manager,
 54874  	// you can reference the parameter using {{ssm:parameter-name}}.
 54875  	Parameters map[string][]*string `type:"map"`
 54876  
 54877  	// The cron expression used to schedule the association that you want to update.
 54878  	ScheduleExpression *string `min:"1" type:"string"`
 54879  
 54880  	// The mode for generating association compliance. You can specify AUTO or MANUAL.
 54881  	// In AUTO mode, the system uses the status of the association execution to
 54882  	// determine the compliance status. If the association execution runs successfully,
 54883  	// then the association is COMPLIANT. If the association execution doesn't run
 54884  	// successfully, the association is NON-COMPLIANT.
 54885  	//
 54886  	// In MANUAL mode, you must specify the AssociationId as a parameter for the
 54887  	// PutComplianceItems API operation. In this case, compliance data isn't managed
 54888  	// by State Manager, a capability of Amazon Web Services Systems Manager. It
 54889  	// is managed by your direct call to the PutComplianceItems API operation.
 54890  	//
 54891  	// By default, all associations use AUTO mode.
 54892  	SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"`
 54893  
 54894  	// A location is a combination of Amazon Web Services Regions and Amazon Web
 54895  	// Services accounts where you want to run the association. Use this action
 54896  	// to update an association in multiple Regions and multiple accounts.
 54897  	TargetLocations []*TargetLocation `min:"1" type:"list"`
 54898  
 54899  	// The targets of the association.
 54900  	Targets []*Target `type:"list"`
 54901  }
 54902  
 54903  // String returns the string representation.
 54904  //
 54905  // API parameter values that are decorated as "sensitive" in the API will not
 54906  // be included in the string output. The member name will be present, but the
 54907  // value will be replaced with "sensitive".
 54908  func (s UpdateAssociationInput) String() string {
 54909  	return awsutil.Prettify(s)
 54910  }
 54911  
 54912  // GoString returns the string representation.
 54913  //
 54914  // API parameter values that are decorated as "sensitive" in the API will not
 54915  // be included in the string output. The member name will be present, but the
 54916  // value will be replaced with "sensitive".
 54917  func (s UpdateAssociationInput) GoString() string {
 54918  	return s.String()
 54919  }
 54920  
 54921  // Validate inspects the fields of the type to determine if they are valid.
 54922  func (s *UpdateAssociationInput) Validate() error {
 54923  	invalidParams := request.ErrInvalidParams{Context: "UpdateAssociationInput"}
 54924  	if s.AssociationId == nil {
 54925  		invalidParams.Add(request.NewErrParamRequired("AssociationId"))
 54926  	}
 54927  	if s.AutomationTargetParameterName != nil && len(*s.AutomationTargetParameterName) < 1 {
 54928  		invalidParams.Add(request.NewErrParamMinLen("AutomationTargetParameterName", 1))
 54929  	}
 54930  	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
 54931  		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
 54932  	}
 54933  	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
 54934  		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
 54935  	}
 54936  	if s.ScheduleExpression != nil && len(*s.ScheduleExpression) < 1 {
 54937  		invalidParams.Add(request.NewErrParamMinLen("ScheduleExpression", 1))
 54938  	}
 54939  	if s.TargetLocations != nil && len(s.TargetLocations) < 1 {
 54940  		invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1))
 54941  	}
 54942  	if s.OutputLocation != nil {
 54943  		if err := s.OutputLocation.Validate(); err != nil {
 54944  			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
 54945  		}
 54946  	}
 54947  	if s.TargetLocations != nil {
 54948  		for i, v := range s.TargetLocations {
 54949  			if v == nil {
 54950  				continue
 54951  			}
 54952  			if err := v.Validate(); err != nil {
 54953  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetLocations", i), err.(request.ErrInvalidParams))
 54954  			}
 54955  		}
 54956  	}
 54957  	if s.Targets != nil {
 54958  		for i, v := range s.Targets {
 54959  			if v == nil {
 54960  				continue
 54961  			}
 54962  			if err := v.Validate(); err != nil {
 54963  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 54964  			}
 54965  		}
 54966  	}
 54967  
 54968  	if invalidParams.Len() > 0 {
 54969  		return invalidParams
 54970  	}
 54971  	return nil
 54972  }
 54973  
 54974  // SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value.
 54975  func (s *UpdateAssociationInput) SetApplyOnlyAtCronInterval(v bool) *UpdateAssociationInput {
 54976  	s.ApplyOnlyAtCronInterval = &v
 54977  	return s
 54978  }
 54979  
 54980  // SetAssociationId sets the AssociationId field's value.
 54981  func (s *UpdateAssociationInput) SetAssociationId(v string) *UpdateAssociationInput {
 54982  	s.AssociationId = &v
 54983  	return s
 54984  }
 54985  
 54986  // SetAssociationName sets the AssociationName field's value.
 54987  func (s *UpdateAssociationInput) SetAssociationName(v string) *UpdateAssociationInput {
 54988  	s.AssociationName = &v
 54989  	return s
 54990  }
 54991  
 54992  // SetAssociationVersion sets the AssociationVersion field's value.
 54993  func (s *UpdateAssociationInput) SetAssociationVersion(v string) *UpdateAssociationInput {
 54994  	s.AssociationVersion = &v
 54995  	return s
 54996  }
 54997  
 54998  // SetAutomationTargetParameterName sets the AutomationTargetParameterName field's value.
 54999  func (s *UpdateAssociationInput) SetAutomationTargetParameterName(v string) *UpdateAssociationInput {
 55000  	s.AutomationTargetParameterName = &v
 55001  	return s
 55002  }
 55003  
 55004  // SetCalendarNames sets the CalendarNames field's value.
 55005  func (s *UpdateAssociationInput) SetCalendarNames(v []*string) *UpdateAssociationInput {
 55006  	s.CalendarNames = v
 55007  	return s
 55008  }
 55009  
 55010  // SetComplianceSeverity sets the ComplianceSeverity field's value.
 55011  func (s *UpdateAssociationInput) SetComplianceSeverity(v string) *UpdateAssociationInput {
 55012  	s.ComplianceSeverity = &v
 55013  	return s
 55014  }
 55015  
 55016  // SetDocumentVersion sets the DocumentVersion field's value.
 55017  func (s *UpdateAssociationInput) SetDocumentVersion(v string) *UpdateAssociationInput {
 55018  	s.DocumentVersion = &v
 55019  	return s
 55020  }
 55021  
 55022  // SetMaxConcurrency sets the MaxConcurrency field's value.
 55023  func (s *UpdateAssociationInput) SetMaxConcurrency(v string) *UpdateAssociationInput {
 55024  	s.MaxConcurrency = &v
 55025  	return s
 55026  }
 55027  
 55028  // SetMaxErrors sets the MaxErrors field's value.
 55029  func (s *UpdateAssociationInput) SetMaxErrors(v string) *UpdateAssociationInput {
 55030  	s.MaxErrors = &v
 55031  	return s
 55032  }
 55033  
 55034  // SetName sets the Name field's value.
 55035  func (s *UpdateAssociationInput) SetName(v string) *UpdateAssociationInput {
 55036  	s.Name = &v
 55037  	return s
 55038  }
 55039  
 55040  // SetOutputLocation sets the OutputLocation field's value.
 55041  func (s *UpdateAssociationInput) SetOutputLocation(v *InstanceAssociationOutputLocation) *UpdateAssociationInput {
 55042  	s.OutputLocation = v
 55043  	return s
 55044  }
 55045  
 55046  // SetParameters sets the Parameters field's value.
 55047  func (s *UpdateAssociationInput) SetParameters(v map[string][]*string) *UpdateAssociationInput {
 55048  	s.Parameters = v
 55049  	return s
 55050  }
 55051  
 55052  // SetScheduleExpression sets the ScheduleExpression field's value.
 55053  func (s *UpdateAssociationInput) SetScheduleExpression(v string) *UpdateAssociationInput {
 55054  	s.ScheduleExpression = &v
 55055  	return s
 55056  }
 55057  
 55058  // SetSyncCompliance sets the SyncCompliance field's value.
 55059  func (s *UpdateAssociationInput) SetSyncCompliance(v string) *UpdateAssociationInput {
 55060  	s.SyncCompliance = &v
 55061  	return s
 55062  }
 55063  
 55064  // SetTargetLocations sets the TargetLocations field's value.
 55065  func (s *UpdateAssociationInput) SetTargetLocations(v []*TargetLocation) *UpdateAssociationInput {
 55066  	s.TargetLocations = v
 55067  	return s
 55068  }
 55069  
 55070  // SetTargets sets the Targets field's value.
 55071  func (s *UpdateAssociationInput) SetTargets(v []*Target) *UpdateAssociationInput {
 55072  	s.Targets = v
 55073  	return s
 55074  }
 55075  
 55076  type UpdateAssociationOutput struct {
 55077  	_ struct{} `type:"structure"`
 55078  
 55079  	// The description of the association that was updated.
 55080  	AssociationDescription *AssociationDescription `type:"structure"`
 55081  }
 55082  
 55083  // String returns the string representation.
 55084  //
 55085  // API parameter values that are decorated as "sensitive" in the API will not
 55086  // be included in the string output. The member name will be present, but the
 55087  // value will be replaced with "sensitive".
 55088  func (s UpdateAssociationOutput) String() string {
 55089  	return awsutil.Prettify(s)
 55090  }
 55091  
 55092  // GoString returns the string representation.
 55093  //
 55094  // API parameter values that are decorated as "sensitive" in the API will not
 55095  // be included in the string output. The member name will be present, but the
 55096  // value will be replaced with "sensitive".
 55097  func (s UpdateAssociationOutput) GoString() string {
 55098  	return s.String()
 55099  }
 55100  
 55101  // SetAssociationDescription sets the AssociationDescription field's value.
 55102  func (s *UpdateAssociationOutput) SetAssociationDescription(v *AssociationDescription) *UpdateAssociationOutput {
 55103  	s.AssociationDescription = v
 55104  	return s
 55105  }
 55106  
 55107  type UpdateAssociationStatusInput struct {
 55108  	_ struct{} `type:"structure"`
 55109  
 55110  	// The association status.
 55111  	//
 55112  	// AssociationStatus is a required field
 55113  	AssociationStatus *AssociationStatus `type:"structure" required:"true"`
 55114  
 55115  	// The instance ID.
 55116  	//
 55117  	// InstanceId is a required field
 55118  	InstanceId *string `type:"string" required:"true"`
 55119  
 55120  	// The name of the SSM document.
 55121  	//
 55122  	// Name is a required field
 55123  	Name *string `type:"string" required:"true"`
 55124  }
 55125  
 55126  // String returns the string representation.
 55127  //
 55128  // API parameter values that are decorated as "sensitive" in the API will not
 55129  // be included in the string output. The member name will be present, but the
 55130  // value will be replaced with "sensitive".
 55131  func (s UpdateAssociationStatusInput) String() string {
 55132  	return awsutil.Prettify(s)
 55133  }
 55134  
 55135  // GoString returns the string representation.
 55136  //
 55137  // API parameter values that are decorated as "sensitive" in the API will not
 55138  // be included in the string output. The member name will be present, but the
 55139  // value will be replaced with "sensitive".
 55140  func (s UpdateAssociationStatusInput) GoString() string {
 55141  	return s.String()
 55142  }
 55143  
 55144  // Validate inspects the fields of the type to determine if they are valid.
 55145  func (s *UpdateAssociationStatusInput) Validate() error {
 55146  	invalidParams := request.ErrInvalidParams{Context: "UpdateAssociationStatusInput"}
 55147  	if s.AssociationStatus == nil {
 55148  		invalidParams.Add(request.NewErrParamRequired("AssociationStatus"))
 55149  	}
 55150  	if s.InstanceId == nil {
 55151  		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
 55152  	}
 55153  	if s.Name == nil {
 55154  		invalidParams.Add(request.NewErrParamRequired("Name"))
 55155  	}
 55156  	if s.AssociationStatus != nil {
 55157  		if err := s.AssociationStatus.Validate(); err != nil {
 55158  			invalidParams.AddNested("AssociationStatus", err.(request.ErrInvalidParams))
 55159  		}
 55160  	}
 55161  
 55162  	if invalidParams.Len() > 0 {
 55163  		return invalidParams
 55164  	}
 55165  	return nil
 55166  }
 55167  
 55168  // SetAssociationStatus sets the AssociationStatus field's value.
 55169  func (s *UpdateAssociationStatusInput) SetAssociationStatus(v *AssociationStatus) *UpdateAssociationStatusInput {
 55170  	s.AssociationStatus = v
 55171  	return s
 55172  }
 55173  
 55174  // SetInstanceId sets the InstanceId field's value.
 55175  func (s *UpdateAssociationStatusInput) SetInstanceId(v string) *UpdateAssociationStatusInput {
 55176  	s.InstanceId = &v
 55177  	return s
 55178  }
 55179  
 55180  // SetName sets the Name field's value.
 55181  func (s *UpdateAssociationStatusInput) SetName(v string) *UpdateAssociationStatusInput {
 55182  	s.Name = &v
 55183  	return s
 55184  }
 55185  
 55186  type UpdateAssociationStatusOutput struct {
 55187  	_ struct{} `type:"structure"`
 55188  
 55189  	// Information about the association.
 55190  	AssociationDescription *AssociationDescription `type:"structure"`
 55191  }
 55192  
 55193  // String returns the string representation.
 55194  //
 55195  // API parameter values that are decorated as "sensitive" in the API will not
 55196  // be included in the string output. The member name will be present, but the
 55197  // value will be replaced with "sensitive".
 55198  func (s UpdateAssociationStatusOutput) String() string {
 55199  	return awsutil.Prettify(s)
 55200  }
 55201  
 55202  // GoString returns the string representation.
 55203  //
 55204  // API parameter values that are decorated as "sensitive" in the API will not
 55205  // be included in the string output. The member name will be present, but the
 55206  // value will be replaced with "sensitive".
 55207  func (s UpdateAssociationStatusOutput) GoString() string {
 55208  	return s.String()
 55209  }
 55210  
 55211  // SetAssociationDescription sets the AssociationDescription field's value.
 55212  func (s *UpdateAssociationStatusOutput) SetAssociationDescription(v *AssociationDescription) *UpdateAssociationStatusOutput {
 55213  	s.AssociationDescription = v
 55214  	return s
 55215  }
 55216  
 55217  type UpdateDocumentDefaultVersionInput struct {
 55218  	_ struct{} `type:"structure"`
 55219  
 55220  	// The version of a custom document that you want to set as the default version.
 55221  	//
 55222  	// DocumentVersion is a required field
 55223  	DocumentVersion *string `type:"string" required:"true"`
 55224  
 55225  	// The name of a custom document that you want to set as the default version.
 55226  	//
 55227  	// Name is a required field
 55228  	Name *string `type:"string" required:"true"`
 55229  }
 55230  
 55231  // String returns the string representation.
 55232  //
 55233  // API parameter values that are decorated as "sensitive" in the API will not
 55234  // be included in the string output. The member name will be present, but the
 55235  // value will be replaced with "sensitive".
 55236  func (s UpdateDocumentDefaultVersionInput) String() string {
 55237  	return awsutil.Prettify(s)
 55238  }
 55239  
 55240  // GoString returns the string representation.
 55241  //
 55242  // API parameter values that are decorated as "sensitive" in the API will not
 55243  // be included in the string output. The member name will be present, but the
 55244  // value will be replaced with "sensitive".
 55245  func (s UpdateDocumentDefaultVersionInput) GoString() string {
 55246  	return s.String()
 55247  }
 55248  
 55249  // Validate inspects the fields of the type to determine if they are valid.
 55250  func (s *UpdateDocumentDefaultVersionInput) Validate() error {
 55251  	invalidParams := request.ErrInvalidParams{Context: "UpdateDocumentDefaultVersionInput"}
 55252  	if s.DocumentVersion == nil {
 55253  		invalidParams.Add(request.NewErrParamRequired("DocumentVersion"))
 55254  	}
 55255  	if s.Name == nil {
 55256  		invalidParams.Add(request.NewErrParamRequired("Name"))
 55257  	}
 55258  
 55259  	if invalidParams.Len() > 0 {
 55260  		return invalidParams
 55261  	}
 55262  	return nil
 55263  }
 55264  
 55265  // SetDocumentVersion sets the DocumentVersion field's value.
 55266  func (s *UpdateDocumentDefaultVersionInput) SetDocumentVersion(v string) *UpdateDocumentDefaultVersionInput {
 55267  	s.DocumentVersion = &v
 55268  	return s
 55269  }
 55270  
 55271  // SetName sets the Name field's value.
 55272  func (s *UpdateDocumentDefaultVersionInput) SetName(v string) *UpdateDocumentDefaultVersionInput {
 55273  	s.Name = &v
 55274  	return s
 55275  }
 55276  
 55277  type UpdateDocumentDefaultVersionOutput struct {
 55278  	_ struct{} `type:"structure"`
 55279  
 55280  	// The description of a custom document that you want to set as the default
 55281  	// version.
 55282  	Description *DocumentDefaultVersionDescription `type:"structure"`
 55283  }
 55284  
 55285  // String returns the string representation.
 55286  //
 55287  // API parameter values that are decorated as "sensitive" in the API will not
 55288  // be included in the string output. The member name will be present, but the
 55289  // value will be replaced with "sensitive".
 55290  func (s UpdateDocumentDefaultVersionOutput) String() string {
 55291  	return awsutil.Prettify(s)
 55292  }
 55293  
 55294  // GoString returns the string representation.
 55295  //
 55296  // API parameter values that are decorated as "sensitive" in the API will not
 55297  // be included in the string output. The member name will be present, but the
 55298  // value will be replaced with "sensitive".
 55299  func (s UpdateDocumentDefaultVersionOutput) GoString() string {
 55300  	return s.String()
 55301  }
 55302  
 55303  // SetDescription sets the Description field's value.
 55304  func (s *UpdateDocumentDefaultVersionOutput) SetDescription(v *DocumentDefaultVersionDescription) *UpdateDocumentDefaultVersionOutput {
 55305  	s.Description = v
 55306  	return s
 55307  }
 55308  
 55309  type UpdateDocumentInput struct {
 55310  	_ struct{} `type:"structure"`
 55311  
 55312  	// A list of key-value pairs that describe attachments to a version of a document.
 55313  	Attachments []*AttachmentsSource `type:"list"`
 55314  
 55315  	// A valid JSON or YAML string.
 55316  	//
 55317  	// Content is a required field
 55318  	Content *string `min:"1" type:"string" required:"true"`
 55319  
 55320  	// The friendly name of the SSM document that you want to update. This value
 55321  	// can differ for each version of the document. If you don't specify a value
 55322  	// for this parameter in your request, the existing value is applied to the
 55323  	// new document version.
 55324  	DisplayName *string `type:"string"`
 55325  
 55326  	// Specify the document format for the new document version. Systems Manager
 55327  	// supports JSON and YAML documents. JSON is the default format.
 55328  	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
 55329  
 55330  	// The version of the document that you want to update. Currently, Systems Manager
 55331  	// supports updating only the latest version of the document. You can specify
 55332  	// the version number of the latest version or use the $LATEST variable.
 55333  	DocumentVersion *string `type:"string"`
 55334  
 55335  	// The name of the SSM document that you want to update.
 55336  	//
 55337  	// Name is a required field
 55338  	Name *string `type:"string" required:"true"`
 55339  
 55340  	// Specify a new target type for the document.
 55341  	TargetType *string `type:"string"`
 55342  
 55343  	// An optional field specifying the version of the artifact you are updating
 55344  	// with the document. For example, "Release 12, Update 6". This value is unique
 55345  	// across all versions of a document, and can't be changed.
 55346  	VersionName *string `type:"string"`
 55347  }
 55348  
 55349  // String returns the string representation.
 55350  //
 55351  // API parameter values that are decorated as "sensitive" in the API will not
 55352  // be included in the string output. The member name will be present, but the
 55353  // value will be replaced with "sensitive".
 55354  func (s UpdateDocumentInput) String() string {
 55355  	return awsutil.Prettify(s)
 55356  }
 55357  
 55358  // GoString returns the string representation.
 55359  //
 55360  // API parameter values that are decorated as "sensitive" in the API will not
 55361  // be included in the string output. The member name will be present, but the
 55362  // value will be replaced with "sensitive".
 55363  func (s UpdateDocumentInput) GoString() string {
 55364  	return s.String()
 55365  }
 55366  
 55367  // Validate inspects the fields of the type to determine if they are valid.
 55368  func (s *UpdateDocumentInput) Validate() error {
 55369  	invalidParams := request.ErrInvalidParams{Context: "UpdateDocumentInput"}
 55370  	if s.Content == nil {
 55371  		invalidParams.Add(request.NewErrParamRequired("Content"))
 55372  	}
 55373  	if s.Content != nil && len(*s.Content) < 1 {
 55374  		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
 55375  	}
 55376  	if s.Name == nil {
 55377  		invalidParams.Add(request.NewErrParamRequired("Name"))
 55378  	}
 55379  	if s.Attachments != nil {
 55380  		for i, v := range s.Attachments {
 55381  			if v == nil {
 55382  				continue
 55383  			}
 55384  			if err := v.Validate(); err != nil {
 55385  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attachments", i), err.(request.ErrInvalidParams))
 55386  			}
 55387  		}
 55388  	}
 55389  
 55390  	if invalidParams.Len() > 0 {
 55391  		return invalidParams
 55392  	}
 55393  	return nil
 55394  }
 55395  
 55396  // SetAttachments sets the Attachments field's value.
 55397  func (s *UpdateDocumentInput) SetAttachments(v []*AttachmentsSource) *UpdateDocumentInput {
 55398  	s.Attachments = v
 55399  	return s
 55400  }
 55401  
 55402  // SetContent sets the Content field's value.
 55403  func (s *UpdateDocumentInput) SetContent(v string) *UpdateDocumentInput {
 55404  	s.Content = &v
 55405  	return s
 55406  }
 55407  
 55408  // SetDisplayName sets the DisplayName field's value.
 55409  func (s *UpdateDocumentInput) SetDisplayName(v string) *UpdateDocumentInput {
 55410  	s.DisplayName = &v
 55411  	return s
 55412  }
 55413  
 55414  // SetDocumentFormat sets the DocumentFormat field's value.
 55415  func (s *UpdateDocumentInput) SetDocumentFormat(v string) *UpdateDocumentInput {
 55416  	s.DocumentFormat = &v
 55417  	return s
 55418  }
 55419  
 55420  // SetDocumentVersion sets the DocumentVersion field's value.
 55421  func (s *UpdateDocumentInput) SetDocumentVersion(v string) *UpdateDocumentInput {
 55422  	s.DocumentVersion = &v
 55423  	return s
 55424  }
 55425  
 55426  // SetName sets the Name field's value.
 55427  func (s *UpdateDocumentInput) SetName(v string) *UpdateDocumentInput {
 55428  	s.Name = &v
 55429  	return s
 55430  }
 55431  
 55432  // SetTargetType sets the TargetType field's value.
 55433  func (s *UpdateDocumentInput) SetTargetType(v string) *UpdateDocumentInput {
 55434  	s.TargetType = &v
 55435  	return s
 55436  }
 55437  
 55438  // SetVersionName sets the VersionName field's value.
 55439  func (s *UpdateDocumentInput) SetVersionName(v string) *UpdateDocumentInput {
 55440  	s.VersionName = &v
 55441  	return s
 55442  }
 55443  
 55444  type UpdateDocumentMetadataInput struct {
 55445  	_ struct{} `type:"structure"`
 55446  
 55447  	// The change template review details to update.
 55448  	//
 55449  	// DocumentReviews is a required field
 55450  	DocumentReviews *DocumentReviews `type:"structure" required:"true"`
 55451  
 55452  	// The version of a change template in which to update approval metadata.
 55453  	DocumentVersion *string `type:"string"`
 55454  
 55455  	// The name of the change template for which a version's metadata is to be updated.
 55456  	//
 55457  	// Name is a required field
 55458  	Name *string `type:"string" required:"true"`
 55459  }
 55460  
 55461  // String returns the string representation.
 55462  //
 55463  // API parameter values that are decorated as "sensitive" in the API will not
 55464  // be included in the string output. The member name will be present, but the
 55465  // value will be replaced with "sensitive".
 55466  func (s UpdateDocumentMetadataInput) String() string {
 55467  	return awsutil.Prettify(s)
 55468  }
 55469  
 55470  // GoString returns the string representation.
 55471  //
 55472  // API parameter values that are decorated as "sensitive" in the API will not
 55473  // be included in the string output. The member name will be present, but the
 55474  // value will be replaced with "sensitive".
 55475  func (s UpdateDocumentMetadataInput) GoString() string {
 55476  	return s.String()
 55477  }
 55478  
 55479  // Validate inspects the fields of the type to determine if they are valid.
 55480  func (s *UpdateDocumentMetadataInput) Validate() error {
 55481  	invalidParams := request.ErrInvalidParams{Context: "UpdateDocumentMetadataInput"}
 55482  	if s.DocumentReviews == nil {
 55483  		invalidParams.Add(request.NewErrParamRequired("DocumentReviews"))
 55484  	}
 55485  	if s.Name == nil {
 55486  		invalidParams.Add(request.NewErrParamRequired("Name"))
 55487  	}
 55488  	if s.DocumentReviews != nil {
 55489  		if err := s.DocumentReviews.Validate(); err != nil {
 55490  			invalidParams.AddNested("DocumentReviews", err.(request.ErrInvalidParams))
 55491  		}
 55492  	}
 55493  
 55494  	if invalidParams.Len() > 0 {
 55495  		return invalidParams
 55496  	}
 55497  	return nil
 55498  }
 55499  
 55500  // SetDocumentReviews sets the DocumentReviews field's value.
 55501  func (s *UpdateDocumentMetadataInput) SetDocumentReviews(v *DocumentReviews) *UpdateDocumentMetadataInput {
 55502  	s.DocumentReviews = v
 55503  	return s
 55504  }
 55505  
 55506  // SetDocumentVersion sets the DocumentVersion field's value.
 55507  func (s *UpdateDocumentMetadataInput) SetDocumentVersion(v string) *UpdateDocumentMetadataInput {
 55508  	s.DocumentVersion = &v
 55509  	return s
 55510  }
 55511  
 55512  // SetName sets the Name field's value.
 55513  func (s *UpdateDocumentMetadataInput) SetName(v string) *UpdateDocumentMetadataInput {
 55514  	s.Name = &v
 55515  	return s
 55516  }
 55517  
 55518  type UpdateDocumentMetadataOutput struct {
 55519  	_ struct{} `type:"structure"`
 55520  }
 55521  
 55522  // String returns the string representation.
 55523  //
 55524  // API parameter values that are decorated as "sensitive" in the API will not
 55525  // be included in the string output. The member name will be present, but the
 55526  // value will be replaced with "sensitive".
 55527  func (s UpdateDocumentMetadataOutput) String() string {
 55528  	return awsutil.Prettify(s)
 55529  }
 55530  
 55531  // GoString returns the string representation.
 55532  //
 55533  // API parameter values that are decorated as "sensitive" in the API will not
 55534  // be included in the string output. The member name will be present, but the
 55535  // value will be replaced with "sensitive".
 55536  func (s UpdateDocumentMetadataOutput) GoString() string {
 55537  	return s.String()
 55538  }
 55539  
 55540  type UpdateDocumentOutput struct {
 55541  	_ struct{} `type:"structure"`
 55542  
 55543  	// A description of the document that was updated.
 55544  	DocumentDescription *DocumentDescription `type:"structure"`
 55545  }
 55546  
 55547  // String returns the string representation.
 55548  //
 55549  // API parameter values that are decorated as "sensitive" in the API will not
 55550  // be included in the string output. The member name will be present, but the
 55551  // value will be replaced with "sensitive".
 55552  func (s UpdateDocumentOutput) String() string {
 55553  	return awsutil.Prettify(s)
 55554  }
 55555  
 55556  // GoString returns the string representation.
 55557  //
 55558  // API parameter values that are decorated as "sensitive" in the API will not
 55559  // be included in the string output. The member name will be present, but the
 55560  // value will be replaced with "sensitive".
 55561  func (s UpdateDocumentOutput) GoString() string {
 55562  	return s.String()
 55563  }
 55564  
 55565  // SetDocumentDescription sets the DocumentDescription field's value.
 55566  func (s *UpdateDocumentOutput) SetDocumentDescription(v *DocumentDescription) *UpdateDocumentOutput {
 55567  	s.DocumentDescription = v
 55568  	return s
 55569  }
 55570  
 55571  type UpdateMaintenanceWindowInput struct {
 55572  	_ struct{} `type:"structure"`
 55573  
 55574  	// Whether targets must be registered with the maintenance window before tasks
 55575  	// can be defined for those targets.
 55576  	AllowUnassociatedTargets *bool `type:"boolean"`
 55577  
 55578  	// The number of hours before the end of the maintenance window that Amazon
 55579  	// Web Services Systems Manager stops scheduling new tasks for execution.
 55580  	Cutoff *int64 `type:"integer"`
 55581  
 55582  	// An optional description for the update request.
 55583  	//
 55584  	// Description is a sensitive parameter and its value will be
 55585  	// replaced with "sensitive" in string returned by UpdateMaintenanceWindowInput's
 55586  	// String and GoString methods.
 55587  	Description *string `min:"1" type:"string" sensitive:"true"`
 55588  
 55589  	// The duration of the maintenance window in hours.
 55590  	Duration *int64 `min:"1" type:"integer"`
 55591  
 55592  	// Whether the maintenance window is enabled.
 55593  	Enabled *bool `type:"boolean"`
 55594  
 55595  	// The date and time, in ISO-8601 Extended format, for when you want the maintenance
 55596  	// window to become inactive. EndDate allows you to set a date and time in the
 55597  	// future when the maintenance window will no longer run.
 55598  	EndDate *string `type:"string"`
 55599  
 55600  	// The name of the maintenance window.
 55601  	Name *string `min:"3" type:"string"`
 55602  
 55603  	// If True, then all fields that are required by the CreateMaintenanceWindow
 55604  	// operation are also required for this API request. Optional fields that aren't
 55605  	// specified are set to null.
 55606  	Replace *bool `type:"boolean"`
 55607  
 55608  	// The schedule of the maintenance window in the form of a cron or rate expression.
 55609  	Schedule *string `min:"1" type:"string"`
 55610  
 55611  	// The number of days to wait after the date and time specified by a cron expression
 55612  	// before running the maintenance window.
 55613  	//
 55614  	// For example, the following cron expression schedules a maintenance window
 55615  	// to run the third Tuesday of every month at 11:30 PM.
 55616  	//
 55617  	// cron(30 23 ? * TUE#3 *)
 55618  	//
 55619  	// If the schedule offset is 2, the maintenance window won't run until two days
 55620  	// later.
 55621  	ScheduleOffset *int64 `min:"1" type:"integer"`
 55622  
 55623  	// The time zone that the scheduled maintenance window executions are based
 55624  	// on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles",
 55625  	// "UTC", or "Asia/Seoul". For more information, see the Time Zone Database
 55626  	// (https://www.iana.org/time-zones) on the IANA website.
 55627  	ScheduleTimezone *string `type:"string"`
 55628  
 55629  	// The time zone that the scheduled maintenance window executions are based
 55630  	// on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles",
 55631  	// "UTC", or "Asia/Seoul". For more information, see the Time Zone Database
 55632  	// (https://www.iana.org/time-zones) on the IANA website.
 55633  	StartDate *string `type:"string"`
 55634  
 55635  	// The ID of the maintenance window to update.
 55636  	//
 55637  	// WindowId is a required field
 55638  	WindowId *string `min:"20" type:"string" required:"true"`
 55639  }
 55640  
 55641  // String returns the string representation.
 55642  //
 55643  // API parameter values that are decorated as "sensitive" in the API will not
 55644  // be included in the string output. The member name will be present, but the
 55645  // value will be replaced with "sensitive".
 55646  func (s UpdateMaintenanceWindowInput) String() string {
 55647  	return awsutil.Prettify(s)
 55648  }
 55649  
 55650  // GoString returns the string representation.
 55651  //
 55652  // API parameter values that are decorated as "sensitive" in the API will not
 55653  // be included in the string output. The member name will be present, but the
 55654  // value will be replaced with "sensitive".
 55655  func (s UpdateMaintenanceWindowInput) GoString() string {
 55656  	return s.String()
 55657  }
 55658  
 55659  // Validate inspects the fields of the type to determine if they are valid.
 55660  func (s *UpdateMaintenanceWindowInput) Validate() error {
 55661  	invalidParams := request.ErrInvalidParams{Context: "UpdateMaintenanceWindowInput"}
 55662  	if s.Description != nil && len(*s.Description) < 1 {
 55663  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 55664  	}
 55665  	if s.Duration != nil && *s.Duration < 1 {
 55666  		invalidParams.Add(request.NewErrParamMinValue("Duration", 1))
 55667  	}
 55668  	if s.Name != nil && len(*s.Name) < 3 {
 55669  		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
 55670  	}
 55671  	if s.Schedule != nil && len(*s.Schedule) < 1 {
 55672  		invalidParams.Add(request.NewErrParamMinLen("Schedule", 1))
 55673  	}
 55674  	if s.ScheduleOffset != nil && *s.ScheduleOffset < 1 {
 55675  		invalidParams.Add(request.NewErrParamMinValue("ScheduleOffset", 1))
 55676  	}
 55677  	if s.WindowId == nil {
 55678  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 55679  	}
 55680  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 55681  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 55682  	}
 55683  
 55684  	if invalidParams.Len() > 0 {
 55685  		return invalidParams
 55686  	}
 55687  	return nil
 55688  }
 55689  
 55690  // SetAllowUnassociatedTargets sets the AllowUnassociatedTargets field's value.
 55691  func (s *UpdateMaintenanceWindowInput) SetAllowUnassociatedTargets(v bool) *UpdateMaintenanceWindowInput {
 55692  	s.AllowUnassociatedTargets = &v
 55693  	return s
 55694  }
 55695  
 55696  // SetCutoff sets the Cutoff field's value.
 55697  func (s *UpdateMaintenanceWindowInput) SetCutoff(v int64) *UpdateMaintenanceWindowInput {
 55698  	s.Cutoff = &v
 55699  	return s
 55700  }
 55701  
 55702  // SetDescription sets the Description field's value.
 55703  func (s *UpdateMaintenanceWindowInput) SetDescription(v string) *UpdateMaintenanceWindowInput {
 55704  	s.Description = &v
 55705  	return s
 55706  }
 55707  
 55708  // SetDuration sets the Duration field's value.
 55709  func (s *UpdateMaintenanceWindowInput) SetDuration(v int64) *UpdateMaintenanceWindowInput {
 55710  	s.Duration = &v
 55711  	return s
 55712  }
 55713  
 55714  // SetEnabled sets the Enabled field's value.
 55715  func (s *UpdateMaintenanceWindowInput) SetEnabled(v bool) *UpdateMaintenanceWindowInput {
 55716  	s.Enabled = &v
 55717  	return s
 55718  }
 55719  
 55720  // SetEndDate sets the EndDate field's value.
 55721  func (s *UpdateMaintenanceWindowInput) SetEndDate(v string) *UpdateMaintenanceWindowInput {
 55722  	s.EndDate = &v
 55723  	return s
 55724  }
 55725  
 55726  // SetName sets the Name field's value.
 55727  func (s *UpdateMaintenanceWindowInput) SetName(v string) *UpdateMaintenanceWindowInput {
 55728  	s.Name = &v
 55729  	return s
 55730  }
 55731  
 55732  // SetReplace sets the Replace field's value.
 55733  func (s *UpdateMaintenanceWindowInput) SetReplace(v bool) *UpdateMaintenanceWindowInput {
 55734  	s.Replace = &v
 55735  	return s
 55736  }
 55737  
 55738  // SetSchedule sets the Schedule field's value.
 55739  func (s *UpdateMaintenanceWindowInput) SetSchedule(v string) *UpdateMaintenanceWindowInput {
 55740  	s.Schedule = &v
 55741  	return s
 55742  }
 55743  
 55744  // SetScheduleOffset sets the ScheduleOffset field's value.
 55745  func (s *UpdateMaintenanceWindowInput) SetScheduleOffset(v int64) *UpdateMaintenanceWindowInput {
 55746  	s.ScheduleOffset = &v
 55747  	return s
 55748  }
 55749  
 55750  // SetScheduleTimezone sets the ScheduleTimezone field's value.
 55751  func (s *UpdateMaintenanceWindowInput) SetScheduleTimezone(v string) *UpdateMaintenanceWindowInput {
 55752  	s.ScheduleTimezone = &v
 55753  	return s
 55754  }
 55755  
 55756  // SetStartDate sets the StartDate field's value.
 55757  func (s *UpdateMaintenanceWindowInput) SetStartDate(v string) *UpdateMaintenanceWindowInput {
 55758  	s.StartDate = &v
 55759  	return s
 55760  }
 55761  
 55762  // SetWindowId sets the WindowId field's value.
 55763  func (s *UpdateMaintenanceWindowInput) SetWindowId(v string) *UpdateMaintenanceWindowInput {
 55764  	s.WindowId = &v
 55765  	return s
 55766  }
 55767  
 55768  type UpdateMaintenanceWindowOutput struct {
 55769  	_ struct{} `type:"structure"`
 55770  
 55771  	// Whether targets must be registered with the maintenance window before tasks
 55772  	// can be defined for those targets.
 55773  	AllowUnassociatedTargets *bool `type:"boolean"`
 55774  
 55775  	// The number of hours before the end of the maintenance window that Amazon
 55776  	// Web Services Systems Manager stops scheduling new tasks for execution.
 55777  	Cutoff *int64 `type:"integer"`
 55778  
 55779  	// An optional description of the update.
 55780  	//
 55781  	// Description is a sensitive parameter and its value will be
 55782  	// replaced with "sensitive" in string returned by UpdateMaintenanceWindowOutput's
 55783  	// String and GoString methods.
 55784  	Description *string `min:"1" type:"string" sensitive:"true"`
 55785  
 55786  	// The duration of the maintenance window in hours.
 55787  	Duration *int64 `min:"1" type:"integer"`
 55788  
 55789  	// Whether the maintenance window is enabled.
 55790  	Enabled *bool `type:"boolean"`
 55791  
 55792  	// The date and time, in ISO-8601 Extended format, for when the maintenance
 55793  	// window is scheduled to become inactive. The maintenance window won't run
 55794  	// after this specified time.
 55795  	EndDate *string `type:"string"`
 55796  
 55797  	// The name of the maintenance window.
 55798  	Name *string `min:"3" type:"string"`
 55799  
 55800  	// The schedule of the maintenance window in the form of a cron or rate expression.
 55801  	Schedule *string `min:"1" type:"string"`
 55802  
 55803  	// The number of days to wait to run a maintenance window after the scheduled
 55804  	// cron expression date and time.
 55805  	ScheduleOffset *int64 `min:"1" type:"integer"`
 55806  
 55807  	// The time zone that the scheduled maintenance window executions are based
 55808  	// on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles",
 55809  	// "UTC", or "Asia/Seoul". For more information, see the Time Zone Database
 55810  	// (https://www.iana.org/time-zones) on the IANA website.
 55811  	ScheduleTimezone *string `type:"string"`
 55812  
 55813  	// The date and time, in ISO-8601 Extended format, for when the maintenance
 55814  	// window is scheduled to become active. The maintenance window won't run before
 55815  	// this specified time.
 55816  	StartDate *string `type:"string"`
 55817  
 55818  	// The ID of the created maintenance window.
 55819  	WindowId *string `min:"20" type:"string"`
 55820  }
 55821  
 55822  // String returns the string representation.
 55823  //
 55824  // API parameter values that are decorated as "sensitive" in the API will not
 55825  // be included in the string output. The member name will be present, but the
 55826  // value will be replaced with "sensitive".
 55827  func (s UpdateMaintenanceWindowOutput) String() string {
 55828  	return awsutil.Prettify(s)
 55829  }
 55830  
 55831  // GoString returns the string representation.
 55832  //
 55833  // API parameter values that are decorated as "sensitive" in the API will not
 55834  // be included in the string output. The member name will be present, but the
 55835  // value will be replaced with "sensitive".
 55836  func (s UpdateMaintenanceWindowOutput) GoString() string {
 55837  	return s.String()
 55838  }
 55839  
 55840  // SetAllowUnassociatedTargets sets the AllowUnassociatedTargets field's value.
 55841  func (s *UpdateMaintenanceWindowOutput) SetAllowUnassociatedTargets(v bool) *UpdateMaintenanceWindowOutput {
 55842  	s.AllowUnassociatedTargets = &v
 55843  	return s
 55844  }
 55845  
 55846  // SetCutoff sets the Cutoff field's value.
 55847  func (s *UpdateMaintenanceWindowOutput) SetCutoff(v int64) *UpdateMaintenanceWindowOutput {
 55848  	s.Cutoff = &v
 55849  	return s
 55850  }
 55851  
 55852  // SetDescription sets the Description field's value.
 55853  func (s *UpdateMaintenanceWindowOutput) SetDescription(v string) *UpdateMaintenanceWindowOutput {
 55854  	s.Description = &v
 55855  	return s
 55856  }
 55857  
 55858  // SetDuration sets the Duration field's value.
 55859  func (s *UpdateMaintenanceWindowOutput) SetDuration(v int64) *UpdateMaintenanceWindowOutput {
 55860  	s.Duration = &v
 55861  	return s
 55862  }
 55863  
 55864  // SetEnabled sets the Enabled field's value.
 55865  func (s *UpdateMaintenanceWindowOutput) SetEnabled(v bool) *UpdateMaintenanceWindowOutput {
 55866  	s.Enabled = &v
 55867  	return s
 55868  }
 55869  
 55870  // SetEndDate sets the EndDate field's value.
 55871  func (s *UpdateMaintenanceWindowOutput) SetEndDate(v string) *UpdateMaintenanceWindowOutput {
 55872  	s.EndDate = &v
 55873  	return s
 55874  }
 55875  
 55876  // SetName sets the Name field's value.
 55877  func (s *UpdateMaintenanceWindowOutput) SetName(v string) *UpdateMaintenanceWindowOutput {
 55878  	s.Name = &v
 55879  	return s
 55880  }
 55881  
 55882  // SetSchedule sets the Schedule field's value.
 55883  func (s *UpdateMaintenanceWindowOutput) SetSchedule(v string) *UpdateMaintenanceWindowOutput {
 55884  	s.Schedule = &v
 55885  	return s
 55886  }
 55887  
 55888  // SetScheduleOffset sets the ScheduleOffset field's value.
 55889  func (s *UpdateMaintenanceWindowOutput) SetScheduleOffset(v int64) *UpdateMaintenanceWindowOutput {
 55890  	s.ScheduleOffset = &v
 55891  	return s
 55892  }
 55893  
 55894  // SetScheduleTimezone sets the ScheduleTimezone field's value.
 55895  func (s *UpdateMaintenanceWindowOutput) SetScheduleTimezone(v string) *UpdateMaintenanceWindowOutput {
 55896  	s.ScheduleTimezone = &v
 55897  	return s
 55898  }
 55899  
 55900  // SetStartDate sets the StartDate field's value.
 55901  func (s *UpdateMaintenanceWindowOutput) SetStartDate(v string) *UpdateMaintenanceWindowOutput {
 55902  	s.StartDate = &v
 55903  	return s
 55904  }
 55905  
 55906  // SetWindowId sets the WindowId field's value.
 55907  func (s *UpdateMaintenanceWindowOutput) SetWindowId(v string) *UpdateMaintenanceWindowOutput {
 55908  	s.WindowId = &v
 55909  	return s
 55910  }
 55911  
 55912  type UpdateMaintenanceWindowTargetInput struct {
 55913  	_ struct{} `type:"structure"`
 55914  
 55915  	// An optional description for the update.
 55916  	//
 55917  	// Description is a sensitive parameter and its value will be
 55918  	// replaced with "sensitive" in string returned by UpdateMaintenanceWindowTargetInput's
 55919  	// String and GoString methods.
 55920  	Description *string `min:"1" type:"string" sensitive:"true"`
 55921  
 55922  	// A name for the update.
 55923  	Name *string `min:"3" type:"string"`
 55924  
 55925  	// User-provided value that will be included in any Amazon CloudWatch Events
 55926  	// events raised while running tasks for these targets in this maintenance window.
 55927  	//
 55928  	// OwnerInformation is a sensitive parameter and its value will be
 55929  	// replaced with "sensitive" in string returned by UpdateMaintenanceWindowTargetInput's
 55930  	// String and GoString methods.
 55931  	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
 55932  
 55933  	// If True, then all fields that are required by the RegisterTargetWithMaintenanceWindow
 55934  	// operation are also required for this API request. Optional fields that aren't
 55935  	// specified are set to null.
 55936  	Replace *bool `type:"boolean"`
 55937  
 55938  	// The targets to add or replace.
 55939  	Targets []*Target `type:"list"`
 55940  
 55941  	// The maintenance window ID with which to modify the target.
 55942  	//
 55943  	// WindowId is a required field
 55944  	WindowId *string `min:"20" type:"string" required:"true"`
 55945  
 55946  	// The target ID to modify.
 55947  	//
 55948  	// WindowTargetId is a required field
 55949  	WindowTargetId *string `min:"36" type:"string" required:"true"`
 55950  }
 55951  
 55952  // String returns the string representation.
 55953  //
 55954  // API parameter values that are decorated as "sensitive" in the API will not
 55955  // be included in the string output. The member name will be present, but the
 55956  // value will be replaced with "sensitive".
 55957  func (s UpdateMaintenanceWindowTargetInput) String() string {
 55958  	return awsutil.Prettify(s)
 55959  }
 55960  
 55961  // GoString returns the string representation.
 55962  //
 55963  // API parameter values that are decorated as "sensitive" in the API will not
 55964  // be included in the string output. The member name will be present, but the
 55965  // value will be replaced with "sensitive".
 55966  func (s UpdateMaintenanceWindowTargetInput) GoString() string {
 55967  	return s.String()
 55968  }
 55969  
 55970  // Validate inspects the fields of the type to determine if they are valid.
 55971  func (s *UpdateMaintenanceWindowTargetInput) Validate() error {
 55972  	invalidParams := request.ErrInvalidParams{Context: "UpdateMaintenanceWindowTargetInput"}
 55973  	if s.Description != nil && len(*s.Description) < 1 {
 55974  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 55975  	}
 55976  	if s.Name != nil && len(*s.Name) < 3 {
 55977  		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
 55978  	}
 55979  	if s.OwnerInformation != nil && len(*s.OwnerInformation) < 1 {
 55980  		invalidParams.Add(request.NewErrParamMinLen("OwnerInformation", 1))
 55981  	}
 55982  	if s.WindowId == nil {
 55983  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 55984  	}
 55985  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 55986  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 55987  	}
 55988  	if s.WindowTargetId == nil {
 55989  		invalidParams.Add(request.NewErrParamRequired("WindowTargetId"))
 55990  	}
 55991  	if s.WindowTargetId != nil && len(*s.WindowTargetId) < 36 {
 55992  		invalidParams.Add(request.NewErrParamMinLen("WindowTargetId", 36))
 55993  	}
 55994  	if s.Targets != nil {
 55995  		for i, v := range s.Targets {
 55996  			if v == nil {
 55997  				continue
 55998  			}
 55999  			if err := v.Validate(); err != nil {
 56000  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 56001  			}
 56002  		}
 56003  	}
 56004  
 56005  	if invalidParams.Len() > 0 {
 56006  		return invalidParams
 56007  	}
 56008  	return nil
 56009  }
 56010  
 56011  // SetDescription sets the Description field's value.
 56012  func (s *UpdateMaintenanceWindowTargetInput) SetDescription(v string) *UpdateMaintenanceWindowTargetInput {
 56013  	s.Description = &v
 56014  	return s
 56015  }
 56016  
 56017  // SetName sets the Name field's value.
 56018  func (s *UpdateMaintenanceWindowTargetInput) SetName(v string) *UpdateMaintenanceWindowTargetInput {
 56019  	s.Name = &v
 56020  	return s
 56021  }
 56022  
 56023  // SetOwnerInformation sets the OwnerInformation field's value.
 56024  func (s *UpdateMaintenanceWindowTargetInput) SetOwnerInformation(v string) *UpdateMaintenanceWindowTargetInput {
 56025  	s.OwnerInformation = &v
 56026  	return s
 56027  }
 56028  
 56029  // SetReplace sets the Replace field's value.
 56030  func (s *UpdateMaintenanceWindowTargetInput) SetReplace(v bool) *UpdateMaintenanceWindowTargetInput {
 56031  	s.Replace = &v
 56032  	return s
 56033  }
 56034  
 56035  // SetTargets sets the Targets field's value.
 56036  func (s *UpdateMaintenanceWindowTargetInput) SetTargets(v []*Target) *UpdateMaintenanceWindowTargetInput {
 56037  	s.Targets = v
 56038  	return s
 56039  }
 56040  
 56041  // SetWindowId sets the WindowId field's value.
 56042  func (s *UpdateMaintenanceWindowTargetInput) SetWindowId(v string) *UpdateMaintenanceWindowTargetInput {
 56043  	s.WindowId = &v
 56044  	return s
 56045  }
 56046  
 56047  // SetWindowTargetId sets the WindowTargetId field's value.
 56048  func (s *UpdateMaintenanceWindowTargetInput) SetWindowTargetId(v string) *UpdateMaintenanceWindowTargetInput {
 56049  	s.WindowTargetId = &v
 56050  	return s
 56051  }
 56052  
 56053  type UpdateMaintenanceWindowTargetOutput struct {
 56054  	_ struct{} `type:"structure"`
 56055  
 56056  	// The updated description.
 56057  	//
 56058  	// Description is a sensitive parameter and its value will be
 56059  	// replaced with "sensitive" in string returned by UpdateMaintenanceWindowTargetOutput's
 56060  	// String and GoString methods.
 56061  	Description *string `min:"1" type:"string" sensitive:"true"`
 56062  
 56063  	// The updated name.
 56064  	Name *string `min:"3" type:"string"`
 56065  
 56066  	// The updated owner.
 56067  	//
 56068  	// OwnerInformation is a sensitive parameter and its value will be
 56069  	// replaced with "sensitive" in string returned by UpdateMaintenanceWindowTargetOutput's
 56070  	// String and GoString methods.
 56071  	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
 56072  
 56073  	// The updated targets.
 56074  	Targets []*Target `type:"list"`
 56075  
 56076  	// The maintenance window ID specified in the update request.
 56077  	WindowId *string `min:"20" type:"string"`
 56078  
 56079  	// The target ID specified in the update request.
 56080  	WindowTargetId *string `min:"36" type:"string"`
 56081  }
 56082  
 56083  // String returns the string representation.
 56084  //
 56085  // API parameter values that are decorated as "sensitive" in the API will not
 56086  // be included in the string output. The member name will be present, but the
 56087  // value will be replaced with "sensitive".
 56088  func (s UpdateMaintenanceWindowTargetOutput) String() string {
 56089  	return awsutil.Prettify(s)
 56090  }
 56091  
 56092  // GoString returns the string representation.
 56093  //
 56094  // API parameter values that are decorated as "sensitive" in the API will not
 56095  // be included in the string output. The member name will be present, but the
 56096  // value will be replaced with "sensitive".
 56097  func (s UpdateMaintenanceWindowTargetOutput) GoString() string {
 56098  	return s.String()
 56099  }
 56100  
 56101  // SetDescription sets the Description field's value.
 56102  func (s *UpdateMaintenanceWindowTargetOutput) SetDescription(v string) *UpdateMaintenanceWindowTargetOutput {
 56103  	s.Description = &v
 56104  	return s
 56105  }
 56106  
 56107  // SetName sets the Name field's value.
 56108  func (s *UpdateMaintenanceWindowTargetOutput) SetName(v string) *UpdateMaintenanceWindowTargetOutput {
 56109  	s.Name = &v
 56110  	return s
 56111  }
 56112  
 56113  // SetOwnerInformation sets the OwnerInformation field's value.
 56114  func (s *UpdateMaintenanceWindowTargetOutput) SetOwnerInformation(v string) *UpdateMaintenanceWindowTargetOutput {
 56115  	s.OwnerInformation = &v
 56116  	return s
 56117  }
 56118  
 56119  // SetTargets sets the Targets field's value.
 56120  func (s *UpdateMaintenanceWindowTargetOutput) SetTargets(v []*Target) *UpdateMaintenanceWindowTargetOutput {
 56121  	s.Targets = v
 56122  	return s
 56123  }
 56124  
 56125  // SetWindowId sets the WindowId field's value.
 56126  func (s *UpdateMaintenanceWindowTargetOutput) SetWindowId(v string) *UpdateMaintenanceWindowTargetOutput {
 56127  	s.WindowId = &v
 56128  	return s
 56129  }
 56130  
 56131  // SetWindowTargetId sets the WindowTargetId field's value.
 56132  func (s *UpdateMaintenanceWindowTargetOutput) SetWindowTargetId(v string) *UpdateMaintenanceWindowTargetOutput {
 56133  	s.WindowTargetId = &v
 56134  	return s
 56135  }
 56136  
 56137  type UpdateMaintenanceWindowTaskInput struct {
 56138  	_ struct{} `type:"structure"`
 56139  
 56140  	// Indicates whether tasks should continue to run after the cutoff time specified
 56141  	// in the maintenance windows is reached.
 56142  	//
 56143  	//    * CONTINUE_TASK: When the cutoff time is reached, any tasks that are running
 56144  	//    continue. The default value.
 56145  	//
 56146  	//    * CANCEL_TASK: For Automation, Lambda, Step Functions tasks: When the
 56147  	//    cutoff time is reached, any task invocations that are already running
 56148  	//    continue, but no new task invocations are started. For Run Command tasks:
 56149  	//    When the cutoff time is reached, the system sends a CancelCommand operation
 56150  	//    that attempts to cancel the command associated with the task. However,
 56151  	//    there is no guarantee that the command will be terminated and the underlying
 56152  	//    process stopped. The status for tasks that are not completed is TIMED_OUT.
 56153  	CutoffBehavior *string `type:"string" enum:"MaintenanceWindowTaskCutoffBehavior"`
 56154  
 56155  	// The new task description to specify.
 56156  	//
 56157  	// Description is a sensitive parameter and its value will be
 56158  	// replaced with "sensitive" in string returned by UpdateMaintenanceWindowTaskInput's
 56159  	// String and GoString methods.
 56160  	Description *string `min:"1" type:"string" sensitive:"true"`
 56161  
 56162  	// The new logging location in Amazon S3 to specify.
 56163  	//
 56164  	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
 56165  	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
 56166  	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
 56167  	// information about how Amazon Web Services Systems Manager handles these options
 56168  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 56169  	LoggingInfo *LoggingInfo `type:"structure"`
 56170  
 56171  	// The new MaxConcurrency value you want to specify. MaxConcurrency is the number
 56172  	// of targets that are allowed to run this task in parallel.
 56173  	//
 56174  	// For maintenance window tasks without a target specified, you can't supply
 56175  	// a value for this option. Instead, the system inserts a placeholder value
 56176  	// of 1, which may be reported in the response to this command. This value doesn't
 56177  	// affect the running of your task and can be ignored.
 56178  	MaxConcurrency *string `min:"1" type:"string"`
 56179  
 56180  	// The new MaxErrors value to specify. MaxErrors is the maximum number of errors
 56181  	// that are allowed before the task stops being scheduled.
 56182  	//
 56183  	// For maintenance window tasks without a target specified, you can't supply
 56184  	// a value for this option. Instead, the system inserts a placeholder value
 56185  	// of 1, which may be reported in the response to this command. This value doesn't
 56186  	// affect the running of your task and can be ignored.
 56187  	MaxErrors *string `min:"1" type:"string"`
 56188  
 56189  	// The new task name to specify.
 56190  	Name *string `min:"3" type:"string"`
 56191  
 56192  	// The new task priority to specify. The lower the number, the higher the priority.
 56193  	// Tasks that have the same priority are scheduled in parallel.
 56194  	Priority *int64 `type:"integer"`
 56195  
 56196  	// If True, then all fields that are required by the RegisterTaskWithMaintenanceWindow
 56197  	// operation are also required for this API request. Optional fields that aren't
 56198  	// specified are set to null.
 56199  	Replace *bool `type:"boolean"`
 56200  
 56201  	// The Amazon Resource Name (ARN) of the IAM service role for Amazon Web Services
 56202  	// Systems Manager to assume when running a maintenance window task. If you
 56203  	// do not specify a service role ARN, Systems Manager uses your account's service-linked
 56204  	// role. If no service-linked role for Systems Manager exists in your account,
 56205  	// it is created when you run RegisterTaskWithMaintenanceWindow.
 56206  	//
 56207  	// For more information, see the following topics in the in the Amazon Web Services
 56208  	// Systems Manager User Guide:
 56209  	//
 56210  	//    * Using service-linked roles for Systems Manager (https://docs.aws.amazon.com/systems-manager/latest/userguide/using-service-linked-roles.html#slr-permissions)
 56211  	//
 56212  	//    * Should I use a service-linked role or a custom service role to run maintenance
 56213  	//    window tasks? (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html#maintenance-window-tasks-service-role)
 56214  	ServiceRoleArn *string `type:"string"`
 56215  
 56216  	// The targets (either instances or tags) to modify. Instances are specified
 56217  	// using the format Key=instanceids,Values=instanceID_1,instanceID_2. Tags are
 56218  	// specified using the format Key=tag_name,Values=tag_value.
 56219  	//
 56220  	// One or more targets must be specified for maintenance window Run Command-type
 56221  	// tasks. Depending on the task, targets are optional for other maintenance
 56222  	// window task types (Automation, Lambda, and Step Functions). For more information
 56223  	// about running tasks that don't specify targets, see Registering maintenance
 56224  	// window tasks without targets (https://docs.aws.amazon.com/systems-manager/latest/userguide/maintenance-windows-targetless-tasks.html)
 56225  	// in the Amazon Web Services Systems Manager User Guide.
 56226  	Targets []*Target `type:"list"`
 56227  
 56228  	// The task ARN to modify.
 56229  	TaskArn *string `min:"1" type:"string"`
 56230  
 56231  	// The parameters that the task should use during execution. Populate only the
 56232  	// fields that match the task type. All other fields should be empty.
 56233  	//
 56234  	// When you update a maintenance window task that has options specified in TaskInvocationParameters,
 56235  	// you must provide again all the TaskInvocationParameters values that you want
 56236  	// to retain. The values you don't specify again are removed. For example, suppose
 56237  	// that when you registered a Run Command task, you specified TaskInvocationParameters
 56238  	// values for Comment, NotificationConfig, and OutputS3BucketName. If you update
 56239  	// the maintenance window task and specify only a different OutputS3BucketName
 56240  	// value, the values for Comment and NotificationConfig are removed.
 56241  	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters `type:"structure"`
 56242  
 56243  	// The parameters to modify.
 56244  	//
 56245  	// TaskParameters has been deprecated. To specify parameters to pass to a task
 56246  	// when it runs, instead use the Parameters option in the TaskInvocationParameters
 56247  	// structure. For information about how Systems Manager handles these options
 56248  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 56249  	//
 56250  	// The map has the following format:
 56251  	//
 56252  	// Key: string, between 1 and 255 characters
 56253  	//
 56254  	// Value: an array of strings, each string is between 1 and 255 characters
 56255  	//
 56256  	// TaskParameters is a sensitive parameter and its value will be
 56257  	// replaced with "sensitive" in string returned by UpdateMaintenanceWindowTaskInput's
 56258  	// String and GoString methods.
 56259  	TaskParameters map[string]*MaintenanceWindowTaskParameterValueExpression `type:"map" sensitive:"true"`
 56260  
 56261  	// The maintenance window ID that contains the task to modify.
 56262  	//
 56263  	// WindowId is a required field
 56264  	WindowId *string `min:"20" type:"string" required:"true"`
 56265  
 56266  	// The task ID to modify.
 56267  	//
 56268  	// WindowTaskId is a required field
 56269  	WindowTaskId *string `min:"36" type:"string" required:"true"`
 56270  }
 56271  
 56272  // String returns the string representation.
 56273  //
 56274  // API parameter values that are decorated as "sensitive" in the API will not
 56275  // be included in the string output. The member name will be present, but the
 56276  // value will be replaced with "sensitive".
 56277  func (s UpdateMaintenanceWindowTaskInput) String() string {
 56278  	return awsutil.Prettify(s)
 56279  }
 56280  
 56281  // GoString returns the string representation.
 56282  //
 56283  // API parameter values that are decorated as "sensitive" in the API will not
 56284  // be included in the string output. The member name will be present, but the
 56285  // value will be replaced with "sensitive".
 56286  func (s UpdateMaintenanceWindowTaskInput) GoString() string {
 56287  	return s.String()
 56288  }
 56289  
 56290  // Validate inspects the fields of the type to determine if they are valid.
 56291  func (s *UpdateMaintenanceWindowTaskInput) Validate() error {
 56292  	invalidParams := request.ErrInvalidParams{Context: "UpdateMaintenanceWindowTaskInput"}
 56293  	if s.Description != nil && len(*s.Description) < 1 {
 56294  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 56295  	}
 56296  	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
 56297  		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
 56298  	}
 56299  	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
 56300  		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
 56301  	}
 56302  	if s.Name != nil && len(*s.Name) < 3 {
 56303  		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
 56304  	}
 56305  	if s.TaskArn != nil && len(*s.TaskArn) < 1 {
 56306  		invalidParams.Add(request.NewErrParamMinLen("TaskArn", 1))
 56307  	}
 56308  	if s.WindowId == nil {
 56309  		invalidParams.Add(request.NewErrParamRequired("WindowId"))
 56310  	}
 56311  	if s.WindowId != nil && len(*s.WindowId) < 20 {
 56312  		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
 56313  	}
 56314  	if s.WindowTaskId == nil {
 56315  		invalidParams.Add(request.NewErrParamRequired("WindowTaskId"))
 56316  	}
 56317  	if s.WindowTaskId != nil && len(*s.WindowTaskId) < 36 {
 56318  		invalidParams.Add(request.NewErrParamMinLen("WindowTaskId", 36))
 56319  	}
 56320  	if s.LoggingInfo != nil {
 56321  		if err := s.LoggingInfo.Validate(); err != nil {
 56322  			invalidParams.AddNested("LoggingInfo", err.(request.ErrInvalidParams))
 56323  		}
 56324  	}
 56325  	if s.Targets != nil {
 56326  		for i, v := range s.Targets {
 56327  			if v == nil {
 56328  				continue
 56329  			}
 56330  			if err := v.Validate(); err != nil {
 56331  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
 56332  			}
 56333  		}
 56334  	}
 56335  	if s.TaskInvocationParameters != nil {
 56336  		if err := s.TaskInvocationParameters.Validate(); err != nil {
 56337  			invalidParams.AddNested("TaskInvocationParameters", err.(request.ErrInvalidParams))
 56338  		}
 56339  	}
 56340  
 56341  	if invalidParams.Len() > 0 {
 56342  		return invalidParams
 56343  	}
 56344  	return nil
 56345  }
 56346  
 56347  // SetCutoffBehavior sets the CutoffBehavior field's value.
 56348  func (s *UpdateMaintenanceWindowTaskInput) SetCutoffBehavior(v string) *UpdateMaintenanceWindowTaskInput {
 56349  	s.CutoffBehavior = &v
 56350  	return s
 56351  }
 56352  
 56353  // SetDescription sets the Description field's value.
 56354  func (s *UpdateMaintenanceWindowTaskInput) SetDescription(v string) *UpdateMaintenanceWindowTaskInput {
 56355  	s.Description = &v
 56356  	return s
 56357  }
 56358  
 56359  // SetLoggingInfo sets the LoggingInfo field's value.
 56360  func (s *UpdateMaintenanceWindowTaskInput) SetLoggingInfo(v *LoggingInfo) *UpdateMaintenanceWindowTaskInput {
 56361  	s.LoggingInfo = v
 56362  	return s
 56363  }
 56364  
 56365  // SetMaxConcurrency sets the MaxConcurrency field's value.
 56366  func (s *UpdateMaintenanceWindowTaskInput) SetMaxConcurrency(v string) *UpdateMaintenanceWindowTaskInput {
 56367  	s.MaxConcurrency = &v
 56368  	return s
 56369  }
 56370  
 56371  // SetMaxErrors sets the MaxErrors field's value.
 56372  func (s *UpdateMaintenanceWindowTaskInput) SetMaxErrors(v string) *UpdateMaintenanceWindowTaskInput {
 56373  	s.MaxErrors = &v
 56374  	return s
 56375  }
 56376  
 56377  // SetName sets the Name field's value.
 56378  func (s *UpdateMaintenanceWindowTaskInput) SetName(v string) *UpdateMaintenanceWindowTaskInput {
 56379  	s.Name = &v
 56380  	return s
 56381  }
 56382  
 56383  // SetPriority sets the Priority field's value.
 56384  func (s *UpdateMaintenanceWindowTaskInput) SetPriority(v int64) *UpdateMaintenanceWindowTaskInput {
 56385  	s.Priority = &v
 56386  	return s
 56387  }
 56388  
 56389  // SetReplace sets the Replace field's value.
 56390  func (s *UpdateMaintenanceWindowTaskInput) SetReplace(v bool) *UpdateMaintenanceWindowTaskInput {
 56391  	s.Replace = &v
 56392  	return s
 56393  }
 56394  
 56395  // SetServiceRoleArn sets the ServiceRoleArn field's value.
 56396  func (s *UpdateMaintenanceWindowTaskInput) SetServiceRoleArn(v string) *UpdateMaintenanceWindowTaskInput {
 56397  	s.ServiceRoleArn = &v
 56398  	return s
 56399  }
 56400  
 56401  // SetTargets sets the Targets field's value.
 56402  func (s *UpdateMaintenanceWindowTaskInput) SetTargets(v []*Target) *UpdateMaintenanceWindowTaskInput {
 56403  	s.Targets = v
 56404  	return s
 56405  }
 56406  
 56407  // SetTaskArn sets the TaskArn field's value.
 56408  func (s *UpdateMaintenanceWindowTaskInput) SetTaskArn(v string) *UpdateMaintenanceWindowTaskInput {
 56409  	s.TaskArn = &v
 56410  	return s
 56411  }
 56412  
 56413  // SetTaskInvocationParameters sets the TaskInvocationParameters field's value.
 56414  func (s *UpdateMaintenanceWindowTaskInput) SetTaskInvocationParameters(v *MaintenanceWindowTaskInvocationParameters) *UpdateMaintenanceWindowTaskInput {
 56415  	s.TaskInvocationParameters = v
 56416  	return s
 56417  }
 56418  
 56419  // SetTaskParameters sets the TaskParameters field's value.
 56420  func (s *UpdateMaintenanceWindowTaskInput) SetTaskParameters(v map[string]*MaintenanceWindowTaskParameterValueExpression) *UpdateMaintenanceWindowTaskInput {
 56421  	s.TaskParameters = v
 56422  	return s
 56423  }
 56424  
 56425  // SetWindowId sets the WindowId field's value.
 56426  func (s *UpdateMaintenanceWindowTaskInput) SetWindowId(v string) *UpdateMaintenanceWindowTaskInput {
 56427  	s.WindowId = &v
 56428  	return s
 56429  }
 56430  
 56431  // SetWindowTaskId sets the WindowTaskId field's value.
 56432  func (s *UpdateMaintenanceWindowTaskInput) SetWindowTaskId(v string) *UpdateMaintenanceWindowTaskInput {
 56433  	s.WindowTaskId = &v
 56434  	return s
 56435  }
 56436  
 56437  type UpdateMaintenanceWindowTaskOutput struct {
 56438  	_ struct{} `type:"structure"`
 56439  
 56440  	// The specification for whether tasks should continue to run after the cutoff
 56441  	// time specified in the maintenance windows is reached.
 56442  	CutoffBehavior *string `type:"string" enum:"MaintenanceWindowTaskCutoffBehavior"`
 56443  
 56444  	// The updated task description.
 56445  	//
 56446  	// Description is a sensitive parameter and its value will be
 56447  	// replaced with "sensitive" in string returned by UpdateMaintenanceWindowTaskOutput's
 56448  	// String and GoString methods.
 56449  	Description *string `min:"1" type:"string" sensitive:"true"`
 56450  
 56451  	// The updated logging information in Amazon S3.
 56452  	//
 56453  	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
 56454  	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
 56455  	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
 56456  	// information about how Amazon Web Services Systems Manager handles these options
 56457  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 56458  	LoggingInfo *LoggingInfo `type:"structure"`
 56459  
 56460  	// The updated MaxConcurrency value.
 56461  	MaxConcurrency *string `min:"1" type:"string"`
 56462  
 56463  	// The updated MaxErrors value.
 56464  	MaxErrors *string `min:"1" type:"string"`
 56465  
 56466  	// The updated task name.
 56467  	Name *string `min:"3" type:"string"`
 56468  
 56469  	// The updated priority value.
 56470  	Priority *int64 `type:"integer"`
 56471  
 56472  	// The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
 56473  	// service role to use to publish Amazon Simple Notification Service (Amazon
 56474  	// SNS) notifications for maintenance window Run Command tasks.
 56475  	ServiceRoleArn *string `type:"string"`
 56476  
 56477  	// The updated target values.
 56478  	Targets []*Target `type:"list"`
 56479  
 56480  	// The updated task ARN value.
 56481  	TaskArn *string `min:"1" type:"string"`
 56482  
 56483  	// The updated parameter values.
 56484  	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters `type:"structure"`
 56485  
 56486  	// The updated parameter values.
 56487  	//
 56488  	// TaskParameters has been deprecated. To specify parameters to pass to a task
 56489  	// when it runs, instead use the Parameters option in the TaskInvocationParameters
 56490  	// structure. For information about how Systems Manager handles these options
 56491  	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
 56492  	//
 56493  	// TaskParameters is a sensitive parameter and its value will be
 56494  	// replaced with "sensitive" in string returned by UpdateMaintenanceWindowTaskOutput's
 56495  	// String and GoString methods.
 56496  	TaskParameters map[string]*MaintenanceWindowTaskParameterValueExpression `type:"map" sensitive:"true"`
 56497  
 56498  	// The ID of the maintenance window that was updated.
 56499  	WindowId *string `min:"20" type:"string"`
 56500  
 56501  	// The task ID of the maintenance window that was updated.
 56502  	WindowTaskId *string `min:"36" type:"string"`
 56503  }
 56504  
 56505  // String returns the string representation.
 56506  //
 56507  // API parameter values that are decorated as "sensitive" in the API will not
 56508  // be included in the string output. The member name will be present, but the
 56509  // value will be replaced with "sensitive".
 56510  func (s UpdateMaintenanceWindowTaskOutput) String() string {
 56511  	return awsutil.Prettify(s)
 56512  }
 56513  
 56514  // GoString returns the string representation.
 56515  //
 56516  // API parameter values that are decorated as "sensitive" in the API will not
 56517  // be included in the string output. The member name will be present, but the
 56518  // value will be replaced with "sensitive".
 56519  func (s UpdateMaintenanceWindowTaskOutput) GoString() string {
 56520  	return s.String()
 56521  }
 56522  
 56523  // SetCutoffBehavior sets the CutoffBehavior field's value.
 56524  func (s *UpdateMaintenanceWindowTaskOutput) SetCutoffBehavior(v string) *UpdateMaintenanceWindowTaskOutput {
 56525  	s.CutoffBehavior = &v
 56526  	return s
 56527  }
 56528  
 56529  // SetDescription sets the Description field's value.
 56530  func (s *UpdateMaintenanceWindowTaskOutput) SetDescription(v string) *UpdateMaintenanceWindowTaskOutput {
 56531  	s.Description = &v
 56532  	return s
 56533  }
 56534  
 56535  // SetLoggingInfo sets the LoggingInfo field's value.
 56536  func (s *UpdateMaintenanceWindowTaskOutput) SetLoggingInfo(v *LoggingInfo) *UpdateMaintenanceWindowTaskOutput {
 56537  	s.LoggingInfo = v
 56538  	return s
 56539  }
 56540  
 56541  // SetMaxConcurrency sets the MaxConcurrency field's value.
 56542  func (s *UpdateMaintenanceWindowTaskOutput) SetMaxConcurrency(v string) *UpdateMaintenanceWindowTaskOutput {
 56543  	s.MaxConcurrency = &v
 56544  	return s
 56545  }
 56546  
 56547  // SetMaxErrors sets the MaxErrors field's value.
 56548  func (s *UpdateMaintenanceWindowTaskOutput) SetMaxErrors(v string) *UpdateMaintenanceWindowTaskOutput {
 56549  	s.MaxErrors = &v
 56550  	return s
 56551  }
 56552  
 56553  // SetName sets the Name field's value.
 56554  func (s *UpdateMaintenanceWindowTaskOutput) SetName(v string) *UpdateMaintenanceWindowTaskOutput {
 56555  	s.Name = &v
 56556  	return s
 56557  }
 56558  
 56559  // SetPriority sets the Priority field's value.
 56560  func (s *UpdateMaintenanceWindowTaskOutput) SetPriority(v int64) *UpdateMaintenanceWindowTaskOutput {
 56561  	s.Priority = &v
 56562  	return s
 56563  }
 56564  
 56565  // SetServiceRoleArn sets the ServiceRoleArn field's value.
 56566  func (s *UpdateMaintenanceWindowTaskOutput) SetServiceRoleArn(v string) *UpdateMaintenanceWindowTaskOutput {
 56567  	s.ServiceRoleArn = &v
 56568  	return s
 56569  }
 56570  
 56571  // SetTargets sets the Targets field's value.
 56572  func (s *UpdateMaintenanceWindowTaskOutput) SetTargets(v []*Target) *UpdateMaintenanceWindowTaskOutput {
 56573  	s.Targets = v
 56574  	return s
 56575  }
 56576  
 56577  // SetTaskArn sets the TaskArn field's value.
 56578  func (s *UpdateMaintenanceWindowTaskOutput) SetTaskArn(v string) *UpdateMaintenanceWindowTaskOutput {
 56579  	s.TaskArn = &v
 56580  	return s
 56581  }
 56582  
 56583  // SetTaskInvocationParameters sets the TaskInvocationParameters field's value.
 56584  func (s *UpdateMaintenanceWindowTaskOutput) SetTaskInvocationParameters(v *MaintenanceWindowTaskInvocationParameters) *UpdateMaintenanceWindowTaskOutput {
 56585  	s.TaskInvocationParameters = v
 56586  	return s
 56587  }
 56588  
 56589  // SetTaskParameters sets the TaskParameters field's value.
 56590  func (s *UpdateMaintenanceWindowTaskOutput) SetTaskParameters(v map[string]*MaintenanceWindowTaskParameterValueExpression) *UpdateMaintenanceWindowTaskOutput {
 56591  	s.TaskParameters = v
 56592  	return s
 56593  }
 56594  
 56595  // SetWindowId sets the WindowId field's value.
 56596  func (s *UpdateMaintenanceWindowTaskOutput) SetWindowId(v string) *UpdateMaintenanceWindowTaskOutput {
 56597  	s.WindowId = &v
 56598  	return s
 56599  }
 56600  
 56601  // SetWindowTaskId sets the WindowTaskId field's value.
 56602  func (s *UpdateMaintenanceWindowTaskOutput) SetWindowTaskId(v string) *UpdateMaintenanceWindowTaskOutput {
 56603  	s.WindowTaskId = &v
 56604  	return s
 56605  }
 56606  
 56607  type UpdateManagedInstanceRoleInput struct {
 56608  	_ struct{} `type:"structure"`
 56609  
 56610  	// The IAM role you want to assign or change.
 56611  	//
 56612  	// IamRole is a required field
 56613  	IamRole *string `type:"string" required:"true"`
 56614  
 56615  	// The ID of the managed instance where you want to update the role.
 56616  	//
 56617  	// InstanceId is a required field
 56618  	InstanceId *string `type:"string" required:"true"`
 56619  }
 56620  
 56621  // String returns the string representation.
 56622  //
 56623  // API parameter values that are decorated as "sensitive" in the API will not
 56624  // be included in the string output. The member name will be present, but the
 56625  // value will be replaced with "sensitive".
 56626  func (s UpdateManagedInstanceRoleInput) String() string {
 56627  	return awsutil.Prettify(s)
 56628  }
 56629  
 56630  // GoString returns the string representation.
 56631  //
 56632  // API parameter values that are decorated as "sensitive" in the API will not
 56633  // be included in the string output. The member name will be present, but the
 56634  // value will be replaced with "sensitive".
 56635  func (s UpdateManagedInstanceRoleInput) GoString() string {
 56636  	return s.String()
 56637  }
 56638  
 56639  // Validate inspects the fields of the type to determine if they are valid.
 56640  func (s *UpdateManagedInstanceRoleInput) Validate() error {
 56641  	invalidParams := request.ErrInvalidParams{Context: "UpdateManagedInstanceRoleInput"}
 56642  	if s.IamRole == nil {
 56643  		invalidParams.Add(request.NewErrParamRequired("IamRole"))
 56644  	}
 56645  	if s.InstanceId == nil {
 56646  		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
 56647  	}
 56648  
 56649  	if invalidParams.Len() > 0 {
 56650  		return invalidParams
 56651  	}
 56652  	return nil
 56653  }
 56654  
 56655  // SetIamRole sets the IamRole field's value.
 56656  func (s *UpdateManagedInstanceRoleInput) SetIamRole(v string) *UpdateManagedInstanceRoleInput {
 56657  	s.IamRole = &v
 56658  	return s
 56659  }
 56660  
 56661  // SetInstanceId sets the InstanceId field's value.
 56662  func (s *UpdateManagedInstanceRoleInput) SetInstanceId(v string) *UpdateManagedInstanceRoleInput {
 56663  	s.InstanceId = &v
 56664  	return s
 56665  }
 56666  
 56667  type UpdateManagedInstanceRoleOutput struct {
 56668  	_ struct{} `type:"structure"`
 56669  }
 56670  
 56671  // String returns the string representation.
 56672  //
 56673  // API parameter values that are decorated as "sensitive" in the API will not
 56674  // be included in the string output. The member name will be present, but the
 56675  // value will be replaced with "sensitive".
 56676  func (s UpdateManagedInstanceRoleOutput) String() string {
 56677  	return awsutil.Prettify(s)
 56678  }
 56679  
 56680  // GoString returns the string representation.
 56681  //
 56682  // API parameter values that are decorated as "sensitive" in the API will not
 56683  // be included in the string output. The member name will be present, but the
 56684  // value will be replaced with "sensitive".
 56685  func (s UpdateManagedInstanceRoleOutput) GoString() string {
 56686  	return s.String()
 56687  }
 56688  
 56689  type UpdateOpsItemInput struct {
 56690  	_ struct{} `type:"structure"`
 56691  
 56692  	// The time a runbook workflow ended. Currently reported only for the OpsItem
 56693  	// type /aws/changerequest.
 56694  	ActualEndTime *time.Time `type:"timestamp"`
 56695  
 56696  	// The time a runbook workflow started. Currently reported only for the OpsItem
 56697  	// type /aws/changerequest.
 56698  	ActualStartTime *time.Time `type:"timestamp"`
 56699  
 56700  	// Specify a new category for an OpsItem.
 56701  	Category *string `min:"1" type:"string"`
 56702  
 56703  	// Update the information about the OpsItem. Provide enough information so that
 56704  	// users reading this OpsItem for the first time understand the issue.
 56705  	Description *string `min:"1" type:"string"`
 56706  
 56707  	// The Amazon Resource Name (ARN) of an SNS topic where notifications are sent
 56708  	// when this OpsItem is edited or changed.
 56709  	Notifications []*OpsItemNotification `type:"list"`
 56710  
 56711  	// Add new keys or edit existing key-value pairs of the OperationalData map
 56712  	// in the OpsItem object.
 56713  	//
 56714  	// Operational data is custom data that provides useful reference details about
 56715  	// the OpsItem. For example, you can specify log files, error strings, license
 56716  	// keys, troubleshooting tips, or other relevant data. You enter operational
 56717  	// data as key-value pairs. The key has a maximum length of 128 characters.
 56718  	// The value has a maximum size of 20 KB.
 56719  	//
 56720  	// Operational data keys can't begin with the following: amazon, aws, amzn,
 56721  	// ssm, /amazon, /aws, /amzn, /ssm.
 56722  	//
 56723  	// You can choose to make the data searchable by other users in the account
 56724  	// or you can restrict search access. Searchable data means that all users with
 56725  	// access to the OpsItem Overview page (as provided by the DescribeOpsItems
 56726  	// API operation) can view and search on the specified data. Operational data
 56727  	// that isn't searchable is only viewable by users who have access to the OpsItem
 56728  	// (as provided by the GetOpsItem API operation).
 56729  	//
 56730  	// Use the /aws/resources key in OperationalData to specify a related resource
 56731  	// in the request. Use the /aws/automations key in OperationalData to associate
 56732  	// an Automation runbook with the OpsItem. To view Amazon Web Services CLI example
 56733  	// commands that use these keys, see Creating OpsItems manually (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-creating-OpsItems.html#OpsCenter-manually-create-OpsItems)
 56734  	// in the Amazon Web Services Systems Manager User Guide.
 56735  	OperationalData map[string]*OpsItemDataValue `type:"map"`
 56736  
 56737  	// Keys that you want to remove from the OperationalData map.
 56738  	OperationalDataToDelete []*string `type:"list"`
 56739  
 56740  	// The ID of the OpsItem.
 56741  	//
 56742  	// OpsItemId is a required field
 56743  	OpsItemId *string `type:"string" required:"true"`
 56744  
 56745  	// The time specified in a change request for a runbook workflow to end. Currently
 56746  	// supported only for the OpsItem type /aws/changerequest.
 56747  	PlannedEndTime *time.Time `type:"timestamp"`
 56748  
 56749  	// The time specified in a change request for a runbook workflow to start. Currently
 56750  	// supported only for the OpsItem type /aws/changerequest.
 56751  	PlannedStartTime *time.Time `type:"timestamp"`
 56752  
 56753  	// The importance of this OpsItem in relation to other OpsItems in the system.
 56754  	Priority *int64 `min:"1" type:"integer"`
 56755  
 56756  	// One or more OpsItems that share something in common with the current OpsItems.
 56757  	// For example, related OpsItems can include OpsItems with similar error messages,
 56758  	// impacted resources, or statuses for the impacted resource.
 56759  	RelatedOpsItems []*RelatedOpsItem `type:"list"`
 56760  
 56761  	// Specify a new severity for an OpsItem.
 56762  	Severity *string `min:"1" type:"string"`
 56763  
 56764  	// The OpsItem status. Status can be Open, In Progress, or Resolved. For more
 56765  	// information, see Editing OpsItem details (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-working-with-OpsItems.html#OpsCenter-working-with-OpsItems-editing-details)
 56766  	// in the Amazon Web Services Systems Manager User Guide.
 56767  	Status *string `type:"string" enum:"OpsItemStatus"`
 56768  
 56769  	// A short heading that describes the nature of the OpsItem and the impacted
 56770  	// resource.
 56771  	Title *string `min:"1" type:"string"`
 56772  }
 56773  
 56774  // String returns the string representation.
 56775  //
 56776  // API parameter values that are decorated as "sensitive" in the API will not
 56777  // be included in the string output. The member name will be present, but the
 56778  // value will be replaced with "sensitive".
 56779  func (s UpdateOpsItemInput) String() string {
 56780  	return awsutil.Prettify(s)
 56781  }
 56782  
 56783  // GoString returns the string representation.
 56784  //
 56785  // API parameter values that are decorated as "sensitive" in the API will not
 56786  // be included in the string output. The member name will be present, but the
 56787  // value will be replaced with "sensitive".
 56788  func (s UpdateOpsItemInput) GoString() string {
 56789  	return s.String()
 56790  }
 56791  
 56792  // Validate inspects the fields of the type to determine if they are valid.
 56793  func (s *UpdateOpsItemInput) Validate() error {
 56794  	invalidParams := request.ErrInvalidParams{Context: "UpdateOpsItemInput"}
 56795  	if s.Category != nil && len(*s.Category) < 1 {
 56796  		invalidParams.Add(request.NewErrParamMinLen("Category", 1))
 56797  	}
 56798  	if s.Description != nil && len(*s.Description) < 1 {
 56799  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 56800  	}
 56801  	if s.OpsItemId == nil {
 56802  		invalidParams.Add(request.NewErrParamRequired("OpsItemId"))
 56803  	}
 56804  	if s.Priority != nil && *s.Priority < 1 {
 56805  		invalidParams.Add(request.NewErrParamMinValue("Priority", 1))
 56806  	}
 56807  	if s.Severity != nil && len(*s.Severity) < 1 {
 56808  		invalidParams.Add(request.NewErrParamMinLen("Severity", 1))
 56809  	}
 56810  	if s.Title != nil && len(*s.Title) < 1 {
 56811  		invalidParams.Add(request.NewErrParamMinLen("Title", 1))
 56812  	}
 56813  	if s.RelatedOpsItems != nil {
 56814  		for i, v := range s.RelatedOpsItems {
 56815  			if v == nil {
 56816  				continue
 56817  			}
 56818  			if err := v.Validate(); err != nil {
 56819  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RelatedOpsItems", i), err.(request.ErrInvalidParams))
 56820  			}
 56821  		}
 56822  	}
 56823  
 56824  	if invalidParams.Len() > 0 {
 56825  		return invalidParams
 56826  	}
 56827  	return nil
 56828  }
 56829  
 56830  // SetActualEndTime sets the ActualEndTime field's value.
 56831  func (s *UpdateOpsItemInput) SetActualEndTime(v time.Time) *UpdateOpsItemInput {
 56832  	s.ActualEndTime = &v
 56833  	return s
 56834  }
 56835  
 56836  // SetActualStartTime sets the ActualStartTime field's value.
 56837  func (s *UpdateOpsItemInput) SetActualStartTime(v time.Time) *UpdateOpsItemInput {
 56838  	s.ActualStartTime = &v
 56839  	return s
 56840  }
 56841  
 56842  // SetCategory sets the Category field's value.
 56843  func (s *UpdateOpsItemInput) SetCategory(v string) *UpdateOpsItemInput {
 56844  	s.Category = &v
 56845  	return s
 56846  }
 56847  
 56848  // SetDescription sets the Description field's value.
 56849  func (s *UpdateOpsItemInput) SetDescription(v string) *UpdateOpsItemInput {
 56850  	s.Description = &v
 56851  	return s
 56852  }
 56853  
 56854  // SetNotifications sets the Notifications field's value.
 56855  func (s *UpdateOpsItemInput) SetNotifications(v []*OpsItemNotification) *UpdateOpsItemInput {
 56856  	s.Notifications = v
 56857  	return s
 56858  }
 56859  
 56860  // SetOperationalData sets the OperationalData field's value.
 56861  func (s *UpdateOpsItemInput) SetOperationalData(v map[string]*OpsItemDataValue) *UpdateOpsItemInput {
 56862  	s.OperationalData = v
 56863  	return s
 56864  }
 56865  
 56866  // SetOperationalDataToDelete sets the OperationalDataToDelete field's value.
 56867  func (s *UpdateOpsItemInput) SetOperationalDataToDelete(v []*string) *UpdateOpsItemInput {
 56868  	s.OperationalDataToDelete = v
 56869  	return s
 56870  }
 56871  
 56872  // SetOpsItemId sets the OpsItemId field's value.
 56873  func (s *UpdateOpsItemInput) SetOpsItemId(v string) *UpdateOpsItemInput {
 56874  	s.OpsItemId = &v
 56875  	return s
 56876  }
 56877  
 56878  // SetPlannedEndTime sets the PlannedEndTime field's value.
 56879  func (s *UpdateOpsItemInput) SetPlannedEndTime(v time.Time) *UpdateOpsItemInput {
 56880  	s.PlannedEndTime = &v
 56881  	return s
 56882  }
 56883  
 56884  // SetPlannedStartTime sets the PlannedStartTime field's value.
 56885  func (s *UpdateOpsItemInput) SetPlannedStartTime(v time.Time) *UpdateOpsItemInput {
 56886  	s.PlannedStartTime = &v
 56887  	return s
 56888  }
 56889  
 56890  // SetPriority sets the Priority field's value.
 56891  func (s *UpdateOpsItemInput) SetPriority(v int64) *UpdateOpsItemInput {
 56892  	s.Priority = &v
 56893  	return s
 56894  }
 56895  
 56896  // SetRelatedOpsItems sets the RelatedOpsItems field's value.
 56897  func (s *UpdateOpsItemInput) SetRelatedOpsItems(v []*RelatedOpsItem) *UpdateOpsItemInput {
 56898  	s.RelatedOpsItems = v
 56899  	return s
 56900  }
 56901  
 56902  // SetSeverity sets the Severity field's value.
 56903  func (s *UpdateOpsItemInput) SetSeverity(v string) *UpdateOpsItemInput {
 56904  	s.Severity = &v
 56905  	return s
 56906  }
 56907  
 56908  // SetStatus sets the Status field's value.
 56909  func (s *UpdateOpsItemInput) SetStatus(v string) *UpdateOpsItemInput {
 56910  	s.Status = &v
 56911  	return s
 56912  }
 56913  
 56914  // SetTitle sets the Title field's value.
 56915  func (s *UpdateOpsItemInput) SetTitle(v string) *UpdateOpsItemInput {
 56916  	s.Title = &v
 56917  	return s
 56918  }
 56919  
 56920  type UpdateOpsItemOutput struct {
 56921  	_ struct{} `type:"structure"`
 56922  }
 56923  
 56924  // String returns the string representation.
 56925  //
 56926  // API parameter values that are decorated as "sensitive" in the API will not
 56927  // be included in the string output. The member name will be present, but the
 56928  // value will be replaced with "sensitive".
 56929  func (s UpdateOpsItemOutput) String() string {
 56930  	return awsutil.Prettify(s)
 56931  }
 56932  
 56933  // GoString returns the string representation.
 56934  //
 56935  // API parameter values that are decorated as "sensitive" in the API will not
 56936  // be included in the string output. The member name will be present, but the
 56937  // value will be replaced with "sensitive".
 56938  func (s UpdateOpsItemOutput) GoString() string {
 56939  	return s.String()
 56940  }
 56941  
 56942  type UpdateOpsMetadataInput struct {
 56943  	_ struct{} `type:"structure"`
 56944  
 56945  	// The metadata keys to delete from the OpsMetadata object.
 56946  	KeysToDelete []*string `min:"1" type:"list"`
 56947  
 56948  	// Metadata to add to an OpsMetadata object.
 56949  	MetadataToUpdate map[string]*MetadataValue `min:"1" type:"map"`
 56950  
 56951  	// The Amazon Resoure Name (ARN) of the OpsMetadata Object to update.
 56952  	//
 56953  	// OpsMetadataArn is a required field
 56954  	OpsMetadataArn *string `min:"1" type:"string" required:"true"`
 56955  }
 56956  
 56957  // String returns the string representation.
 56958  //
 56959  // API parameter values that are decorated as "sensitive" in the API will not
 56960  // be included in the string output. The member name will be present, but the
 56961  // value will be replaced with "sensitive".
 56962  func (s UpdateOpsMetadataInput) String() string {
 56963  	return awsutil.Prettify(s)
 56964  }
 56965  
 56966  // GoString returns the string representation.
 56967  //
 56968  // API parameter values that are decorated as "sensitive" in the API will not
 56969  // be included in the string output. The member name will be present, but the
 56970  // value will be replaced with "sensitive".
 56971  func (s UpdateOpsMetadataInput) GoString() string {
 56972  	return s.String()
 56973  }
 56974  
 56975  // Validate inspects the fields of the type to determine if they are valid.
 56976  func (s *UpdateOpsMetadataInput) Validate() error {
 56977  	invalidParams := request.ErrInvalidParams{Context: "UpdateOpsMetadataInput"}
 56978  	if s.KeysToDelete != nil && len(s.KeysToDelete) < 1 {
 56979  		invalidParams.Add(request.NewErrParamMinLen("KeysToDelete", 1))
 56980  	}
 56981  	if s.MetadataToUpdate != nil && len(s.MetadataToUpdate) < 1 {
 56982  		invalidParams.Add(request.NewErrParamMinLen("MetadataToUpdate", 1))
 56983  	}
 56984  	if s.OpsMetadataArn == nil {
 56985  		invalidParams.Add(request.NewErrParamRequired("OpsMetadataArn"))
 56986  	}
 56987  	if s.OpsMetadataArn != nil && len(*s.OpsMetadataArn) < 1 {
 56988  		invalidParams.Add(request.NewErrParamMinLen("OpsMetadataArn", 1))
 56989  	}
 56990  	if s.MetadataToUpdate != nil {
 56991  		for i, v := range s.MetadataToUpdate {
 56992  			if v == nil {
 56993  				continue
 56994  			}
 56995  			if err := v.Validate(); err != nil {
 56996  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MetadataToUpdate", i), err.(request.ErrInvalidParams))
 56997  			}
 56998  		}
 56999  	}
 57000  
 57001  	if invalidParams.Len() > 0 {
 57002  		return invalidParams
 57003  	}
 57004  	return nil
 57005  }
 57006  
 57007  // SetKeysToDelete sets the KeysToDelete field's value.
 57008  func (s *UpdateOpsMetadataInput) SetKeysToDelete(v []*string) *UpdateOpsMetadataInput {
 57009  	s.KeysToDelete = v
 57010  	return s
 57011  }
 57012  
 57013  // SetMetadataToUpdate sets the MetadataToUpdate field's value.
 57014  func (s *UpdateOpsMetadataInput) SetMetadataToUpdate(v map[string]*MetadataValue) *UpdateOpsMetadataInput {
 57015  	s.MetadataToUpdate = v
 57016  	return s
 57017  }
 57018  
 57019  // SetOpsMetadataArn sets the OpsMetadataArn field's value.
 57020  func (s *UpdateOpsMetadataInput) SetOpsMetadataArn(v string) *UpdateOpsMetadataInput {
 57021  	s.OpsMetadataArn = &v
 57022  	return s
 57023  }
 57024  
 57025  type UpdateOpsMetadataOutput struct {
 57026  	_ struct{} `type:"structure"`
 57027  
 57028  	// The Amazon Resource Name (ARN) of the OpsMetadata Object that was updated.
 57029  	OpsMetadataArn *string `min:"1" type:"string"`
 57030  }
 57031  
 57032  // String returns the string representation.
 57033  //
 57034  // API parameter values that are decorated as "sensitive" in the API will not
 57035  // be included in the string output. The member name will be present, but the
 57036  // value will be replaced with "sensitive".
 57037  func (s UpdateOpsMetadataOutput) String() string {
 57038  	return awsutil.Prettify(s)
 57039  }
 57040  
 57041  // GoString returns the string representation.
 57042  //
 57043  // API parameter values that are decorated as "sensitive" in the API will not
 57044  // be included in the string output. The member name will be present, but the
 57045  // value will be replaced with "sensitive".
 57046  func (s UpdateOpsMetadataOutput) GoString() string {
 57047  	return s.String()
 57048  }
 57049  
 57050  // SetOpsMetadataArn sets the OpsMetadataArn field's value.
 57051  func (s *UpdateOpsMetadataOutput) SetOpsMetadataArn(v string) *UpdateOpsMetadataOutput {
 57052  	s.OpsMetadataArn = &v
 57053  	return s
 57054  }
 57055  
 57056  type UpdatePatchBaselineInput struct {
 57057  	_ struct{} `type:"structure"`
 57058  
 57059  	// A set of rules used to include patches in the baseline.
 57060  	ApprovalRules *PatchRuleGroup `type:"structure"`
 57061  
 57062  	// A list of explicitly approved patches for the baseline.
 57063  	//
 57064  	// For information about accepted formats for lists of approved patches and
 57065  	// rejected patches, see About package name formats for approved and rejected
 57066  	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
 57067  	// in the Amazon Web Services Systems Manager User Guide.
 57068  	ApprovedPatches []*string `type:"list"`
 57069  
 57070  	// Assigns a new compliance severity level to an existing patch baseline.
 57071  	ApprovedPatchesComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
 57072  
 57073  	// Indicates whether the list of approved patches includes non-security updates
 57074  	// that should be applied to the instances. The default value is false. Applies
 57075  	// to Linux instances only.
 57076  	ApprovedPatchesEnableNonSecurity *bool `type:"boolean"`
 57077  
 57078  	// The ID of the patch baseline to update.
 57079  	//
 57080  	// BaselineId is a required field
 57081  	BaselineId *string `min:"20" type:"string" required:"true"`
 57082  
 57083  	// A description of the patch baseline.
 57084  	Description *string `min:"1" type:"string"`
 57085  
 57086  	// A set of global filters used to include patches in the baseline.
 57087  	GlobalFilters *PatchFilterGroup `type:"structure"`
 57088  
 57089  	// The name of the patch baseline.
 57090  	Name *string `min:"3" type:"string"`
 57091  
 57092  	// A list of explicitly rejected patches for the baseline.
 57093  	//
 57094  	// For information about accepted formats for lists of approved patches and
 57095  	// rejected patches, see About package name formats for approved and rejected
 57096  	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
 57097  	// in the Amazon Web Services Systems Manager User Guide.
 57098  	RejectedPatches []*string `type:"list"`
 57099  
 57100  	// The action for Patch Manager to take on patches included in the RejectedPackages
 57101  	// list.
 57102  	//
 57103  	//    * ALLOW_AS_DEPENDENCY : A package in the Rejected patches list is installed
 57104  	//    only if it is a dependency of another package. It is considered compliant
 57105  	//    with the patch baseline, and its status is reported as InstalledOther.
 57106  	//    This is the default action if no option is specified.
 57107  	//
 57108  	//    * BLOCK : Packages in the RejectedPatches list, and packages that include
 57109  	//    them as dependencies, aren't installed under any circumstances. If a package
 57110  	//    was installed before it was added to the Rejected patches list, it is
 57111  	//    considered non-compliant with the patch baseline, and its status is reported
 57112  	//    as InstalledRejected.
 57113  	RejectedPatchesAction *string `type:"string" enum:"PatchAction"`
 57114  
 57115  	// If True, then all fields that are required by the CreatePatchBaseline operation
 57116  	// are also required for this API request. Optional fields that aren't specified
 57117  	// are set to null.
 57118  	Replace *bool `type:"boolean"`
 57119  
 57120  	// Information about the patches to use to update the instances, including target
 57121  	// operating systems and source repositories. Applies to Linux instances only.
 57122  	Sources []*PatchSource `type:"list"`
 57123  }
 57124  
 57125  // String returns the string representation.
 57126  //
 57127  // API parameter values that are decorated as "sensitive" in the API will not
 57128  // be included in the string output. The member name will be present, but the
 57129  // value will be replaced with "sensitive".
 57130  func (s UpdatePatchBaselineInput) String() string {
 57131  	return awsutil.Prettify(s)
 57132  }
 57133  
 57134  // GoString returns the string representation.
 57135  //
 57136  // API parameter values that are decorated as "sensitive" in the API will not
 57137  // be included in the string output. The member name will be present, but the
 57138  // value will be replaced with "sensitive".
 57139  func (s UpdatePatchBaselineInput) GoString() string {
 57140  	return s.String()
 57141  }
 57142  
 57143  // Validate inspects the fields of the type to determine if they are valid.
 57144  func (s *UpdatePatchBaselineInput) Validate() error {
 57145  	invalidParams := request.ErrInvalidParams{Context: "UpdatePatchBaselineInput"}
 57146  	if s.BaselineId == nil {
 57147  		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
 57148  	}
 57149  	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
 57150  		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
 57151  	}
 57152  	if s.Description != nil && len(*s.Description) < 1 {
 57153  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 57154  	}
 57155  	if s.Name != nil && len(*s.Name) < 3 {
 57156  		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
 57157  	}
 57158  	if s.ApprovalRules != nil {
 57159  		if err := s.ApprovalRules.Validate(); err != nil {
 57160  			invalidParams.AddNested("ApprovalRules", err.(request.ErrInvalidParams))
 57161  		}
 57162  	}
 57163  	if s.GlobalFilters != nil {
 57164  		if err := s.GlobalFilters.Validate(); err != nil {
 57165  			invalidParams.AddNested("GlobalFilters", err.(request.ErrInvalidParams))
 57166  		}
 57167  	}
 57168  	if s.Sources != nil {
 57169  		for i, v := range s.Sources {
 57170  			if v == nil {
 57171  				continue
 57172  			}
 57173  			if err := v.Validate(); err != nil {
 57174  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
 57175  			}
 57176  		}
 57177  	}
 57178  
 57179  	if invalidParams.Len() > 0 {
 57180  		return invalidParams
 57181  	}
 57182  	return nil
 57183  }
 57184  
 57185  // SetApprovalRules sets the ApprovalRules field's value.
 57186  func (s *UpdatePatchBaselineInput) SetApprovalRules(v *PatchRuleGroup) *UpdatePatchBaselineInput {
 57187  	s.ApprovalRules = v
 57188  	return s
 57189  }
 57190  
 57191  // SetApprovedPatches sets the ApprovedPatches field's value.
 57192  func (s *UpdatePatchBaselineInput) SetApprovedPatches(v []*string) *UpdatePatchBaselineInput {
 57193  	s.ApprovedPatches = v
 57194  	return s
 57195  }
 57196  
 57197  // SetApprovedPatchesComplianceLevel sets the ApprovedPatchesComplianceLevel field's value.
 57198  func (s *UpdatePatchBaselineInput) SetApprovedPatchesComplianceLevel(v string) *UpdatePatchBaselineInput {
 57199  	s.ApprovedPatchesComplianceLevel = &v
 57200  	return s
 57201  }
 57202  
 57203  // SetApprovedPatchesEnableNonSecurity sets the ApprovedPatchesEnableNonSecurity field's value.
 57204  func (s *UpdatePatchBaselineInput) SetApprovedPatchesEnableNonSecurity(v bool) *UpdatePatchBaselineInput {
 57205  	s.ApprovedPatchesEnableNonSecurity = &v
 57206  	return s
 57207  }
 57208  
 57209  // SetBaselineId sets the BaselineId field's value.
 57210  func (s *UpdatePatchBaselineInput) SetBaselineId(v string) *UpdatePatchBaselineInput {
 57211  	s.BaselineId = &v
 57212  	return s
 57213  }
 57214  
 57215  // SetDescription sets the Description field's value.
 57216  func (s *UpdatePatchBaselineInput) SetDescription(v string) *UpdatePatchBaselineInput {
 57217  	s.Description = &v
 57218  	return s
 57219  }
 57220  
 57221  // SetGlobalFilters sets the GlobalFilters field's value.
 57222  func (s *UpdatePatchBaselineInput) SetGlobalFilters(v *PatchFilterGroup) *UpdatePatchBaselineInput {
 57223  	s.GlobalFilters = v
 57224  	return s
 57225  }
 57226  
 57227  // SetName sets the Name field's value.
 57228  func (s *UpdatePatchBaselineInput) SetName(v string) *UpdatePatchBaselineInput {
 57229  	s.Name = &v
 57230  	return s
 57231  }
 57232  
 57233  // SetRejectedPatches sets the RejectedPatches field's value.
 57234  func (s *UpdatePatchBaselineInput) SetRejectedPatches(v []*string) *UpdatePatchBaselineInput {
 57235  	s.RejectedPatches = v
 57236  	return s
 57237  }
 57238  
 57239  // SetRejectedPatchesAction sets the RejectedPatchesAction field's value.
 57240  func (s *UpdatePatchBaselineInput) SetRejectedPatchesAction(v string) *UpdatePatchBaselineInput {
 57241  	s.RejectedPatchesAction = &v
 57242  	return s
 57243  }
 57244  
 57245  // SetReplace sets the Replace field's value.
 57246  func (s *UpdatePatchBaselineInput) SetReplace(v bool) *UpdatePatchBaselineInput {
 57247  	s.Replace = &v
 57248  	return s
 57249  }
 57250  
 57251  // SetSources sets the Sources field's value.
 57252  func (s *UpdatePatchBaselineInput) SetSources(v []*PatchSource) *UpdatePatchBaselineInput {
 57253  	s.Sources = v
 57254  	return s
 57255  }
 57256  
 57257  type UpdatePatchBaselineOutput struct {
 57258  	_ struct{} `type:"structure"`
 57259  
 57260  	// A set of rules used to include patches in the baseline.
 57261  	ApprovalRules *PatchRuleGroup `type:"structure"`
 57262  
 57263  	// A list of explicitly approved patches for the baseline.
 57264  	ApprovedPatches []*string `type:"list"`
 57265  
 57266  	// The compliance severity level assigned to the patch baseline after the update
 57267  	// completed.
 57268  	ApprovedPatchesComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
 57269  
 57270  	// Indicates whether the list of approved patches includes non-security updates
 57271  	// that should be applied to the instances. The default value is false. Applies
 57272  	// to Linux instances only.
 57273  	ApprovedPatchesEnableNonSecurity *bool `type:"boolean"`
 57274  
 57275  	// The ID of the deleted patch baseline.
 57276  	BaselineId *string `min:"20" type:"string"`
 57277  
 57278  	// The date when the patch baseline was created.
 57279  	CreatedDate *time.Time `type:"timestamp"`
 57280  
 57281  	// A description of the patch baseline.
 57282  	Description *string `min:"1" type:"string"`
 57283  
 57284  	// A set of global filters used to exclude patches from the baseline.
 57285  	GlobalFilters *PatchFilterGroup `type:"structure"`
 57286  
 57287  	// The date when the patch baseline was last modified.
 57288  	ModifiedDate *time.Time `type:"timestamp"`
 57289  
 57290  	// The name of the patch baseline.
 57291  	Name *string `min:"3" type:"string"`
 57292  
 57293  	// The operating system rule used by the updated patch baseline.
 57294  	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
 57295  
 57296  	// A list of explicitly rejected patches for the baseline.
 57297  	RejectedPatches []*string `type:"list"`
 57298  
 57299  	// The action specified to take on patches included in the RejectedPatches list.
 57300  	// A patch can be allowed only if it is a dependency of another package, or
 57301  	// blocked entirely along with packages that include it as a dependency.
 57302  	RejectedPatchesAction *string `type:"string" enum:"PatchAction"`
 57303  
 57304  	// Information about the patches to use to update the instances, including target
 57305  	// operating systems and source repositories. Applies to Linux instances only.
 57306  	Sources []*PatchSource `type:"list"`
 57307  }
 57308  
 57309  // String returns the string representation.
 57310  //
 57311  // API parameter values that are decorated as "sensitive" in the API will not
 57312  // be included in the string output. The member name will be present, but the
 57313  // value will be replaced with "sensitive".
 57314  func (s UpdatePatchBaselineOutput) String() string {
 57315  	return awsutil.Prettify(s)
 57316  }
 57317  
 57318  // GoString returns the string representation.
 57319  //
 57320  // API parameter values that are decorated as "sensitive" in the API will not
 57321  // be included in the string output. The member name will be present, but the
 57322  // value will be replaced with "sensitive".
 57323  func (s UpdatePatchBaselineOutput) GoString() string {
 57324  	return s.String()
 57325  }
 57326  
 57327  // SetApprovalRules sets the ApprovalRules field's value.
 57328  func (s *UpdatePatchBaselineOutput) SetApprovalRules(v *PatchRuleGroup) *UpdatePatchBaselineOutput {
 57329  	s.ApprovalRules = v
 57330  	return s
 57331  }
 57332  
 57333  // SetApprovedPatches sets the ApprovedPatches field's value.
 57334  func (s *UpdatePatchBaselineOutput) SetApprovedPatches(v []*string) *UpdatePatchBaselineOutput {
 57335  	s.ApprovedPatches = v
 57336  	return s
 57337  }
 57338  
 57339  // SetApprovedPatchesComplianceLevel sets the ApprovedPatchesComplianceLevel field's value.
 57340  func (s *UpdatePatchBaselineOutput) SetApprovedPatchesComplianceLevel(v string) *UpdatePatchBaselineOutput {
 57341  	s.ApprovedPatchesComplianceLevel = &v
 57342  	return s
 57343  }
 57344  
 57345  // SetApprovedPatchesEnableNonSecurity sets the ApprovedPatchesEnableNonSecurity field's value.
 57346  func (s *UpdatePatchBaselineOutput) SetApprovedPatchesEnableNonSecurity(v bool) *UpdatePatchBaselineOutput {
 57347  	s.ApprovedPatchesEnableNonSecurity = &v
 57348  	return s
 57349  }
 57350  
 57351  // SetBaselineId sets the BaselineId field's value.
 57352  func (s *UpdatePatchBaselineOutput) SetBaselineId(v string) *UpdatePatchBaselineOutput {
 57353  	s.BaselineId = &v
 57354  	return s
 57355  }
 57356  
 57357  // SetCreatedDate sets the CreatedDate field's value.
 57358  func (s *UpdatePatchBaselineOutput) SetCreatedDate(v time.Time) *UpdatePatchBaselineOutput {
 57359  	s.CreatedDate = &v
 57360  	return s
 57361  }
 57362  
 57363  // SetDescription sets the Description field's value.
 57364  func (s *UpdatePatchBaselineOutput) SetDescription(v string) *UpdatePatchBaselineOutput {
 57365  	s.Description = &v
 57366  	return s
 57367  }
 57368  
 57369  // SetGlobalFilters sets the GlobalFilters field's value.
 57370  func (s *UpdatePatchBaselineOutput) SetGlobalFilters(v *PatchFilterGroup) *UpdatePatchBaselineOutput {
 57371  	s.GlobalFilters = v
 57372  	return s
 57373  }
 57374  
 57375  // SetModifiedDate sets the ModifiedDate field's value.
 57376  func (s *UpdatePatchBaselineOutput) SetModifiedDate(v time.Time) *UpdatePatchBaselineOutput {
 57377  	s.ModifiedDate = &v
 57378  	return s
 57379  }
 57380  
 57381  // SetName sets the Name field's value.
 57382  func (s *UpdatePatchBaselineOutput) SetName(v string) *UpdatePatchBaselineOutput {
 57383  	s.Name = &v
 57384  	return s
 57385  }
 57386  
 57387  // SetOperatingSystem sets the OperatingSystem field's value.
 57388  func (s *UpdatePatchBaselineOutput) SetOperatingSystem(v string) *UpdatePatchBaselineOutput {
 57389  	s.OperatingSystem = &v
 57390  	return s
 57391  }
 57392  
 57393  // SetRejectedPatches sets the RejectedPatches field's value.
 57394  func (s *UpdatePatchBaselineOutput) SetRejectedPatches(v []*string) *UpdatePatchBaselineOutput {
 57395  	s.RejectedPatches = v
 57396  	return s
 57397  }
 57398  
 57399  // SetRejectedPatchesAction sets the RejectedPatchesAction field's value.
 57400  func (s *UpdatePatchBaselineOutput) SetRejectedPatchesAction(v string) *UpdatePatchBaselineOutput {
 57401  	s.RejectedPatchesAction = &v
 57402  	return s
 57403  }
 57404  
 57405  // SetSources sets the Sources field's value.
 57406  func (s *UpdatePatchBaselineOutput) SetSources(v []*PatchSource) *UpdatePatchBaselineOutput {
 57407  	s.Sources = v
 57408  	return s
 57409  }
 57410  
 57411  type UpdateResourceDataSyncInput struct {
 57412  	_ struct{} `type:"structure"`
 57413  
 57414  	// The name of the resource data sync you want to update.
 57415  	//
 57416  	// SyncName is a required field
 57417  	SyncName *string `min:"1" type:"string" required:"true"`
 57418  
 57419  	// Specify information about the data sources to synchronize.
 57420  	//
 57421  	// SyncSource is a required field
 57422  	SyncSource *ResourceDataSyncSource `type:"structure" required:"true"`
 57423  
 57424  	// The type of resource data sync. The supported SyncType is SyncFromSource.
 57425  	//
 57426  	// SyncType is a required field
 57427  	SyncType *string `min:"1" type:"string" required:"true"`
 57428  }
 57429  
 57430  // String returns the string representation.
 57431  //
 57432  // API parameter values that are decorated as "sensitive" in the API will not
 57433  // be included in the string output. The member name will be present, but the
 57434  // value will be replaced with "sensitive".
 57435  func (s UpdateResourceDataSyncInput) String() string {
 57436  	return awsutil.Prettify(s)
 57437  }
 57438  
 57439  // GoString returns the string representation.
 57440  //
 57441  // API parameter values that are decorated as "sensitive" in the API will not
 57442  // be included in the string output. The member name will be present, but the
 57443  // value will be replaced with "sensitive".
 57444  func (s UpdateResourceDataSyncInput) GoString() string {
 57445  	return s.String()
 57446  }
 57447  
 57448  // Validate inspects the fields of the type to determine if they are valid.
 57449  func (s *UpdateResourceDataSyncInput) Validate() error {
 57450  	invalidParams := request.ErrInvalidParams{Context: "UpdateResourceDataSyncInput"}
 57451  	if s.SyncName == nil {
 57452  		invalidParams.Add(request.NewErrParamRequired("SyncName"))
 57453  	}
 57454  	if s.SyncName != nil && len(*s.SyncName) < 1 {
 57455  		invalidParams.Add(request.NewErrParamMinLen("SyncName", 1))
 57456  	}
 57457  	if s.SyncSource == nil {
 57458  		invalidParams.Add(request.NewErrParamRequired("SyncSource"))
 57459  	}
 57460  	if s.SyncType == nil {
 57461  		invalidParams.Add(request.NewErrParamRequired("SyncType"))
 57462  	}
 57463  	if s.SyncType != nil && len(*s.SyncType) < 1 {
 57464  		invalidParams.Add(request.NewErrParamMinLen("SyncType", 1))
 57465  	}
 57466  	if s.SyncSource != nil {
 57467  		if err := s.SyncSource.Validate(); err != nil {
 57468  			invalidParams.AddNested("SyncSource", err.(request.ErrInvalidParams))
 57469  		}
 57470  	}
 57471  
 57472  	if invalidParams.Len() > 0 {
 57473  		return invalidParams
 57474  	}
 57475  	return nil
 57476  }
 57477  
 57478  // SetSyncName sets the SyncName field's value.
 57479  func (s *UpdateResourceDataSyncInput) SetSyncName(v string) *UpdateResourceDataSyncInput {
 57480  	s.SyncName = &v
 57481  	return s
 57482  }
 57483  
 57484  // SetSyncSource sets the SyncSource field's value.
 57485  func (s *UpdateResourceDataSyncInput) SetSyncSource(v *ResourceDataSyncSource) *UpdateResourceDataSyncInput {
 57486  	s.SyncSource = v
 57487  	return s
 57488  }
 57489  
 57490  // SetSyncType sets the SyncType field's value.
 57491  func (s *UpdateResourceDataSyncInput) SetSyncType(v string) *UpdateResourceDataSyncInput {
 57492  	s.SyncType = &v
 57493  	return s
 57494  }
 57495  
 57496  type UpdateResourceDataSyncOutput struct {
 57497  	_ struct{} `type:"structure"`
 57498  }
 57499  
 57500  // String returns the string representation.
 57501  //
 57502  // API parameter values that are decorated as "sensitive" in the API will not
 57503  // be included in the string output. The member name will be present, but the
 57504  // value will be replaced with "sensitive".
 57505  func (s UpdateResourceDataSyncOutput) String() string {
 57506  	return awsutil.Prettify(s)
 57507  }
 57508  
 57509  // GoString returns the string representation.
 57510  //
 57511  // API parameter values that are decorated as "sensitive" in the API will not
 57512  // be included in the string output. The member name will be present, but the
 57513  // value will be replaced with "sensitive".
 57514  func (s UpdateResourceDataSyncOutput) GoString() string {
 57515  	return s.String()
 57516  }
 57517  
 57518  // The request body of the UpdateServiceSetting API operation.
 57519  type UpdateServiceSettingInput struct {
 57520  	_ struct{} `type:"structure"`
 57521  
 57522  	// The Amazon Resource Name (ARN) of the service setting to reset. For example,
 57523  	// arn:aws:ssm:us-east-1:111122223333:servicesetting/ssm/parameter-store/high-throughput-enabled.
 57524  	// The setting ID can be one of the following.
 57525  	//
 57526  	//    * /ssm/automation/customer-script-log-destination
 57527  	//
 57528  	//    * /ssm/automation/customer-script-log-group-name
 57529  	//
 57530  	//    * /ssm/documents/console/public-sharing-permission
 57531  	//
 57532  	//    * /ssm/parameter-store/default-parameter-tier
 57533  	//
 57534  	//    * /ssm/parameter-store/high-throughput-enabled
 57535  	//
 57536  	//    * /ssm/managed-instance/activation-tier
 57537  	//
 57538  	// SettingId is a required field
 57539  	SettingId *string `min:"1" type:"string" required:"true"`
 57540  
 57541  	// The new value to specify for the service setting. The following list specifies
 57542  	// the available values for each setting.
 57543  	//
 57544  	//    * /ssm/parameter-store/default-parameter-tier: Standard, Advanced, Intelligent-Tiering
 57545  	//
 57546  	//    * /ssm/parameter-store/high-throughput-enabled: true or false
 57547  	//
 57548  	//    * /ssm/managed-instance/activation-tier: true or false
 57549  	//
 57550  	//    * /ssm/automation/customer-script-log-destination: CloudWatch
 57551  	//
 57552  	//    * /ssm/automation/customer-script-log-group-name: the name of an Amazon
 57553  	//    CloudWatch Logs log group
 57554  	//
 57555  	//    * /ssm/documents/console/public-sharing-permission: Enable or Disable
 57556  	//
 57557  	//    * /ssm/managed-instance/activation-tier: standard or advanced
 57558  	//
 57559  	// SettingValue is a required field
 57560  	SettingValue *string `min:"1" type:"string" required:"true"`
 57561  }
 57562  
 57563  // String returns the string representation.
 57564  //
 57565  // API parameter values that are decorated as "sensitive" in the API will not
 57566  // be included in the string output. The member name will be present, but the
 57567  // value will be replaced with "sensitive".
 57568  func (s UpdateServiceSettingInput) String() string {
 57569  	return awsutil.Prettify(s)
 57570  }
 57571  
 57572  // GoString returns the string representation.
 57573  //
 57574  // API parameter values that are decorated as "sensitive" in the API will not
 57575  // be included in the string output. The member name will be present, but the
 57576  // value will be replaced with "sensitive".
 57577  func (s UpdateServiceSettingInput) GoString() string {
 57578  	return s.String()
 57579  }
 57580  
 57581  // Validate inspects the fields of the type to determine if they are valid.
 57582  func (s *UpdateServiceSettingInput) Validate() error {
 57583  	invalidParams := request.ErrInvalidParams{Context: "UpdateServiceSettingInput"}
 57584  	if s.SettingId == nil {
 57585  		invalidParams.Add(request.NewErrParamRequired("SettingId"))
 57586  	}
 57587  	if s.SettingId != nil && len(*s.SettingId) < 1 {
 57588  		invalidParams.Add(request.NewErrParamMinLen("SettingId", 1))
 57589  	}
 57590  	if s.SettingValue == nil {
 57591  		invalidParams.Add(request.NewErrParamRequired("SettingValue"))
 57592  	}
 57593  	if s.SettingValue != nil && len(*s.SettingValue) < 1 {
 57594  		invalidParams.Add(request.NewErrParamMinLen("SettingValue", 1))
 57595  	}
 57596  
 57597  	if invalidParams.Len() > 0 {
 57598  		return invalidParams
 57599  	}
 57600  	return nil
 57601  }
 57602  
 57603  // SetSettingId sets the SettingId field's value.
 57604  func (s *UpdateServiceSettingInput) SetSettingId(v string) *UpdateServiceSettingInput {
 57605  	s.SettingId = &v
 57606  	return s
 57607  }
 57608  
 57609  // SetSettingValue sets the SettingValue field's value.
 57610  func (s *UpdateServiceSettingInput) SetSettingValue(v string) *UpdateServiceSettingInput {
 57611  	s.SettingValue = &v
 57612  	return s
 57613  }
 57614  
 57615  // The result body of the UpdateServiceSetting API operation.
 57616  type UpdateServiceSettingOutput struct {
 57617  	_ struct{} `type:"structure"`
 57618  }
 57619  
 57620  // String returns the string representation.
 57621  //
 57622  // API parameter values that are decorated as "sensitive" in the API will not
 57623  // be included in the string output. The member name will be present, but the
 57624  // value will be replaced with "sensitive".
 57625  func (s UpdateServiceSettingOutput) String() string {
 57626  	return awsutil.Prettify(s)
 57627  }
 57628  
 57629  // GoString returns the string representation.
 57630  //
 57631  // API parameter values that are decorated as "sensitive" in the API will not
 57632  // be included in the string output. The member name will be present, but the
 57633  // value will be replaced with "sensitive".
 57634  func (s UpdateServiceSettingOutput) GoString() string {
 57635  	return s.String()
 57636  }
 57637  
 57638  const (
 57639  	// AssociationComplianceSeverityCritical is a AssociationComplianceSeverity enum value
 57640  	AssociationComplianceSeverityCritical = "CRITICAL"
 57641  
 57642  	// AssociationComplianceSeverityHigh is a AssociationComplianceSeverity enum value
 57643  	AssociationComplianceSeverityHigh = "HIGH"
 57644  
 57645  	// AssociationComplianceSeverityMedium is a AssociationComplianceSeverity enum value
 57646  	AssociationComplianceSeverityMedium = "MEDIUM"
 57647  
 57648  	// AssociationComplianceSeverityLow is a AssociationComplianceSeverity enum value
 57649  	AssociationComplianceSeverityLow = "LOW"
 57650  
 57651  	// AssociationComplianceSeverityUnspecified is a AssociationComplianceSeverity enum value
 57652  	AssociationComplianceSeverityUnspecified = "UNSPECIFIED"
 57653  )
 57654  
 57655  // AssociationComplianceSeverity_Values returns all elements of the AssociationComplianceSeverity enum
 57656  func AssociationComplianceSeverity_Values() []string {
 57657  	return []string{
 57658  		AssociationComplianceSeverityCritical,
 57659  		AssociationComplianceSeverityHigh,
 57660  		AssociationComplianceSeverityMedium,
 57661  		AssociationComplianceSeverityLow,
 57662  		AssociationComplianceSeverityUnspecified,
 57663  	}
 57664  }
 57665  
 57666  const (
 57667  	// AssociationExecutionFilterKeyExecutionId is a AssociationExecutionFilterKey enum value
 57668  	AssociationExecutionFilterKeyExecutionId = "ExecutionId"
 57669  
 57670  	// AssociationExecutionFilterKeyStatus is a AssociationExecutionFilterKey enum value
 57671  	AssociationExecutionFilterKeyStatus = "Status"
 57672  
 57673  	// AssociationExecutionFilterKeyCreatedTime is a AssociationExecutionFilterKey enum value
 57674  	AssociationExecutionFilterKeyCreatedTime = "CreatedTime"
 57675  )
 57676  
 57677  // AssociationExecutionFilterKey_Values returns all elements of the AssociationExecutionFilterKey enum
 57678  func AssociationExecutionFilterKey_Values() []string {
 57679  	return []string{
 57680  		AssociationExecutionFilterKeyExecutionId,
 57681  		AssociationExecutionFilterKeyStatus,
 57682  		AssociationExecutionFilterKeyCreatedTime,
 57683  	}
 57684  }
 57685  
 57686  const (
 57687  	// AssociationExecutionTargetsFilterKeyStatus is a AssociationExecutionTargetsFilterKey enum value
 57688  	AssociationExecutionTargetsFilterKeyStatus = "Status"
 57689  
 57690  	// AssociationExecutionTargetsFilterKeyResourceId is a AssociationExecutionTargetsFilterKey enum value
 57691  	AssociationExecutionTargetsFilterKeyResourceId = "ResourceId"
 57692  
 57693  	// AssociationExecutionTargetsFilterKeyResourceType is a AssociationExecutionTargetsFilterKey enum value
 57694  	AssociationExecutionTargetsFilterKeyResourceType = "ResourceType"
 57695  )
 57696  
 57697  // AssociationExecutionTargetsFilterKey_Values returns all elements of the AssociationExecutionTargetsFilterKey enum
 57698  func AssociationExecutionTargetsFilterKey_Values() []string {
 57699  	return []string{
 57700  		AssociationExecutionTargetsFilterKeyStatus,
 57701  		AssociationExecutionTargetsFilterKeyResourceId,
 57702  		AssociationExecutionTargetsFilterKeyResourceType,
 57703  	}
 57704  }
 57705  
 57706  const (
 57707  	// AssociationFilterKeyInstanceId is a AssociationFilterKey enum value
 57708  	AssociationFilterKeyInstanceId = "InstanceId"
 57709  
 57710  	// AssociationFilterKeyName is a AssociationFilterKey enum value
 57711  	AssociationFilterKeyName = "Name"
 57712  
 57713  	// AssociationFilterKeyAssociationId is a AssociationFilterKey enum value
 57714  	AssociationFilterKeyAssociationId = "AssociationId"
 57715  
 57716  	// AssociationFilterKeyAssociationStatusName is a AssociationFilterKey enum value
 57717  	AssociationFilterKeyAssociationStatusName = "AssociationStatusName"
 57718  
 57719  	// AssociationFilterKeyLastExecutedBefore is a AssociationFilterKey enum value
 57720  	AssociationFilterKeyLastExecutedBefore = "LastExecutedBefore"
 57721  
 57722  	// AssociationFilterKeyLastExecutedAfter is a AssociationFilterKey enum value
 57723  	AssociationFilterKeyLastExecutedAfter = "LastExecutedAfter"
 57724  
 57725  	// AssociationFilterKeyAssociationName is a AssociationFilterKey enum value
 57726  	AssociationFilterKeyAssociationName = "AssociationName"
 57727  
 57728  	// AssociationFilterKeyResourceGroupName is a AssociationFilterKey enum value
 57729  	AssociationFilterKeyResourceGroupName = "ResourceGroupName"
 57730  )
 57731  
 57732  // AssociationFilterKey_Values returns all elements of the AssociationFilterKey enum
 57733  func AssociationFilterKey_Values() []string {
 57734  	return []string{
 57735  		AssociationFilterKeyInstanceId,
 57736  		AssociationFilterKeyName,
 57737  		AssociationFilterKeyAssociationId,
 57738  		AssociationFilterKeyAssociationStatusName,
 57739  		AssociationFilterKeyLastExecutedBefore,
 57740  		AssociationFilterKeyLastExecutedAfter,
 57741  		AssociationFilterKeyAssociationName,
 57742  		AssociationFilterKeyResourceGroupName,
 57743  	}
 57744  }
 57745  
 57746  const (
 57747  	// AssociationFilterOperatorTypeEqual is a AssociationFilterOperatorType enum value
 57748  	AssociationFilterOperatorTypeEqual = "EQUAL"
 57749  
 57750  	// AssociationFilterOperatorTypeLessThan is a AssociationFilterOperatorType enum value
 57751  	AssociationFilterOperatorTypeLessThan = "LESS_THAN"
 57752  
 57753  	// AssociationFilterOperatorTypeGreaterThan is a AssociationFilterOperatorType enum value
 57754  	AssociationFilterOperatorTypeGreaterThan = "GREATER_THAN"
 57755  )
 57756  
 57757  // AssociationFilterOperatorType_Values returns all elements of the AssociationFilterOperatorType enum
 57758  func AssociationFilterOperatorType_Values() []string {
 57759  	return []string{
 57760  		AssociationFilterOperatorTypeEqual,
 57761  		AssociationFilterOperatorTypeLessThan,
 57762  		AssociationFilterOperatorTypeGreaterThan,
 57763  	}
 57764  }
 57765  
 57766  const (
 57767  	// AssociationStatusNamePending is a AssociationStatusName enum value
 57768  	AssociationStatusNamePending = "Pending"
 57769  
 57770  	// AssociationStatusNameSuccess is a AssociationStatusName enum value
 57771  	AssociationStatusNameSuccess = "Success"
 57772  
 57773  	// AssociationStatusNameFailed is a AssociationStatusName enum value
 57774  	AssociationStatusNameFailed = "Failed"
 57775  )
 57776  
 57777  // AssociationStatusName_Values returns all elements of the AssociationStatusName enum
 57778  func AssociationStatusName_Values() []string {
 57779  	return []string{
 57780  		AssociationStatusNamePending,
 57781  		AssociationStatusNameSuccess,
 57782  		AssociationStatusNameFailed,
 57783  	}
 57784  }
 57785  
 57786  const (
 57787  	// AssociationSyncComplianceAuto is a AssociationSyncCompliance enum value
 57788  	AssociationSyncComplianceAuto = "AUTO"
 57789  
 57790  	// AssociationSyncComplianceManual is a AssociationSyncCompliance enum value
 57791  	AssociationSyncComplianceManual = "MANUAL"
 57792  )
 57793  
 57794  // AssociationSyncCompliance_Values returns all elements of the AssociationSyncCompliance enum
 57795  func AssociationSyncCompliance_Values() []string {
 57796  	return []string{
 57797  		AssociationSyncComplianceAuto,
 57798  		AssociationSyncComplianceManual,
 57799  	}
 57800  }
 57801  
 57802  const (
 57803  	// AttachmentHashTypeSha256 is a AttachmentHashType enum value
 57804  	AttachmentHashTypeSha256 = "Sha256"
 57805  )
 57806  
 57807  // AttachmentHashType_Values returns all elements of the AttachmentHashType enum
 57808  func AttachmentHashType_Values() []string {
 57809  	return []string{
 57810  		AttachmentHashTypeSha256,
 57811  	}
 57812  }
 57813  
 57814  const (
 57815  	// AttachmentsSourceKeySourceUrl is a AttachmentsSourceKey enum value
 57816  	AttachmentsSourceKeySourceUrl = "SourceUrl"
 57817  
 57818  	// AttachmentsSourceKeyS3fileUrl is a AttachmentsSourceKey enum value
 57819  	AttachmentsSourceKeyS3fileUrl = "S3FileUrl"
 57820  
 57821  	// AttachmentsSourceKeyAttachmentReference is a AttachmentsSourceKey enum value
 57822  	AttachmentsSourceKeyAttachmentReference = "AttachmentReference"
 57823  )
 57824  
 57825  // AttachmentsSourceKey_Values returns all elements of the AttachmentsSourceKey enum
 57826  func AttachmentsSourceKey_Values() []string {
 57827  	return []string{
 57828  		AttachmentsSourceKeySourceUrl,
 57829  		AttachmentsSourceKeyS3fileUrl,
 57830  		AttachmentsSourceKeyAttachmentReference,
 57831  	}
 57832  }
 57833  
 57834  const (
 57835  	// AutomationExecutionFilterKeyDocumentNamePrefix is a AutomationExecutionFilterKey enum value
 57836  	AutomationExecutionFilterKeyDocumentNamePrefix = "DocumentNamePrefix"
 57837  
 57838  	// AutomationExecutionFilterKeyExecutionStatus is a AutomationExecutionFilterKey enum value
 57839  	AutomationExecutionFilterKeyExecutionStatus = "ExecutionStatus"
 57840  
 57841  	// AutomationExecutionFilterKeyExecutionId is a AutomationExecutionFilterKey enum value
 57842  	AutomationExecutionFilterKeyExecutionId = "ExecutionId"
 57843  
 57844  	// AutomationExecutionFilterKeyParentExecutionId is a AutomationExecutionFilterKey enum value
 57845  	AutomationExecutionFilterKeyParentExecutionId = "ParentExecutionId"
 57846  
 57847  	// AutomationExecutionFilterKeyCurrentAction is a AutomationExecutionFilterKey enum value
 57848  	AutomationExecutionFilterKeyCurrentAction = "CurrentAction"
 57849  
 57850  	// AutomationExecutionFilterKeyStartTimeBefore is a AutomationExecutionFilterKey enum value
 57851  	AutomationExecutionFilterKeyStartTimeBefore = "StartTimeBefore"
 57852  
 57853  	// AutomationExecutionFilterKeyStartTimeAfter is a AutomationExecutionFilterKey enum value
 57854  	AutomationExecutionFilterKeyStartTimeAfter = "StartTimeAfter"
 57855  
 57856  	// AutomationExecutionFilterKeyAutomationType is a AutomationExecutionFilterKey enum value
 57857  	AutomationExecutionFilterKeyAutomationType = "AutomationType"
 57858  
 57859  	// AutomationExecutionFilterKeyTagKey is a AutomationExecutionFilterKey enum value
 57860  	AutomationExecutionFilterKeyTagKey = "TagKey"
 57861  
 57862  	// AutomationExecutionFilterKeyTargetResourceGroup is a AutomationExecutionFilterKey enum value
 57863  	AutomationExecutionFilterKeyTargetResourceGroup = "TargetResourceGroup"
 57864  
 57865  	// AutomationExecutionFilterKeyAutomationSubtype is a AutomationExecutionFilterKey enum value
 57866  	AutomationExecutionFilterKeyAutomationSubtype = "AutomationSubtype"
 57867  
 57868  	// AutomationExecutionFilterKeyOpsItemId is a AutomationExecutionFilterKey enum value
 57869  	AutomationExecutionFilterKeyOpsItemId = "OpsItemId"
 57870  )
 57871  
 57872  // AutomationExecutionFilterKey_Values returns all elements of the AutomationExecutionFilterKey enum
 57873  func AutomationExecutionFilterKey_Values() []string {
 57874  	return []string{
 57875  		AutomationExecutionFilterKeyDocumentNamePrefix,
 57876  		AutomationExecutionFilterKeyExecutionStatus,
 57877  		AutomationExecutionFilterKeyExecutionId,
 57878  		AutomationExecutionFilterKeyParentExecutionId,
 57879  		AutomationExecutionFilterKeyCurrentAction,
 57880  		AutomationExecutionFilterKeyStartTimeBefore,
 57881  		AutomationExecutionFilterKeyStartTimeAfter,
 57882  		AutomationExecutionFilterKeyAutomationType,
 57883  		AutomationExecutionFilterKeyTagKey,
 57884  		AutomationExecutionFilterKeyTargetResourceGroup,
 57885  		AutomationExecutionFilterKeyAutomationSubtype,
 57886  		AutomationExecutionFilterKeyOpsItemId,
 57887  	}
 57888  }
 57889  
 57890  const (
 57891  	// AutomationExecutionStatusPending is a AutomationExecutionStatus enum value
 57892  	AutomationExecutionStatusPending = "Pending"
 57893  
 57894  	// AutomationExecutionStatusInProgress is a AutomationExecutionStatus enum value
 57895  	AutomationExecutionStatusInProgress = "InProgress"
 57896  
 57897  	// AutomationExecutionStatusWaiting is a AutomationExecutionStatus enum value
 57898  	AutomationExecutionStatusWaiting = "Waiting"
 57899  
 57900  	// AutomationExecutionStatusSuccess is a AutomationExecutionStatus enum value
 57901  	AutomationExecutionStatusSuccess = "Success"
 57902  
 57903  	// AutomationExecutionStatusTimedOut is a AutomationExecutionStatus enum value
 57904  	AutomationExecutionStatusTimedOut = "TimedOut"
 57905  
 57906  	// AutomationExecutionStatusCancelling is a AutomationExecutionStatus enum value
 57907  	AutomationExecutionStatusCancelling = "Cancelling"
 57908  
 57909  	// AutomationExecutionStatusCancelled is a AutomationExecutionStatus enum value
 57910  	AutomationExecutionStatusCancelled = "Cancelled"
 57911  
 57912  	// AutomationExecutionStatusFailed is a AutomationExecutionStatus enum value
 57913  	AutomationExecutionStatusFailed = "Failed"
 57914  
 57915  	// AutomationExecutionStatusPendingApproval is a AutomationExecutionStatus enum value
 57916  	AutomationExecutionStatusPendingApproval = "PendingApproval"
 57917  
 57918  	// AutomationExecutionStatusApproved is a AutomationExecutionStatus enum value
 57919  	AutomationExecutionStatusApproved = "Approved"
 57920  
 57921  	// AutomationExecutionStatusRejected is a AutomationExecutionStatus enum value
 57922  	AutomationExecutionStatusRejected = "Rejected"
 57923  
 57924  	// AutomationExecutionStatusScheduled is a AutomationExecutionStatus enum value
 57925  	AutomationExecutionStatusScheduled = "Scheduled"
 57926  
 57927  	// AutomationExecutionStatusRunbookInProgress is a AutomationExecutionStatus enum value
 57928  	AutomationExecutionStatusRunbookInProgress = "RunbookInProgress"
 57929  
 57930  	// AutomationExecutionStatusPendingChangeCalendarOverride is a AutomationExecutionStatus enum value
 57931  	AutomationExecutionStatusPendingChangeCalendarOverride = "PendingChangeCalendarOverride"
 57932  
 57933  	// AutomationExecutionStatusChangeCalendarOverrideApproved is a AutomationExecutionStatus enum value
 57934  	AutomationExecutionStatusChangeCalendarOverrideApproved = "ChangeCalendarOverrideApproved"
 57935  
 57936  	// AutomationExecutionStatusChangeCalendarOverrideRejected is a AutomationExecutionStatus enum value
 57937  	AutomationExecutionStatusChangeCalendarOverrideRejected = "ChangeCalendarOverrideRejected"
 57938  
 57939  	// AutomationExecutionStatusCompletedWithSuccess is a AutomationExecutionStatus enum value
 57940  	AutomationExecutionStatusCompletedWithSuccess = "CompletedWithSuccess"
 57941  
 57942  	// AutomationExecutionStatusCompletedWithFailure is a AutomationExecutionStatus enum value
 57943  	AutomationExecutionStatusCompletedWithFailure = "CompletedWithFailure"
 57944  )
 57945  
 57946  // AutomationExecutionStatus_Values returns all elements of the AutomationExecutionStatus enum
 57947  func AutomationExecutionStatus_Values() []string {
 57948  	return []string{
 57949  		AutomationExecutionStatusPending,
 57950  		AutomationExecutionStatusInProgress,
 57951  		AutomationExecutionStatusWaiting,
 57952  		AutomationExecutionStatusSuccess,
 57953  		AutomationExecutionStatusTimedOut,
 57954  		AutomationExecutionStatusCancelling,
 57955  		AutomationExecutionStatusCancelled,
 57956  		AutomationExecutionStatusFailed,
 57957  		AutomationExecutionStatusPendingApproval,
 57958  		AutomationExecutionStatusApproved,
 57959  		AutomationExecutionStatusRejected,
 57960  		AutomationExecutionStatusScheduled,
 57961  		AutomationExecutionStatusRunbookInProgress,
 57962  		AutomationExecutionStatusPendingChangeCalendarOverride,
 57963  		AutomationExecutionStatusChangeCalendarOverrideApproved,
 57964  		AutomationExecutionStatusChangeCalendarOverrideRejected,
 57965  		AutomationExecutionStatusCompletedWithSuccess,
 57966  		AutomationExecutionStatusCompletedWithFailure,
 57967  	}
 57968  }
 57969  
 57970  const (
 57971  	// AutomationSubtypeChangeRequest is a AutomationSubtype enum value
 57972  	AutomationSubtypeChangeRequest = "ChangeRequest"
 57973  )
 57974  
 57975  // AutomationSubtype_Values returns all elements of the AutomationSubtype enum
 57976  func AutomationSubtype_Values() []string {
 57977  	return []string{
 57978  		AutomationSubtypeChangeRequest,
 57979  	}
 57980  }
 57981  
 57982  const (
 57983  	// AutomationTypeCrossAccount is a AutomationType enum value
 57984  	AutomationTypeCrossAccount = "CrossAccount"
 57985  
 57986  	// AutomationTypeLocal is a AutomationType enum value
 57987  	AutomationTypeLocal = "Local"
 57988  )
 57989  
 57990  // AutomationType_Values returns all elements of the AutomationType enum
 57991  func AutomationType_Values() []string {
 57992  	return []string{
 57993  		AutomationTypeCrossAccount,
 57994  		AutomationTypeLocal,
 57995  	}
 57996  }
 57997  
 57998  const (
 57999  	// CalendarStateOpen is a CalendarState enum value
 58000  	CalendarStateOpen = "OPEN"
 58001  
 58002  	// CalendarStateClosed is a CalendarState enum value
 58003  	CalendarStateClosed = "CLOSED"
 58004  )
 58005  
 58006  // CalendarState_Values returns all elements of the CalendarState enum
 58007  func CalendarState_Values() []string {
 58008  	return []string{
 58009  		CalendarStateOpen,
 58010  		CalendarStateClosed,
 58011  	}
 58012  }
 58013  
 58014  const (
 58015  	// CommandFilterKeyInvokedAfter is a CommandFilterKey enum value
 58016  	CommandFilterKeyInvokedAfter = "InvokedAfter"
 58017  
 58018  	// CommandFilterKeyInvokedBefore is a CommandFilterKey enum value
 58019  	CommandFilterKeyInvokedBefore = "InvokedBefore"
 58020  
 58021  	// CommandFilterKeyStatus is a CommandFilterKey enum value
 58022  	CommandFilterKeyStatus = "Status"
 58023  
 58024  	// CommandFilterKeyExecutionStage is a CommandFilterKey enum value
 58025  	CommandFilterKeyExecutionStage = "ExecutionStage"
 58026  
 58027  	// CommandFilterKeyDocumentName is a CommandFilterKey enum value
 58028  	CommandFilterKeyDocumentName = "DocumentName"
 58029  )
 58030  
 58031  // CommandFilterKey_Values returns all elements of the CommandFilterKey enum
 58032  func CommandFilterKey_Values() []string {
 58033  	return []string{
 58034  		CommandFilterKeyInvokedAfter,
 58035  		CommandFilterKeyInvokedBefore,
 58036  		CommandFilterKeyStatus,
 58037  		CommandFilterKeyExecutionStage,
 58038  		CommandFilterKeyDocumentName,
 58039  	}
 58040  }
 58041  
 58042  const (
 58043  	// CommandInvocationStatusPending is a CommandInvocationStatus enum value
 58044  	CommandInvocationStatusPending = "Pending"
 58045  
 58046  	// CommandInvocationStatusInProgress is a CommandInvocationStatus enum value
 58047  	CommandInvocationStatusInProgress = "InProgress"
 58048  
 58049  	// CommandInvocationStatusDelayed is a CommandInvocationStatus enum value
 58050  	CommandInvocationStatusDelayed = "Delayed"
 58051  
 58052  	// CommandInvocationStatusSuccess is a CommandInvocationStatus enum value
 58053  	CommandInvocationStatusSuccess = "Success"
 58054  
 58055  	// CommandInvocationStatusCancelled is a CommandInvocationStatus enum value
 58056  	CommandInvocationStatusCancelled = "Cancelled"
 58057  
 58058  	// CommandInvocationStatusTimedOut is a CommandInvocationStatus enum value
 58059  	CommandInvocationStatusTimedOut = "TimedOut"
 58060  
 58061  	// CommandInvocationStatusFailed is a CommandInvocationStatus enum value
 58062  	CommandInvocationStatusFailed = "Failed"
 58063  
 58064  	// CommandInvocationStatusCancelling is a CommandInvocationStatus enum value
 58065  	CommandInvocationStatusCancelling = "Cancelling"
 58066  )
 58067  
 58068  // CommandInvocationStatus_Values returns all elements of the CommandInvocationStatus enum
 58069  func CommandInvocationStatus_Values() []string {
 58070  	return []string{
 58071  		CommandInvocationStatusPending,
 58072  		CommandInvocationStatusInProgress,
 58073  		CommandInvocationStatusDelayed,
 58074  		CommandInvocationStatusSuccess,
 58075  		CommandInvocationStatusCancelled,
 58076  		CommandInvocationStatusTimedOut,
 58077  		CommandInvocationStatusFailed,
 58078  		CommandInvocationStatusCancelling,
 58079  	}
 58080  }
 58081  
 58082  const (
 58083  	// CommandPluginStatusPending is a CommandPluginStatus enum value
 58084  	CommandPluginStatusPending = "Pending"
 58085  
 58086  	// CommandPluginStatusInProgress is a CommandPluginStatus enum value
 58087  	CommandPluginStatusInProgress = "InProgress"
 58088  
 58089  	// CommandPluginStatusSuccess is a CommandPluginStatus enum value
 58090  	CommandPluginStatusSuccess = "Success"
 58091  
 58092  	// CommandPluginStatusTimedOut is a CommandPluginStatus enum value
 58093  	CommandPluginStatusTimedOut = "TimedOut"
 58094  
 58095  	// CommandPluginStatusCancelled is a CommandPluginStatus enum value
 58096  	CommandPluginStatusCancelled = "Cancelled"
 58097  
 58098  	// CommandPluginStatusFailed is a CommandPluginStatus enum value
 58099  	CommandPluginStatusFailed = "Failed"
 58100  )
 58101  
 58102  // CommandPluginStatus_Values returns all elements of the CommandPluginStatus enum
 58103  func CommandPluginStatus_Values() []string {
 58104  	return []string{
 58105  		CommandPluginStatusPending,
 58106  		CommandPluginStatusInProgress,
 58107  		CommandPluginStatusSuccess,
 58108  		CommandPluginStatusTimedOut,
 58109  		CommandPluginStatusCancelled,
 58110  		CommandPluginStatusFailed,
 58111  	}
 58112  }
 58113  
 58114  const (
 58115  	// CommandStatusPending is a CommandStatus enum value
 58116  	CommandStatusPending = "Pending"
 58117  
 58118  	// CommandStatusInProgress is a CommandStatus enum value
 58119  	CommandStatusInProgress = "InProgress"
 58120  
 58121  	// CommandStatusSuccess is a CommandStatus enum value
 58122  	CommandStatusSuccess = "Success"
 58123  
 58124  	// CommandStatusCancelled is a CommandStatus enum value
 58125  	CommandStatusCancelled = "Cancelled"
 58126  
 58127  	// CommandStatusFailed is a CommandStatus enum value
 58128  	CommandStatusFailed = "Failed"
 58129  
 58130  	// CommandStatusTimedOut is a CommandStatus enum value
 58131  	CommandStatusTimedOut = "TimedOut"
 58132  
 58133  	// CommandStatusCancelling is a CommandStatus enum value
 58134  	CommandStatusCancelling = "Cancelling"
 58135  )
 58136  
 58137  // CommandStatus_Values returns all elements of the CommandStatus enum
 58138  func CommandStatus_Values() []string {
 58139  	return []string{
 58140  		CommandStatusPending,
 58141  		CommandStatusInProgress,
 58142  		CommandStatusSuccess,
 58143  		CommandStatusCancelled,
 58144  		CommandStatusFailed,
 58145  		CommandStatusTimedOut,
 58146  		CommandStatusCancelling,
 58147  	}
 58148  }
 58149  
 58150  const (
 58151  	// ComplianceQueryOperatorTypeEqual is a ComplianceQueryOperatorType enum value
 58152  	ComplianceQueryOperatorTypeEqual = "EQUAL"
 58153  
 58154  	// ComplianceQueryOperatorTypeNotEqual is a ComplianceQueryOperatorType enum value
 58155  	ComplianceQueryOperatorTypeNotEqual = "NOT_EQUAL"
 58156  
 58157  	// ComplianceQueryOperatorTypeBeginWith is a ComplianceQueryOperatorType enum value
 58158  	ComplianceQueryOperatorTypeBeginWith = "BEGIN_WITH"
 58159  
 58160  	// ComplianceQueryOperatorTypeLessThan is a ComplianceQueryOperatorType enum value
 58161  	ComplianceQueryOperatorTypeLessThan = "LESS_THAN"
 58162  
 58163  	// ComplianceQueryOperatorTypeGreaterThan is a ComplianceQueryOperatorType enum value
 58164  	ComplianceQueryOperatorTypeGreaterThan = "GREATER_THAN"
 58165  )
 58166  
 58167  // ComplianceQueryOperatorType_Values returns all elements of the ComplianceQueryOperatorType enum
 58168  func ComplianceQueryOperatorType_Values() []string {
 58169  	return []string{
 58170  		ComplianceQueryOperatorTypeEqual,
 58171  		ComplianceQueryOperatorTypeNotEqual,
 58172  		ComplianceQueryOperatorTypeBeginWith,
 58173  		ComplianceQueryOperatorTypeLessThan,
 58174  		ComplianceQueryOperatorTypeGreaterThan,
 58175  	}
 58176  }
 58177  
 58178  const (
 58179  	// ComplianceSeverityCritical is a ComplianceSeverity enum value
 58180  	ComplianceSeverityCritical = "CRITICAL"
 58181  
 58182  	// ComplianceSeverityHigh is a ComplianceSeverity enum value
 58183  	ComplianceSeverityHigh = "HIGH"
 58184  
 58185  	// ComplianceSeverityMedium is a ComplianceSeverity enum value
 58186  	ComplianceSeverityMedium = "MEDIUM"
 58187  
 58188  	// ComplianceSeverityLow is a ComplianceSeverity enum value
 58189  	ComplianceSeverityLow = "LOW"
 58190  
 58191  	// ComplianceSeverityInformational is a ComplianceSeverity enum value
 58192  	ComplianceSeverityInformational = "INFORMATIONAL"
 58193  
 58194  	// ComplianceSeverityUnspecified is a ComplianceSeverity enum value
 58195  	ComplianceSeverityUnspecified = "UNSPECIFIED"
 58196  )
 58197  
 58198  // ComplianceSeverity_Values returns all elements of the ComplianceSeverity enum
 58199  func ComplianceSeverity_Values() []string {
 58200  	return []string{
 58201  		ComplianceSeverityCritical,
 58202  		ComplianceSeverityHigh,
 58203  		ComplianceSeverityMedium,
 58204  		ComplianceSeverityLow,
 58205  		ComplianceSeverityInformational,
 58206  		ComplianceSeverityUnspecified,
 58207  	}
 58208  }
 58209  
 58210  const (
 58211  	// ComplianceStatusCompliant is a ComplianceStatus enum value
 58212  	ComplianceStatusCompliant = "COMPLIANT"
 58213  
 58214  	// ComplianceStatusNonCompliant is a ComplianceStatus enum value
 58215  	ComplianceStatusNonCompliant = "NON_COMPLIANT"
 58216  )
 58217  
 58218  // ComplianceStatus_Values returns all elements of the ComplianceStatus enum
 58219  func ComplianceStatus_Values() []string {
 58220  	return []string{
 58221  		ComplianceStatusCompliant,
 58222  		ComplianceStatusNonCompliant,
 58223  	}
 58224  }
 58225  
 58226  const (
 58227  	// ComplianceUploadTypeComplete is a ComplianceUploadType enum value
 58228  	ComplianceUploadTypeComplete = "COMPLETE"
 58229  
 58230  	// ComplianceUploadTypePartial is a ComplianceUploadType enum value
 58231  	ComplianceUploadTypePartial = "PARTIAL"
 58232  )
 58233  
 58234  // ComplianceUploadType_Values returns all elements of the ComplianceUploadType enum
 58235  func ComplianceUploadType_Values() []string {
 58236  	return []string{
 58237  		ComplianceUploadTypeComplete,
 58238  		ComplianceUploadTypePartial,
 58239  	}
 58240  }
 58241  
 58242  const (
 58243  	// ConnectionStatusConnected is a ConnectionStatus enum value
 58244  	ConnectionStatusConnected = "Connected"
 58245  
 58246  	// ConnectionStatusNotConnected is a ConnectionStatus enum value
 58247  	ConnectionStatusNotConnected = "NotConnected"
 58248  )
 58249  
 58250  // ConnectionStatus_Values returns all elements of the ConnectionStatus enum
 58251  func ConnectionStatus_Values() []string {
 58252  	return []string{
 58253  		ConnectionStatusConnected,
 58254  		ConnectionStatusNotConnected,
 58255  	}
 58256  }
 58257  
 58258  const (
 58259  	// DescribeActivationsFilterKeysActivationIds is a DescribeActivationsFilterKeys enum value
 58260  	DescribeActivationsFilterKeysActivationIds = "ActivationIds"
 58261  
 58262  	// DescribeActivationsFilterKeysDefaultInstanceName is a DescribeActivationsFilterKeys enum value
 58263  	DescribeActivationsFilterKeysDefaultInstanceName = "DefaultInstanceName"
 58264  
 58265  	// DescribeActivationsFilterKeysIamRole is a DescribeActivationsFilterKeys enum value
 58266  	DescribeActivationsFilterKeysIamRole = "IamRole"
 58267  )
 58268  
 58269  // DescribeActivationsFilterKeys_Values returns all elements of the DescribeActivationsFilterKeys enum
 58270  func DescribeActivationsFilterKeys_Values() []string {
 58271  	return []string{
 58272  		DescribeActivationsFilterKeysActivationIds,
 58273  		DescribeActivationsFilterKeysDefaultInstanceName,
 58274  		DescribeActivationsFilterKeysIamRole,
 58275  	}
 58276  }
 58277  
 58278  const (
 58279  	// DocumentFilterKeyName is a DocumentFilterKey enum value
 58280  	DocumentFilterKeyName = "Name"
 58281  
 58282  	// DocumentFilterKeyOwner is a DocumentFilterKey enum value
 58283  	DocumentFilterKeyOwner = "Owner"
 58284  
 58285  	// DocumentFilterKeyPlatformTypes is a DocumentFilterKey enum value
 58286  	DocumentFilterKeyPlatformTypes = "PlatformTypes"
 58287  
 58288  	// DocumentFilterKeyDocumentType is a DocumentFilterKey enum value
 58289  	DocumentFilterKeyDocumentType = "DocumentType"
 58290  )
 58291  
 58292  // DocumentFilterKey_Values returns all elements of the DocumentFilterKey enum
 58293  func DocumentFilterKey_Values() []string {
 58294  	return []string{
 58295  		DocumentFilterKeyName,
 58296  		DocumentFilterKeyOwner,
 58297  		DocumentFilterKeyPlatformTypes,
 58298  		DocumentFilterKeyDocumentType,
 58299  	}
 58300  }
 58301  
 58302  const (
 58303  	// DocumentFormatYaml is a DocumentFormat enum value
 58304  	DocumentFormatYaml = "YAML"
 58305  
 58306  	// DocumentFormatJson is a DocumentFormat enum value
 58307  	DocumentFormatJson = "JSON"
 58308  
 58309  	// DocumentFormatText is a DocumentFormat enum value
 58310  	DocumentFormatText = "TEXT"
 58311  )
 58312  
 58313  // DocumentFormat_Values returns all elements of the DocumentFormat enum
 58314  func DocumentFormat_Values() []string {
 58315  	return []string{
 58316  		DocumentFormatYaml,
 58317  		DocumentFormatJson,
 58318  		DocumentFormatText,
 58319  	}
 58320  }
 58321  
 58322  const (
 58323  	// DocumentHashTypeSha256 is a DocumentHashType enum value
 58324  	DocumentHashTypeSha256 = "Sha256"
 58325  
 58326  	// DocumentHashTypeSha1 is a DocumentHashType enum value
 58327  	DocumentHashTypeSha1 = "Sha1"
 58328  )
 58329  
 58330  // DocumentHashType_Values returns all elements of the DocumentHashType enum
 58331  func DocumentHashType_Values() []string {
 58332  	return []string{
 58333  		DocumentHashTypeSha256,
 58334  		DocumentHashTypeSha1,
 58335  	}
 58336  }
 58337  
 58338  const (
 58339  	// DocumentMetadataEnumDocumentReviews is a DocumentMetadataEnum enum value
 58340  	DocumentMetadataEnumDocumentReviews = "DocumentReviews"
 58341  )
 58342  
 58343  // DocumentMetadataEnum_Values returns all elements of the DocumentMetadataEnum enum
 58344  func DocumentMetadataEnum_Values() []string {
 58345  	return []string{
 58346  		DocumentMetadataEnumDocumentReviews,
 58347  	}
 58348  }
 58349  
 58350  const (
 58351  	// DocumentParameterTypeString is a DocumentParameterType enum value
 58352  	DocumentParameterTypeString = "String"
 58353  
 58354  	// DocumentParameterTypeStringList is a DocumentParameterType enum value
 58355  	DocumentParameterTypeStringList = "StringList"
 58356  )
 58357  
 58358  // DocumentParameterType_Values returns all elements of the DocumentParameterType enum
 58359  func DocumentParameterType_Values() []string {
 58360  	return []string{
 58361  		DocumentParameterTypeString,
 58362  		DocumentParameterTypeStringList,
 58363  	}
 58364  }
 58365  
 58366  const (
 58367  	// DocumentPermissionTypeShare is a DocumentPermissionType enum value
 58368  	DocumentPermissionTypeShare = "Share"
 58369  )
 58370  
 58371  // DocumentPermissionType_Values returns all elements of the DocumentPermissionType enum
 58372  func DocumentPermissionType_Values() []string {
 58373  	return []string{
 58374  		DocumentPermissionTypeShare,
 58375  	}
 58376  }
 58377  
 58378  const (
 58379  	// DocumentReviewActionSendForReview is a DocumentReviewAction enum value
 58380  	DocumentReviewActionSendForReview = "SendForReview"
 58381  
 58382  	// DocumentReviewActionUpdateReview is a DocumentReviewAction enum value
 58383  	DocumentReviewActionUpdateReview = "UpdateReview"
 58384  
 58385  	// DocumentReviewActionApprove is a DocumentReviewAction enum value
 58386  	DocumentReviewActionApprove = "Approve"
 58387  
 58388  	// DocumentReviewActionReject is a DocumentReviewAction enum value
 58389  	DocumentReviewActionReject = "Reject"
 58390  )
 58391  
 58392  // DocumentReviewAction_Values returns all elements of the DocumentReviewAction enum
 58393  func DocumentReviewAction_Values() []string {
 58394  	return []string{
 58395  		DocumentReviewActionSendForReview,
 58396  		DocumentReviewActionUpdateReview,
 58397  		DocumentReviewActionApprove,
 58398  		DocumentReviewActionReject,
 58399  	}
 58400  }
 58401  
 58402  const (
 58403  	// DocumentReviewCommentTypeComment is a DocumentReviewCommentType enum value
 58404  	DocumentReviewCommentTypeComment = "Comment"
 58405  )
 58406  
 58407  // DocumentReviewCommentType_Values returns all elements of the DocumentReviewCommentType enum
 58408  func DocumentReviewCommentType_Values() []string {
 58409  	return []string{
 58410  		DocumentReviewCommentTypeComment,
 58411  	}
 58412  }
 58413  
 58414  // The status of a document.
 58415  const (
 58416  	// DocumentStatusCreating is a DocumentStatus enum value
 58417  	DocumentStatusCreating = "Creating"
 58418  
 58419  	// DocumentStatusActive is a DocumentStatus enum value
 58420  	DocumentStatusActive = "Active"
 58421  
 58422  	// DocumentStatusUpdating is a DocumentStatus enum value
 58423  	DocumentStatusUpdating = "Updating"
 58424  
 58425  	// DocumentStatusDeleting is a DocumentStatus enum value
 58426  	DocumentStatusDeleting = "Deleting"
 58427  
 58428  	// DocumentStatusFailed is a DocumentStatus enum value
 58429  	DocumentStatusFailed = "Failed"
 58430  )
 58431  
 58432  // DocumentStatus_Values returns all elements of the DocumentStatus enum
 58433  func DocumentStatus_Values() []string {
 58434  	return []string{
 58435  		DocumentStatusCreating,
 58436  		DocumentStatusActive,
 58437  		DocumentStatusUpdating,
 58438  		DocumentStatusDeleting,
 58439  		DocumentStatusFailed,
 58440  	}
 58441  }
 58442  
 58443  const (
 58444  	// DocumentTypeCommand is a DocumentType enum value
 58445  	DocumentTypeCommand = "Command"
 58446  
 58447  	// DocumentTypePolicy is a DocumentType enum value
 58448  	DocumentTypePolicy = "Policy"
 58449  
 58450  	// DocumentTypeAutomation is a DocumentType enum value
 58451  	DocumentTypeAutomation = "Automation"
 58452  
 58453  	// DocumentTypeSession is a DocumentType enum value
 58454  	DocumentTypeSession = "Session"
 58455  
 58456  	// DocumentTypePackage is a DocumentType enum value
 58457  	DocumentTypePackage = "Package"
 58458  
 58459  	// DocumentTypeApplicationConfiguration is a DocumentType enum value
 58460  	DocumentTypeApplicationConfiguration = "ApplicationConfiguration"
 58461  
 58462  	// DocumentTypeApplicationConfigurationSchema is a DocumentType enum value
 58463  	DocumentTypeApplicationConfigurationSchema = "ApplicationConfigurationSchema"
 58464  
 58465  	// DocumentTypeDeploymentStrategy is a DocumentType enum value
 58466  	DocumentTypeDeploymentStrategy = "DeploymentStrategy"
 58467  
 58468  	// DocumentTypeChangeCalendar is a DocumentType enum value
 58469  	DocumentTypeChangeCalendar = "ChangeCalendar"
 58470  
 58471  	// DocumentTypeAutomationChangeTemplate is a DocumentType enum value
 58472  	DocumentTypeAutomationChangeTemplate = "Automation.ChangeTemplate"
 58473  
 58474  	// DocumentTypeProblemAnalysis is a DocumentType enum value
 58475  	DocumentTypeProblemAnalysis = "ProblemAnalysis"
 58476  
 58477  	// DocumentTypeProblemAnalysisTemplate is a DocumentType enum value
 58478  	DocumentTypeProblemAnalysisTemplate = "ProblemAnalysisTemplate"
 58479  )
 58480  
 58481  // DocumentType_Values returns all elements of the DocumentType enum
 58482  func DocumentType_Values() []string {
 58483  	return []string{
 58484  		DocumentTypeCommand,
 58485  		DocumentTypePolicy,
 58486  		DocumentTypeAutomation,
 58487  		DocumentTypeSession,
 58488  		DocumentTypePackage,
 58489  		DocumentTypeApplicationConfiguration,
 58490  		DocumentTypeApplicationConfigurationSchema,
 58491  		DocumentTypeDeploymentStrategy,
 58492  		DocumentTypeChangeCalendar,
 58493  		DocumentTypeAutomationChangeTemplate,
 58494  		DocumentTypeProblemAnalysis,
 58495  		DocumentTypeProblemAnalysisTemplate,
 58496  	}
 58497  }
 58498  
 58499  const (
 58500  	// ExecutionModeAuto is a ExecutionMode enum value
 58501  	ExecutionModeAuto = "Auto"
 58502  
 58503  	// ExecutionModeInteractive is a ExecutionMode enum value
 58504  	ExecutionModeInteractive = "Interactive"
 58505  )
 58506  
 58507  // ExecutionMode_Values returns all elements of the ExecutionMode enum
 58508  func ExecutionMode_Values() []string {
 58509  	return []string{
 58510  		ExecutionModeAuto,
 58511  		ExecutionModeInteractive,
 58512  	}
 58513  }
 58514  
 58515  const (
 58516  	// FaultClient is a Fault enum value
 58517  	FaultClient = "Client"
 58518  
 58519  	// FaultServer is a Fault enum value
 58520  	FaultServer = "Server"
 58521  
 58522  	// FaultUnknown is a Fault enum value
 58523  	FaultUnknown = "Unknown"
 58524  )
 58525  
 58526  // Fault_Values returns all elements of the Fault enum
 58527  func Fault_Values() []string {
 58528  	return []string{
 58529  		FaultClient,
 58530  		FaultServer,
 58531  		FaultUnknown,
 58532  	}
 58533  }
 58534  
 58535  const (
 58536  	// InstanceInformationFilterKeyInstanceIds is a InstanceInformationFilterKey enum value
 58537  	InstanceInformationFilterKeyInstanceIds = "InstanceIds"
 58538  
 58539  	// InstanceInformationFilterKeyAgentVersion is a InstanceInformationFilterKey enum value
 58540  	InstanceInformationFilterKeyAgentVersion = "AgentVersion"
 58541  
 58542  	// InstanceInformationFilterKeyPingStatus is a InstanceInformationFilterKey enum value
 58543  	InstanceInformationFilterKeyPingStatus = "PingStatus"
 58544  
 58545  	// InstanceInformationFilterKeyPlatformTypes is a InstanceInformationFilterKey enum value
 58546  	InstanceInformationFilterKeyPlatformTypes = "PlatformTypes"
 58547  
 58548  	// InstanceInformationFilterKeyActivationIds is a InstanceInformationFilterKey enum value
 58549  	InstanceInformationFilterKeyActivationIds = "ActivationIds"
 58550  
 58551  	// InstanceInformationFilterKeyIamRole is a InstanceInformationFilterKey enum value
 58552  	InstanceInformationFilterKeyIamRole = "IamRole"
 58553  
 58554  	// InstanceInformationFilterKeyResourceType is a InstanceInformationFilterKey enum value
 58555  	InstanceInformationFilterKeyResourceType = "ResourceType"
 58556  
 58557  	// InstanceInformationFilterKeyAssociationStatus is a InstanceInformationFilterKey enum value
 58558  	InstanceInformationFilterKeyAssociationStatus = "AssociationStatus"
 58559  )
 58560  
 58561  // InstanceInformationFilterKey_Values returns all elements of the InstanceInformationFilterKey enum
 58562  func InstanceInformationFilterKey_Values() []string {
 58563  	return []string{
 58564  		InstanceInformationFilterKeyInstanceIds,
 58565  		InstanceInformationFilterKeyAgentVersion,
 58566  		InstanceInformationFilterKeyPingStatus,
 58567  		InstanceInformationFilterKeyPlatformTypes,
 58568  		InstanceInformationFilterKeyActivationIds,
 58569  		InstanceInformationFilterKeyIamRole,
 58570  		InstanceInformationFilterKeyResourceType,
 58571  		InstanceInformationFilterKeyAssociationStatus,
 58572  	}
 58573  }
 58574  
 58575  const (
 58576  	// InstancePatchStateOperatorTypeEqual is a InstancePatchStateOperatorType enum value
 58577  	InstancePatchStateOperatorTypeEqual = "Equal"
 58578  
 58579  	// InstancePatchStateOperatorTypeNotEqual is a InstancePatchStateOperatorType enum value
 58580  	InstancePatchStateOperatorTypeNotEqual = "NotEqual"
 58581  
 58582  	// InstancePatchStateOperatorTypeLessThan is a InstancePatchStateOperatorType enum value
 58583  	InstancePatchStateOperatorTypeLessThan = "LessThan"
 58584  
 58585  	// InstancePatchStateOperatorTypeGreaterThan is a InstancePatchStateOperatorType enum value
 58586  	InstancePatchStateOperatorTypeGreaterThan = "GreaterThan"
 58587  )
 58588  
 58589  // InstancePatchStateOperatorType_Values returns all elements of the InstancePatchStateOperatorType enum
 58590  func InstancePatchStateOperatorType_Values() []string {
 58591  	return []string{
 58592  		InstancePatchStateOperatorTypeEqual,
 58593  		InstancePatchStateOperatorTypeNotEqual,
 58594  		InstancePatchStateOperatorTypeLessThan,
 58595  		InstancePatchStateOperatorTypeGreaterThan,
 58596  	}
 58597  }
 58598  
 58599  const (
 58600  	// InventoryAttributeDataTypeString is a InventoryAttributeDataType enum value
 58601  	InventoryAttributeDataTypeString = "string"
 58602  
 58603  	// InventoryAttributeDataTypeNumber is a InventoryAttributeDataType enum value
 58604  	InventoryAttributeDataTypeNumber = "number"
 58605  )
 58606  
 58607  // InventoryAttributeDataType_Values returns all elements of the InventoryAttributeDataType enum
 58608  func InventoryAttributeDataType_Values() []string {
 58609  	return []string{
 58610  		InventoryAttributeDataTypeString,
 58611  		InventoryAttributeDataTypeNumber,
 58612  	}
 58613  }
 58614  
 58615  const (
 58616  	// InventoryDeletionStatusInProgress is a InventoryDeletionStatus enum value
 58617  	InventoryDeletionStatusInProgress = "InProgress"
 58618  
 58619  	// InventoryDeletionStatusComplete is a InventoryDeletionStatus enum value
 58620  	InventoryDeletionStatusComplete = "Complete"
 58621  )
 58622  
 58623  // InventoryDeletionStatus_Values returns all elements of the InventoryDeletionStatus enum
 58624  func InventoryDeletionStatus_Values() []string {
 58625  	return []string{
 58626  		InventoryDeletionStatusInProgress,
 58627  		InventoryDeletionStatusComplete,
 58628  	}
 58629  }
 58630  
 58631  const (
 58632  	// InventoryQueryOperatorTypeEqual is a InventoryQueryOperatorType enum value
 58633  	InventoryQueryOperatorTypeEqual = "Equal"
 58634  
 58635  	// InventoryQueryOperatorTypeNotEqual is a InventoryQueryOperatorType enum value
 58636  	InventoryQueryOperatorTypeNotEqual = "NotEqual"
 58637  
 58638  	// InventoryQueryOperatorTypeBeginWith is a InventoryQueryOperatorType enum value
 58639  	InventoryQueryOperatorTypeBeginWith = "BeginWith"
 58640  
 58641  	// InventoryQueryOperatorTypeLessThan is a InventoryQueryOperatorType enum value
 58642  	InventoryQueryOperatorTypeLessThan = "LessThan"
 58643  
 58644  	// InventoryQueryOperatorTypeGreaterThan is a InventoryQueryOperatorType enum value
 58645  	InventoryQueryOperatorTypeGreaterThan = "GreaterThan"
 58646  
 58647  	// InventoryQueryOperatorTypeExists is a InventoryQueryOperatorType enum value
 58648  	InventoryQueryOperatorTypeExists = "Exists"
 58649  )
 58650  
 58651  // InventoryQueryOperatorType_Values returns all elements of the InventoryQueryOperatorType enum
 58652  func InventoryQueryOperatorType_Values() []string {
 58653  	return []string{
 58654  		InventoryQueryOperatorTypeEqual,
 58655  		InventoryQueryOperatorTypeNotEqual,
 58656  		InventoryQueryOperatorTypeBeginWith,
 58657  		InventoryQueryOperatorTypeLessThan,
 58658  		InventoryQueryOperatorTypeGreaterThan,
 58659  		InventoryQueryOperatorTypeExists,
 58660  	}
 58661  }
 58662  
 58663  const (
 58664  	// InventorySchemaDeleteOptionDisableSchema is a InventorySchemaDeleteOption enum value
 58665  	InventorySchemaDeleteOptionDisableSchema = "DisableSchema"
 58666  
 58667  	// InventorySchemaDeleteOptionDeleteSchema is a InventorySchemaDeleteOption enum value
 58668  	InventorySchemaDeleteOptionDeleteSchema = "DeleteSchema"
 58669  )
 58670  
 58671  // InventorySchemaDeleteOption_Values returns all elements of the InventorySchemaDeleteOption enum
 58672  func InventorySchemaDeleteOption_Values() []string {
 58673  	return []string{
 58674  		InventorySchemaDeleteOptionDisableSchema,
 58675  		InventorySchemaDeleteOptionDeleteSchema,
 58676  	}
 58677  }
 58678  
 58679  const (
 58680  	// LastResourceDataSyncStatusSuccessful is a LastResourceDataSyncStatus enum value
 58681  	LastResourceDataSyncStatusSuccessful = "Successful"
 58682  
 58683  	// LastResourceDataSyncStatusFailed is a LastResourceDataSyncStatus enum value
 58684  	LastResourceDataSyncStatusFailed = "Failed"
 58685  
 58686  	// LastResourceDataSyncStatusInProgress is a LastResourceDataSyncStatus enum value
 58687  	LastResourceDataSyncStatusInProgress = "InProgress"
 58688  )
 58689  
 58690  // LastResourceDataSyncStatus_Values returns all elements of the LastResourceDataSyncStatus enum
 58691  func LastResourceDataSyncStatus_Values() []string {
 58692  	return []string{
 58693  		LastResourceDataSyncStatusSuccessful,
 58694  		LastResourceDataSyncStatusFailed,
 58695  		LastResourceDataSyncStatusInProgress,
 58696  	}
 58697  }
 58698  
 58699  const (
 58700  	// MaintenanceWindowExecutionStatusPending is a MaintenanceWindowExecutionStatus enum value
 58701  	MaintenanceWindowExecutionStatusPending = "PENDING"
 58702  
 58703  	// MaintenanceWindowExecutionStatusInProgress is a MaintenanceWindowExecutionStatus enum value
 58704  	MaintenanceWindowExecutionStatusInProgress = "IN_PROGRESS"
 58705  
 58706  	// MaintenanceWindowExecutionStatusSuccess is a MaintenanceWindowExecutionStatus enum value
 58707  	MaintenanceWindowExecutionStatusSuccess = "SUCCESS"
 58708  
 58709  	// MaintenanceWindowExecutionStatusFailed is a MaintenanceWindowExecutionStatus enum value
 58710  	MaintenanceWindowExecutionStatusFailed = "FAILED"
 58711  
 58712  	// MaintenanceWindowExecutionStatusTimedOut is a MaintenanceWindowExecutionStatus enum value
 58713  	MaintenanceWindowExecutionStatusTimedOut = "TIMED_OUT"
 58714  
 58715  	// MaintenanceWindowExecutionStatusCancelling is a MaintenanceWindowExecutionStatus enum value
 58716  	MaintenanceWindowExecutionStatusCancelling = "CANCELLING"
 58717  
 58718  	// MaintenanceWindowExecutionStatusCancelled is a MaintenanceWindowExecutionStatus enum value
 58719  	MaintenanceWindowExecutionStatusCancelled = "CANCELLED"
 58720  
 58721  	// MaintenanceWindowExecutionStatusSkippedOverlapping is a MaintenanceWindowExecutionStatus enum value
 58722  	MaintenanceWindowExecutionStatusSkippedOverlapping = "SKIPPED_OVERLAPPING"
 58723  )
 58724  
 58725  // MaintenanceWindowExecutionStatus_Values returns all elements of the MaintenanceWindowExecutionStatus enum
 58726  func MaintenanceWindowExecutionStatus_Values() []string {
 58727  	return []string{
 58728  		MaintenanceWindowExecutionStatusPending,
 58729  		MaintenanceWindowExecutionStatusInProgress,
 58730  		MaintenanceWindowExecutionStatusSuccess,
 58731  		MaintenanceWindowExecutionStatusFailed,
 58732  		MaintenanceWindowExecutionStatusTimedOut,
 58733  		MaintenanceWindowExecutionStatusCancelling,
 58734  		MaintenanceWindowExecutionStatusCancelled,
 58735  		MaintenanceWindowExecutionStatusSkippedOverlapping,
 58736  	}
 58737  }
 58738  
 58739  const (
 58740  	// MaintenanceWindowResourceTypeInstance is a MaintenanceWindowResourceType enum value
 58741  	MaintenanceWindowResourceTypeInstance = "INSTANCE"
 58742  
 58743  	// MaintenanceWindowResourceTypeResourceGroup is a MaintenanceWindowResourceType enum value
 58744  	MaintenanceWindowResourceTypeResourceGroup = "RESOURCE_GROUP"
 58745  )
 58746  
 58747  // MaintenanceWindowResourceType_Values returns all elements of the MaintenanceWindowResourceType enum
 58748  func MaintenanceWindowResourceType_Values() []string {
 58749  	return []string{
 58750  		MaintenanceWindowResourceTypeInstance,
 58751  		MaintenanceWindowResourceTypeResourceGroup,
 58752  	}
 58753  }
 58754  
 58755  const (
 58756  	// MaintenanceWindowTaskCutoffBehaviorContinueTask is a MaintenanceWindowTaskCutoffBehavior enum value
 58757  	MaintenanceWindowTaskCutoffBehaviorContinueTask = "CONTINUE_TASK"
 58758  
 58759  	// MaintenanceWindowTaskCutoffBehaviorCancelTask is a MaintenanceWindowTaskCutoffBehavior enum value
 58760  	MaintenanceWindowTaskCutoffBehaviorCancelTask = "CANCEL_TASK"
 58761  )
 58762  
 58763  // MaintenanceWindowTaskCutoffBehavior_Values returns all elements of the MaintenanceWindowTaskCutoffBehavior enum
 58764  func MaintenanceWindowTaskCutoffBehavior_Values() []string {
 58765  	return []string{
 58766  		MaintenanceWindowTaskCutoffBehaviorContinueTask,
 58767  		MaintenanceWindowTaskCutoffBehaviorCancelTask,
 58768  	}
 58769  }
 58770  
 58771  const (
 58772  	// MaintenanceWindowTaskTypeRunCommand is a MaintenanceWindowTaskType enum value
 58773  	MaintenanceWindowTaskTypeRunCommand = "RUN_COMMAND"
 58774  
 58775  	// MaintenanceWindowTaskTypeAutomation is a MaintenanceWindowTaskType enum value
 58776  	MaintenanceWindowTaskTypeAutomation = "AUTOMATION"
 58777  
 58778  	// MaintenanceWindowTaskTypeStepFunctions is a MaintenanceWindowTaskType enum value
 58779  	MaintenanceWindowTaskTypeStepFunctions = "STEP_FUNCTIONS"
 58780  
 58781  	// MaintenanceWindowTaskTypeLambda is a MaintenanceWindowTaskType enum value
 58782  	MaintenanceWindowTaskTypeLambda = "LAMBDA"
 58783  )
 58784  
 58785  // MaintenanceWindowTaskType_Values returns all elements of the MaintenanceWindowTaskType enum
 58786  func MaintenanceWindowTaskType_Values() []string {
 58787  	return []string{
 58788  		MaintenanceWindowTaskTypeRunCommand,
 58789  		MaintenanceWindowTaskTypeAutomation,
 58790  		MaintenanceWindowTaskTypeStepFunctions,
 58791  		MaintenanceWindowTaskTypeLambda,
 58792  	}
 58793  }
 58794  
 58795  const (
 58796  	// NotificationEventAll is a NotificationEvent enum value
 58797  	NotificationEventAll = "All"
 58798  
 58799  	// NotificationEventInProgress is a NotificationEvent enum value
 58800  	NotificationEventInProgress = "InProgress"
 58801  
 58802  	// NotificationEventSuccess is a NotificationEvent enum value
 58803  	NotificationEventSuccess = "Success"
 58804  
 58805  	// NotificationEventTimedOut is a NotificationEvent enum value
 58806  	NotificationEventTimedOut = "TimedOut"
 58807  
 58808  	// NotificationEventCancelled is a NotificationEvent enum value
 58809  	NotificationEventCancelled = "Cancelled"
 58810  
 58811  	// NotificationEventFailed is a NotificationEvent enum value
 58812  	NotificationEventFailed = "Failed"
 58813  )
 58814  
 58815  // NotificationEvent_Values returns all elements of the NotificationEvent enum
 58816  func NotificationEvent_Values() []string {
 58817  	return []string{
 58818  		NotificationEventAll,
 58819  		NotificationEventInProgress,
 58820  		NotificationEventSuccess,
 58821  		NotificationEventTimedOut,
 58822  		NotificationEventCancelled,
 58823  		NotificationEventFailed,
 58824  	}
 58825  }
 58826  
 58827  const (
 58828  	// NotificationTypeCommand is a NotificationType enum value
 58829  	NotificationTypeCommand = "Command"
 58830  
 58831  	// NotificationTypeInvocation is a NotificationType enum value
 58832  	NotificationTypeInvocation = "Invocation"
 58833  )
 58834  
 58835  // NotificationType_Values returns all elements of the NotificationType enum
 58836  func NotificationType_Values() []string {
 58837  	return []string{
 58838  		NotificationTypeCommand,
 58839  		NotificationTypeInvocation,
 58840  	}
 58841  }
 58842  
 58843  const (
 58844  	// OperatingSystemWindows is a OperatingSystem enum value
 58845  	OperatingSystemWindows = "WINDOWS"
 58846  
 58847  	// OperatingSystemAmazonLinux is a OperatingSystem enum value
 58848  	OperatingSystemAmazonLinux = "AMAZON_LINUX"
 58849  
 58850  	// OperatingSystemAmazonLinux2 is a OperatingSystem enum value
 58851  	OperatingSystemAmazonLinux2 = "AMAZON_LINUX_2"
 58852  
 58853  	// OperatingSystemUbuntu is a OperatingSystem enum value
 58854  	OperatingSystemUbuntu = "UBUNTU"
 58855  
 58856  	// OperatingSystemRedhatEnterpriseLinux is a OperatingSystem enum value
 58857  	OperatingSystemRedhatEnterpriseLinux = "REDHAT_ENTERPRISE_LINUX"
 58858  
 58859  	// OperatingSystemSuse is a OperatingSystem enum value
 58860  	OperatingSystemSuse = "SUSE"
 58861  
 58862  	// OperatingSystemCentos is a OperatingSystem enum value
 58863  	OperatingSystemCentos = "CENTOS"
 58864  
 58865  	// OperatingSystemOracleLinux is a OperatingSystem enum value
 58866  	OperatingSystemOracleLinux = "ORACLE_LINUX"
 58867  
 58868  	// OperatingSystemDebian is a OperatingSystem enum value
 58869  	OperatingSystemDebian = "DEBIAN"
 58870  
 58871  	// OperatingSystemMacos is a OperatingSystem enum value
 58872  	OperatingSystemMacos = "MACOS"
 58873  )
 58874  
 58875  // OperatingSystem_Values returns all elements of the OperatingSystem enum
 58876  func OperatingSystem_Values() []string {
 58877  	return []string{
 58878  		OperatingSystemWindows,
 58879  		OperatingSystemAmazonLinux,
 58880  		OperatingSystemAmazonLinux2,
 58881  		OperatingSystemUbuntu,
 58882  		OperatingSystemRedhatEnterpriseLinux,
 58883  		OperatingSystemSuse,
 58884  		OperatingSystemCentos,
 58885  		OperatingSystemOracleLinux,
 58886  		OperatingSystemDebian,
 58887  		OperatingSystemMacos,
 58888  	}
 58889  }
 58890  
 58891  const (
 58892  	// OpsFilterOperatorTypeEqual is a OpsFilterOperatorType enum value
 58893  	OpsFilterOperatorTypeEqual = "Equal"
 58894  
 58895  	// OpsFilterOperatorTypeNotEqual is a OpsFilterOperatorType enum value
 58896  	OpsFilterOperatorTypeNotEqual = "NotEqual"
 58897  
 58898  	// OpsFilterOperatorTypeBeginWith is a OpsFilterOperatorType enum value
 58899  	OpsFilterOperatorTypeBeginWith = "BeginWith"
 58900  
 58901  	// OpsFilterOperatorTypeLessThan is a OpsFilterOperatorType enum value
 58902  	OpsFilterOperatorTypeLessThan = "LessThan"
 58903  
 58904  	// OpsFilterOperatorTypeGreaterThan is a OpsFilterOperatorType enum value
 58905  	OpsFilterOperatorTypeGreaterThan = "GreaterThan"
 58906  
 58907  	// OpsFilterOperatorTypeExists is a OpsFilterOperatorType enum value
 58908  	OpsFilterOperatorTypeExists = "Exists"
 58909  )
 58910  
 58911  // OpsFilterOperatorType_Values returns all elements of the OpsFilterOperatorType enum
 58912  func OpsFilterOperatorType_Values() []string {
 58913  	return []string{
 58914  		OpsFilterOperatorTypeEqual,
 58915  		OpsFilterOperatorTypeNotEqual,
 58916  		OpsFilterOperatorTypeBeginWith,
 58917  		OpsFilterOperatorTypeLessThan,
 58918  		OpsFilterOperatorTypeGreaterThan,
 58919  		OpsFilterOperatorTypeExists,
 58920  	}
 58921  }
 58922  
 58923  const (
 58924  	// OpsItemDataTypeSearchableString is a OpsItemDataType enum value
 58925  	OpsItemDataTypeSearchableString = "SearchableString"
 58926  
 58927  	// OpsItemDataTypeString is a OpsItemDataType enum value
 58928  	OpsItemDataTypeString = "String"
 58929  )
 58930  
 58931  // OpsItemDataType_Values returns all elements of the OpsItemDataType enum
 58932  func OpsItemDataType_Values() []string {
 58933  	return []string{
 58934  		OpsItemDataTypeSearchableString,
 58935  		OpsItemDataTypeString,
 58936  	}
 58937  }
 58938  
 58939  const (
 58940  	// OpsItemEventFilterKeyOpsItemId is a OpsItemEventFilterKey enum value
 58941  	OpsItemEventFilterKeyOpsItemId = "OpsItemId"
 58942  )
 58943  
 58944  // OpsItemEventFilterKey_Values returns all elements of the OpsItemEventFilterKey enum
 58945  func OpsItemEventFilterKey_Values() []string {
 58946  	return []string{
 58947  		OpsItemEventFilterKeyOpsItemId,
 58948  	}
 58949  }
 58950  
 58951  const (
 58952  	// OpsItemEventFilterOperatorEqual is a OpsItemEventFilterOperator enum value
 58953  	OpsItemEventFilterOperatorEqual = "Equal"
 58954  )
 58955  
 58956  // OpsItemEventFilterOperator_Values returns all elements of the OpsItemEventFilterOperator enum
 58957  func OpsItemEventFilterOperator_Values() []string {
 58958  	return []string{
 58959  		OpsItemEventFilterOperatorEqual,
 58960  	}
 58961  }
 58962  
 58963  const (
 58964  	// OpsItemFilterKeyStatus is a OpsItemFilterKey enum value
 58965  	OpsItemFilterKeyStatus = "Status"
 58966  
 58967  	// OpsItemFilterKeyCreatedBy is a OpsItemFilterKey enum value
 58968  	OpsItemFilterKeyCreatedBy = "CreatedBy"
 58969  
 58970  	// OpsItemFilterKeySource is a OpsItemFilterKey enum value
 58971  	OpsItemFilterKeySource = "Source"
 58972  
 58973  	// OpsItemFilterKeyPriority is a OpsItemFilterKey enum value
 58974  	OpsItemFilterKeyPriority = "Priority"
 58975  
 58976  	// OpsItemFilterKeyTitle is a OpsItemFilterKey enum value
 58977  	OpsItemFilterKeyTitle = "Title"
 58978  
 58979  	// OpsItemFilterKeyOpsItemId is a OpsItemFilterKey enum value
 58980  	OpsItemFilterKeyOpsItemId = "OpsItemId"
 58981  
 58982  	// OpsItemFilterKeyCreatedTime is a OpsItemFilterKey enum value
 58983  	OpsItemFilterKeyCreatedTime = "CreatedTime"
 58984  
 58985  	// OpsItemFilterKeyLastModifiedTime is a OpsItemFilterKey enum value
 58986  	OpsItemFilterKeyLastModifiedTime = "LastModifiedTime"
 58987  
 58988  	// OpsItemFilterKeyActualStartTime is a OpsItemFilterKey enum value
 58989  	OpsItemFilterKeyActualStartTime = "ActualStartTime"
 58990  
 58991  	// OpsItemFilterKeyActualEndTime is a OpsItemFilterKey enum value
 58992  	OpsItemFilterKeyActualEndTime = "ActualEndTime"
 58993  
 58994  	// OpsItemFilterKeyPlannedStartTime is a OpsItemFilterKey enum value
 58995  	OpsItemFilterKeyPlannedStartTime = "PlannedStartTime"
 58996  
 58997  	// OpsItemFilterKeyPlannedEndTime is a OpsItemFilterKey enum value
 58998  	OpsItemFilterKeyPlannedEndTime = "PlannedEndTime"
 58999  
 59000  	// OpsItemFilterKeyOperationalData is a OpsItemFilterKey enum value
 59001  	OpsItemFilterKeyOperationalData = "OperationalData"
 59002  
 59003  	// OpsItemFilterKeyOperationalDataKey is a OpsItemFilterKey enum value
 59004  	OpsItemFilterKeyOperationalDataKey = "OperationalDataKey"
 59005  
 59006  	// OpsItemFilterKeyOperationalDataValue is a OpsItemFilterKey enum value
 59007  	OpsItemFilterKeyOperationalDataValue = "OperationalDataValue"
 59008  
 59009  	// OpsItemFilterKeyResourceId is a OpsItemFilterKey enum value
 59010  	OpsItemFilterKeyResourceId = "ResourceId"
 59011  
 59012  	// OpsItemFilterKeyAutomationId is a OpsItemFilterKey enum value
 59013  	OpsItemFilterKeyAutomationId = "AutomationId"
 59014  
 59015  	// OpsItemFilterKeyCategory is a OpsItemFilterKey enum value
 59016  	OpsItemFilterKeyCategory = "Category"
 59017  
 59018  	// OpsItemFilterKeySeverity is a OpsItemFilterKey enum value
 59019  	OpsItemFilterKeySeverity = "Severity"
 59020  
 59021  	// OpsItemFilterKeyOpsItemType is a OpsItemFilterKey enum value
 59022  	OpsItemFilterKeyOpsItemType = "OpsItemType"
 59023  
 59024  	// OpsItemFilterKeyChangeRequestByRequesterArn is a OpsItemFilterKey enum value
 59025  	OpsItemFilterKeyChangeRequestByRequesterArn = "ChangeRequestByRequesterArn"
 59026  
 59027  	// OpsItemFilterKeyChangeRequestByRequesterName is a OpsItemFilterKey enum value
 59028  	OpsItemFilterKeyChangeRequestByRequesterName = "ChangeRequestByRequesterName"
 59029  
 59030  	// OpsItemFilterKeyChangeRequestByApproverArn is a OpsItemFilterKey enum value
 59031  	OpsItemFilterKeyChangeRequestByApproverArn = "ChangeRequestByApproverArn"
 59032  
 59033  	// OpsItemFilterKeyChangeRequestByApproverName is a OpsItemFilterKey enum value
 59034  	OpsItemFilterKeyChangeRequestByApproverName = "ChangeRequestByApproverName"
 59035  
 59036  	// OpsItemFilterKeyChangeRequestByTemplate is a OpsItemFilterKey enum value
 59037  	OpsItemFilterKeyChangeRequestByTemplate = "ChangeRequestByTemplate"
 59038  
 59039  	// OpsItemFilterKeyChangeRequestByTargetsResourceGroup is a OpsItemFilterKey enum value
 59040  	OpsItemFilterKeyChangeRequestByTargetsResourceGroup = "ChangeRequestByTargetsResourceGroup"
 59041  
 59042  	// OpsItemFilterKeyInsightByType is a OpsItemFilterKey enum value
 59043  	OpsItemFilterKeyInsightByType = "InsightByType"
 59044  )
 59045  
 59046  // OpsItemFilterKey_Values returns all elements of the OpsItemFilterKey enum
 59047  func OpsItemFilterKey_Values() []string {
 59048  	return []string{
 59049  		OpsItemFilterKeyStatus,
 59050  		OpsItemFilterKeyCreatedBy,
 59051  		OpsItemFilterKeySource,
 59052  		OpsItemFilterKeyPriority,
 59053  		OpsItemFilterKeyTitle,
 59054  		OpsItemFilterKeyOpsItemId,
 59055  		OpsItemFilterKeyCreatedTime,
 59056  		OpsItemFilterKeyLastModifiedTime,
 59057  		OpsItemFilterKeyActualStartTime,
 59058  		OpsItemFilterKeyActualEndTime,
 59059  		OpsItemFilterKeyPlannedStartTime,
 59060  		OpsItemFilterKeyPlannedEndTime,
 59061  		OpsItemFilterKeyOperationalData,
 59062  		OpsItemFilterKeyOperationalDataKey,
 59063  		OpsItemFilterKeyOperationalDataValue,
 59064  		OpsItemFilterKeyResourceId,
 59065  		OpsItemFilterKeyAutomationId,
 59066  		OpsItemFilterKeyCategory,
 59067  		OpsItemFilterKeySeverity,
 59068  		OpsItemFilterKeyOpsItemType,
 59069  		OpsItemFilterKeyChangeRequestByRequesterArn,
 59070  		OpsItemFilterKeyChangeRequestByRequesterName,
 59071  		OpsItemFilterKeyChangeRequestByApproverArn,
 59072  		OpsItemFilterKeyChangeRequestByApproverName,
 59073  		OpsItemFilterKeyChangeRequestByTemplate,
 59074  		OpsItemFilterKeyChangeRequestByTargetsResourceGroup,
 59075  		OpsItemFilterKeyInsightByType,
 59076  	}
 59077  }
 59078  
 59079  const (
 59080  	// OpsItemFilterOperatorEqual is a OpsItemFilterOperator enum value
 59081  	OpsItemFilterOperatorEqual = "Equal"
 59082  
 59083  	// OpsItemFilterOperatorContains is a OpsItemFilterOperator enum value
 59084  	OpsItemFilterOperatorContains = "Contains"
 59085  
 59086  	// OpsItemFilterOperatorGreaterThan is a OpsItemFilterOperator enum value
 59087  	OpsItemFilterOperatorGreaterThan = "GreaterThan"
 59088  
 59089  	// OpsItemFilterOperatorLessThan is a OpsItemFilterOperator enum value
 59090  	OpsItemFilterOperatorLessThan = "LessThan"
 59091  )
 59092  
 59093  // OpsItemFilterOperator_Values returns all elements of the OpsItemFilterOperator enum
 59094  func OpsItemFilterOperator_Values() []string {
 59095  	return []string{
 59096  		OpsItemFilterOperatorEqual,
 59097  		OpsItemFilterOperatorContains,
 59098  		OpsItemFilterOperatorGreaterThan,
 59099  		OpsItemFilterOperatorLessThan,
 59100  	}
 59101  }
 59102  
 59103  const (
 59104  	// OpsItemRelatedItemsFilterKeyResourceType is a OpsItemRelatedItemsFilterKey enum value
 59105  	OpsItemRelatedItemsFilterKeyResourceType = "ResourceType"
 59106  
 59107  	// OpsItemRelatedItemsFilterKeyAssociationId is a OpsItemRelatedItemsFilterKey enum value
 59108  	OpsItemRelatedItemsFilterKeyAssociationId = "AssociationId"
 59109  
 59110  	// OpsItemRelatedItemsFilterKeyResourceUri is a OpsItemRelatedItemsFilterKey enum value
 59111  	OpsItemRelatedItemsFilterKeyResourceUri = "ResourceUri"
 59112  )
 59113  
 59114  // OpsItemRelatedItemsFilterKey_Values returns all elements of the OpsItemRelatedItemsFilterKey enum
 59115  func OpsItemRelatedItemsFilterKey_Values() []string {
 59116  	return []string{
 59117  		OpsItemRelatedItemsFilterKeyResourceType,
 59118  		OpsItemRelatedItemsFilterKeyAssociationId,
 59119  		OpsItemRelatedItemsFilterKeyResourceUri,
 59120  	}
 59121  }
 59122  
 59123  const (
 59124  	// OpsItemRelatedItemsFilterOperatorEqual is a OpsItemRelatedItemsFilterOperator enum value
 59125  	OpsItemRelatedItemsFilterOperatorEqual = "Equal"
 59126  )
 59127  
 59128  // OpsItemRelatedItemsFilterOperator_Values returns all elements of the OpsItemRelatedItemsFilterOperator enum
 59129  func OpsItemRelatedItemsFilterOperator_Values() []string {
 59130  	return []string{
 59131  		OpsItemRelatedItemsFilterOperatorEqual,
 59132  	}
 59133  }
 59134  
 59135  const (
 59136  	// OpsItemStatusOpen is a OpsItemStatus enum value
 59137  	OpsItemStatusOpen = "Open"
 59138  
 59139  	// OpsItemStatusInProgress is a OpsItemStatus enum value
 59140  	OpsItemStatusInProgress = "InProgress"
 59141  
 59142  	// OpsItemStatusResolved is a OpsItemStatus enum value
 59143  	OpsItemStatusResolved = "Resolved"
 59144  
 59145  	// OpsItemStatusPending is a OpsItemStatus enum value
 59146  	OpsItemStatusPending = "Pending"
 59147  
 59148  	// OpsItemStatusTimedOut is a OpsItemStatus enum value
 59149  	OpsItemStatusTimedOut = "TimedOut"
 59150  
 59151  	// OpsItemStatusCancelling is a OpsItemStatus enum value
 59152  	OpsItemStatusCancelling = "Cancelling"
 59153  
 59154  	// OpsItemStatusCancelled is a OpsItemStatus enum value
 59155  	OpsItemStatusCancelled = "Cancelled"
 59156  
 59157  	// OpsItemStatusFailed is a OpsItemStatus enum value
 59158  	OpsItemStatusFailed = "Failed"
 59159  
 59160  	// OpsItemStatusCompletedWithSuccess is a OpsItemStatus enum value
 59161  	OpsItemStatusCompletedWithSuccess = "CompletedWithSuccess"
 59162  
 59163  	// OpsItemStatusCompletedWithFailure is a OpsItemStatus enum value
 59164  	OpsItemStatusCompletedWithFailure = "CompletedWithFailure"
 59165  
 59166  	// OpsItemStatusScheduled is a OpsItemStatus enum value
 59167  	OpsItemStatusScheduled = "Scheduled"
 59168  
 59169  	// OpsItemStatusRunbookInProgress is a OpsItemStatus enum value
 59170  	OpsItemStatusRunbookInProgress = "RunbookInProgress"
 59171  
 59172  	// OpsItemStatusPendingChangeCalendarOverride is a OpsItemStatus enum value
 59173  	OpsItemStatusPendingChangeCalendarOverride = "PendingChangeCalendarOverride"
 59174  
 59175  	// OpsItemStatusChangeCalendarOverrideApproved is a OpsItemStatus enum value
 59176  	OpsItemStatusChangeCalendarOverrideApproved = "ChangeCalendarOverrideApproved"
 59177  
 59178  	// OpsItemStatusChangeCalendarOverrideRejected is a OpsItemStatus enum value
 59179  	OpsItemStatusChangeCalendarOverrideRejected = "ChangeCalendarOverrideRejected"
 59180  
 59181  	// OpsItemStatusPendingApproval is a OpsItemStatus enum value
 59182  	OpsItemStatusPendingApproval = "PendingApproval"
 59183  
 59184  	// OpsItemStatusApproved is a OpsItemStatus enum value
 59185  	OpsItemStatusApproved = "Approved"
 59186  
 59187  	// OpsItemStatusRejected is a OpsItemStatus enum value
 59188  	OpsItemStatusRejected = "Rejected"
 59189  
 59190  	// OpsItemStatusClosed is a OpsItemStatus enum value
 59191  	OpsItemStatusClosed = "Closed"
 59192  )
 59193  
 59194  // OpsItemStatus_Values returns all elements of the OpsItemStatus enum
 59195  func OpsItemStatus_Values() []string {
 59196  	return []string{
 59197  		OpsItemStatusOpen,
 59198  		OpsItemStatusInProgress,
 59199  		OpsItemStatusResolved,
 59200  		OpsItemStatusPending,
 59201  		OpsItemStatusTimedOut,
 59202  		OpsItemStatusCancelling,
 59203  		OpsItemStatusCancelled,
 59204  		OpsItemStatusFailed,
 59205  		OpsItemStatusCompletedWithSuccess,
 59206  		OpsItemStatusCompletedWithFailure,
 59207  		OpsItemStatusScheduled,
 59208  		OpsItemStatusRunbookInProgress,
 59209  		OpsItemStatusPendingChangeCalendarOverride,
 59210  		OpsItemStatusChangeCalendarOverrideApproved,
 59211  		OpsItemStatusChangeCalendarOverrideRejected,
 59212  		OpsItemStatusPendingApproval,
 59213  		OpsItemStatusApproved,
 59214  		OpsItemStatusRejected,
 59215  		OpsItemStatusClosed,
 59216  	}
 59217  }
 59218  
 59219  const (
 59220  	// ParameterTierStandard is a ParameterTier enum value
 59221  	ParameterTierStandard = "Standard"
 59222  
 59223  	// ParameterTierAdvanced is a ParameterTier enum value
 59224  	ParameterTierAdvanced = "Advanced"
 59225  
 59226  	// ParameterTierIntelligentTiering is a ParameterTier enum value
 59227  	ParameterTierIntelligentTiering = "Intelligent-Tiering"
 59228  )
 59229  
 59230  // ParameterTier_Values returns all elements of the ParameterTier enum
 59231  func ParameterTier_Values() []string {
 59232  	return []string{
 59233  		ParameterTierStandard,
 59234  		ParameterTierAdvanced,
 59235  		ParameterTierIntelligentTiering,
 59236  	}
 59237  }
 59238  
 59239  const (
 59240  	// ParameterTypeString is a ParameterType enum value
 59241  	ParameterTypeString = "String"
 59242  
 59243  	// ParameterTypeStringList is a ParameterType enum value
 59244  	ParameterTypeStringList = "StringList"
 59245  
 59246  	// ParameterTypeSecureString is a ParameterType enum value
 59247  	ParameterTypeSecureString = "SecureString"
 59248  )
 59249  
 59250  // ParameterType_Values returns all elements of the ParameterType enum
 59251  func ParameterType_Values() []string {
 59252  	return []string{
 59253  		ParameterTypeString,
 59254  		ParameterTypeStringList,
 59255  		ParameterTypeSecureString,
 59256  	}
 59257  }
 59258  
 59259  const (
 59260  	// ParametersFilterKeyName is a ParametersFilterKey enum value
 59261  	ParametersFilterKeyName = "Name"
 59262  
 59263  	// ParametersFilterKeyType is a ParametersFilterKey enum value
 59264  	ParametersFilterKeyType = "Type"
 59265  
 59266  	// ParametersFilterKeyKeyId is a ParametersFilterKey enum value
 59267  	ParametersFilterKeyKeyId = "KeyId"
 59268  )
 59269  
 59270  // ParametersFilterKey_Values returns all elements of the ParametersFilterKey enum
 59271  func ParametersFilterKey_Values() []string {
 59272  	return []string{
 59273  		ParametersFilterKeyName,
 59274  		ParametersFilterKeyType,
 59275  		ParametersFilterKeyKeyId,
 59276  	}
 59277  }
 59278  
 59279  const (
 59280  	// PatchActionAllowAsDependency is a PatchAction enum value
 59281  	PatchActionAllowAsDependency = "ALLOW_AS_DEPENDENCY"
 59282  
 59283  	// PatchActionBlock is a PatchAction enum value
 59284  	PatchActionBlock = "BLOCK"
 59285  )
 59286  
 59287  // PatchAction_Values returns all elements of the PatchAction enum
 59288  func PatchAction_Values() []string {
 59289  	return []string{
 59290  		PatchActionAllowAsDependency,
 59291  		PatchActionBlock,
 59292  	}
 59293  }
 59294  
 59295  const (
 59296  	// PatchComplianceDataStateInstalled is a PatchComplianceDataState enum value
 59297  	PatchComplianceDataStateInstalled = "INSTALLED"
 59298  
 59299  	// PatchComplianceDataStateInstalledOther is a PatchComplianceDataState enum value
 59300  	PatchComplianceDataStateInstalledOther = "INSTALLED_OTHER"
 59301  
 59302  	// PatchComplianceDataStateInstalledPendingReboot is a PatchComplianceDataState enum value
 59303  	PatchComplianceDataStateInstalledPendingReboot = "INSTALLED_PENDING_REBOOT"
 59304  
 59305  	// PatchComplianceDataStateInstalledRejected is a PatchComplianceDataState enum value
 59306  	PatchComplianceDataStateInstalledRejected = "INSTALLED_REJECTED"
 59307  
 59308  	// PatchComplianceDataStateMissing is a PatchComplianceDataState enum value
 59309  	PatchComplianceDataStateMissing = "MISSING"
 59310  
 59311  	// PatchComplianceDataStateNotApplicable is a PatchComplianceDataState enum value
 59312  	PatchComplianceDataStateNotApplicable = "NOT_APPLICABLE"
 59313  
 59314  	// PatchComplianceDataStateFailed is a PatchComplianceDataState enum value
 59315  	PatchComplianceDataStateFailed = "FAILED"
 59316  )
 59317  
 59318  // PatchComplianceDataState_Values returns all elements of the PatchComplianceDataState enum
 59319  func PatchComplianceDataState_Values() []string {
 59320  	return []string{
 59321  		PatchComplianceDataStateInstalled,
 59322  		PatchComplianceDataStateInstalledOther,
 59323  		PatchComplianceDataStateInstalledPendingReboot,
 59324  		PatchComplianceDataStateInstalledRejected,
 59325  		PatchComplianceDataStateMissing,
 59326  		PatchComplianceDataStateNotApplicable,
 59327  		PatchComplianceDataStateFailed,
 59328  	}
 59329  }
 59330  
 59331  const (
 59332  	// PatchComplianceLevelCritical is a PatchComplianceLevel enum value
 59333  	PatchComplianceLevelCritical = "CRITICAL"
 59334  
 59335  	// PatchComplianceLevelHigh is a PatchComplianceLevel enum value
 59336  	PatchComplianceLevelHigh = "HIGH"
 59337  
 59338  	// PatchComplianceLevelMedium is a PatchComplianceLevel enum value
 59339  	PatchComplianceLevelMedium = "MEDIUM"
 59340  
 59341  	// PatchComplianceLevelLow is a PatchComplianceLevel enum value
 59342  	PatchComplianceLevelLow = "LOW"
 59343  
 59344  	// PatchComplianceLevelInformational is a PatchComplianceLevel enum value
 59345  	PatchComplianceLevelInformational = "INFORMATIONAL"
 59346  
 59347  	// PatchComplianceLevelUnspecified is a PatchComplianceLevel enum value
 59348  	PatchComplianceLevelUnspecified = "UNSPECIFIED"
 59349  )
 59350  
 59351  // PatchComplianceLevel_Values returns all elements of the PatchComplianceLevel enum
 59352  func PatchComplianceLevel_Values() []string {
 59353  	return []string{
 59354  		PatchComplianceLevelCritical,
 59355  		PatchComplianceLevelHigh,
 59356  		PatchComplianceLevelMedium,
 59357  		PatchComplianceLevelLow,
 59358  		PatchComplianceLevelInformational,
 59359  		PatchComplianceLevelUnspecified,
 59360  	}
 59361  }
 59362  
 59363  const (
 59364  	// PatchDeploymentStatusApproved is a PatchDeploymentStatus enum value
 59365  	PatchDeploymentStatusApproved = "APPROVED"
 59366  
 59367  	// PatchDeploymentStatusPendingApproval is a PatchDeploymentStatus enum value
 59368  	PatchDeploymentStatusPendingApproval = "PENDING_APPROVAL"
 59369  
 59370  	// PatchDeploymentStatusExplicitApproved is a PatchDeploymentStatus enum value
 59371  	PatchDeploymentStatusExplicitApproved = "EXPLICIT_APPROVED"
 59372  
 59373  	// PatchDeploymentStatusExplicitRejected is a PatchDeploymentStatus enum value
 59374  	PatchDeploymentStatusExplicitRejected = "EXPLICIT_REJECTED"
 59375  )
 59376  
 59377  // PatchDeploymentStatus_Values returns all elements of the PatchDeploymentStatus enum
 59378  func PatchDeploymentStatus_Values() []string {
 59379  	return []string{
 59380  		PatchDeploymentStatusApproved,
 59381  		PatchDeploymentStatusPendingApproval,
 59382  		PatchDeploymentStatusExplicitApproved,
 59383  		PatchDeploymentStatusExplicitRejected,
 59384  	}
 59385  }
 59386  
 59387  const (
 59388  	// PatchFilterKeyArch is a PatchFilterKey enum value
 59389  	PatchFilterKeyArch = "ARCH"
 59390  
 59391  	// PatchFilterKeyAdvisoryId is a PatchFilterKey enum value
 59392  	PatchFilterKeyAdvisoryId = "ADVISORY_ID"
 59393  
 59394  	// PatchFilterKeyBugzillaId is a PatchFilterKey enum value
 59395  	PatchFilterKeyBugzillaId = "BUGZILLA_ID"
 59396  
 59397  	// PatchFilterKeyPatchSet is a PatchFilterKey enum value
 59398  	PatchFilterKeyPatchSet = "PATCH_SET"
 59399  
 59400  	// PatchFilterKeyProduct is a PatchFilterKey enum value
 59401  	PatchFilterKeyProduct = "PRODUCT"
 59402  
 59403  	// PatchFilterKeyProductFamily is a PatchFilterKey enum value
 59404  	PatchFilterKeyProductFamily = "PRODUCT_FAMILY"
 59405  
 59406  	// PatchFilterKeyClassification is a PatchFilterKey enum value
 59407  	PatchFilterKeyClassification = "CLASSIFICATION"
 59408  
 59409  	// PatchFilterKeyCveId is a PatchFilterKey enum value
 59410  	PatchFilterKeyCveId = "CVE_ID"
 59411  
 59412  	// PatchFilterKeyEpoch is a PatchFilterKey enum value
 59413  	PatchFilterKeyEpoch = "EPOCH"
 59414  
 59415  	// PatchFilterKeyMsrcSeverity is a PatchFilterKey enum value
 59416  	PatchFilterKeyMsrcSeverity = "MSRC_SEVERITY"
 59417  
 59418  	// PatchFilterKeyName is a PatchFilterKey enum value
 59419  	PatchFilterKeyName = "NAME"
 59420  
 59421  	// PatchFilterKeyPatchId is a PatchFilterKey enum value
 59422  	PatchFilterKeyPatchId = "PATCH_ID"
 59423  
 59424  	// PatchFilterKeySection is a PatchFilterKey enum value
 59425  	PatchFilterKeySection = "SECTION"
 59426  
 59427  	// PatchFilterKeyPriority is a PatchFilterKey enum value
 59428  	PatchFilterKeyPriority = "PRIORITY"
 59429  
 59430  	// PatchFilterKeyRepository is a PatchFilterKey enum value
 59431  	PatchFilterKeyRepository = "REPOSITORY"
 59432  
 59433  	// PatchFilterKeyRelease is a PatchFilterKey enum value
 59434  	PatchFilterKeyRelease = "RELEASE"
 59435  
 59436  	// PatchFilterKeySeverity is a PatchFilterKey enum value
 59437  	PatchFilterKeySeverity = "SEVERITY"
 59438  
 59439  	// PatchFilterKeySecurity is a PatchFilterKey enum value
 59440  	PatchFilterKeySecurity = "SECURITY"
 59441  
 59442  	// PatchFilterKeyVersion is a PatchFilterKey enum value
 59443  	PatchFilterKeyVersion = "VERSION"
 59444  )
 59445  
 59446  // PatchFilterKey_Values returns all elements of the PatchFilterKey enum
 59447  func PatchFilterKey_Values() []string {
 59448  	return []string{
 59449  		PatchFilterKeyArch,
 59450  		PatchFilterKeyAdvisoryId,
 59451  		PatchFilterKeyBugzillaId,
 59452  		PatchFilterKeyPatchSet,
 59453  		PatchFilterKeyProduct,
 59454  		PatchFilterKeyProductFamily,
 59455  		PatchFilterKeyClassification,
 59456  		PatchFilterKeyCveId,
 59457  		PatchFilterKeyEpoch,
 59458  		PatchFilterKeyMsrcSeverity,
 59459  		PatchFilterKeyName,
 59460  		PatchFilterKeyPatchId,
 59461  		PatchFilterKeySection,
 59462  		PatchFilterKeyPriority,
 59463  		PatchFilterKeyRepository,
 59464  		PatchFilterKeyRelease,
 59465  		PatchFilterKeySeverity,
 59466  		PatchFilterKeySecurity,
 59467  		PatchFilterKeyVersion,
 59468  	}
 59469  }
 59470  
 59471  const (
 59472  	// PatchOperationTypeScan is a PatchOperationType enum value
 59473  	PatchOperationTypeScan = "Scan"
 59474  
 59475  	// PatchOperationTypeInstall is a PatchOperationType enum value
 59476  	PatchOperationTypeInstall = "Install"
 59477  )
 59478  
 59479  // PatchOperationType_Values returns all elements of the PatchOperationType enum
 59480  func PatchOperationType_Values() []string {
 59481  	return []string{
 59482  		PatchOperationTypeScan,
 59483  		PatchOperationTypeInstall,
 59484  	}
 59485  }
 59486  
 59487  const (
 59488  	// PatchPropertyProduct is a PatchProperty enum value
 59489  	PatchPropertyProduct = "PRODUCT"
 59490  
 59491  	// PatchPropertyProductFamily is a PatchProperty enum value
 59492  	PatchPropertyProductFamily = "PRODUCT_FAMILY"
 59493  
 59494  	// PatchPropertyClassification is a PatchProperty enum value
 59495  	PatchPropertyClassification = "CLASSIFICATION"
 59496  
 59497  	// PatchPropertyMsrcSeverity is a PatchProperty enum value
 59498  	PatchPropertyMsrcSeverity = "MSRC_SEVERITY"
 59499  
 59500  	// PatchPropertyPriority is a PatchProperty enum value
 59501  	PatchPropertyPriority = "PRIORITY"
 59502  
 59503  	// PatchPropertySeverity is a PatchProperty enum value
 59504  	PatchPropertySeverity = "SEVERITY"
 59505  )
 59506  
 59507  // PatchProperty_Values returns all elements of the PatchProperty enum
 59508  func PatchProperty_Values() []string {
 59509  	return []string{
 59510  		PatchPropertyProduct,
 59511  		PatchPropertyProductFamily,
 59512  		PatchPropertyClassification,
 59513  		PatchPropertyMsrcSeverity,
 59514  		PatchPropertyPriority,
 59515  		PatchPropertySeverity,
 59516  	}
 59517  }
 59518  
 59519  const (
 59520  	// PatchSetOs is a PatchSet enum value
 59521  	PatchSetOs = "OS"
 59522  
 59523  	// PatchSetApplication is a PatchSet enum value
 59524  	PatchSetApplication = "APPLICATION"
 59525  )
 59526  
 59527  // PatchSet_Values returns all elements of the PatchSet enum
 59528  func PatchSet_Values() []string {
 59529  	return []string{
 59530  		PatchSetOs,
 59531  		PatchSetApplication,
 59532  	}
 59533  }
 59534  
 59535  const (
 59536  	// PingStatusOnline is a PingStatus enum value
 59537  	PingStatusOnline = "Online"
 59538  
 59539  	// PingStatusConnectionLost is a PingStatus enum value
 59540  	PingStatusConnectionLost = "ConnectionLost"
 59541  
 59542  	// PingStatusInactive is a PingStatus enum value
 59543  	PingStatusInactive = "Inactive"
 59544  )
 59545  
 59546  // PingStatus_Values returns all elements of the PingStatus enum
 59547  func PingStatus_Values() []string {
 59548  	return []string{
 59549  		PingStatusOnline,
 59550  		PingStatusConnectionLost,
 59551  		PingStatusInactive,
 59552  	}
 59553  }
 59554  
 59555  const (
 59556  	// PlatformTypeWindows is a PlatformType enum value
 59557  	PlatformTypeWindows = "Windows"
 59558  
 59559  	// PlatformTypeLinux is a PlatformType enum value
 59560  	PlatformTypeLinux = "Linux"
 59561  )
 59562  
 59563  // PlatformType_Values returns all elements of the PlatformType enum
 59564  func PlatformType_Values() []string {
 59565  	return []string{
 59566  		PlatformTypeWindows,
 59567  		PlatformTypeLinux,
 59568  	}
 59569  }
 59570  
 59571  const (
 59572  	// RebootOptionRebootIfNeeded is a RebootOption enum value
 59573  	RebootOptionRebootIfNeeded = "RebootIfNeeded"
 59574  
 59575  	// RebootOptionNoReboot is a RebootOption enum value
 59576  	RebootOptionNoReboot = "NoReboot"
 59577  )
 59578  
 59579  // RebootOption_Values returns all elements of the RebootOption enum
 59580  func RebootOption_Values() []string {
 59581  	return []string{
 59582  		RebootOptionRebootIfNeeded,
 59583  		RebootOptionNoReboot,
 59584  	}
 59585  }
 59586  
 59587  const (
 59588  	// ResourceDataSyncS3FormatJsonSerDe is a ResourceDataSyncS3Format enum value
 59589  	ResourceDataSyncS3FormatJsonSerDe = "JsonSerDe"
 59590  )
 59591  
 59592  // ResourceDataSyncS3Format_Values returns all elements of the ResourceDataSyncS3Format enum
 59593  func ResourceDataSyncS3Format_Values() []string {
 59594  	return []string{
 59595  		ResourceDataSyncS3FormatJsonSerDe,
 59596  	}
 59597  }
 59598  
 59599  const (
 59600  	// ResourceTypeManagedInstance is a ResourceType enum value
 59601  	ResourceTypeManagedInstance = "ManagedInstance"
 59602  
 59603  	// ResourceTypeDocument is a ResourceType enum value
 59604  	ResourceTypeDocument = "Document"
 59605  
 59606  	// ResourceTypeEc2instance is a ResourceType enum value
 59607  	ResourceTypeEc2instance = "EC2Instance"
 59608  )
 59609  
 59610  // ResourceType_Values returns all elements of the ResourceType enum
 59611  func ResourceType_Values() []string {
 59612  	return []string{
 59613  		ResourceTypeManagedInstance,
 59614  		ResourceTypeDocument,
 59615  		ResourceTypeEc2instance,
 59616  	}
 59617  }
 59618  
 59619  const (
 59620  	// ResourceTypeForTaggingDocument is a ResourceTypeForTagging enum value
 59621  	ResourceTypeForTaggingDocument = "Document"
 59622  
 59623  	// ResourceTypeForTaggingManagedInstance is a ResourceTypeForTagging enum value
 59624  	ResourceTypeForTaggingManagedInstance = "ManagedInstance"
 59625  
 59626  	// ResourceTypeForTaggingMaintenanceWindow is a ResourceTypeForTagging enum value
 59627  	ResourceTypeForTaggingMaintenanceWindow = "MaintenanceWindow"
 59628  
 59629  	// ResourceTypeForTaggingParameter is a ResourceTypeForTagging enum value
 59630  	ResourceTypeForTaggingParameter = "Parameter"
 59631  
 59632  	// ResourceTypeForTaggingPatchBaseline is a ResourceTypeForTagging enum value
 59633  	ResourceTypeForTaggingPatchBaseline = "PatchBaseline"
 59634  
 59635  	// ResourceTypeForTaggingOpsItem is a ResourceTypeForTagging enum value
 59636  	ResourceTypeForTaggingOpsItem = "OpsItem"
 59637  
 59638  	// ResourceTypeForTaggingOpsMetadata is a ResourceTypeForTagging enum value
 59639  	ResourceTypeForTaggingOpsMetadata = "OpsMetadata"
 59640  )
 59641  
 59642  // ResourceTypeForTagging_Values returns all elements of the ResourceTypeForTagging enum
 59643  func ResourceTypeForTagging_Values() []string {
 59644  	return []string{
 59645  		ResourceTypeForTaggingDocument,
 59646  		ResourceTypeForTaggingManagedInstance,
 59647  		ResourceTypeForTaggingMaintenanceWindow,
 59648  		ResourceTypeForTaggingParameter,
 59649  		ResourceTypeForTaggingPatchBaseline,
 59650  		ResourceTypeForTaggingOpsItem,
 59651  		ResourceTypeForTaggingOpsMetadata,
 59652  	}
 59653  }
 59654  
 59655  const (
 59656  	// ReviewStatusApproved is a ReviewStatus enum value
 59657  	ReviewStatusApproved = "APPROVED"
 59658  
 59659  	// ReviewStatusNotReviewed is a ReviewStatus enum value
 59660  	ReviewStatusNotReviewed = "NOT_REVIEWED"
 59661  
 59662  	// ReviewStatusPending is a ReviewStatus enum value
 59663  	ReviewStatusPending = "PENDING"
 59664  
 59665  	// ReviewStatusRejected is a ReviewStatus enum value
 59666  	ReviewStatusRejected = "REJECTED"
 59667  )
 59668  
 59669  // ReviewStatus_Values returns all elements of the ReviewStatus enum
 59670  func ReviewStatus_Values() []string {
 59671  	return []string{
 59672  		ReviewStatusApproved,
 59673  		ReviewStatusNotReviewed,
 59674  		ReviewStatusPending,
 59675  		ReviewStatusRejected,
 59676  	}
 59677  }
 59678  
 59679  const (
 59680  	// SessionFilterKeyInvokedAfter is a SessionFilterKey enum value
 59681  	SessionFilterKeyInvokedAfter = "InvokedAfter"
 59682  
 59683  	// SessionFilterKeyInvokedBefore is a SessionFilterKey enum value
 59684  	SessionFilterKeyInvokedBefore = "InvokedBefore"
 59685  
 59686  	// SessionFilterKeyTarget is a SessionFilterKey enum value
 59687  	SessionFilterKeyTarget = "Target"
 59688  
 59689  	// SessionFilterKeyOwner is a SessionFilterKey enum value
 59690  	SessionFilterKeyOwner = "Owner"
 59691  
 59692  	// SessionFilterKeyStatus is a SessionFilterKey enum value
 59693  	SessionFilterKeyStatus = "Status"
 59694  
 59695  	// SessionFilterKeySessionId is a SessionFilterKey enum value
 59696  	SessionFilterKeySessionId = "SessionId"
 59697  )
 59698  
 59699  // SessionFilterKey_Values returns all elements of the SessionFilterKey enum
 59700  func SessionFilterKey_Values() []string {
 59701  	return []string{
 59702  		SessionFilterKeyInvokedAfter,
 59703  		SessionFilterKeyInvokedBefore,
 59704  		SessionFilterKeyTarget,
 59705  		SessionFilterKeyOwner,
 59706  		SessionFilterKeyStatus,
 59707  		SessionFilterKeySessionId,
 59708  	}
 59709  }
 59710  
 59711  const (
 59712  	// SessionStateActive is a SessionState enum value
 59713  	SessionStateActive = "Active"
 59714  
 59715  	// SessionStateHistory is a SessionState enum value
 59716  	SessionStateHistory = "History"
 59717  )
 59718  
 59719  // SessionState_Values returns all elements of the SessionState enum
 59720  func SessionState_Values() []string {
 59721  	return []string{
 59722  		SessionStateActive,
 59723  		SessionStateHistory,
 59724  	}
 59725  }
 59726  
 59727  const (
 59728  	// SessionStatusConnected is a SessionStatus enum value
 59729  	SessionStatusConnected = "Connected"
 59730  
 59731  	// SessionStatusConnecting is a SessionStatus enum value
 59732  	SessionStatusConnecting = "Connecting"
 59733  
 59734  	// SessionStatusDisconnected is a SessionStatus enum value
 59735  	SessionStatusDisconnected = "Disconnected"
 59736  
 59737  	// SessionStatusTerminated is a SessionStatus enum value
 59738  	SessionStatusTerminated = "Terminated"
 59739  
 59740  	// SessionStatusTerminating is a SessionStatus enum value
 59741  	SessionStatusTerminating = "Terminating"
 59742  
 59743  	// SessionStatusFailed is a SessionStatus enum value
 59744  	SessionStatusFailed = "Failed"
 59745  )
 59746  
 59747  // SessionStatus_Values returns all elements of the SessionStatus enum
 59748  func SessionStatus_Values() []string {
 59749  	return []string{
 59750  		SessionStatusConnected,
 59751  		SessionStatusConnecting,
 59752  		SessionStatusDisconnected,
 59753  		SessionStatusTerminated,
 59754  		SessionStatusTerminating,
 59755  		SessionStatusFailed,
 59756  	}
 59757  }
 59758  
 59759  const (
 59760  	// SignalTypeApprove is a SignalType enum value
 59761  	SignalTypeApprove = "Approve"
 59762  
 59763  	// SignalTypeReject is a SignalType enum value
 59764  	SignalTypeReject = "Reject"
 59765  
 59766  	// SignalTypeStartStep is a SignalType enum value
 59767  	SignalTypeStartStep = "StartStep"
 59768  
 59769  	// SignalTypeStopStep is a SignalType enum value
 59770  	SignalTypeStopStep = "StopStep"
 59771  
 59772  	// SignalTypeResume is a SignalType enum value
 59773  	SignalTypeResume = "Resume"
 59774  )
 59775  
 59776  // SignalType_Values returns all elements of the SignalType enum
 59777  func SignalType_Values() []string {
 59778  	return []string{
 59779  		SignalTypeApprove,
 59780  		SignalTypeReject,
 59781  		SignalTypeStartStep,
 59782  		SignalTypeStopStep,
 59783  		SignalTypeResume,
 59784  	}
 59785  }
 59786  
 59787  const (
 59788  	// StepExecutionFilterKeyStartTimeBefore is a StepExecutionFilterKey enum value
 59789  	StepExecutionFilterKeyStartTimeBefore = "StartTimeBefore"
 59790  
 59791  	// StepExecutionFilterKeyStartTimeAfter is a StepExecutionFilterKey enum value
 59792  	StepExecutionFilterKeyStartTimeAfter = "StartTimeAfter"
 59793  
 59794  	// StepExecutionFilterKeyStepExecutionStatus is a StepExecutionFilterKey enum value
 59795  	StepExecutionFilterKeyStepExecutionStatus = "StepExecutionStatus"
 59796  
 59797  	// StepExecutionFilterKeyStepExecutionId is a StepExecutionFilterKey enum value
 59798  	StepExecutionFilterKeyStepExecutionId = "StepExecutionId"
 59799  
 59800  	// StepExecutionFilterKeyStepName is a StepExecutionFilterKey enum value
 59801  	StepExecutionFilterKeyStepName = "StepName"
 59802  
 59803  	// StepExecutionFilterKeyAction is a StepExecutionFilterKey enum value
 59804  	StepExecutionFilterKeyAction = "Action"
 59805  )
 59806  
 59807  // StepExecutionFilterKey_Values returns all elements of the StepExecutionFilterKey enum
 59808  func StepExecutionFilterKey_Values() []string {
 59809  	return []string{
 59810  		StepExecutionFilterKeyStartTimeBefore,
 59811  		StepExecutionFilterKeyStartTimeAfter,
 59812  		StepExecutionFilterKeyStepExecutionStatus,
 59813  		StepExecutionFilterKeyStepExecutionId,
 59814  		StepExecutionFilterKeyStepName,
 59815  		StepExecutionFilterKeyAction,
 59816  	}
 59817  }
 59818  
 59819  const (
 59820  	// StopTypeComplete is a StopType enum value
 59821  	StopTypeComplete = "Complete"
 59822  
 59823  	// StopTypeCancel is a StopType enum value
 59824  	StopTypeCancel = "Cancel"
 59825  )
 59826  
 59827  // StopType_Values returns all elements of the StopType enum
 59828  func StopType_Values() []string {
 59829  	return []string{
 59830  		StopTypeComplete,
 59831  		StopTypeCancel,
 59832  	}
 59833  }