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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package auditmanager
     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/restjson"
    14  )
    15  
    16  const opAssociateAssessmentReportEvidenceFolder = "AssociateAssessmentReportEvidenceFolder"
    17  
    18  // AssociateAssessmentReportEvidenceFolderRequest generates a "aws/request.Request" representing the
    19  // client's request for the AssociateAssessmentReportEvidenceFolder 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 AssociateAssessmentReportEvidenceFolder for more information on using the AssociateAssessmentReportEvidenceFolder
    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 AssociateAssessmentReportEvidenceFolderRequest method.
    34  //    req, resp := client.AssociateAssessmentReportEvidenceFolderRequest(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/auditmanager-2017-07-25/AssociateAssessmentReportEvidenceFolder
    42  func (c *AuditManager) AssociateAssessmentReportEvidenceFolderRequest(input *AssociateAssessmentReportEvidenceFolderInput) (req *request.Request, output *AssociateAssessmentReportEvidenceFolderOutput) {
    43  	op := &request.Operation{
    44  		Name:       opAssociateAssessmentReportEvidenceFolder,
    45  		HTTPMethod: "PUT",
    46  		HTTPPath:   "/assessments/{assessmentId}/associateToAssessmentReport",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &AssociateAssessmentReportEvidenceFolderInput{}
    51  	}
    52  
    53  	output = &AssociateAssessmentReportEvidenceFolderOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
    56  	return
    57  }
    58  
    59  // AssociateAssessmentReportEvidenceFolder API operation for AWS Audit Manager.
    60  //
    61  // Associates an evidence folder to the specified assessment report in Audit
    62  // Manager.
    63  //
    64  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    65  // with awserr.Error's Code and Message methods to get detailed information about
    66  // the error.
    67  //
    68  // See the AWS API reference guide for AWS Audit Manager's
    69  // API operation AssociateAssessmentReportEvidenceFolder for usage and error information.
    70  //
    71  // Returned Error Types:
    72  //   * ValidationException
    73  //   The request has invalid or missing parameters.
    74  //
    75  //   * AccessDeniedException
    76  //   Your account is not registered with Audit Manager. Check the delegated administrator
    77  //   setup on the Audit Manager settings page, and try again.
    78  //
    79  //   * InternalServerException
    80  //   An internal service error occurred during the processing of your request.
    81  //   Try again later.
    82  //
    83  //   * ResourceNotFoundException
    84  //   The resource specified in the request cannot be found.
    85  //
    86  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/AssociateAssessmentReportEvidenceFolder
    87  func (c *AuditManager) AssociateAssessmentReportEvidenceFolder(input *AssociateAssessmentReportEvidenceFolderInput) (*AssociateAssessmentReportEvidenceFolderOutput, error) {
    88  	req, out := c.AssociateAssessmentReportEvidenceFolderRequest(input)
    89  	return out, req.Send()
    90  }
    91  
    92  // AssociateAssessmentReportEvidenceFolderWithContext is the same as AssociateAssessmentReportEvidenceFolder with the addition of
    93  // the ability to pass a context and additional request options.
    94  //
    95  // See AssociateAssessmentReportEvidenceFolder for details on how to use this API operation.
    96  //
    97  // The context must be non-nil and will be used for request cancellation. If
    98  // the context is nil a panic will occur. In the future the SDK may create
    99  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   100  // for more information on using Contexts.
   101  func (c *AuditManager) AssociateAssessmentReportEvidenceFolderWithContext(ctx aws.Context, input *AssociateAssessmentReportEvidenceFolderInput, opts ...request.Option) (*AssociateAssessmentReportEvidenceFolderOutput, error) {
   102  	req, out := c.AssociateAssessmentReportEvidenceFolderRequest(input)
   103  	req.SetContext(ctx)
   104  	req.ApplyOptions(opts...)
   105  	return out, req.Send()
   106  }
   107  
   108  const opBatchAssociateAssessmentReportEvidence = "BatchAssociateAssessmentReportEvidence"
   109  
   110  // BatchAssociateAssessmentReportEvidenceRequest generates a "aws/request.Request" representing the
   111  // client's request for the BatchAssociateAssessmentReportEvidence operation. The "output" return
   112  // value will be populated with the request's response once the request completes
   113  // successfully.
   114  //
   115  // Use "Send" method on the returned Request to send the API call to the service.
   116  // the "output" return value is not valid until after Send returns without error.
   117  //
   118  // See BatchAssociateAssessmentReportEvidence for more information on using the BatchAssociateAssessmentReportEvidence
   119  // API call, and error handling.
   120  //
   121  // This method is useful when you want to inject custom logic or configuration
   122  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   123  //
   124  //
   125  //    // Example sending a request using the BatchAssociateAssessmentReportEvidenceRequest method.
   126  //    req, resp := client.BatchAssociateAssessmentReportEvidenceRequest(params)
   127  //
   128  //    err := req.Send()
   129  //    if err == nil { // resp is now filled
   130  //        fmt.Println(resp)
   131  //    }
   132  //
   133  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/BatchAssociateAssessmentReportEvidence
   134  func (c *AuditManager) BatchAssociateAssessmentReportEvidenceRequest(input *BatchAssociateAssessmentReportEvidenceInput) (req *request.Request, output *BatchAssociateAssessmentReportEvidenceOutput) {
   135  	op := &request.Operation{
   136  		Name:       opBatchAssociateAssessmentReportEvidence,
   137  		HTTPMethod: "PUT",
   138  		HTTPPath:   "/assessments/{assessmentId}/batchAssociateToAssessmentReport",
   139  	}
   140  
   141  	if input == nil {
   142  		input = &BatchAssociateAssessmentReportEvidenceInput{}
   143  	}
   144  
   145  	output = &BatchAssociateAssessmentReportEvidenceOutput{}
   146  	req = c.newRequest(op, input, output)
   147  	return
   148  }
   149  
   150  // BatchAssociateAssessmentReportEvidence API operation for AWS Audit Manager.
   151  //
   152  // Associates a list of evidence to an assessment report in an Audit Manager
   153  // assessment.
   154  //
   155  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   156  // with awserr.Error's Code and Message methods to get detailed information about
   157  // the error.
   158  //
   159  // See the AWS API reference guide for AWS Audit Manager's
   160  // API operation BatchAssociateAssessmentReportEvidence for usage and error information.
   161  //
   162  // Returned Error Types:
   163  //   * ValidationException
   164  //   The request has invalid or missing parameters.
   165  //
   166  //   * AccessDeniedException
   167  //   Your account is not registered with Audit Manager. Check the delegated administrator
   168  //   setup on the Audit Manager settings page, and try again.
   169  //
   170  //   * InternalServerException
   171  //   An internal service error occurred during the processing of your request.
   172  //   Try again later.
   173  //
   174  //   * ResourceNotFoundException
   175  //   The resource specified in the request cannot be found.
   176  //
   177  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/BatchAssociateAssessmentReportEvidence
   178  func (c *AuditManager) BatchAssociateAssessmentReportEvidence(input *BatchAssociateAssessmentReportEvidenceInput) (*BatchAssociateAssessmentReportEvidenceOutput, error) {
   179  	req, out := c.BatchAssociateAssessmentReportEvidenceRequest(input)
   180  	return out, req.Send()
   181  }
   182  
   183  // BatchAssociateAssessmentReportEvidenceWithContext is the same as BatchAssociateAssessmentReportEvidence with the addition of
   184  // the ability to pass a context and additional request options.
   185  //
   186  // See BatchAssociateAssessmentReportEvidence for details on how to use this API operation.
   187  //
   188  // The context must be non-nil and will be used for request cancellation. If
   189  // the context is nil a panic will occur. In the future the SDK may create
   190  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   191  // for more information on using Contexts.
   192  func (c *AuditManager) BatchAssociateAssessmentReportEvidenceWithContext(ctx aws.Context, input *BatchAssociateAssessmentReportEvidenceInput, opts ...request.Option) (*BatchAssociateAssessmentReportEvidenceOutput, error) {
   193  	req, out := c.BatchAssociateAssessmentReportEvidenceRequest(input)
   194  	req.SetContext(ctx)
   195  	req.ApplyOptions(opts...)
   196  	return out, req.Send()
   197  }
   198  
   199  const opBatchCreateDelegationByAssessment = "BatchCreateDelegationByAssessment"
   200  
   201  // BatchCreateDelegationByAssessmentRequest generates a "aws/request.Request" representing the
   202  // client's request for the BatchCreateDelegationByAssessment operation. The "output" return
   203  // value will be populated with the request's response once the request completes
   204  // successfully.
   205  //
   206  // Use "Send" method on the returned Request to send the API call to the service.
   207  // the "output" return value is not valid until after Send returns without error.
   208  //
   209  // See BatchCreateDelegationByAssessment for more information on using the BatchCreateDelegationByAssessment
   210  // API call, and error handling.
   211  //
   212  // This method is useful when you want to inject custom logic or configuration
   213  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   214  //
   215  //
   216  //    // Example sending a request using the BatchCreateDelegationByAssessmentRequest method.
   217  //    req, resp := client.BatchCreateDelegationByAssessmentRequest(params)
   218  //
   219  //    err := req.Send()
   220  //    if err == nil { // resp is now filled
   221  //        fmt.Println(resp)
   222  //    }
   223  //
   224  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/BatchCreateDelegationByAssessment
   225  func (c *AuditManager) BatchCreateDelegationByAssessmentRequest(input *BatchCreateDelegationByAssessmentInput) (req *request.Request, output *BatchCreateDelegationByAssessmentOutput) {
   226  	op := &request.Operation{
   227  		Name:       opBatchCreateDelegationByAssessment,
   228  		HTTPMethod: "POST",
   229  		HTTPPath:   "/assessments/{assessmentId}/delegations",
   230  	}
   231  
   232  	if input == nil {
   233  		input = &BatchCreateDelegationByAssessmentInput{}
   234  	}
   235  
   236  	output = &BatchCreateDelegationByAssessmentOutput{}
   237  	req = c.newRequest(op, input, output)
   238  	return
   239  }
   240  
   241  // BatchCreateDelegationByAssessment API operation for AWS Audit Manager.
   242  //
   243  // Create a batch of delegations for a specified assessment in Audit Manager.
   244  //
   245  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   246  // with awserr.Error's Code and Message methods to get detailed information about
   247  // the error.
   248  //
   249  // See the AWS API reference guide for AWS Audit Manager's
   250  // API operation BatchCreateDelegationByAssessment for usage and error information.
   251  //
   252  // Returned Error Types:
   253  //   * ResourceNotFoundException
   254  //   The resource specified in the request cannot be found.
   255  //
   256  //   * AccessDeniedException
   257  //   Your account is not registered with Audit Manager. Check the delegated administrator
   258  //   setup on the Audit Manager settings page, and try again.
   259  //
   260  //   * ValidationException
   261  //   The request has invalid or missing parameters.
   262  //
   263  //   * InternalServerException
   264  //   An internal service error occurred during the processing of your request.
   265  //   Try again later.
   266  //
   267  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/BatchCreateDelegationByAssessment
   268  func (c *AuditManager) BatchCreateDelegationByAssessment(input *BatchCreateDelegationByAssessmentInput) (*BatchCreateDelegationByAssessmentOutput, error) {
   269  	req, out := c.BatchCreateDelegationByAssessmentRequest(input)
   270  	return out, req.Send()
   271  }
   272  
   273  // BatchCreateDelegationByAssessmentWithContext is the same as BatchCreateDelegationByAssessment with the addition of
   274  // the ability to pass a context and additional request options.
   275  //
   276  // See BatchCreateDelegationByAssessment for details on how to use this API operation.
   277  //
   278  // The context must be non-nil and will be used for request cancellation. If
   279  // the context is nil a panic will occur. In the future the SDK may create
   280  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   281  // for more information on using Contexts.
   282  func (c *AuditManager) BatchCreateDelegationByAssessmentWithContext(ctx aws.Context, input *BatchCreateDelegationByAssessmentInput, opts ...request.Option) (*BatchCreateDelegationByAssessmentOutput, error) {
   283  	req, out := c.BatchCreateDelegationByAssessmentRequest(input)
   284  	req.SetContext(ctx)
   285  	req.ApplyOptions(opts...)
   286  	return out, req.Send()
   287  }
   288  
   289  const opBatchDeleteDelegationByAssessment = "BatchDeleteDelegationByAssessment"
   290  
   291  // BatchDeleteDelegationByAssessmentRequest generates a "aws/request.Request" representing the
   292  // client's request for the BatchDeleteDelegationByAssessment operation. The "output" return
   293  // value will be populated with the request's response once the request completes
   294  // successfully.
   295  //
   296  // Use "Send" method on the returned Request to send the API call to the service.
   297  // the "output" return value is not valid until after Send returns without error.
   298  //
   299  // See BatchDeleteDelegationByAssessment for more information on using the BatchDeleteDelegationByAssessment
   300  // API call, and error handling.
   301  //
   302  // This method is useful when you want to inject custom logic or configuration
   303  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   304  //
   305  //
   306  //    // Example sending a request using the BatchDeleteDelegationByAssessmentRequest method.
   307  //    req, resp := client.BatchDeleteDelegationByAssessmentRequest(params)
   308  //
   309  //    err := req.Send()
   310  //    if err == nil { // resp is now filled
   311  //        fmt.Println(resp)
   312  //    }
   313  //
   314  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/BatchDeleteDelegationByAssessment
   315  func (c *AuditManager) BatchDeleteDelegationByAssessmentRequest(input *BatchDeleteDelegationByAssessmentInput) (req *request.Request, output *BatchDeleteDelegationByAssessmentOutput) {
   316  	op := &request.Operation{
   317  		Name:       opBatchDeleteDelegationByAssessment,
   318  		HTTPMethod: "PUT",
   319  		HTTPPath:   "/assessments/{assessmentId}/delegations",
   320  	}
   321  
   322  	if input == nil {
   323  		input = &BatchDeleteDelegationByAssessmentInput{}
   324  	}
   325  
   326  	output = &BatchDeleteDelegationByAssessmentOutput{}
   327  	req = c.newRequest(op, input, output)
   328  	return
   329  }
   330  
   331  // BatchDeleteDelegationByAssessment API operation for AWS Audit Manager.
   332  //
   333  // Deletes the delegations in the specified Audit Manager assessment.
   334  //
   335  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   336  // with awserr.Error's Code and Message methods to get detailed information about
   337  // the error.
   338  //
   339  // See the AWS API reference guide for AWS Audit Manager's
   340  // API operation BatchDeleteDelegationByAssessment for usage and error information.
   341  //
   342  // Returned Error Types:
   343  //   * ResourceNotFoundException
   344  //   The resource specified in the request cannot be found.
   345  //
   346  //   * AccessDeniedException
   347  //   Your account is not registered with Audit Manager. Check the delegated administrator
   348  //   setup on the Audit Manager settings page, and try again.
   349  //
   350  //   * ValidationException
   351  //   The request has invalid or missing parameters.
   352  //
   353  //   * InternalServerException
   354  //   An internal service error occurred during the processing of your request.
   355  //   Try again later.
   356  //
   357  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/BatchDeleteDelegationByAssessment
   358  func (c *AuditManager) BatchDeleteDelegationByAssessment(input *BatchDeleteDelegationByAssessmentInput) (*BatchDeleteDelegationByAssessmentOutput, error) {
   359  	req, out := c.BatchDeleteDelegationByAssessmentRequest(input)
   360  	return out, req.Send()
   361  }
   362  
   363  // BatchDeleteDelegationByAssessmentWithContext is the same as BatchDeleteDelegationByAssessment with the addition of
   364  // the ability to pass a context and additional request options.
   365  //
   366  // See BatchDeleteDelegationByAssessment for details on how to use this API operation.
   367  //
   368  // The context must be non-nil and will be used for request cancellation. If
   369  // the context is nil a panic will occur. In the future the SDK may create
   370  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   371  // for more information on using Contexts.
   372  func (c *AuditManager) BatchDeleteDelegationByAssessmentWithContext(ctx aws.Context, input *BatchDeleteDelegationByAssessmentInput, opts ...request.Option) (*BatchDeleteDelegationByAssessmentOutput, error) {
   373  	req, out := c.BatchDeleteDelegationByAssessmentRequest(input)
   374  	req.SetContext(ctx)
   375  	req.ApplyOptions(opts...)
   376  	return out, req.Send()
   377  }
   378  
   379  const opBatchDisassociateAssessmentReportEvidence = "BatchDisassociateAssessmentReportEvidence"
   380  
   381  // BatchDisassociateAssessmentReportEvidenceRequest generates a "aws/request.Request" representing the
   382  // client's request for the BatchDisassociateAssessmentReportEvidence operation. The "output" return
   383  // value will be populated with the request's response once the request completes
   384  // successfully.
   385  //
   386  // Use "Send" method on the returned Request to send the API call to the service.
   387  // the "output" return value is not valid until after Send returns without error.
   388  //
   389  // See BatchDisassociateAssessmentReportEvidence for more information on using the BatchDisassociateAssessmentReportEvidence
   390  // API call, and error handling.
   391  //
   392  // This method is useful when you want to inject custom logic or configuration
   393  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   394  //
   395  //
   396  //    // Example sending a request using the BatchDisassociateAssessmentReportEvidenceRequest method.
   397  //    req, resp := client.BatchDisassociateAssessmentReportEvidenceRequest(params)
   398  //
   399  //    err := req.Send()
   400  //    if err == nil { // resp is now filled
   401  //        fmt.Println(resp)
   402  //    }
   403  //
   404  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/BatchDisassociateAssessmentReportEvidence
   405  func (c *AuditManager) BatchDisassociateAssessmentReportEvidenceRequest(input *BatchDisassociateAssessmentReportEvidenceInput) (req *request.Request, output *BatchDisassociateAssessmentReportEvidenceOutput) {
   406  	op := &request.Operation{
   407  		Name:       opBatchDisassociateAssessmentReportEvidence,
   408  		HTTPMethod: "PUT",
   409  		HTTPPath:   "/assessments/{assessmentId}/batchDisassociateFromAssessmentReport",
   410  	}
   411  
   412  	if input == nil {
   413  		input = &BatchDisassociateAssessmentReportEvidenceInput{}
   414  	}
   415  
   416  	output = &BatchDisassociateAssessmentReportEvidenceOutput{}
   417  	req = c.newRequest(op, input, output)
   418  	return
   419  }
   420  
   421  // BatchDisassociateAssessmentReportEvidence API operation for AWS Audit Manager.
   422  //
   423  // Disassociates a list of evidence from the specified assessment report in
   424  // Audit Manager.
   425  //
   426  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   427  // with awserr.Error's Code and Message methods to get detailed information about
   428  // the error.
   429  //
   430  // See the AWS API reference guide for AWS Audit Manager's
   431  // API operation BatchDisassociateAssessmentReportEvidence for usage and error information.
   432  //
   433  // Returned Error Types:
   434  //   * ValidationException
   435  //   The request has invalid or missing parameters.
   436  //
   437  //   * AccessDeniedException
   438  //   Your account is not registered with Audit Manager. Check the delegated administrator
   439  //   setup on the Audit Manager settings page, and try again.
   440  //
   441  //   * InternalServerException
   442  //   An internal service error occurred during the processing of your request.
   443  //   Try again later.
   444  //
   445  //   * ResourceNotFoundException
   446  //   The resource specified in the request cannot be found.
   447  //
   448  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/BatchDisassociateAssessmentReportEvidence
   449  func (c *AuditManager) BatchDisassociateAssessmentReportEvidence(input *BatchDisassociateAssessmentReportEvidenceInput) (*BatchDisassociateAssessmentReportEvidenceOutput, error) {
   450  	req, out := c.BatchDisassociateAssessmentReportEvidenceRequest(input)
   451  	return out, req.Send()
   452  }
   453  
   454  // BatchDisassociateAssessmentReportEvidenceWithContext is the same as BatchDisassociateAssessmentReportEvidence with the addition of
   455  // the ability to pass a context and additional request options.
   456  //
   457  // See BatchDisassociateAssessmentReportEvidence for details on how to use this API operation.
   458  //
   459  // The context must be non-nil and will be used for request cancellation. If
   460  // the context is nil a panic will occur. In the future the SDK may create
   461  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   462  // for more information on using Contexts.
   463  func (c *AuditManager) BatchDisassociateAssessmentReportEvidenceWithContext(ctx aws.Context, input *BatchDisassociateAssessmentReportEvidenceInput, opts ...request.Option) (*BatchDisassociateAssessmentReportEvidenceOutput, error) {
   464  	req, out := c.BatchDisassociateAssessmentReportEvidenceRequest(input)
   465  	req.SetContext(ctx)
   466  	req.ApplyOptions(opts...)
   467  	return out, req.Send()
   468  }
   469  
   470  const opBatchImportEvidenceToAssessmentControl = "BatchImportEvidenceToAssessmentControl"
   471  
   472  // BatchImportEvidenceToAssessmentControlRequest generates a "aws/request.Request" representing the
   473  // client's request for the BatchImportEvidenceToAssessmentControl operation. The "output" return
   474  // value will be populated with the request's response once the request completes
   475  // successfully.
   476  //
   477  // Use "Send" method on the returned Request to send the API call to the service.
   478  // the "output" return value is not valid until after Send returns without error.
   479  //
   480  // See BatchImportEvidenceToAssessmentControl for more information on using the BatchImportEvidenceToAssessmentControl
   481  // API call, and error handling.
   482  //
   483  // This method is useful when you want to inject custom logic or configuration
   484  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   485  //
   486  //
   487  //    // Example sending a request using the BatchImportEvidenceToAssessmentControlRequest method.
   488  //    req, resp := client.BatchImportEvidenceToAssessmentControlRequest(params)
   489  //
   490  //    err := req.Send()
   491  //    if err == nil { // resp is now filled
   492  //        fmt.Println(resp)
   493  //    }
   494  //
   495  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/BatchImportEvidenceToAssessmentControl
   496  func (c *AuditManager) BatchImportEvidenceToAssessmentControlRequest(input *BatchImportEvidenceToAssessmentControlInput) (req *request.Request, output *BatchImportEvidenceToAssessmentControlOutput) {
   497  	op := &request.Operation{
   498  		Name:       opBatchImportEvidenceToAssessmentControl,
   499  		HTTPMethod: "POST",
   500  		HTTPPath:   "/assessments/{assessmentId}/controlSets/{controlSetId}/controls/{controlId}/evidence",
   501  	}
   502  
   503  	if input == nil {
   504  		input = &BatchImportEvidenceToAssessmentControlInput{}
   505  	}
   506  
   507  	output = &BatchImportEvidenceToAssessmentControlOutput{}
   508  	req = c.newRequest(op, input, output)
   509  	return
   510  }
   511  
   512  // BatchImportEvidenceToAssessmentControl API operation for AWS Audit Manager.
   513  //
   514  // Uploads one or more pieces of evidence to the specified control in the assessment
   515  // in Audit Manager.
   516  //
   517  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   518  // with awserr.Error's Code and Message methods to get detailed information about
   519  // the error.
   520  //
   521  // See the AWS API reference guide for AWS Audit Manager's
   522  // API operation BatchImportEvidenceToAssessmentControl for usage and error information.
   523  //
   524  // Returned Error Types:
   525  //   * ResourceNotFoundException
   526  //   The resource specified in the request cannot be found.
   527  //
   528  //   * AccessDeniedException
   529  //   Your account is not registered with Audit Manager. Check the delegated administrator
   530  //   setup on the Audit Manager settings page, and try again.
   531  //
   532  //   * ValidationException
   533  //   The request has invalid or missing parameters.
   534  //
   535  //   * InternalServerException
   536  //   An internal service error occurred during the processing of your request.
   537  //   Try again later.
   538  //
   539  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/BatchImportEvidenceToAssessmentControl
   540  func (c *AuditManager) BatchImportEvidenceToAssessmentControl(input *BatchImportEvidenceToAssessmentControlInput) (*BatchImportEvidenceToAssessmentControlOutput, error) {
   541  	req, out := c.BatchImportEvidenceToAssessmentControlRequest(input)
   542  	return out, req.Send()
   543  }
   544  
   545  // BatchImportEvidenceToAssessmentControlWithContext is the same as BatchImportEvidenceToAssessmentControl with the addition of
   546  // the ability to pass a context and additional request options.
   547  //
   548  // See BatchImportEvidenceToAssessmentControl for details on how to use this API operation.
   549  //
   550  // The context must be non-nil and will be used for request cancellation. If
   551  // the context is nil a panic will occur. In the future the SDK may create
   552  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   553  // for more information on using Contexts.
   554  func (c *AuditManager) BatchImportEvidenceToAssessmentControlWithContext(ctx aws.Context, input *BatchImportEvidenceToAssessmentControlInput, opts ...request.Option) (*BatchImportEvidenceToAssessmentControlOutput, error) {
   555  	req, out := c.BatchImportEvidenceToAssessmentControlRequest(input)
   556  	req.SetContext(ctx)
   557  	req.ApplyOptions(opts...)
   558  	return out, req.Send()
   559  }
   560  
   561  const opCreateAssessment = "CreateAssessment"
   562  
   563  // CreateAssessmentRequest generates a "aws/request.Request" representing the
   564  // client's request for the CreateAssessment operation. The "output" return
   565  // value will be populated with the request's response once the request completes
   566  // successfully.
   567  //
   568  // Use "Send" method on the returned Request to send the API call to the service.
   569  // the "output" return value is not valid until after Send returns without error.
   570  //
   571  // See CreateAssessment for more information on using the CreateAssessment
   572  // API call, and error handling.
   573  //
   574  // This method is useful when you want to inject custom logic or configuration
   575  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   576  //
   577  //
   578  //    // Example sending a request using the CreateAssessmentRequest method.
   579  //    req, resp := client.CreateAssessmentRequest(params)
   580  //
   581  //    err := req.Send()
   582  //    if err == nil { // resp is now filled
   583  //        fmt.Println(resp)
   584  //    }
   585  //
   586  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/CreateAssessment
   587  func (c *AuditManager) CreateAssessmentRequest(input *CreateAssessmentInput) (req *request.Request, output *CreateAssessmentOutput) {
   588  	op := &request.Operation{
   589  		Name:       opCreateAssessment,
   590  		HTTPMethod: "POST",
   591  		HTTPPath:   "/assessments",
   592  	}
   593  
   594  	if input == nil {
   595  		input = &CreateAssessmentInput{}
   596  	}
   597  
   598  	output = &CreateAssessmentOutput{}
   599  	req = c.newRequest(op, input, output)
   600  	return
   601  }
   602  
   603  // CreateAssessment API operation for AWS Audit Manager.
   604  //
   605  // Creates an assessment in Audit Manager.
   606  //
   607  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   608  // with awserr.Error's Code and Message methods to get detailed information about
   609  // the error.
   610  //
   611  // See the AWS API reference guide for AWS Audit Manager's
   612  // API operation CreateAssessment for usage and error information.
   613  //
   614  // Returned Error Types:
   615  //   * ResourceNotFoundException
   616  //   The resource specified in the request cannot be found.
   617  //
   618  //   * ValidationException
   619  //   The request has invalid or missing parameters.
   620  //
   621  //   * AccessDeniedException
   622  //   Your account is not registered with Audit Manager. Check the delegated administrator
   623  //   setup on the Audit Manager settings page, and try again.
   624  //
   625  //   * InternalServerException
   626  //   An internal service error occurred during the processing of your request.
   627  //   Try again later.
   628  //
   629  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/CreateAssessment
   630  func (c *AuditManager) CreateAssessment(input *CreateAssessmentInput) (*CreateAssessmentOutput, error) {
   631  	req, out := c.CreateAssessmentRequest(input)
   632  	return out, req.Send()
   633  }
   634  
   635  // CreateAssessmentWithContext is the same as CreateAssessment with the addition of
   636  // the ability to pass a context and additional request options.
   637  //
   638  // See CreateAssessment for details on how to use this API operation.
   639  //
   640  // The context must be non-nil and will be used for request cancellation. If
   641  // the context is nil a panic will occur. In the future the SDK may create
   642  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   643  // for more information on using Contexts.
   644  func (c *AuditManager) CreateAssessmentWithContext(ctx aws.Context, input *CreateAssessmentInput, opts ...request.Option) (*CreateAssessmentOutput, error) {
   645  	req, out := c.CreateAssessmentRequest(input)
   646  	req.SetContext(ctx)
   647  	req.ApplyOptions(opts...)
   648  	return out, req.Send()
   649  }
   650  
   651  const opCreateAssessmentFramework = "CreateAssessmentFramework"
   652  
   653  // CreateAssessmentFrameworkRequest generates a "aws/request.Request" representing the
   654  // client's request for the CreateAssessmentFramework operation. The "output" return
   655  // value will be populated with the request's response once the request completes
   656  // successfully.
   657  //
   658  // Use "Send" method on the returned Request to send the API call to the service.
   659  // the "output" return value is not valid until after Send returns without error.
   660  //
   661  // See CreateAssessmentFramework for more information on using the CreateAssessmentFramework
   662  // API call, and error handling.
   663  //
   664  // This method is useful when you want to inject custom logic or configuration
   665  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   666  //
   667  //
   668  //    // Example sending a request using the CreateAssessmentFrameworkRequest method.
   669  //    req, resp := client.CreateAssessmentFrameworkRequest(params)
   670  //
   671  //    err := req.Send()
   672  //    if err == nil { // resp is now filled
   673  //        fmt.Println(resp)
   674  //    }
   675  //
   676  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/CreateAssessmentFramework
   677  func (c *AuditManager) CreateAssessmentFrameworkRequest(input *CreateAssessmentFrameworkInput) (req *request.Request, output *CreateAssessmentFrameworkOutput) {
   678  	op := &request.Operation{
   679  		Name:       opCreateAssessmentFramework,
   680  		HTTPMethod: "POST",
   681  		HTTPPath:   "/assessmentFrameworks",
   682  	}
   683  
   684  	if input == nil {
   685  		input = &CreateAssessmentFrameworkInput{}
   686  	}
   687  
   688  	output = &CreateAssessmentFrameworkOutput{}
   689  	req = c.newRequest(op, input, output)
   690  	return
   691  }
   692  
   693  // CreateAssessmentFramework API operation for AWS Audit Manager.
   694  //
   695  // Creates a custom framework in Audit Manager.
   696  //
   697  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   698  // with awserr.Error's Code and Message methods to get detailed information about
   699  // the error.
   700  //
   701  // See the AWS API reference guide for AWS Audit Manager's
   702  // API operation CreateAssessmentFramework for usage and error information.
   703  //
   704  // Returned Error Types:
   705  //   * ResourceNotFoundException
   706  //   The resource specified in the request cannot be found.
   707  //
   708  //   * ValidationException
   709  //   The request has invalid or missing parameters.
   710  //
   711  //   * AccessDeniedException
   712  //   Your account is not registered with Audit Manager. Check the delegated administrator
   713  //   setup on the Audit Manager settings page, and try again.
   714  //
   715  //   * InternalServerException
   716  //   An internal service error occurred during the processing of your request.
   717  //   Try again later.
   718  //
   719  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/CreateAssessmentFramework
   720  func (c *AuditManager) CreateAssessmentFramework(input *CreateAssessmentFrameworkInput) (*CreateAssessmentFrameworkOutput, error) {
   721  	req, out := c.CreateAssessmentFrameworkRequest(input)
   722  	return out, req.Send()
   723  }
   724  
   725  // CreateAssessmentFrameworkWithContext is the same as CreateAssessmentFramework with the addition of
   726  // the ability to pass a context and additional request options.
   727  //
   728  // See CreateAssessmentFramework for details on how to use this API operation.
   729  //
   730  // The context must be non-nil and will be used for request cancellation. If
   731  // the context is nil a panic will occur. In the future the SDK may create
   732  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   733  // for more information on using Contexts.
   734  func (c *AuditManager) CreateAssessmentFrameworkWithContext(ctx aws.Context, input *CreateAssessmentFrameworkInput, opts ...request.Option) (*CreateAssessmentFrameworkOutput, error) {
   735  	req, out := c.CreateAssessmentFrameworkRequest(input)
   736  	req.SetContext(ctx)
   737  	req.ApplyOptions(opts...)
   738  	return out, req.Send()
   739  }
   740  
   741  const opCreateAssessmentReport = "CreateAssessmentReport"
   742  
   743  // CreateAssessmentReportRequest generates a "aws/request.Request" representing the
   744  // client's request for the CreateAssessmentReport operation. The "output" return
   745  // value will be populated with the request's response once the request completes
   746  // successfully.
   747  //
   748  // Use "Send" method on the returned Request to send the API call to the service.
   749  // the "output" return value is not valid until after Send returns without error.
   750  //
   751  // See CreateAssessmentReport for more information on using the CreateAssessmentReport
   752  // API call, and error handling.
   753  //
   754  // This method is useful when you want to inject custom logic or configuration
   755  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   756  //
   757  //
   758  //    // Example sending a request using the CreateAssessmentReportRequest method.
   759  //    req, resp := client.CreateAssessmentReportRequest(params)
   760  //
   761  //    err := req.Send()
   762  //    if err == nil { // resp is now filled
   763  //        fmt.Println(resp)
   764  //    }
   765  //
   766  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/CreateAssessmentReport
   767  func (c *AuditManager) CreateAssessmentReportRequest(input *CreateAssessmentReportInput) (req *request.Request, output *CreateAssessmentReportOutput) {
   768  	op := &request.Operation{
   769  		Name:       opCreateAssessmentReport,
   770  		HTTPMethod: "POST",
   771  		HTTPPath:   "/assessments/{assessmentId}/reports",
   772  	}
   773  
   774  	if input == nil {
   775  		input = &CreateAssessmentReportInput{}
   776  	}
   777  
   778  	output = &CreateAssessmentReportOutput{}
   779  	req = c.newRequest(op, input, output)
   780  	return
   781  }
   782  
   783  // CreateAssessmentReport API operation for AWS Audit Manager.
   784  //
   785  // Creates an assessment report for the specified assessment.
   786  //
   787  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   788  // with awserr.Error's Code and Message methods to get detailed information about
   789  // the error.
   790  //
   791  // See the AWS API reference guide for AWS Audit Manager's
   792  // API operation CreateAssessmentReport for usage and error information.
   793  //
   794  // Returned Error Types:
   795  //   * ValidationException
   796  //   The request has invalid or missing parameters.
   797  //
   798  //   * AccessDeniedException
   799  //   Your account is not registered with Audit Manager. Check the delegated administrator
   800  //   setup on the Audit Manager settings page, and try again.
   801  //
   802  //   * InternalServerException
   803  //   An internal service error occurred during the processing of your request.
   804  //   Try again later.
   805  //
   806  //   * ResourceNotFoundException
   807  //   The resource specified in the request cannot be found.
   808  //
   809  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/CreateAssessmentReport
   810  func (c *AuditManager) CreateAssessmentReport(input *CreateAssessmentReportInput) (*CreateAssessmentReportOutput, error) {
   811  	req, out := c.CreateAssessmentReportRequest(input)
   812  	return out, req.Send()
   813  }
   814  
   815  // CreateAssessmentReportWithContext is the same as CreateAssessmentReport with the addition of
   816  // the ability to pass a context and additional request options.
   817  //
   818  // See CreateAssessmentReport for details on how to use this API operation.
   819  //
   820  // The context must be non-nil and will be used for request cancellation. If
   821  // the context is nil a panic will occur. In the future the SDK may create
   822  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   823  // for more information on using Contexts.
   824  func (c *AuditManager) CreateAssessmentReportWithContext(ctx aws.Context, input *CreateAssessmentReportInput, opts ...request.Option) (*CreateAssessmentReportOutput, error) {
   825  	req, out := c.CreateAssessmentReportRequest(input)
   826  	req.SetContext(ctx)
   827  	req.ApplyOptions(opts...)
   828  	return out, req.Send()
   829  }
   830  
   831  const opCreateControl = "CreateControl"
   832  
   833  // CreateControlRequest generates a "aws/request.Request" representing the
   834  // client's request for the CreateControl operation. The "output" return
   835  // value will be populated with the request's response once the request completes
   836  // successfully.
   837  //
   838  // Use "Send" method on the returned Request to send the API call to the service.
   839  // the "output" return value is not valid until after Send returns without error.
   840  //
   841  // See CreateControl for more information on using the CreateControl
   842  // API call, and error handling.
   843  //
   844  // This method is useful when you want to inject custom logic or configuration
   845  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   846  //
   847  //
   848  //    // Example sending a request using the CreateControlRequest method.
   849  //    req, resp := client.CreateControlRequest(params)
   850  //
   851  //    err := req.Send()
   852  //    if err == nil { // resp is now filled
   853  //        fmt.Println(resp)
   854  //    }
   855  //
   856  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/CreateControl
   857  func (c *AuditManager) CreateControlRequest(input *CreateControlInput) (req *request.Request, output *CreateControlOutput) {
   858  	op := &request.Operation{
   859  		Name:       opCreateControl,
   860  		HTTPMethod: "POST",
   861  		HTTPPath:   "/controls",
   862  	}
   863  
   864  	if input == nil {
   865  		input = &CreateControlInput{}
   866  	}
   867  
   868  	output = &CreateControlOutput{}
   869  	req = c.newRequest(op, input, output)
   870  	return
   871  }
   872  
   873  // CreateControl API operation for AWS Audit Manager.
   874  //
   875  // Creates a new custom control in Audit Manager.
   876  //
   877  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   878  // with awserr.Error's Code and Message methods to get detailed information about
   879  // the error.
   880  //
   881  // See the AWS API reference guide for AWS Audit Manager's
   882  // API operation CreateControl for usage and error information.
   883  //
   884  // Returned Error Types:
   885  //   * ResourceNotFoundException
   886  //   The resource specified in the request cannot be found.
   887  //
   888  //   * ValidationException
   889  //   The request has invalid or missing parameters.
   890  //
   891  //   * AccessDeniedException
   892  //   Your account is not registered with Audit Manager. Check the delegated administrator
   893  //   setup on the Audit Manager settings page, and try again.
   894  //
   895  //   * InternalServerException
   896  //   An internal service error occurred during the processing of your request.
   897  //   Try again later.
   898  //
   899  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/CreateControl
   900  func (c *AuditManager) CreateControl(input *CreateControlInput) (*CreateControlOutput, error) {
   901  	req, out := c.CreateControlRequest(input)
   902  	return out, req.Send()
   903  }
   904  
   905  // CreateControlWithContext is the same as CreateControl with the addition of
   906  // the ability to pass a context and additional request options.
   907  //
   908  // See CreateControl for details on how to use this API operation.
   909  //
   910  // The context must be non-nil and will be used for request cancellation. If
   911  // the context is nil a panic will occur. In the future the SDK may create
   912  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   913  // for more information on using Contexts.
   914  func (c *AuditManager) CreateControlWithContext(ctx aws.Context, input *CreateControlInput, opts ...request.Option) (*CreateControlOutput, error) {
   915  	req, out := c.CreateControlRequest(input)
   916  	req.SetContext(ctx)
   917  	req.ApplyOptions(opts...)
   918  	return out, req.Send()
   919  }
   920  
   921  const opDeleteAssessment = "DeleteAssessment"
   922  
   923  // DeleteAssessmentRequest generates a "aws/request.Request" representing the
   924  // client's request for the DeleteAssessment operation. The "output" return
   925  // value will be populated with the request's response once the request completes
   926  // successfully.
   927  //
   928  // Use "Send" method on the returned Request to send the API call to the service.
   929  // the "output" return value is not valid until after Send returns without error.
   930  //
   931  // See DeleteAssessment for more information on using the DeleteAssessment
   932  // API call, and error handling.
   933  //
   934  // This method is useful when you want to inject custom logic or configuration
   935  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   936  //
   937  //
   938  //    // Example sending a request using the DeleteAssessmentRequest method.
   939  //    req, resp := client.DeleteAssessmentRequest(params)
   940  //
   941  //    err := req.Send()
   942  //    if err == nil { // resp is now filled
   943  //        fmt.Println(resp)
   944  //    }
   945  //
   946  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeleteAssessment
   947  func (c *AuditManager) DeleteAssessmentRequest(input *DeleteAssessmentInput) (req *request.Request, output *DeleteAssessmentOutput) {
   948  	op := &request.Operation{
   949  		Name:       opDeleteAssessment,
   950  		HTTPMethod: "DELETE",
   951  		HTTPPath:   "/assessments/{assessmentId}",
   952  	}
   953  
   954  	if input == nil {
   955  		input = &DeleteAssessmentInput{}
   956  	}
   957  
   958  	output = &DeleteAssessmentOutput{}
   959  	req = c.newRequest(op, input, output)
   960  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   961  	return
   962  }
   963  
   964  // DeleteAssessment API operation for AWS Audit Manager.
   965  //
   966  // Deletes an assessment in Audit Manager.
   967  //
   968  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   969  // with awserr.Error's Code and Message methods to get detailed information about
   970  // the error.
   971  //
   972  // See the AWS API reference guide for AWS Audit Manager's
   973  // API operation DeleteAssessment for usage and error information.
   974  //
   975  // Returned Error Types:
   976  //   * ResourceNotFoundException
   977  //   The resource specified in the request cannot be found.
   978  //
   979  //   * ValidationException
   980  //   The request has invalid or missing parameters.
   981  //
   982  //   * AccessDeniedException
   983  //   Your account is not registered with Audit Manager. Check the delegated administrator
   984  //   setup on the Audit Manager settings page, and try again.
   985  //
   986  //   * InternalServerException
   987  //   An internal service error occurred during the processing of your request.
   988  //   Try again later.
   989  //
   990  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeleteAssessment
   991  func (c *AuditManager) DeleteAssessment(input *DeleteAssessmentInput) (*DeleteAssessmentOutput, error) {
   992  	req, out := c.DeleteAssessmentRequest(input)
   993  	return out, req.Send()
   994  }
   995  
   996  // DeleteAssessmentWithContext is the same as DeleteAssessment with the addition of
   997  // the ability to pass a context and additional request options.
   998  //
   999  // See DeleteAssessment for details on how to use this API operation.
  1000  //
  1001  // The context must be non-nil and will be used for request cancellation. If
  1002  // the context is nil a panic will occur. In the future the SDK may create
  1003  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1004  // for more information on using Contexts.
  1005  func (c *AuditManager) DeleteAssessmentWithContext(ctx aws.Context, input *DeleteAssessmentInput, opts ...request.Option) (*DeleteAssessmentOutput, error) {
  1006  	req, out := c.DeleteAssessmentRequest(input)
  1007  	req.SetContext(ctx)
  1008  	req.ApplyOptions(opts...)
  1009  	return out, req.Send()
  1010  }
  1011  
  1012  const opDeleteAssessmentFramework = "DeleteAssessmentFramework"
  1013  
  1014  // DeleteAssessmentFrameworkRequest generates a "aws/request.Request" representing the
  1015  // client's request for the DeleteAssessmentFramework operation. The "output" return
  1016  // value will be populated with the request's response once the request completes
  1017  // successfully.
  1018  //
  1019  // Use "Send" method on the returned Request to send the API call to the service.
  1020  // the "output" return value is not valid until after Send returns without error.
  1021  //
  1022  // See DeleteAssessmentFramework for more information on using the DeleteAssessmentFramework
  1023  // API call, and error handling.
  1024  //
  1025  // This method is useful when you want to inject custom logic or configuration
  1026  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1027  //
  1028  //
  1029  //    // Example sending a request using the DeleteAssessmentFrameworkRequest method.
  1030  //    req, resp := client.DeleteAssessmentFrameworkRequest(params)
  1031  //
  1032  //    err := req.Send()
  1033  //    if err == nil { // resp is now filled
  1034  //        fmt.Println(resp)
  1035  //    }
  1036  //
  1037  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeleteAssessmentFramework
  1038  func (c *AuditManager) DeleteAssessmentFrameworkRequest(input *DeleteAssessmentFrameworkInput) (req *request.Request, output *DeleteAssessmentFrameworkOutput) {
  1039  	op := &request.Operation{
  1040  		Name:       opDeleteAssessmentFramework,
  1041  		HTTPMethod: "DELETE",
  1042  		HTTPPath:   "/assessmentFrameworks/{frameworkId}",
  1043  	}
  1044  
  1045  	if input == nil {
  1046  		input = &DeleteAssessmentFrameworkInput{}
  1047  	}
  1048  
  1049  	output = &DeleteAssessmentFrameworkOutput{}
  1050  	req = c.newRequest(op, input, output)
  1051  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1052  	return
  1053  }
  1054  
  1055  // DeleteAssessmentFramework API operation for AWS Audit Manager.
  1056  //
  1057  // Deletes a custom framework in Audit Manager.
  1058  //
  1059  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1060  // with awserr.Error's Code and Message methods to get detailed information about
  1061  // the error.
  1062  //
  1063  // See the AWS API reference guide for AWS Audit Manager's
  1064  // API operation DeleteAssessmentFramework for usage and error information.
  1065  //
  1066  // Returned Error Types:
  1067  //   * ResourceNotFoundException
  1068  //   The resource specified in the request cannot be found.
  1069  //
  1070  //   * ValidationException
  1071  //   The request has invalid or missing parameters.
  1072  //
  1073  //   * AccessDeniedException
  1074  //   Your account is not registered with Audit Manager. Check the delegated administrator
  1075  //   setup on the Audit Manager settings page, and try again.
  1076  //
  1077  //   * InternalServerException
  1078  //   An internal service error occurred during the processing of your request.
  1079  //   Try again later.
  1080  //
  1081  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeleteAssessmentFramework
  1082  func (c *AuditManager) DeleteAssessmentFramework(input *DeleteAssessmentFrameworkInput) (*DeleteAssessmentFrameworkOutput, error) {
  1083  	req, out := c.DeleteAssessmentFrameworkRequest(input)
  1084  	return out, req.Send()
  1085  }
  1086  
  1087  // DeleteAssessmentFrameworkWithContext is the same as DeleteAssessmentFramework with the addition of
  1088  // the ability to pass a context and additional request options.
  1089  //
  1090  // See DeleteAssessmentFramework for details on how to use this API operation.
  1091  //
  1092  // The context must be non-nil and will be used for request cancellation. If
  1093  // the context is nil a panic will occur. In the future the SDK may create
  1094  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1095  // for more information on using Contexts.
  1096  func (c *AuditManager) DeleteAssessmentFrameworkWithContext(ctx aws.Context, input *DeleteAssessmentFrameworkInput, opts ...request.Option) (*DeleteAssessmentFrameworkOutput, error) {
  1097  	req, out := c.DeleteAssessmentFrameworkRequest(input)
  1098  	req.SetContext(ctx)
  1099  	req.ApplyOptions(opts...)
  1100  	return out, req.Send()
  1101  }
  1102  
  1103  const opDeleteAssessmentReport = "DeleteAssessmentReport"
  1104  
  1105  // DeleteAssessmentReportRequest generates a "aws/request.Request" representing the
  1106  // client's request for the DeleteAssessmentReport operation. The "output" return
  1107  // value will be populated with the request's response once the request completes
  1108  // successfully.
  1109  //
  1110  // Use "Send" method on the returned Request to send the API call to the service.
  1111  // the "output" return value is not valid until after Send returns without error.
  1112  //
  1113  // See DeleteAssessmentReport for more information on using the DeleteAssessmentReport
  1114  // API call, and error handling.
  1115  //
  1116  // This method is useful when you want to inject custom logic or configuration
  1117  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1118  //
  1119  //
  1120  //    // Example sending a request using the DeleteAssessmentReportRequest method.
  1121  //    req, resp := client.DeleteAssessmentReportRequest(params)
  1122  //
  1123  //    err := req.Send()
  1124  //    if err == nil { // resp is now filled
  1125  //        fmt.Println(resp)
  1126  //    }
  1127  //
  1128  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeleteAssessmentReport
  1129  func (c *AuditManager) DeleteAssessmentReportRequest(input *DeleteAssessmentReportInput) (req *request.Request, output *DeleteAssessmentReportOutput) {
  1130  	op := &request.Operation{
  1131  		Name:       opDeleteAssessmentReport,
  1132  		HTTPMethod: "DELETE",
  1133  		HTTPPath:   "/assessments/{assessmentId}/reports/{assessmentReportId}",
  1134  	}
  1135  
  1136  	if input == nil {
  1137  		input = &DeleteAssessmentReportInput{}
  1138  	}
  1139  
  1140  	output = &DeleteAssessmentReportOutput{}
  1141  	req = c.newRequest(op, input, output)
  1142  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1143  	return
  1144  }
  1145  
  1146  // DeleteAssessmentReport API operation for AWS Audit Manager.
  1147  //
  1148  // Deletes an assessment report from an assessment in Audit Manager.
  1149  //
  1150  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1151  // with awserr.Error's Code and Message methods to get detailed information about
  1152  // the error.
  1153  //
  1154  // See the AWS API reference guide for AWS Audit Manager's
  1155  // API operation DeleteAssessmentReport for usage and error information.
  1156  //
  1157  // Returned Error Types:
  1158  //   * ValidationException
  1159  //   The request has invalid or missing parameters.
  1160  //
  1161  //   * AccessDeniedException
  1162  //   Your account is not registered with Audit Manager. Check the delegated administrator
  1163  //   setup on the Audit Manager settings page, and try again.
  1164  //
  1165  //   * InternalServerException
  1166  //   An internal service error occurred during the processing of your request.
  1167  //   Try again later.
  1168  //
  1169  //   * ResourceNotFoundException
  1170  //   The resource specified in the request cannot be found.
  1171  //
  1172  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeleteAssessmentReport
  1173  func (c *AuditManager) DeleteAssessmentReport(input *DeleteAssessmentReportInput) (*DeleteAssessmentReportOutput, error) {
  1174  	req, out := c.DeleteAssessmentReportRequest(input)
  1175  	return out, req.Send()
  1176  }
  1177  
  1178  // DeleteAssessmentReportWithContext is the same as DeleteAssessmentReport with the addition of
  1179  // the ability to pass a context and additional request options.
  1180  //
  1181  // See DeleteAssessmentReport for details on how to use this API operation.
  1182  //
  1183  // The context must be non-nil and will be used for request cancellation. If
  1184  // the context is nil a panic will occur. In the future the SDK may create
  1185  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1186  // for more information on using Contexts.
  1187  func (c *AuditManager) DeleteAssessmentReportWithContext(ctx aws.Context, input *DeleteAssessmentReportInput, opts ...request.Option) (*DeleteAssessmentReportOutput, error) {
  1188  	req, out := c.DeleteAssessmentReportRequest(input)
  1189  	req.SetContext(ctx)
  1190  	req.ApplyOptions(opts...)
  1191  	return out, req.Send()
  1192  }
  1193  
  1194  const opDeleteControl = "DeleteControl"
  1195  
  1196  // DeleteControlRequest generates a "aws/request.Request" representing the
  1197  // client's request for the DeleteControl operation. The "output" return
  1198  // value will be populated with the request's response once the request completes
  1199  // successfully.
  1200  //
  1201  // Use "Send" method on the returned Request to send the API call to the service.
  1202  // the "output" return value is not valid until after Send returns without error.
  1203  //
  1204  // See DeleteControl for more information on using the DeleteControl
  1205  // API call, and error handling.
  1206  //
  1207  // This method is useful when you want to inject custom logic or configuration
  1208  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1209  //
  1210  //
  1211  //    // Example sending a request using the DeleteControlRequest method.
  1212  //    req, resp := client.DeleteControlRequest(params)
  1213  //
  1214  //    err := req.Send()
  1215  //    if err == nil { // resp is now filled
  1216  //        fmt.Println(resp)
  1217  //    }
  1218  //
  1219  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeleteControl
  1220  func (c *AuditManager) DeleteControlRequest(input *DeleteControlInput) (req *request.Request, output *DeleteControlOutput) {
  1221  	op := &request.Operation{
  1222  		Name:       opDeleteControl,
  1223  		HTTPMethod: "DELETE",
  1224  		HTTPPath:   "/controls/{controlId}",
  1225  	}
  1226  
  1227  	if input == nil {
  1228  		input = &DeleteControlInput{}
  1229  	}
  1230  
  1231  	output = &DeleteControlOutput{}
  1232  	req = c.newRequest(op, input, output)
  1233  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1234  	return
  1235  }
  1236  
  1237  // DeleteControl API operation for AWS Audit Manager.
  1238  //
  1239  // Deletes a custom control in Audit Manager.
  1240  //
  1241  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1242  // with awserr.Error's Code and Message methods to get detailed information about
  1243  // the error.
  1244  //
  1245  // See the AWS API reference guide for AWS Audit Manager's
  1246  // API operation DeleteControl for usage and error information.
  1247  //
  1248  // Returned Error Types:
  1249  //   * ResourceNotFoundException
  1250  //   The resource specified in the request cannot be found.
  1251  //
  1252  //   * ValidationException
  1253  //   The request has invalid or missing parameters.
  1254  //
  1255  //   * AccessDeniedException
  1256  //   Your account is not registered with Audit Manager. Check the delegated administrator
  1257  //   setup on the Audit Manager settings page, and try again.
  1258  //
  1259  //   * InternalServerException
  1260  //   An internal service error occurred during the processing of your request.
  1261  //   Try again later.
  1262  //
  1263  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeleteControl
  1264  func (c *AuditManager) DeleteControl(input *DeleteControlInput) (*DeleteControlOutput, error) {
  1265  	req, out := c.DeleteControlRequest(input)
  1266  	return out, req.Send()
  1267  }
  1268  
  1269  // DeleteControlWithContext is the same as DeleteControl with the addition of
  1270  // the ability to pass a context and additional request options.
  1271  //
  1272  // See DeleteControl for details on how to use this API operation.
  1273  //
  1274  // The context must be non-nil and will be used for request cancellation. If
  1275  // the context is nil a panic will occur. In the future the SDK may create
  1276  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1277  // for more information on using Contexts.
  1278  func (c *AuditManager) DeleteControlWithContext(ctx aws.Context, input *DeleteControlInput, opts ...request.Option) (*DeleteControlOutput, error) {
  1279  	req, out := c.DeleteControlRequest(input)
  1280  	req.SetContext(ctx)
  1281  	req.ApplyOptions(opts...)
  1282  	return out, req.Send()
  1283  }
  1284  
  1285  const opDeregisterAccount = "DeregisterAccount"
  1286  
  1287  // DeregisterAccountRequest generates a "aws/request.Request" representing the
  1288  // client's request for the DeregisterAccount operation. The "output" return
  1289  // value will be populated with the request's response once the request completes
  1290  // successfully.
  1291  //
  1292  // Use "Send" method on the returned Request to send the API call to the service.
  1293  // the "output" return value is not valid until after Send returns without error.
  1294  //
  1295  // See DeregisterAccount for more information on using the DeregisterAccount
  1296  // API call, and error handling.
  1297  //
  1298  // This method is useful when you want to inject custom logic or configuration
  1299  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1300  //
  1301  //
  1302  //    // Example sending a request using the DeregisterAccountRequest method.
  1303  //    req, resp := client.DeregisterAccountRequest(params)
  1304  //
  1305  //    err := req.Send()
  1306  //    if err == nil { // resp is now filled
  1307  //        fmt.Println(resp)
  1308  //    }
  1309  //
  1310  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeregisterAccount
  1311  func (c *AuditManager) DeregisterAccountRequest(input *DeregisterAccountInput) (req *request.Request, output *DeregisterAccountOutput) {
  1312  	op := &request.Operation{
  1313  		Name:       opDeregisterAccount,
  1314  		HTTPMethod: "POST",
  1315  		HTTPPath:   "/account/deregisterAccount",
  1316  	}
  1317  
  1318  	if input == nil {
  1319  		input = &DeregisterAccountInput{}
  1320  	}
  1321  
  1322  	output = &DeregisterAccountOutput{}
  1323  	req = c.newRequest(op, input, output)
  1324  	return
  1325  }
  1326  
  1327  // DeregisterAccount API operation for AWS Audit Manager.
  1328  //
  1329  // Deregisters an account in Audit Manager.
  1330  //
  1331  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1332  // with awserr.Error's Code and Message methods to get detailed information about
  1333  // the error.
  1334  //
  1335  // See the AWS API reference guide for AWS Audit Manager's
  1336  // API operation DeregisterAccount for usage and error information.
  1337  //
  1338  // Returned Error Types:
  1339  //   * ValidationException
  1340  //   The request has invalid or missing parameters.
  1341  //
  1342  //   * AccessDeniedException
  1343  //   Your account is not registered with Audit Manager. Check the delegated administrator
  1344  //   setup on the Audit Manager settings page, and try again.
  1345  //
  1346  //   * InternalServerException
  1347  //   An internal service error occurred during the processing of your request.
  1348  //   Try again later.
  1349  //
  1350  //   * ResourceNotFoundException
  1351  //   The resource specified in the request cannot be found.
  1352  //
  1353  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeregisterAccount
  1354  func (c *AuditManager) DeregisterAccount(input *DeregisterAccountInput) (*DeregisterAccountOutput, error) {
  1355  	req, out := c.DeregisterAccountRequest(input)
  1356  	return out, req.Send()
  1357  }
  1358  
  1359  // DeregisterAccountWithContext is the same as DeregisterAccount with the addition of
  1360  // the ability to pass a context and additional request options.
  1361  //
  1362  // See DeregisterAccount for details on how to use this API operation.
  1363  //
  1364  // The context must be non-nil and will be used for request cancellation. If
  1365  // the context is nil a panic will occur. In the future the SDK may create
  1366  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1367  // for more information on using Contexts.
  1368  func (c *AuditManager) DeregisterAccountWithContext(ctx aws.Context, input *DeregisterAccountInput, opts ...request.Option) (*DeregisterAccountOutput, error) {
  1369  	req, out := c.DeregisterAccountRequest(input)
  1370  	req.SetContext(ctx)
  1371  	req.ApplyOptions(opts...)
  1372  	return out, req.Send()
  1373  }
  1374  
  1375  const opDeregisterOrganizationAdminAccount = "DeregisterOrganizationAdminAccount"
  1376  
  1377  // DeregisterOrganizationAdminAccountRequest generates a "aws/request.Request" representing the
  1378  // client's request for the DeregisterOrganizationAdminAccount operation. The "output" return
  1379  // value will be populated with the request's response once the request completes
  1380  // successfully.
  1381  //
  1382  // Use "Send" method on the returned Request to send the API call to the service.
  1383  // the "output" return value is not valid until after Send returns without error.
  1384  //
  1385  // See DeregisterOrganizationAdminAccount for more information on using the DeregisterOrganizationAdminAccount
  1386  // API call, and error handling.
  1387  //
  1388  // This method is useful when you want to inject custom logic or configuration
  1389  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1390  //
  1391  //
  1392  //    // Example sending a request using the DeregisterOrganizationAdminAccountRequest method.
  1393  //    req, resp := client.DeregisterOrganizationAdminAccountRequest(params)
  1394  //
  1395  //    err := req.Send()
  1396  //    if err == nil { // resp is now filled
  1397  //        fmt.Println(resp)
  1398  //    }
  1399  //
  1400  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeregisterOrganizationAdminAccount
  1401  func (c *AuditManager) DeregisterOrganizationAdminAccountRequest(input *DeregisterOrganizationAdminAccountInput) (req *request.Request, output *DeregisterOrganizationAdminAccountOutput) {
  1402  	op := &request.Operation{
  1403  		Name:       opDeregisterOrganizationAdminAccount,
  1404  		HTTPMethod: "POST",
  1405  		HTTPPath:   "/account/deregisterOrganizationAdminAccount",
  1406  	}
  1407  
  1408  	if input == nil {
  1409  		input = &DeregisterOrganizationAdminAccountInput{}
  1410  	}
  1411  
  1412  	output = &DeregisterOrganizationAdminAccountOutput{}
  1413  	req = c.newRequest(op, input, output)
  1414  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1415  	return
  1416  }
  1417  
  1418  // DeregisterOrganizationAdminAccount API operation for AWS Audit Manager.
  1419  //
  1420  // Removes the specified member account as a delegated administrator for Audit
  1421  // Manager.
  1422  //
  1423  // When you remove a delegated administrator from your Audit Manager settings,
  1424  // or when you deregister a delegated administrator from Organizations, you
  1425  // continue to have access to the evidence that you previously collected under
  1426  // that account. However, Audit Manager will stop collecting and attaching evidence
  1427  // to that delegated administrator account moving forward.
  1428  //
  1429  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1430  // with awserr.Error's Code and Message methods to get detailed information about
  1431  // the error.
  1432  //
  1433  // See the AWS API reference guide for AWS Audit Manager's
  1434  // API operation DeregisterOrganizationAdminAccount for usage and error information.
  1435  //
  1436  // Returned Error Types:
  1437  //   * ValidationException
  1438  //   The request has invalid or missing parameters.
  1439  //
  1440  //   * AccessDeniedException
  1441  //   Your account is not registered with Audit Manager. Check the delegated administrator
  1442  //   setup on the Audit Manager settings page, and try again.
  1443  //
  1444  //   * InternalServerException
  1445  //   An internal service error occurred during the processing of your request.
  1446  //   Try again later.
  1447  //
  1448  //   * ResourceNotFoundException
  1449  //   The resource specified in the request cannot be found.
  1450  //
  1451  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DeregisterOrganizationAdminAccount
  1452  func (c *AuditManager) DeregisterOrganizationAdminAccount(input *DeregisterOrganizationAdminAccountInput) (*DeregisterOrganizationAdminAccountOutput, error) {
  1453  	req, out := c.DeregisterOrganizationAdminAccountRequest(input)
  1454  	return out, req.Send()
  1455  }
  1456  
  1457  // DeregisterOrganizationAdminAccountWithContext is the same as DeregisterOrganizationAdminAccount with the addition of
  1458  // the ability to pass a context and additional request options.
  1459  //
  1460  // See DeregisterOrganizationAdminAccount for details on how to use this API operation.
  1461  //
  1462  // The context must be non-nil and will be used for request cancellation. If
  1463  // the context is nil a panic will occur. In the future the SDK may create
  1464  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1465  // for more information on using Contexts.
  1466  func (c *AuditManager) DeregisterOrganizationAdminAccountWithContext(ctx aws.Context, input *DeregisterOrganizationAdminAccountInput, opts ...request.Option) (*DeregisterOrganizationAdminAccountOutput, error) {
  1467  	req, out := c.DeregisterOrganizationAdminAccountRequest(input)
  1468  	req.SetContext(ctx)
  1469  	req.ApplyOptions(opts...)
  1470  	return out, req.Send()
  1471  }
  1472  
  1473  const opDisassociateAssessmentReportEvidenceFolder = "DisassociateAssessmentReportEvidenceFolder"
  1474  
  1475  // DisassociateAssessmentReportEvidenceFolderRequest generates a "aws/request.Request" representing the
  1476  // client's request for the DisassociateAssessmentReportEvidenceFolder operation. The "output" return
  1477  // value will be populated with the request's response once the request completes
  1478  // successfully.
  1479  //
  1480  // Use "Send" method on the returned Request to send the API call to the service.
  1481  // the "output" return value is not valid until after Send returns without error.
  1482  //
  1483  // See DisassociateAssessmentReportEvidenceFolder for more information on using the DisassociateAssessmentReportEvidenceFolder
  1484  // API call, and error handling.
  1485  //
  1486  // This method is useful when you want to inject custom logic or configuration
  1487  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1488  //
  1489  //
  1490  //    // Example sending a request using the DisassociateAssessmentReportEvidenceFolderRequest method.
  1491  //    req, resp := client.DisassociateAssessmentReportEvidenceFolderRequest(params)
  1492  //
  1493  //    err := req.Send()
  1494  //    if err == nil { // resp is now filled
  1495  //        fmt.Println(resp)
  1496  //    }
  1497  //
  1498  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DisassociateAssessmentReportEvidenceFolder
  1499  func (c *AuditManager) DisassociateAssessmentReportEvidenceFolderRequest(input *DisassociateAssessmentReportEvidenceFolderInput) (req *request.Request, output *DisassociateAssessmentReportEvidenceFolderOutput) {
  1500  	op := &request.Operation{
  1501  		Name:       opDisassociateAssessmentReportEvidenceFolder,
  1502  		HTTPMethod: "PUT",
  1503  		HTTPPath:   "/assessments/{assessmentId}/disassociateFromAssessmentReport",
  1504  	}
  1505  
  1506  	if input == nil {
  1507  		input = &DisassociateAssessmentReportEvidenceFolderInput{}
  1508  	}
  1509  
  1510  	output = &DisassociateAssessmentReportEvidenceFolderOutput{}
  1511  	req = c.newRequest(op, input, output)
  1512  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1513  	return
  1514  }
  1515  
  1516  // DisassociateAssessmentReportEvidenceFolder API operation for AWS Audit Manager.
  1517  //
  1518  // Disassociates an evidence folder from the specified assessment report in
  1519  // Audit Manager.
  1520  //
  1521  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1522  // with awserr.Error's Code and Message methods to get detailed information about
  1523  // the error.
  1524  //
  1525  // See the AWS API reference guide for AWS Audit Manager's
  1526  // API operation DisassociateAssessmentReportEvidenceFolder for usage and error information.
  1527  //
  1528  // Returned Error Types:
  1529  //   * ValidationException
  1530  //   The request has invalid or missing parameters.
  1531  //
  1532  //   * AccessDeniedException
  1533  //   Your account is not registered with Audit Manager. Check the delegated administrator
  1534  //   setup on the Audit Manager settings page, and try again.
  1535  //
  1536  //   * InternalServerException
  1537  //   An internal service error occurred during the processing of your request.
  1538  //   Try again later.
  1539  //
  1540  //   * ResourceNotFoundException
  1541  //   The resource specified in the request cannot be found.
  1542  //
  1543  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/DisassociateAssessmentReportEvidenceFolder
  1544  func (c *AuditManager) DisassociateAssessmentReportEvidenceFolder(input *DisassociateAssessmentReportEvidenceFolderInput) (*DisassociateAssessmentReportEvidenceFolderOutput, error) {
  1545  	req, out := c.DisassociateAssessmentReportEvidenceFolderRequest(input)
  1546  	return out, req.Send()
  1547  }
  1548  
  1549  // DisassociateAssessmentReportEvidenceFolderWithContext is the same as DisassociateAssessmentReportEvidenceFolder with the addition of
  1550  // the ability to pass a context and additional request options.
  1551  //
  1552  // See DisassociateAssessmentReportEvidenceFolder for details on how to use this API operation.
  1553  //
  1554  // The context must be non-nil and will be used for request cancellation. If
  1555  // the context is nil a panic will occur. In the future the SDK may create
  1556  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1557  // for more information on using Contexts.
  1558  func (c *AuditManager) DisassociateAssessmentReportEvidenceFolderWithContext(ctx aws.Context, input *DisassociateAssessmentReportEvidenceFolderInput, opts ...request.Option) (*DisassociateAssessmentReportEvidenceFolderOutput, error) {
  1559  	req, out := c.DisassociateAssessmentReportEvidenceFolderRequest(input)
  1560  	req.SetContext(ctx)
  1561  	req.ApplyOptions(opts...)
  1562  	return out, req.Send()
  1563  }
  1564  
  1565  const opGetAccountStatus = "GetAccountStatus"
  1566  
  1567  // GetAccountStatusRequest generates a "aws/request.Request" representing the
  1568  // client's request for the GetAccountStatus operation. The "output" return
  1569  // value will be populated with the request's response once the request completes
  1570  // successfully.
  1571  //
  1572  // Use "Send" method on the returned Request to send the API call to the service.
  1573  // the "output" return value is not valid until after Send returns without error.
  1574  //
  1575  // See GetAccountStatus for more information on using the GetAccountStatus
  1576  // API call, and error handling.
  1577  //
  1578  // This method is useful when you want to inject custom logic or configuration
  1579  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1580  //
  1581  //
  1582  //    // Example sending a request using the GetAccountStatusRequest method.
  1583  //    req, resp := client.GetAccountStatusRequest(params)
  1584  //
  1585  //    err := req.Send()
  1586  //    if err == nil { // resp is now filled
  1587  //        fmt.Println(resp)
  1588  //    }
  1589  //
  1590  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetAccountStatus
  1591  func (c *AuditManager) GetAccountStatusRequest(input *GetAccountStatusInput) (req *request.Request, output *GetAccountStatusOutput) {
  1592  	op := &request.Operation{
  1593  		Name:       opGetAccountStatus,
  1594  		HTTPMethod: "GET",
  1595  		HTTPPath:   "/account/status",
  1596  	}
  1597  
  1598  	if input == nil {
  1599  		input = &GetAccountStatusInput{}
  1600  	}
  1601  
  1602  	output = &GetAccountStatusOutput{}
  1603  	req = c.newRequest(op, input, output)
  1604  	return
  1605  }
  1606  
  1607  // GetAccountStatus API operation for AWS Audit Manager.
  1608  //
  1609  // Returns the registration status of an account in Audit Manager.
  1610  //
  1611  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1612  // with awserr.Error's Code and Message methods to get detailed information about
  1613  // the error.
  1614  //
  1615  // See the AWS API reference guide for AWS Audit Manager's
  1616  // API operation GetAccountStatus for usage and error information.
  1617  //
  1618  // Returned Error Types:
  1619  //   * InternalServerException
  1620  //   An internal service error occurred during the processing of your request.
  1621  //   Try again later.
  1622  //
  1623  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetAccountStatus
  1624  func (c *AuditManager) GetAccountStatus(input *GetAccountStatusInput) (*GetAccountStatusOutput, error) {
  1625  	req, out := c.GetAccountStatusRequest(input)
  1626  	return out, req.Send()
  1627  }
  1628  
  1629  // GetAccountStatusWithContext is the same as GetAccountStatus with the addition of
  1630  // the ability to pass a context and additional request options.
  1631  //
  1632  // See GetAccountStatus for details on how to use this API operation.
  1633  //
  1634  // The context must be non-nil and will be used for request cancellation. If
  1635  // the context is nil a panic will occur. In the future the SDK may create
  1636  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1637  // for more information on using Contexts.
  1638  func (c *AuditManager) GetAccountStatusWithContext(ctx aws.Context, input *GetAccountStatusInput, opts ...request.Option) (*GetAccountStatusOutput, error) {
  1639  	req, out := c.GetAccountStatusRequest(input)
  1640  	req.SetContext(ctx)
  1641  	req.ApplyOptions(opts...)
  1642  	return out, req.Send()
  1643  }
  1644  
  1645  const opGetAssessment = "GetAssessment"
  1646  
  1647  // GetAssessmentRequest generates a "aws/request.Request" representing the
  1648  // client's request for the GetAssessment operation. The "output" return
  1649  // value will be populated with the request's response once the request completes
  1650  // successfully.
  1651  //
  1652  // Use "Send" method on the returned Request to send the API call to the service.
  1653  // the "output" return value is not valid until after Send returns without error.
  1654  //
  1655  // See GetAssessment for more information on using the GetAssessment
  1656  // API call, and error handling.
  1657  //
  1658  // This method is useful when you want to inject custom logic or configuration
  1659  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1660  //
  1661  //
  1662  //    // Example sending a request using the GetAssessmentRequest method.
  1663  //    req, resp := client.GetAssessmentRequest(params)
  1664  //
  1665  //    err := req.Send()
  1666  //    if err == nil { // resp is now filled
  1667  //        fmt.Println(resp)
  1668  //    }
  1669  //
  1670  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetAssessment
  1671  func (c *AuditManager) GetAssessmentRequest(input *GetAssessmentInput) (req *request.Request, output *GetAssessmentOutput) {
  1672  	op := &request.Operation{
  1673  		Name:       opGetAssessment,
  1674  		HTTPMethod: "GET",
  1675  		HTTPPath:   "/assessments/{assessmentId}",
  1676  	}
  1677  
  1678  	if input == nil {
  1679  		input = &GetAssessmentInput{}
  1680  	}
  1681  
  1682  	output = &GetAssessmentOutput{}
  1683  	req = c.newRequest(op, input, output)
  1684  	return
  1685  }
  1686  
  1687  // GetAssessment API operation for AWS Audit Manager.
  1688  //
  1689  // Returns an assessment from Audit Manager.
  1690  //
  1691  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1692  // with awserr.Error's Code and Message methods to get detailed information about
  1693  // the error.
  1694  //
  1695  // See the AWS API reference guide for AWS Audit Manager's
  1696  // API operation GetAssessment for usage and error information.
  1697  //
  1698  // Returned Error Types:
  1699  //   * ResourceNotFoundException
  1700  //   The resource specified in the request cannot be found.
  1701  //
  1702  //   * ValidationException
  1703  //   The request has invalid or missing parameters.
  1704  //
  1705  //   * AccessDeniedException
  1706  //   Your account is not registered with Audit Manager. Check the delegated administrator
  1707  //   setup on the Audit Manager settings page, and try again.
  1708  //
  1709  //   * InternalServerException
  1710  //   An internal service error occurred during the processing of your request.
  1711  //   Try again later.
  1712  //
  1713  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetAssessment
  1714  func (c *AuditManager) GetAssessment(input *GetAssessmentInput) (*GetAssessmentOutput, error) {
  1715  	req, out := c.GetAssessmentRequest(input)
  1716  	return out, req.Send()
  1717  }
  1718  
  1719  // GetAssessmentWithContext is the same as GetAssessment with the addition of
  1720  // the ability to pass a context and additional request options.
  1721  //
  1722  // See GetAssessment for details on how to use this API operation.
  1723  //
  1724  // The context must be non-nil and will be used for request cancellation. If
  1725  // the context is nil a panic will occur. In the future the SDK may create
  1726  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1727  // for more information on using Contexts.
  1728  func (c *AuditManager) GetAssessmentWithContext(ctx aws.Context, input *GetAssessmentInput, opts ...request.Option) (*GetAssessmentOutput, error) {
  1729  	req, out := c.GetAssessmentRequest(input)
  1730  	req.SetContext(ctx)
  1731  	req.ApplyOptions(opts...)
  1732  	return out, req.Send()
  1733  }
  1734  
  1735  const opGetAssessmentFramework = "GetAssessmentFramework"
  1736  
  1737  // GetAssessmentFrameworkRequest generates a "aws/request.Request" representing the
  1738  // client's request for the GetAssessmentFramework operation. The "output" return
  1739  // value will be populated with the request's response once the request completes
  1740  // successfully.
  1741  //
  1742  // Use "Send" method on the returned Request to send the API call to the service.
  1743  // the "output" return value is not valid until after Send returns without error.
  1744  //
  1745  // See GetAssessmentFramework for more information on using the GetAssessmentFramework
  1746  // API call, and error handling.
  1747  //
  1748  // This method is useful when you want to inject custom logic or configuration
  1749  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1750  //
  1751  //
  1752  //    // Example sending a request using the GetAssessmentFrameworkRequest method.
  1753  //    req, resp := client.GetAssessmentFrameworkRequest(params)
  1754  //
  1755  //    err := req.Send()
  1756  //    if err == nil { // resp is now filled
  1757  //        fmt.Println(resp)
  1758  //    }
  1759  //
  1760  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetAssessmentFramework
  1761  func (c *AuditManager) GetAssessmentFrameworkRequest(input *GetAssessmentFrameworkInput) (req *request.Request, output *GetAssessmentFrameworkOutput) {
  1762  	op := &request.Operation{
  1763  		Name:       opGetAssessmentFramework,
  1764  		HTTPMethod: "GET",
  1765  		HTTPPath:   "/assessmentFrameworks/{frameworkId}",
  1766  	}
  1767  
  1768  	if input == nil {
  1769  		input = &GetAssessmentFrameworkInput{}
  1770  	}
  1771  
  1772  	output = &GetAssessmentFrameworkOutput{}
  1773  	req = c.newRequest(op, input, output)
  1774  	return
  1775  }
  1776  
  1777  // GetAssessmentFramework API operation for AWS Audit Manager.
  1778  //
  1779  // Returns a framework from Audit Manager.
  1780  //
  1781  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1782  // with awserr.Error's Code and Message methods to get detailed information about
  1783  // the error.
  1784  //
  1785  // See the AWS API reference guide for AWS Audit Manager's
  1786  // API operation GetAssessmentFramework for usage and error information.
  1787  //
  1788  // Returned Error Types:
  1789  //   * ResourceNotFoundException
  1790  //   The resource specified in the request cannot be found.
  1791  //
  1792  //   * ValidationException
  1793  //   The request has invalid or missing parameters.
  1794  //
  1795  //   * AccessDeniedException
  1796  //   Your account is not registered with Audit Manager. Check the delegated administrator
  1797  //   setup on the Audit Manager settings page, and try again.
  1798  //
  1799  //   * InternalServerException
  1800  //   An internal service error occurred during the processing of your request.
  1801  //   Try again later.
  1802  //
  1803  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetAssessmentFramework
  1804  func (c *AuditManager) GetAssessmentFramework(input *GetAssessmentFrameworkInput) (*GetAssessmentFrameworkOutput, error) {
  1805  	req, out := c.GetAssessmentFrameworkRequest(input)
  1806  	return out, req.Send()
  1807  }
  1808  
  1809  // GetAssessmentFrameworkWithContext is the same as GetAssessmentFramework with the addition of
  1810  // the ability to pass a context and additional request options.
  1811  //
  1812  // See GetAssessmentFramework for details on how to use this API operation.
  1813  //
  1814  // The context must be non-nil and will be used for request cancellation. If
  1815  // the context is nil a panic will occur. In the future the SDK may create
  1816  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1817  // for more information on using Contexts.
  1818  func (c *AuditManager) GetAssessmentFrameworkWithContext(ctx aws.Context, input *GetAssessmentFrameworkInput, opts ...request.Option) (*GetAssessmentFrameworkOutput, error) {
  1819  	req, out := c.GetAssessmentFrameworkRequest(input)
  1820  	req.SetContext(ctx)
  1821  	req.ApplyOptions(opts...)
  1822  	return out, req.Send()
  1823  }
  1824  
  1825  const opGetAssessmentReportUrl = "GetAssessmentReportUrl"
  1826  
  1827  // GetAssessmentReportUrlRequest generates a "aws/request.Request" representing the
  1828  // client's request for the GetAssessmentReportUrl operation. The "output" return
  1829  // value will be populated with the request's response once the request completes
  1830  // successfully.
  1831  //
  1832  // Use "Send" method on the returned Request to send the API call to the service.
  1833  // the "output" return value is not valid until after Send returns without error.
  1834  //
  1835  // See GetAssessmentReportUrl for more information on using the GetAssessmentReportUrl
  1836  // API call, and error handling.
  1837  //
  1838  // This method is useful when you want to inject custom logic or configuration
  1839  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1840  //
  1841  //
  1842  //    // Example sending a request using the GetAssessmentReportUrlRequest method.
  1843  //    req, resp := client.GetAssessmentReportUrlRequest(params)
  1844  //
  1845  //    err := req.Send()
  1846  //    if err == nil { // resp is now filled
  1847  //        fmt.Println(resp)
  1848  //    }
  1849  //
  1850  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetAssessmentReportUrl
  1851  func (c *AuditManager) GetAssessmentReportUrlRequest(input *GetAssessmentReportUrlInput) (req *request.Request, output *GetAssessmentReportUrlOutput) {
  1852  	op := &request.Operation{
  1853  		Name:       opGetAssessmentReportUrl,
  1854  		HTTPMethod: "GET",
  1855  		HTTPPath:   "/assessments/{assessmentId}/reports/{assessmentReportId}/url",
  1856  	}
  1857  
  1858  	if input == nil {
  1859  		input = &GetAssessmentReportUrlInput{}
  1860  	}
  1861  
  1862  	output = &GetAssessmentReportUrlOutput{}
  1863  	req = c.newRequest(op, input, output)
  1864  	return
  1865  }
  1866  
  1867  // GetAssessmentReportUrl API operation for AWS Audit Manager.
  1868  //
  1869  // Returns the URL of a specified assessment report in Audit Manager.
  1870  //
  1871  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1872  // with awserr.Error's Code and Message methods to get detailed information about
  1873  // the error.
  1874  //
  1875  // See the AWS API reference guide for AWS Audit Manager's
  1876  // API operation GetAssessmentReportUrl for usage and error information.
  1877  //
  1878  // Returned Error Types:
  1879  //   * ValidationException
  1880  //   The request has invalid or missing parameters.
  1881  //
  1882  //   * AccessDeniedException
  1883  //   Your account is not registered with Audit Manager. Check the delegated administrator
  1884  //   setup on the Audit Manager settings page, and try again.
  1885  //
  1886  //   * InternalServerException
  1887  //   An internal service error occurred during the processing of your request.
  1888  //   Try again later.
  1889  //
  1890  //   * ResourceNotFoundException
  1891  //   The resource specified in the request cannot be found.
  1892  //
  1893  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetAssessmentReportUrl
  1894  func (c *AuditManager) GetAssessmentReportUrl(input *GetAssessmentReportUrlInput) (*GetAssessmentReportUrlOutput, error) {
  1895  	req, out := c.GetAssessmentReportUrlRequest(input)
  1896  	return out, req.Send()
  1897  }
  1898  
  1899  // GetAssessmentReportUrlWithContext is the same as GetAssessmentReportUrl with the addition of
  1900  // the ability to pass a context and additional request options.
  1901  //
  1902  // See GetAssessmentReportUrl for details on how to use this API operation.
  1903  //
  1904  // The context must be non-nil and will be used for request cancellation. If
  1905  // the context is nil a panic will occur. In the future the SDK may create
  1906  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1907  // for more information on using Contexts.
  1908  func (c *AuditManager) GetAssessmentReportUrlWithContext(ctx aws.Context, input *GetAssessmentReportUrlInput, opts ...request.Option) (*GetAssessmentReportUrlOutput, error) {
  1909  	req, out := c.GetAssessmentReportUrlRequest(input)
  1910  	req.SetContext(ctx)
  1911  	req.ApplyOptions(opts...)
  1912  	return out, req.Send()
  1913  }
  1914  
  1915  const opGetChangeLogs = "GetChangeLogs"
  1916  
  1917  // GetChangeLogsRequest generates a "aws/request.Request" representing the
  1918  // client's request for the GetChangeLogs operation. The "output" return
  1919  // value will be populated with the request's response once the request completes
  1920  // successfully.
  1921  //
  1922  // Use "Send" method on the returned Request to send the API call to the service.
  1923  // the "output" return value is not valid until after Send returns without error.
  1924  //
  1925  // See GetChangeLogs for more information on using the GetChangeLogs
  1926  // API call, and error handling.
  1927  //
  1928  // This method is useful when you want to inject custom logic or configuration
  1929  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1930  //
  1931  //
  1932  //    // Example sending a request using the GetChangeLogsRequest method.
  1933  //    req, resp := client.GetChangeLogsRequest(params)
  1934  //
  1935  //    err := req.Send()
  1936  //    if err == nil { // resp is now filled
  1937  //        fmt.Println(resp)
  1938  //    }
  1939  //
  1940  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetChangeLogs
  1941  func (c *AuditManager) GetChangeLogsRequest(input *GetChangeLogsInput) (req *request.Request, output *GetChangeLogsOutput) {
  1942  	op := &request.Operation{
  1943  		Name:       opGetChangeLogs,
  1944  		HTTPMethod: "GET",
  1945  		HTTPPath:   "/assessments/{assessmentId}/changelogs",
  1946  		Paginator: &request.Paginator{
  1947  			InputTokens:     []string{"nextToken"},
  1948  			OutputTokens:    []string{"nextToken"},
  1949  			LimitToken:      "maxResults",
  1950  			TruncationToken: "",
  1951  		},
  1952  	}
  1953  
  1954  	if input == nil {
  1955  		input = &GetChangeLogsInput{}
  1956  	}
  1957  
  1958  	output = &GetChangeLogsOutput{}
  1959  	req = c.newRequest(op, input, output)
  1960  	return
  1961  }
  1962  
  1963  // GetChangeLogs API operation for AWS Audit Manager.
  1964  //
  1965  // Returns a list of changelogs from Audit Manager.
  1966  //
  1967  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1968  // with awserr.Error's Code and Message methods to get detailed information about
  1969  // the error.
  1970  //
  1971  // See the AWS API reference guide for AWS Audit Manager's
  1972  // API operation GetChangeLogs for usage and error information.
  1973  //
  1974  // Returned Error Types:
  1975  //   * AccessDeniedException
  1976  //   Your account is not registered with Audit Manager. Check the delegated administrator
  1977  //   setup on the Audit Manager settings page, and try again.
  1978  //
  1979  //   * ResourceNotFoundException
  1980  //   The resource specified in the request cannot be found.
  1981  //
  1982  //   * ValidationException
  1983  //   The request has invalid or missing parameters.
  1984  //
  1985  //   * InternalServerException
  1986  //   An internal service error occurred during the processing of your request.
  1987  //   Try again later.
  1988  //
  1989  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetChangeLogs
  1990  func (c *AuditManager) GetChangeLogs(input *GetChangeLogsInput) (*GetChangeLogsOutput, error) {
  1991  	req, out := c.GetChangeLogsRequest(input)
  1992  	return out, req.Send()
  1993  }
  1994  
  1995  // GetChangeLogsWithContext is the same as GetChangeLogs with the addition of
  1996  // the ability to pass a context and additional request options.
  1997  //
  1998  // See GetChangeLogs for details on how to use this API operation.
  1999  //
  2000  // The context must be non-nil and will be used for request cancellation. If
  2001  // the context is nil a panic will occur. In the future the SDK may create
  2002  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2003  // for more information on using Contexts.
  2004  func (c *AuditManager) GetChangeLogsWithContext(ctx aws.Context, input *GetChangeLogsInput, opts ...request.Option) (*GetChangeLogsOutput, error) {
  2005  	req, out := c.GetChangeLogsRequest(input)
  2006  	req.SetContext(ctx)
  2007  	req.ApplyOptions(opts...)
  2008  	return out, req.Send()
  2009  }
  2010  
  2011  // GetChangeLogsPages iterates over the pages of a GetChangeLogs operation,
  2012  // calling the "fn" function with the response data for each page. To stop
  2013  // iterating, return false from the fn function.
  2014  //
  2015  // See GetChangeLogs method for more information on how to use this operation.
  2016  //
  2017  // Note: This operation can generate multiple requests to a service.
  2018  //
  2019  //    // Example iterating over at most 3 pages of a GetChangeLogs operation.
  2020  //    pageNum := 0
  2021  //    err := client.GetChangeLogsPages(params,
  2022  //        func(page *auditmanager.GetChangeLogsOutput, lastPage bool) bool {
  2023  //            pageNum++
  2024  //            fmt.Println(page)
  2025  //            return pageNum <= 3
  2026  //        })
  2027  //
  2028  func (c *AuditManager) GetChangeLogsPages(input *GetChangeLogsInput, fn func(*GetChangeLogsOutput, bool) bool) error {
  2029  	return c.GetChangeLogsPagesWithContext(aws.BackgroundContext(), input, fn)
  2030  }
  2031  
  2032  // GetChangeLogsPagesWithContext same as GetChangeLogsPages except
  2033  // it takes a Context and allows setting request options on the pages.
  2034  //
  2035  // The context must be non-nil and will be used for request cancellation. If
  2036  // the context is nil a panic will occur. In the future the SDK may create
  2037  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2038  // for more information on using Contexts.
  2039  func (c *AuditManager) GetChangeLogsPagesWithContext(ctx aws.Context, input *GetChangeLogsInput, fn func(*GetChangeLogsOutput, bool) bool, opts ...request.Option) error {
  2040  	p := request.Pagination{
  2041  		NewRequest: func() (*request.Request, error) {
  2042  			var inCpy *GetChangeLogsInput
  2043  			if input != nil {
  2044  				tmp := *input
  2045  				inCpy = &tmp
  2046  			}
  2047  			req, _ := c.GetChangeLogsRequest(inCpy)
  2048  			req.SetContext(ctx)
  2049  			req.ApplyOptions(opts...)
  2050  			return req, nil
  2051  		},
  2052  	}
  2053  
  2054  	for p.Next() {
  2055  		if !fn(p.Page().(*GetChangeLogsOutput), !p.HasNextPage()) {
  2056  			break
  2057  		}
  2058  	}
  2059  
  2060  	return p.Err()
  2061  }
  2062  
  2063  const opGetControl = "GetControl"
  2064  
  2065  // GetControlRequest generates a "aws/request.Request" representing the
  2066  // client's request for the GetControl operation. The "output" return
  2067  // value will be populated with the request's response once the request completes
  2068  // successfully.
  2069  //
  2070  // Use "Send" method on the returned Request to send the API call to the service.
  2071  // the "output" return value is not valid until after Send returns without error.
  2072  //
  2073  // See GetControl for more information on using the GetControl
  2074  // API call, and error handling.
  2075  //
  2076  // This method is useful when you want to inject custom logic or configuration
  2077  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2078  //
  2079  //
  2080  //    // Example sending a request using the GetControlRequest method.
  2081  //    req, resp := client.GetControlRequest(params)
  2082  //
  2083  //    err := req.Send()
  2084  //    if err == nil { // resp is now filled
  2085  //        fmt.Println(resp)
  2086  //    }
  2087  //
  2088  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetControl
  2089  func (c *AuditManager) GetControlRequest(input *GetControlInput) (req *request.Request, output *GetControlOutput) {
  2090  	op := &request.Operation{
  2091  		Name:       opGetControl,
  2092  		HTTPMethod: "GET",
  2093  		HTTPPath:   "/controls/{controlId}",
  2094  	}
  2095  
  2096  	if input == nil {
  2097  		input = &GetControlInput{}
  2098  	}
  2099  
  2100  	output = &GetControlOutput{}
  2101  	req = c.newRequest(op, input, output)
  2102  	return
  2103  }
  2104  
  2105  // GetControl API operation for AWS Audit Manager.
  2106  //
  2107  // Returns a control from Audit Manager.
  2108  //
  2109  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2110  // with awserr.Error's Code and Message methods to get detailed information about
  2111  // the error.
  2112  //
  2113  // See the AWS API reference guide for AWS Audit Manager's
  2114  // API operation GetControl for usage and error information.
  2115  //
  2116  // Returned Error Types:
  2117  //   * ResourceNotFoundException
  2118  //   The resource specified in the request cannot be found.
  2119  //
  2120  //   * ValidationException
  2121  //   The request has invalid or missing parameters.
  2122  //
  2123  //   * AccessDeniedException
  2124  //   Your account is not registered with Audit Manager. Check the delegated administrator
  2125  //   setup on the Audit Manager settings page, and try again.
  2126  //
  2127  //   * InternalServerException
  2128  //   An internal service error occurred during the processing of your request.
  2129  //   Try again later.
  2130  //
  2131  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetControl
  2132  func (c *AuditManager) GetControl(input *GetControlInput) (*GetControlOutput, error) {
  2133  	req, out := c.GetControlRequest(input)
  2134  	return out, req.Send()
  2135  }
  2136  
  2137  // GetControlWithContext is the same as GetControl with the addition of
  2138  // the ability to pass a context and additional request options.
  2139  //
  2140  // See GetControl for details on how to use this API operation.
  2141  //
  2142  // The context must be non-nil and will be used for request cancellation. If
  2143  // the context is nil a panic will occur. In the future the SDK may create
  2144  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2145  // for more information on using Contexts.
  2146  func (c *AuditManager) GetControlWithContext(ctx aws.Context, input *GetControlInput, opts ...request.Option) (*GetControlOutput, error) {
  2147  	req, out := c.GetControlRequest(input)
  2148  	req.SetContext(ctx)
  2149  	req.ApplyOptions(opts...)
  2150  	return out, req.Send()
  2151  }
  2152  
  2153  const opGetDelegations = "GetDelegations"
  2154  
  2155  // GetDelegationsRequest generates a "aws/request.Request" representing the
  2156  // client's request for the GetDelegations operation. The "output" return
  2157  // value will be populated with the request's response once the request completes
  2158  // successfully.
  2159  //
  2160  // Use "Send" method on the returned Request to send the API call to the service.
  2161  // the "output" return value is not valid until after Send returns without error.
  2162  //
  2163  // See GetDelegations for more information on using the GetDelegations
  2164  // API call, and error handling.
  2165  //
  2166  // This method is useful when you want to inject custom logic or configuration
  2167  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2168  //
  2169  //
  2170  //    // Example sending a request using the GetDelegationsRequest method.
  2171  //    req, resp := client.GetDelegationsRequest(params)
  2172  //
  2173  //    err := req.Send()
  2174  //    if err == nil { // resp is now filled
  2175  //        fmt.Println(resp)
  2176  //    }
  2177  //
  2178  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetDelegations
  2179  func (c *AuditManager) GetDelegationsRequest(input *GetDelegationsInput) (req *request.Request, output *GetDelegationsOutput) {
  2180  	op := &request.Operation{
  2181  		Name:       opGetDelegations,
  2182  		HTTPMethod: "GET",
  2183  		HTTPPath:   "/delegations",
  2184  		Paginator: &request.Paginator{
  2185  			InputTokens:     []string{"nextToken"},
  2186  			OutputTokens:    []string{"nextToken"},
  2187  			LimitToken:      "maxResults",
  2188  			TruncationToken: "",
  2189  		},
  2190  	}
  2191  
  2192  	if input == nil {
  2193  		input = &GetDelegationsInput{}
  2194  	}
  2195  
  2196  	output = &GetDelegationsOutput{}
  2197  	req = c.newRequest(op, input, output)
  2198  	return
  2199  }
  2200  
  2201  // GetDelegations API operation for AWS Audit Manager.
  2202  //
  2203  // Returns a list of delegations from an audit owner to a delegate.
  2204  //
  2205  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2206  // with awserr.Error's Code and Message methods to get detailed information about
  2207  // the error.
  2208  //
  2209  // See the AWS API reference guide for AWS Audit Manager's
  2210  // API operation GetDelegations for usage and error information.
  2211  //
  2212  // Returned Error Types:
  2213  //   * ValidationException
  2214  //   The request has invalid or missing parameters.
  2215  //
  2216  //   * AccessDeniedException
  2217  //   Your account is not registered with Audit Manager. Check the delegated administrator
  2218  //   setup on the Audit Manager settings page, and try again.
  2219  //
  2220  //   * InternalServerException
  2221  //   An internal service error occurred during the processing of your request.
  2222  //   Try again later.
  2223  //
  2224  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetDelegations
  2225  func (c *AuditManager) GetDelegations(input *GetDelegationsInput) (*GetDelegationsOutput, error) {
  2226  	req, out := c.GetDelegationsRequest(input)
  2227  	return out, req.Send()
  2228  }
  2229  
  2230  // GetDelegationsWithContext is the same as GetDelegations with the addition of
  2231  // the ability to pass a context and additional request options.
  2232  //
  2233  // See GetDelegations for details on how to use this API operation.
  2234  //
  2235  // The context must be non-nil and will be used for request cancellation. If
  2236  // the context is nil a panic will occur. In the future the SDK may create
  2237  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2238  // for more information on using Contexts.
  2239  func (c *AuditManager) GetDelegationsWithContext(ctx aws.Context, input *GetDelegationsInput, opts ...request.Option) (*GetDelegationsOutput, error) {
  2240  	req, out := c.GetDelegationsRequest(input)
  2241  	req.SetContext(ctx)
  2242  	req.ApplyOptions(opts...)
  2243  	return out, req.Send()
  2244  }
  2245  
  2246  // GetDelegationsPages iterates over the pages of a GetDelegations operation,
  2247  // calling the "fn" function with the response data for each page. To stop
  2248  // iterating, return false from the fn function.
  2249  //
  2250  // See GetDelegations method for more information on how to use this operation.
  2251  //
  2252  // Note: This operation can generate multiple requests to a service.
  2253  //
  2254  //    // Example iterating over at most 3 pages of a GetDelegations operation.
  2255  //    pageNum := 0
  2256  //    err := client.GetDelegationsPages(params,
  2257  //        func(page *auditmanager.GetDelegationsOutput, lastPage bool) bool {
  2258  //            pageNum++
  2259  //            fmt.Println(page)
  2260  //            return pageNum <= 3
  2261  //        })
  2262  //
  2263  func (c *AuditManager) GetDelegationsPages(input *GetDelegationsInput, fn func(*GetDelegationsOutput, bool) bool) error {
  2264  	return c.GetDelegationsPagesWithContext(aws.BackgroundContext(), input, fn)
  2265  }
  2266  
  2267  // GetDelegationsPagesWithContext same as GetDelegationsPages except
  2268  // it takes a Context and allows setting request options on the pages.
  2269  //
  2270  // The context must be non-nil and will be used for request cancellation. If
  2271  // the context is nil a panic will occur. In the future the SDK may create
  2272  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2273  // for more information on using Contexts.
  2274  func (c *AuditManager) GetDelegationsPagesWithContext(ctx aws.Context, input *GetDelegationsInput, fn func(*GetDelegationsOutput, bool) bool, opts ...request.Option) error {
  2275  	p := request.Pagination{
  2276  		NewRequest: func() (*request.Request, error) {
  2277  			var inCpy *GetDelegationsInput
  2278  			if input != nil {
  2279  				tmp := *input
  2280  				inCpy = &tmp
  2281  			}
  2282  			req, _ := c.GetDelegationsRequest(inCpy)
  2283  			req.SetContext(ctx)
  2284  			req.ApplyOptions(opts...)
  2285  			return req, nil
  2286  		},
  2287  	}
  2288  
  2289  	for p.Next() {
  2290  		if !fn(p.Page().(*GetDelegationsOutput), !p.HasNextPage()) {
  2291  			break
  2292  		}
  2293  	}
  2294  
  2295  	return p.Err()
  2296  }
  2297  
  2298  const opGetEvidence = "GetEvidence"
  2299  
  2300  // GetEvidenceRequest generates a "aws/request.Request" representing the
  2301  // client's request for the GetEvidence operation. The "output" return
  2302  // value will be populated with the request's response once the request completes
  2303  // successfully.
  2304  //
  2305  // Use "Send" method on the returned Request to send the API call to the service.
  2306  // the "output" return value is not valid until after Send returns without error.
  2307  //
  2308  // See GetEvidence for more information on using the GetEvidence
  2309  // API call, and error handling.
  2310  //
  2311  // This method is useful when you want to inject custom logic or configuration
  2312  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2313  //
  2314  //
  2315  //    // Example sending a request using the GetEvidenceRequest method.
  2316  //    req, resp := client.GetEvidenceRequest(params)
  2317  //
  2318  //    err := req.Send()
  2319  //    if err == nil { // resp is now filled
  2320  //        fmt.Println(resp)
  2321  //    }
  2322  //
  2323  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetEvidence
  2324  func (c *AuditManager) GetEvidenceRequest(input *GetEvidenceInput) (req *request.Request, output *GetEvidenceOutput) {
  2325  	op := &request.Operation{
  2326  		Name:       opGetEvidence,
  2327  		HTTPMethod: "GET",
  2328  		HTTPPath:   "/assessments/{assessmentId}/controlSets/{controlSetId}/evidenceFolders/{evidenceFolderId}/evidence/{evidenceId}",
  2329  	}
  2330  
  2331  	if input == nil {
  2332  		input = &GetEvidenceInput{}
  2333  	}
  2334  
  2335  	output = &GetEvidenceOutput{}
  2336  	req = c.newRequest(op, input, output)
  2337  	return
  2338  }
  2339  
  2340  // GetEvidence API operation for AWS Audit Manager.
  2341  //
  2342  // Returns evidence from Audit Manager.
  2343  //
  2344  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2345  // with awserr.Error's Code and Message methods to get detailed information about
  2346  // the error.
  2347  //
  2348  // See the AWS API reference guide for AWS Audit Manager's
  2349  // API operation GetEvidence for usage and error information.
  2350  //
  2351  // Returned Error Types:
  2352  //   * ResourceNotFoundException
  2353  //   The resource specified in the request cannot be found.
  2354  //
  2355  //   * ValidationException
  2356  //   The request has invalid or missing parameters.
  2357  //
  2358  //   * AccessDeniedException
  2359  //   Your account is not registered with Audit Manager. Check the delegated administrator
  2360  //   setup on the Audit Manager settings page, and try again.
  2361  //
  2362  //   * InternalServerException
  2363  //   An internal service error occurred during the processing of your request.
  2364  //   Try again later.
  2365  //
  2366  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetEvidence
  2367  func (c *AuditManager) GetEvidence(input *GetEvidenceInput) (*GetEvidenceOutput, error) {
  2368  	req, out := c.GetEvidenceRequest(input)
  2369  	return out, req.Send()
  2370  }
  2371  
  2372  // GetEvidenceWithContext is the same as GetEvidence with the addition of
  2373  // the ability to pass a context and additional request options.
  2374  //
  2375  // See GetEvidence for details on how to use this API operation.
  2376  //
  2377  // The context must be non-nil and will be used for request cancellation. If
  2378  // the context is nil a panic will occur. In the future the SDK may create
  2379  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2380  // for more information on using Contexts.
  2381  func (c *AuditManager) GetEvidenceWithContext(ctx aws.Context, input *GetEvidenceInput, opts ...request.Option) (*GetEvidenceOutput, error) {
  2382  	req, out := c.GetEvidenceRequest(input)
  2383  	req.SetContext(ctx)
  2384  	req.ApplyOptions(opts...)
  2385  	return out, req.Send()
  2386  }
  2387  
  2388  const opGetEvidenceByEvidenceFolder = "GetEvidenceByEvidenceFolder"
  2389  
  2390  // GetEvidenceByEvidenceFolderRequest generates a "aws/request.Request" representing the
  2391  // client's request for the GetEvidenceByEvidenceFolder operation. The "output" return
  2392  // value will be populated with the request's response once the request completes
  2393  // successfully.
  2394  //
  2395  // Use "Send" method on the returned Request to send the API call to the service.
  2396  // the "output" return value is not valid until after Send returns without error.
  2397  //
  2398  // See GetEvidenceByEvidenceFolder for more information on using the GetEvidenceByEvidenceFolder
  2399  // API call, and error handling.
  2400  //
  2401  // This method is useful when you want to inject custom logic or configuration
  2402  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2403  //
  2404  //
  2405  //    // Example sending a request using the GetEvidenceByEvidenceFolderRequest method.
  2406  //    req, resp := client.GetEvidenceByEvidenceFolderRequest(params)
  2407  //
  2408  //    err := req.Send()
  2409  //    if err == nil { // resp is now filled
  2410  //        fmt.Println(resp)
  2411  //    }
  2412  //
  2413  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetEvidenceByEvidenceFolder
  2414  func (c *AuditManager) GetEvidenceByEvidenceFolderRequest(input *GetEvidenceByEvidenceFolderInput) (req *request.Request, output *GetEvidenceByEvidenceFolderOutput) {
  2415  	op := &request.Operation{
  2416  		Name:       opGetEvidenceByEvidenceFolder,
  2417  		HTTPMethod: "GET",
  2418  		HTTPPath:   "/assessments/{assessmentId}/controlSets/{controlSetId}/evidenceFolders/{evidenceFolderId}/evidence",
  2419  		Paginator: &request.Paginator{
  2420  			InputTokens:     []string{"nextToken"},
  2421  			OutputTokens:    []string{"nextToken"},
  2422  			LimitToken:      "maxResults",
  2423  			TruncationToken: "",
  2424  		},
  2425  	}
  2426  
  2427  	if input == nil {
  2428  		input = &GetEvidenceByEvidenceFolderInput{}
  2429  	}
  2430  
  2431  	output = &GetEvidenceByEvidenceFolderOutput{}
  2432  	req = c.newRequest(op, input, output)
  2433  	return
  2434  }
  2435  
  2436  // GetEvidenceByEvidenceFolder API operation for AWS Audit Manager.
  2437  //
  2438  // Returns all evidence from a specified evidence folder in Audit Manager.
  2439  //
  2440  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2441  // with awserr.Error's Code and Message methods to get detailed information about
  2442  // the error.
  2443  //
  2444  // See the AWS API reference guide for AWS Audit Manager's
  2445  // API operation GetEvidenceByEvidenceFolder for usage and error information.
  2446  //
  2447  // Returned Error Types:
  2448  //   * ResourceNotFoundException
  2449  //   The resource specified in the request cannot be found.
  2450  //
  2451  //   * ValidationException
  2452  //   The request has invalid or missing parameters.
  2453  //
  2454  //   * AccessDeniedException
  2455  //   Your account is not registered with Audit Manager. Check the delegated administrator
  2456  //   setup on the Audit Manager settings page, and try again.
  2457  //
  2458  //   * InternalServerException
  2459  //   An internal service error occurred during the processing of your request.
  2460  //   Try again later.
  2461  //
  2462  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetEvidenceByEvidenceFolder
  2463  func (c *AuditManager) GetEvidenceByEvidenceFolder(input *GetEvidenceByEvidenceFolderInput) (*GetEvidenceByEvidenceFolderOutput, error) {
  2464  	req, out := c.GetEvidenceByEvidenceFolderRequest(input)
  2465  	return out, req.Send()
  2466  }
  2467  
  2468  // GetEvidenceByEvidenceFolderWithContext is the same as GetEvidenceByEvidenceFolder with the addition of
  2469  // the ability to pass a context and additional request options.
  2470  //
  2471  // See GetEvidenceByEvidenceFolder for details on how to use this API operation.
  2472  //
  2473  // The context must be non-nil and will be used for request cancellation. If
  2474  // the context is nil a panic will occur. In the future the SDK may create
  2475  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2476  // for more information on using Contexts.
  2477  func (c *AuditManager) GetEvidenceByEvidenceFolderWithContext(ctx aws.Context, input *GetEvidenceByEvidenceFolderInput, opts ...request.Option) (*GetEvidenceByEvidenceFolderOutput, error) {
  2478  	req, out := c.GetEvidenceByEvidenceFolderRequest(input)
  2479  	req.SetContext(ctx)
  2480  	req.ApplyOptions(opts...)
  2481  	return out, req.Send()
  2482  }
  2483  
  2484  // GetEvidenceByEvidenceFolderPages iterates over the pages of a GetEvidenceByEvidenceFolder operation,
  2485  // calling the "fn" function with the response data for each page. To stop
  2486  // iterating, return false from the fn function.
  2487  //
  2488  // See GetEvidenceByEvidenceFolder method for more information on how to use this operation.
  2489  //
  2490  // Note: This operation can generate multiple requests to a service.
  2491  //
  2492  //    // Example iterating over at most 3 pages of a GetEvidenceByEvidenceFolder operation.
  2493  //    pageNum := 0
  2494  //    err := client.GetEvidenceByEvidenceFolderPages(params,
  2495  //        func(page *auditmanager.GetEvidenceByEvidenceFolderOutput, lastPage bool) bool {
  2496  //            pageNum++
  2497  //            fmt.Println(page)
  2498  //            return pageNum <= 3
  2499  //        })
  2500  //
  2501  func (c *AuditManager) GetEvidenceByEvidenceFolderPages(input *GetEvidenceByEvidenceFolderInput, fn func(*GetEvidenceByEvidenceFolderOutput, bool) bool) error {
  2502  	return c.GetEvidenceByEvidenceFolderPagesWithContext(aws.BackgroundContext(), input, fn)
  2503  }
  2504  
  2505  // GetEvidenceByEvidenceFolderPagesWithContext same as GetEvidenceByEvidenceFolderPages except
  2506  // it takes a Context and allows setting request options on the pages.
  2507  //
  2508  // The context must be non-nil and will be used for request cancellation. If
  2509  // the context is nil a panic will occur. In the future the SDK may create
  2510  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2511  // for more information on using Contexts.
  2512  func (c *AuditManager) GetEvidenceByEvidenceFolderPagesWithContext(ctx aws.Context, input *GetEvidenceByEvidenceFolderInput, fn func(*GetEvidenceByEvidenceFolderOutput, bool) bool, opts ...request.Option) error {
  2513  	p := request.Pagination{
  2514  		NewRequest: func() (*request.Request, error) {
  2515  			var inCpy *GetEvidenceByEvidenceFolderInput
  2516  			if input != nil {
  2517  				tmp := *input
  2518  				inCpy = &tmp
  2519  			}
  2520  			req, _ := c.GetEvidenceByEvidenceFolderRequest(inCpy)
  2521  			req.SetContext(ctx)
  2522  			req.ApplyOptions(opts...)
  2523  			return req, nil
  2524  		},
  2525  	}
  2526  
  2527  	for p.Next() {
  2528  		if !fn(p.Page().(*GetEvidenceByEvidenceFolderOutput), !p.HasNextPage()) {
  2529  			break
  2530  		}
  2531  	}
  2532  
  2533  	return p.Err()
  2534  }
  2535  
  2536  const opGetEvidenceFolder = "GetEvidenceFolder"
  2537  
  2538  // GetEvidenceFolderRequest generates a "aws/request.Request" representing the
  2539  // client's request for the GetEvidenceFolder operation. The "output" return
  2540  // value will be populated with the request's response once the request completes
  2541  // successfully.
  2542  //
  2543  // Use "Send" method on the returned Request to send the API call to the service.
  2544  // the "output" return value is not valid until after Send returns without error.
  2545  //
  2546  // See GetEvidenceFolder for more information on using the GetEvidenceFolder
  2547  // API call, and error handling.
  2548  //
  2549  // This method is useful when you want to inject custom logic or configuration
  2550  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2551  //
  2552  //
  2553  //    // Example sending a request using the GetEvidenceFolderRequest method.
  2554  //    req, resp := client.GetEvidenceFolderRequest(params)
  2555  //
  2556  //    err := req.Send()
  2557  //    if err == nil { // resp is now filled
  2558  //        fmt.Println(resp)
  2559  //    }
  2560  //
  2561  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetEvidenceFolder
  2562  func (c *AuditManager) GetEvidenceFolderRequest(input *GetEvidenceFolderInput) (req *request.Request, output *GetEvidenceFolderOutput) {
  2563  	op := &request.Operation{
  2564  		Name:       opGetEvidenceFolder,
  2565  		HTTPMethod: "GET",
  2566  		HTTPPath:   "/assessments/{assessmentId}/controlSets/{controlSetId}/evidenceFolders/{evidenceFolderId}",
  2567  	}
  2568  
  2569  	if input == nil {
  2570  		input = &GetEvidenceFolderInput{}
  2571  	}
  2572  
  2573  	output = &GetEvidenceFolderOutput{}
  2574  	req = c.newRequest(op, input, output)
  2575  	return
  2576  }
  2577  
  2578  // GetEvidenceFolder API operation for AWS Audit Manager.
  2579  //
  2580  // Returns an evidence folder from the specified assessment in Audit Manager.
  2581  //
  2582  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2583  // with awserr.Error's Code and Message methods to get detailed information about
  2584  // the error.
  2585  //
  2586  // See the AWS API reference guide for AWS Audit Manager's
  2587  // API operation GetEvidenceFolder for usage and error information.
  2588  //
  2589  // Returned Error Types:
  2590  //   * ResourceNotFoundException
  2591  //   The resource specified in the request cannot be found.
  2592  //
  2593  //   * ValidationException
  2594  //   The request has invalid or missing parameters.
  2595  //
  2596  //   * AccessDeniedException
  2597  //   Your account is not registered with Audit Manager. Check the delegated administrator
  2598  //   setup on the Audit Manager settings page, and try again.
  2599  //
  2600  //   * InternalServerException
  2601  //   An internal service error occurred during the processing of your request.
  2602  //   Try again later.
  2603  //
  2604  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetEvidenceFolder
  2605  func (c *AuditManager) GetEvidenceFolder(input *GetEvidenceFolderInput) (*GetEvidenceFolderOutput, error) {
  2606  	req, out := c.GetEvidenceFolderRequest(input)
  2607  	return out, req.Send()
  2608  }
  2609  
  2610  // GetEvidenceFolderWithContext is the same as GetEvidenceFolder with the addition of
  2611  // the ability to pass a context and additional request options.
  2612  //
  2613  // See GetEvidenceFolder for details on how to use this API operation.
  2614  //
  2615  // The context must be non-nil and will be used for request cancellation. If
  2616  // the context is nil a panic will occur. In the future the SDK may create
  2617  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2618  // for more information on using Contexts.
  2619  func (c *AuditManager) GetEvidenceFolderWithContext(ctx aws.Context, input *GetEvidenceFolderInput, opts ...request.Option) (*GetEvidenceFolderOutput, error) {
  2620  	req, out := c.GetEvidenceFolderRequest(input)
  2621  	req.SetContext(ctx)
  2622  	req.ApplyOptions(opts...)
  2623  	return out, req.Send()
  2624  }
  2625  
  2626  const opGetEvidenceFoldersByAssessment = "GetEvidenceFoldersByAssessment"
  2627  
  2628  // GetEvidenceFoldersByAssessmentRequest generates a "aws/request.Request" representing the
  2629  // client's request for the GetEvidenceFoldersByAssessment operation. The "output" return
  2630  // value will be populated with the request's response once the request completes
  2631  // successfully.
  2632  //
  2633  // Use "Send" method on the returned Request to send the API call to the service.
  2634  // the "output" return value is not valid until after Send returns without error.
  2635  //
  2636  // See GetEvidenceFoldersByAssessment for more information on using the GetEvidenceFoldersByAssessment
  2637  // API call, and error handling.
  2638  //
  2639  // This method is useful when you want to inject custom logic or configuration
  2640  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2641  //
  2642  //
  2643  //    // Example sending a request using the GetEvidenceFoldersByAssessmentRequest method.
  2644  //    req, resp := client.GetEvidenceFoldersByAssessmentRequest(params)
  2645  //
  2646  //    err := req.Send()
  2647  //    if err == nil { // resp is now filled
  2648  //        fmt.Println(resp)
  2649  //    }
  2650  //
  2651  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetEvidenceFoldersByAssessment
  2652  func (c *AuditManager) GetEvidenceFoldersByAssessmentRequest(input *GetEvidenceFoldersByAssessmentInput) (req *request.Request, output *GetEvidenceFoldersByAssessmentOutput) {
  2653  	op := &request.Operation{
  2654  		Name:       opGetEvidenceFoldersByAssessment,
  2655  		HTTPMethod: "GET",
  2656  		HTTPPath:   "/assessments/{assessmentId}/evidenceFolders",
  2657  		Paginator: &request.Paginator{
  2658  			InputTokens:     []string{"nextToken"},
  2659  			OutputTokens:    []string{"nextToken"},
  2660  			LimitToken:      "maxResults",
  2661  			TruncationToken: "",
  2662  		},
  2663  	}
  2664  
  2665  	if input == nil {
  2666  		input = &GetEvidenceFoldersByAssessmentInput{}
  2667  	}
  2668  
  2669  	output = &GetEvidenceFoldersByAssessmentOutput{}
  2670  	req = c.newRequest(op, input, output)
  2671  	return
  2672  }
  2673  
  2674  // GetEvidenceFoldersByAssessment API operation for AWS Audit Manager.
  2675  //
  2676  // Returns the evidence folders from a specified assessment in Audit Manager.
  2677  //
  2678  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2679  // with awserr.Error's Code and Message methods to get detailed information about
  2680  // the error.
  2681  //
  2682  // See the AWS API reference guide for AWS Audit Manager's
  2683  // API operation GetEvidenceFoldersByAssessment for usage and error information.
  2684  //
  2685  // Returned Error Types:
  2686  //   * ResourceNotFoundException
  2687  //   The resource specified in the request cannot be found.
  2688  //
  2689  //   * AccessDeniedException
  2690  //   Your account is not registered with Audit Manager. Check the delegated administrator
  2691  //   setup on the Audit Manager settings page, and try again.
  2692  //
  2693  //   * ValidationException
  2694  //   The request has invalid or missing parameters.
  2695  //
  2696  //   * InternalServerException
  2697  //   An internal service error occurred during the processing of your request.
  2698  //   Try again later.
  2699  //
  2700  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetEvidenceFoldersByAssessment
  2701  func (c *AuditManager) GetEvidenceFoldersByAssessment(input *GetEvidenceFoldersByAssessmentInput) (*GetEvidenceFoldersByAssessmentOutput, error) {
  2702  	req, out := c.GetEvidenceFoldersByAssessmentRequest(input)
  2703  	return out, req.Send()
  2704  }
  2705  
  2706  // GetEvidenceFoldersByAssessmentWithContext is the same as GetEvidenceFoldersByAssessment with the addition of
  2707  // the ability to pass a context and additional request options.
  2708  //
  2709  // See GetEvidenceFoldersByAssessment for details on how to use this API operation.
  2710  //
  2711  // The context must be non-nil and will be used for request cancellation. If
  2712  // the context is nil a panic will occur. In the future the SDK may create
  2713  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2714  // for more information on using Contexts.
  2715  func (c *AuditManager) GetEvidenceFoldersByAssessmentWithContext(ctx aws.Context, input *GetEvidenceFoldersByAssessmentInput, opts ...request.Option) (*GetEvidenceFoldersByAssessmentOutput, error) {
  2716  	req, out := c.GetEvidenceFoldersByAssessmentRequest(input)
  2717  	req.SetContext(ctx)
  2718  	req.ApplyOptions(opts...)
  2719  	return out, req.Send()
  2720  }
  2721  
  2722  // GetEvidenceFoldersByAssessmentPages iterates over the pages of a GetEvidenceFoldersByAssessment operation,
  2723  // calling the "fn" function with the response data for each page. To stop
  2724  // iterating, return false from the fn function.
  2725  //
  2726  // See GetEvidenceFoldersByAssessment method for more information on how to use this operation.
  2727  //
  2728  // Note: This operation can generate multiple requests to a service.
  2729  //
  2730  //    // Example iterating over at most 3 pages of a GetEvidenceFoldersByAssessment operation.
  2731  //    pageNum := 0
  2732  //    err := client.GetEvidenceFoldersByAssessmentPages(params,
  2733  //        func(page *auditmanager.GetEvidenceFoldersByAssessmentOutput, lastPage bool) bool {
  2734  //            pageNum++
  2735  //            fmt.Println(page)
  2736  //            return pageNum <= 3
  2737  //        })
  2738  //
  2739  func (c *AuditManager) GetEvidenceFoldersByAssessmentPages(input *GetEvidenceFoldersByAssessmentInput, fn func(*GetEvidenceFoldersByAssessmentOutput, bool) bool) error {
  2740  	return c.GetEvidenceFoldersByAssessmentPagesWithContext(aws.BackgroundContext(), input, fn)
  2741  }
  2742  
  2743  // GetEvidenceFoldersByAssessmentPagesWithContext same as GetEvidenceFoldersByAssessmentPages except
  2744  // it takes a Context and allows setting request options on the pages.
  2745  //
  2746  // The context must be non-nil and will be used for request cancellation. If
  2747  // the context is nil a panic will occur. In the future the SDK may create
  2748  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2749  // for more information on using Contexts.
  2750  func (c *AuditManager) GetEvidenceFoldersByAssessmentPagesWithContext(ctx aws.Context, input *GetEvidenceFoldersByAssessmentInput, fn func(*GetEvidenceFoldersByAssessmentOutput, bool) bool, opts ...request.Option) error {
  2751  	p := request.Pagination{
  2752  		NewRequest: func() (*request.Request, error) {
  2753  			var inCpy *GetEvidenceFoldersByAssessmentInput
  2754  			if input != nil {
  2755  				tmp := *input
  2756  				inCpy = &tmp
  2757  			}
  2758  			req, _ := c.GetEvidenceFoldersByAssessmentRequest(inCpy)
  2759  			req.SetContext(ctx)
  2760  			req.ApplyOptions(opts...)
  2761  			return req, nil
  2762  		},
  2763  	}
  2764  
  2765  	for p.Next() {
  2766  		if !fn(p.Page().(*GetEvidenceFoldersByAssessmentOutput), !p.HasNextPage()) {
  2767  			break
  2768  		}
  2769  	}
  2770  
  2771  	return p.Err()
  2772  }
  2773  
  2774  const opGetEvidenceFoldersByAssessmentControl = "GetEvidenceFoldersByAssessmentControl"
  2775  
  2776  // GetEvidenceFoldersByAssessmentControlRequest generates a "aws/request.Request" representing the
  2777  // client's request for the GetEvidenceFoldersByAssessmentControl operation. The "output" return
  2778  // value will be populated with the request's response once the request completes
  2779  // successfully.
  2780  //
  2781  // Use "Send" method on the returned Request to send the API call to the service.
  2782  // the "output" return value is not valid until after Send returns without error.
  2783  //
  2784  // See GetEvidenceFoldersByAssessmentControl for more information on using the GetEvidenceFoldersByAssessmentControl
  2785  // API call, and error handling.
  2786  //
  2787  // This method is useful when you want to inject custom logic or configuration
  2788  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2789  //
  2790  //
  2791  //    // Example sending a request using the GetEvidenceFoldersByAssessmentControlRequest method.
  2792  //    req, resp := client.GetEvidenceFoldersByAssessmentControlRequest(params)
  2793  //
  2794  //    err := req.Send()
  2795  //    if err == nil { // resp is now filled
  2796  //        fmt.Println(resp)
  2797  //    }
  2798  //
  2799  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetEvidenceFoldersByAssessmentControl
  2800  func (c *AuditManager) GetEvidenceFoldersByAssessmentControlRequest(input *GetEvidenceFoldersByAssessmentControlInput) (req *request.Request, output *GetEvidenceFoldersByAssessmentControlOutput) {
  2801  	op := &request.Operation{
  2802  		Name:       opGetEvidenceFoldersByAssessmentControl,
  2803  		HTTPMethod: "GET",
  2804  		HTTPPath:   "/assessments/{assessmentId}/evidenceFolders-by-assessment-control/{controlSetId}/{controlId}",
  2805  		Paginator: &request.Paginator{
  2806  			InputTokens:     []string{"nextToken"},
  2807  			OutputTokens:    []string{"nextToken"},
  2808  			LimitToken:      "maxResults",
  2809  			TruncationToken: "",
  2810  		},
  2811  	}
  2812  
  2813  	if input == nil {
  2814  		input = &GetEvidenceFoldersByAssessmentControlInput{}
  2815  	}
  2816  
  2817  	output = &GetEvidenceFoldersByAssessmentControlOutput{}
  2818  	req = c.newRequest(op, input, output)
  2819  	return
  2820  }
  2821  
  2822  // GetEvidenceFoldersByAssessmentControl API operation for AWS Audit Manager.
  2823  //
  2824  // Returns a list of evidence folders associated with a specified control of
  2825  // an assessment in Audit Manager.
  2826  //
  2827  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2828  // with awserr.Error's Code and Message methods to get detailed information about
  2829  // the error.
  2830  //
  2831  // See the AWS API reference guide for AWS Audit Manager's
  2832  // API operation GetEvidenceFoldersByAssessmentControl for usage and error information.
  2833  //
  2834  // Returned Error Types:
  2835  //   * ResourceNotFoundException
  2836  //   The resource specified in the request cannot be found.
  2837  //
  2838  //   * ValidationException
  2839  //   The request has invalid or missing parameters.
  2840  //
  2841  //   * AccessDeniedException
  2842  //   Your account is not registered with Audit Manager. Check the delegated administrator
  2843  //   setup on the Audit Manager settings page, and try again.
  2844  //
  2845  //   * InternalServerException
  2846  //   An internal service error occurred during the processing of your request.
  2847  //   Try again later.
  2848  //
  2849  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetEvidenceFoldersByAssessmentControl
  2850  func (c *AuditManager) GetEvidenceFoldersByAssessmentControl(input *GetEvidenceFoldersByAssessmentControlInput) (*GetEvidenceFoldersByAssessmentControlOutput, error) {
  2851  	req, out := c.GetEvidenceFoldersByAssessmentControlRequest(input)
  2852  	return out, req.Send()
  2853  }
  2854  
  2855  // GetEvidenceFoldersByAssessmentControlWithContext is the same as GetEvidenceFoldersByAssessmentControl with the addition of
  2856  // the ability to pass a context and additional request options.
  2857  //
  2858  // See GetEvidenceFoldersByAssessmentControl for details on how to use this API operation.
  2859  //
  2860  // The context must be non-nil and will be used for request cancellation. If
  2861  // the context is nil a panic will occur. In the future the SDK may create
  2862  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2863  // for more information on using Contexts.
  2864  func (c *AuditManager) GetEvidenceFoldersByAssessmentControlWithContext(ctx aws.Context, input *GetEvidenceFoldersByAssessmentControlInput, opts ...request.Option) (*GetEvidenceFoldersByAssessmentControlOutput, error) {
  2865  	req, out := c.GetEvidenceFoldersByAssessmentControlRequest(input)
  2866  	req.SetContext(ctx)
  2867  	req.ApplyOptions(opts...)
  2868  	return out, req.Send()
  2869  }
  2870  
  2871  // GetEvidenceFoldersByAssessmentControlPages iterates over the pages of a GetEvidenceFoldersByAssessmentControl operation,
  2872  // calling the "fn" function with the response data for each page. To stop
  2873  // iterating, return false from the fn function.
  2874  //
  2875  // See GetEvidenceFoldersByAssessmentControl method for more information on how to use this operation.
  2876  //
  2877  // Note: This operation can generate multiple requests to a service.
  2878  //
  2879  //    // Example iterating over at most 3 pages of a GetEvidenceFoldersByAssessmentControl operation.
  2880  //    pageNum := 0
  2881  //    err := client.GetEvidenceFoldersByAssessmentControlPages(params,
  2882  //        func(page *auditmanager.GetEvidenceFoldersByAssessmentControlOutput, lastPage bool) bool {
  2883  //            pageNum++
  2884  //            fmt.Println(page)
  2885  //            return pageNum <= 3
  2886  //        })
  2887  //
  2888  func (c *AuditManager) GetEvidenceFoldersByAssessmentControlPages(input *GetEvidenceFoldersByAssessmentControlInput, fn func(*GetEvidenceFoldersByAssessmentControlOutput, bool) bool) error {
  2889  	return c.GetEvidenceFoldersByAssessmentControlPagesWithContext(aws.BackgroundContext(), input, fn)
  2890  }
  2891  
  2892  // GetEvidenceFoldersByAssessmentControlPagesWithContext same as GetEvidenceFoldersByAssessmentControlPages except
  2893  // it takes a Context and allows setting request options on the pages.
  2894  //
  2895  // The context must be non-nil and will be used for request cancellation. If
  2896  // the context is nil a panic will occur. In the future the SDK may create
  2897  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2898  // for more information on using Contexts.
  2899  func (c *AuditManager) GetEvidenceFoldersByAssessmentControlPagesWithContext(ctx aws.Context, input *GetEvidenceFoldersByAssessmentControlInput, fn func(*GetEvidenceFoldersByAssessmentControlOutput, bool) bool, opts ...request.Option) error {
  2900  	p := request.Pagination{
  2901  		NewRequest: func() (*request.Request, error) {
  2902  			var inCpy *GetEvidenceFoldersByAssessmentControlInput
  2903  			if input != nil {
  2904  				tmp := *input
  2905  				inCpy = &tmp
  2906  			}
  2907  			req, _ := c.GetEvidenceFoldersByAssessmentControlRequest(inCpy)
  2908  			req.SetContext(ctx)
  2909  			req.ApplyOptions(opts...)
  2910  			return req, nil
  2911  		},
  2912  	}
  2913  
  2914  	for p.Next() {
  2915  		if !fn(p.Page().(*GetEvidenceFoldersByAssessmentControlOutput), !p.HasNextPage()) {
  2916  			break
  2917  		}
  2918  	}
  2919  
  2920  	return p.Err()
  2921  }
  2922  
  2923  const opGetOrganizationAdminAccount = "GetOrganizationAdminAccount"
  2924  
  2925  // GetOrganizationAdminAccountRequest generates a "aws/request.Request" representing the
  2926  // client's request for the GetOrganizationAdminAccount operation. The "output" return
  2927  // value will be populated with the request's response once the request completes
  2928  // successfully.
  2929  //
  2930  // Use "Send" method on the returned Request to send the API call to the service.
  2931  // the "output" return value is not valid until after Send returns without error.
  2932  //
  2933  // See GetOrganizationAdminAccount for more information on using the GetOrganizationAdminAccount
  2934  // API call, and error handling.
  2935  //
  2936  // This method is useful when you want to inject custom logic or configuration
  2937  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2938  //
  2939  //
  2940  //    // Example sending a request using the GetOrganizationAdminAccountRequest method.
  2941  //    req, resp := client.GetOrganizationAdminAccountRequest(params)
  2942  //
  2943  //    err := req.Send()
  2944  //    if err == nil { // resp is now filled
  2945  //        fmt.Println(resp)
  2946  //    }
  2947  //
  2948  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetOrganizationAdminAccount
  2949  func (c *AuditManager) GetOrganizationAdminAccountRequest(input *GetOrganizationAdminAccountInput) (req *request.Request, output *GetOrganizationAdminAccountOutput) {
  2950  	op := &request.Operation{
  2951  		Name:       opGetOrganizationAdminAccount,
  2952  		HTTPMethod: "GET",
  2953  		HTTPPath:   "/account/organizationAdminAccount",
  2954  	}
  2955  
  2956  	if input == nil {
  2957  		input = &GetOrganizationAdminAccountInput{}
  2958  	}
  2959  
  2960  	output = &GetOrganizationAdminAccountOutput{}
  2961  	req = c.newRequest(op, input, output)
  2962  	return
  2963  }
  2964  
  2965  // GetOrganizationAdminAccount API operation for AWS Audit Manager.
  2966  //
  2967  // Returns the name of the delegated Amazon Web Services administrator account
  2968  // for the organization.
  2969  //
  2970  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2971  // with awserr.Error's Code and Message methods to get detailed information about
  2972  // the error.
  2973  //
  2974  // See the AWS API reference guide for AWS Audit Manager's
  2975  // API operation GetOrganizationAdminAccount for usage and error information.
  2976  //
  2977  // Returned Error Types:
  2978  //   * ValidationException
  2979  //   The request has invalid or missing parameters.
  2980  //
  2981  //   * AccessDeniedException
  2982  //   Your account is not registered with Audit Manager. Check the delegated administrator
  2983  //   setup on the Audit Manager settings page, and try again.
  2984  //
  2985  //   * InternalServerException
  2986  //   An internal service error occurred during the processing of your request.
  2987  //   Try again later.
  2988  //
  2989  //   * ResourceNotFoundException
  2990  //   The resource specified in the request cannot be found.
  2991  //
  2992  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetOrganizationAdminAccount
  2993  func (c *AuditManager) GetOrganizationAdminAccount(input *GetOrganizationAdminAccountInput) (*GetOrganizationAdminAccountOutput, error) {
  2994  	req, out := c.GetOrganizationAdminAccountRequest(input)
  2995  	return out, req.Send()
  2996  }
  2997  
  2998  // GetOrganizationAdminAccountWithContext is the same as GetOrganizationAdminAccount with the addition of
  2999  // the ability to pass a context and additional request options.
  3000  //
  3001  // See GetOrganizationAdminAccount for details on how to use this API operation.
  3002  //
  3003  // The context must be non-nil and will be used for request cancellation. If
  3004  // the context is nil a panic will occur. In the future the SDK may create
  3005  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3006  // for more information on using Contexts.
  3007  func (c *AuditManager) GetOrganizationAdminAccountWithContext(ctx aws.Context, input *GetOrganizationAdminAccountInput, opts ...request.Option) (*GetOrganizationAdminAccountOutput, error) {
  3008  	req, out := c.GetOrganizationAdminAccountRequest(input)
  3009  	req.SetContext(ctx)
  3010  	req.ApplyOptions(opts...)
  3011  	return out, req.Send()
  3012  }
  3013  
  3014  const opGetServicesInScope = "GetServicesInScope"
  3015  
  3016  // GetServicesInScopeRequest generates a "aws/request.Request" representing the
  3017  // client's request for the GetServicesInScope operation. The "output" return
  3018  // value will be populated with the request's response once the request completes
  3019  // successfully.
  3020  //
  3021  // Use "Send" method on the returned Request to send the API call to the service.
  3022  // the "output" return value is not valid until after Send returns without error.
  3023  //
  3024  // See GetServicesInScope for more information on using the GetServicesInScope
  3025  // API call, and error handling.
  3026  //
  3027  // This method is useful when you want to inject custom logic or configuration
  3028  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3029  //
  3030  //
  3031  //    // Example sending a request using the GetServicesInScopeRequest method.
  3032  //    req, resp := client.GetServicesInScopeRequest(params)
  3033  //
  3034  //    err := req.Send()
  3035  //    if err == nil { // resp is now filled
  3036  //        fmt.Println(resp)
  3037  //    }
  3038  //
  3039  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetServicesInScope
  3040  func (c *AuditManager) GetServicesInScopeRequest(input *GetServicesInScopeInput) (req *request.Request, output *GetServicesInScopeOutput) {
  3041  	op := &request.Operation{
  3042  		Name:       opGetServicesInScope,
  3043  		HTTPMethod: "GET",
  3044  		HTTPPath:   "/services",
  3045  	}
  3046  
  3047  	if input == nil {
  3048  		input = &GetServicesInScopeInput{}
  3049  	}
  3050  
  3051  	output = &GetServicesInScopeOutput{}
  3052  	req = c.newRequest(op, input, output)
  3053  	return
  3054  }
  3055  
  3056  // GetServicesInScope API operation for AWS Audit Manager.
  3057  //
  3058  // Returns a list of the in-scope Amazon Web Services services for the specified
  3059  // assessment.
  3060  //
  3061  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3062  // with awserr.Error's Code and Message methods to get detailed information about
  3063  // the error.
  3064  //
  3065  // See the AWS API reference guide for AWS Audit Manager's
  3066  // API operation GetServicesInScope for usage and error information.
  3067  //
  3068  // Returned Error Types:
  3069  //   * AccessDeniedException
  3070  //   Your account is not registered with Audit Manager. Check the delegated administrator
  3071  //   setup on the Audit Manager settings page, and try again.
  3072  //
  3073  //   * ValidationException
  3074  //   The request has invalid or missing parameters.
  3075  //
  3076  //   * InternalServerException
  3077  //   An internal service error occurred during the processing of your request.
  3078  //   Try again later.
  3079  //
  3080  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetServicesInScope
  3081  func (c *AuditManager) GetServicesInScope(input *GetServicesInScopeInput) (*GetServicesInScopeOutput, error) {
  3082  	req, out := c.GetServicesInScopeRequest(input)
  3083  	return out, req.Send()
  3084  }
  3085  
  3086  // GetServicesInScopeWithContext is the same as GetServicesInScope with the addition of
  3087  // the ability to pass a context and additional request options.
  3088  //
  3089  // See GetServicesInScope for details on how to use this API operation.
  3090  //
  3091  // The context must be non-nil and will be used for request cancellation. If
  3092  // the context is nil a panic will occur. In the future the SDK may create
  3093  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3094  // for more information on using Contexts.
  3095  func (c *AuditManager) GetServicesInScopeWithContext(ctx aws.Context, input *GetServicesInScopeInput, opts ...request.Option) (*GetServicesInScopeOutput, error) {
  3096  	req, out := c.GetServicesInScopeRequest(input)
  3097  	req.SetContext(ctx)
  3098  	req.ApplyOptions(opts...)
  3099  	return out, req.Send()
  3100  }
  3101  
  3102  const opGetSettings = "GetSettings"
  3103  
  3104  // GetSettingsRequest generates a "aws/request.Request" representing the
  3105  // client's request for the GetSettings operation. The "output" return
  3106  // value will be populated with the request's response once the request completes
  3107  // successfully.
  3108  //
  3109  // Use "Send" method on the returned Request to send the API call to the service.
  3110  // the "output" return value is not valid until after Send returns without error.
  3111  //
  3112  // See GetSettings for more information on using the GetSettings
  3113  // API call, and error handling.
  3114  //
  3115  // This method is useful when you want to inject custom logic or configuration
  3116  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3117  //
  3118  //
  3119  //    // Example sending a request using the GetSettingsRequest method.
  3120  //    req, resp := client.GetSettingsRequest(params)
  3121  //
  3122  //    err := req.Send()
  3123  //    if err == nil { // resp is now filled
  3124  //        fmt.Println(resp)
  3125  //    }
  3126  //
  3127  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetSettings
  3128  func (c *AuditManager) GetSettingsRequest(input *GetSettingsInput) (req *request.Request, output *GetSettingsOutput) {
  3129  	op := &request.Operation{
  3130  		Name:       opGetSettings,
  3131  		HTTPMethod: "GET",
  3132  		HTTPPath:   "/settings/{attribute}",
  3133  	}
  3134  
  3135  	if input == nil {
  3136  		input = &GetSettingsInput{}
  3137  	}
  3138  
  3139  	output = &GetSettingsOutput{}
  3140  	req = c.newRequest(op, input, output)
  3141  	return
  3142  }
  3143  
  3144  // GetSettings API operation for AWS Audit Manager.
  3145  //
  3146  // Returns the settings for the specified account.
  3147  //
  3148  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3149  // with awserr.Error's Code and Message methods to get detailed information about
  3150  // the error.
  3151  //
  3152  // See the AWS API reference guide for AWS Audit Manager's
  3153  // API operation GetSettings for usage and error information.
  3154  //
  3155  // Returned Error Types:
  3156  //   * AccessDeniedException
  3157  //   Your account is not registered with Audit Manager. Check the delegated administrator
  3158  //   setup on the Audit Manager settings page, and try again.
  3159  //
  3160  //   * InternalServerException
  3161  //   An internal service error occurred during the processing of your request.
  3162  //   Try again later.
  3163  //
  3164  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/GetSettings
  3165  func (c *AuditManager) GetSettings(input *GetSettingsInput) (*GetSettingsOutput, error) {
  3166  	req, out := c.GetSettingsRequest(input)
  3167  	return out, req.Send()
  3168  }
  3169  
  3170  // GetSettingsWithContext is the same as GetSettings with the addition of
  3171  // the ability to pass a context and additional request options.
  3172  //
  3173  // See GetSettings for details on how to use this API operation.
  3174  //
  3175  // The context must be non-nil and will be used for request cancellation. If
  3176  // the context is nil a panic will occur. In the future the SDK may create
  3177  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3178  // for more information on using Contexts.
  3179  func (c *AuditManager) GetSettingsWithContext(ctx aws.Context, input *GetSettingsInput, opts ...request.Option) (*GetSettingsOutput, error) {
  3180  	req, out := c.GetSettingsRequest(input)
  3181  	req.SetContext(ctx)
  3182  	req.ApplyOptions(opts...)
  3183  	return out, req.Send()
  3184  }
  3185  
  3186  const opListAssessmentFrameworks = "ListAssessmentFrameworks"
  3187  
  3188  // ListAssessmentFrameworksRequest generates a "aws/request.Request" representing the
  3189  // client's request for the ListAssessmentFrameworks operation. The "output" return
  3190  // value will be populated with the request's response once the request completes
  3191  // successfully.
  3192  //
  3193  // Use "Send" method on the returned Request to send the API call to the service.
  3194  // the "output" return value is not valid until after Send returns without error.
  3195  //
  3196  // See ListAssessmentFrameworks for more information on using the ListAssessmentFrameworks
  3197  // API call, and error handling.
  3198  //
  3199  // This method is useful when you want to inject custom logic or configuration
  3200  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3201  //
  3202  //
  3203  //    // Example sending a request using the ListAssessmentFrameworksRequest method.
  3204  //    req, resp := client.ListAssessmentFrameworksRequest(params)
  3205  //
  3206  //    err := req.Send()
  3207  //    if err == nil { // resp is now filled
  3208  //        fmt.Println(resp)
  3209  //    }
  3210  //
  3211  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListAssessmentFrameworks
  3212  func (c *AuditManager) ListAssessmentFrameworksRequest(input *ListAssessmentFrameworksInput) (req *request.Request, output *ListAssessmentFrameworksOutput) {
  3213  	op := &request.Operation{
  3214  		Name:       opListAssessmentFrameworks,
  3215  		HTTPMethod: "GET",
  3216  		HTTPPath:   "/assessmentFrameworks",
  3217  		Paginator: &request.Paginator{
  3218  			InputTokens:     []string{"nextToken"},
  3219  			OutputTokens:    []string{"nextToken"},
  3220  			LimitToken:      "maxResults",
  3221  			TruncationToken: "",
  3222  		},
  3223  	}
  3224  
  3225  	if input == nil {
  3226  		input = &ListAssessmentFrameworksInput{}
  3227  	}
  3228  
  3229  	output = &ListAssessmentFrameworksOutput{}
  3230  	req = c.newRequest(op, input, output)
  3231  	return
  3232  }
  3233  
  3234  // ListAssessmentFrameworks API operation for AWS Audit Manager.
  3235  //
  3236  // Returns a list of the frameworks available in the Audit Manager framework
  3237  // library.
  3238  //
  3239  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3240  // with awserr.Error's Code and Message methods to get detailed information about
  3241  // the error.
  3242  //
  3243  // See the AWS API reference guide for AWS Audit Manager's
  3244  // API operation ListAssessmentFrameworks for usage and error information.
  3245  //
  3246  // Returned Error Types:
  3247  //   * ValidationException
  3248  //   The request has invalid or missing parameters.
  3249  //
  3250  //   * AccessDeniedException
  3251  //   Your account is not registered with Audit Manager. Check the delegated administrator
  3252  //   setup on the Audit Manager settings page, and try again.
  3253  //
  3254  //   * InternalServerException
  3255  //   An internal service error occurred during the processing of your request.
  3256  //   Try again later.
  3257  //
  3258  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListAssessmentFrameworks
  3259  func (c *AuditManager) ListAssessmentFrameworks(input *ListAssessmentFrameworksInput) (*ListAssessmentFrameworksOutput, error) {
  3260  	req, out := c.ListAssessmentFrameworksRequest(input)
  3261  	return out, req.Send()
  3262  }
  3263  
  3264  // ListAssessmentFrameworksWithContext is the same as ListAssessmentFrameworks with the addition of
  3265  // the ability to pass a context and additional request options.
  3266  //
  3267  // See ListAssessmentFrameworks for details on how to use this API operation.
  3268  //
  3269  // The context must be non-nil and will be used for request cancellation. If
  3270  // the context is nil a panic will occur. In the future the SDK may create
  3271  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3272  // for more information on using Contexts.
  3273  func (c *AuditManager) ListAssessmentFrameworksWithContext(ctx aws.Context, input *ListAssessmentFrameworksInput, opts ...request.Option) (*ListAssessmentFrameworksOutput, error) {
  3274  	req, out := c.ListAssessmentFrameworksRequest(input)
  3275  	req.SetContext(ctx)
  3276  	req.ApplyOptions(opts...)
  3277  	return out, req.Send()
  3278  }
  3279  
  3280  // ListAssessmentFrameworksPages iterates over the pages of a ListAssessmentFrameworks operation,
  3281  // calling the "fn" function with the response data for each page. To stop
  3282  // iterating, return false from the fn function.
  3283  //
  3284  // See ListAssessmentFrameworks method for more information on how to use this operation.
  3285  //
  3286  // Note: This operation can generate multiple requests to a service.
  3287  //
  3288  //    // Example iterating over at most 3 pages of a ListAssessmentFrameworks operation.
  3289  //    pageNum := 0
  3290  //    err := client.ListAssessmentFrameworksPages(params,
  3291  //        func(page *auditmanager.ListAssessmentFrameworksOutput, lastPage bool) bool {
  3292  //            pageNum++
  3293  //            fmt.Println(page)
  3294  //            return pageNum <= 3
  3295  //        })
  3296  //
  3297  func (c *AuditManager) ListAssessmentFrameworksPages(input *ListAssessmentFrameworksInput, fn func(*ListAssessmentFrameworksOutput, bool) bool) error {
  3298  	return c.ListAssessmentFrameworksPagesWithContext(aws.BackgroundContext(), input, fn)
  3299  }
  3300  
  3301  // ListAssessmentFrameworksPagesWithContext same as ListAssessmentFrameworksPages except
  3302  // it takes a Context and allows setting request options on the pages.
  3303  //
  3304  // The context must be non-nil and will be used for request cancellation. If
  3305  // the context is nil a panic will occur. In the future the SDK may create
  3306  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3307  // for more information on using Contexts.
  3308  func (c *AuditManager) ListAssessmentFrameworksPagesWithContext(ctx aws.Context, input *ListAssessmentFrameworksInput, fn func(*ListAssessmentFrameworksOutput, bool) bool, opts ...request.Option) error {
  3309  	p := request.Pagination{
  3310  		NewRequest: func() (*request.Request, error) {
  3311  			var inCpy *ListAssessmentFrameworksInput
  3312  			if input != nil {
  3313  				tmp := *input
  3314  				inCpy = &tmp
  3315  			}
  3316  			req, _ := c.ListAssessmentFrameworksRequest(inCpy)
  3317  			req.SetContext(ctx)
  3318  			req.ApplyOptions(opts...)
  3319  			return req, nil
  3320  		},
  3321  	}
  3322  
  3323  	for p.Next() {
  3324  		if !fn(p.Page().(*ListAssessmentFrameworksOutput), !p.HasNextPage()) {
  3325  			break
  3326  		}
  3327  	}
  3328  
  3329  	return p.Err()
  3330  }
  3331  
  3332  const opListAssessmentReports = "ListAssessmentReports"
  3333  
  3334  // ListAssessmentReportsRequest generates a "aws/request.Request" representing the
  3335  // client's request for the ListAssessmentReports operation. The "output" return
  3336  // value will be populated with the request's response once the request completes
  3337  // successfully.
  3338  //
  3339  // Use "Send" method on the returned Request to send the API call to the service.
  3340  // the "output" return value is not valid until after Send returns without error.
  3341  //
  3342  // See ListAssessmentReports for more information on using the ListAssessmentReports
  3343  // API call, and error handling.
  3344  //
  3345  // This method is useful when you want to inject custom logic or configuration
  3346  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3347  //
  3348  //
  3349  //    // Example sending a request using the ListAssessmentReportsRequest method.
  3350  //    req, resp := client.ListAssessmentReportsRequest(params)
  3351  //
  3352  //    err := req.Send()
  3353  //    if err == nil { // resp is now filled
  3354  //        fmt.Println(resp)
  3355  //    }
  3356  //
  3357  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListAssessmentReports
  3358  func (c *AuditManager) ListAssessmentReportsRequest(input *ListAssessmentReportsInput) (req *request.Request, output *ListAssessmentReportsOutput) {
  3359  	op := &request.Operation{
  3360  		Name:       opListAssessmentReports,
  3361  		HTTPMethod: "GET",
  3362  		HTTPPath:   "/assessmentReports",
  3363  		Paginator: &request.Paginator{
  3364  			InputTokens:     []string{"nextToken"},
  3365  			OutputTokens:    []string{"nextToken"},
  3366  			LimitToken:      "maxResults",
  3367  			TruncationToken: "",
  3368  		},
  3369  	}
  3370  
  3371  	if input == nil {
  3372  		input = &ListAssessmentReportsInput{}
  3373  	}
  3374  
  3375  	output = &ListAssessmentReportsOutput{}
  3376  	req = c.newRequest(op, input, output)
  3377  	return
  3378  }
  3379  
  3380  // ListAssessmentReports API operation for AWS Audit Manager.
  3381  //
  3382  // Returns a list of assessment reports created in Audit Manager.
  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 AWS Audit Manager's
  3389  // API operation ListAssessmentReports for usage and error information.
  3390  //
  3391  // Returned Error Types:
  3392  //   * ValidationException
  3393  //   The request has invalid or missing parameters.
  3394  //
  3395  //   * AccessDeniedException
  3396  //   Your account is not registered with Audit Manager. Check the delegated administrator
  3397  //   setup on the Audit Manager settings page, and try again.
  3398  //
  3399  //   * InternalServerException
  3400  //   An internal service error occurred during the processing of your request.
  3401  //   Try again later.
  3402  //
  3403  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListAssessmentReports
  3404  func (c *AuditManager) ListAssessmentReports(input *ListAssessmentReportsInput) (*ListAssessmentReportsOutput, error) {
  3405  	req, out := c.ListAssessmentReportsRequest(input)
  3406  	return out, req.Send()
  3407  }
  3408  
  3409  // ListAssessmentReportsWithContext is the same as ListAssessmentReports with the addition of
  3410  // the ability to pass a context and additional request options.
  3411  //
  3412  // See ListAssessmentReports for details on how to use this API operation.
  3413  //
  3414  // The context must be non-nil and will be used for request cancellation. If
  3415  // the context is nil a panic will occur. In the future the SDK may create
  3416  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3417  // for more information on using Contexts.
  3418  func (c *AuditManager) ListAssessmentReportsWithContext(ctx aws.Context, input *ListAssessmentReportsInput, opts ...request.Option) (*ListAssessmentReportsOutput, error) {
  3419  	req, out := c.ListAssessmentReportsRequest(input)
  3420  	req.SetContext(ctx)
  3421  	req.ApplyOptions(opts...)
  3422  	return out, req.Send()
  3423  }
  3424  
  3425  // ListAssessmentReportsPages iterates over the pages of a ListAssessmentReports operation,
  3426  // calling the "fn" function with the response data for each page. To stop
  3427  // iterating, return false from the fn function.
  3428  //
  3429  // See ListAssessmentReports method for more information on how to use this operation.
  3430  //
  3431  // Note: This operation can generate multiple requests to a service.
  3432  //
  3433  //    // Example iterating over at most 3 pages of a ListAssessmentReports operation.
  3434  //    pageNum := 0
  3435  //    err := client.ListAssessmentReportsPages(params,
  3436  //        func(page *auditmanager.ListAssessmentReportsOutput, lastPage bool) bool {
  3437  //            pageNum++
  3438  //            fmt.Println(page)
  3439  //            return pageNum <= 3
  3440  //        })
  3441  //
  3442  func (c *AuditManager) ListAssessmentReportsPages(input *ListAssessmentReportsInput, fn func(*ListAssessmentReportsOutput, bool) bool) error {
  3443  	return c.ListAssessmentReportsPagesWithContext(aws.BackgroundContext(), input, fn)
  3444  }
  3445  
  3446  // ListAssessmentReportsPagesWithContext same as ListAssessmentReportsPages except
  3447  // it takes a Context and allows setting request options on the pages.
  3448  //
  3449  // The context must be non-nil and will be used for request cancellation. If
  3450  // the context is nil a panic will occur. In the future the SDK may create
  3451  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3452  // for more information on using Contexts.
  3453  func (c *AuditManager) ListAssessmentReportsPagesWithContext(ctx aws.Context, input *ListAssessmentReportsInput, fn func(*ListAssessmentReportsOutput, bool) bool, opts ...request.Option) error {
  3454  	p := request.Pagination{
  3455  		NewRequest: func() (*request.Request, error) {
  3456  			var inCpy *ListAssessmentReportsInput
  3457  			if input != nil {
  3458  				tmp := *input
  3459  				inCpy = &tmp
  3460  			}
  3461  			req, _ := c.ListAssessmentReportsRequest(inCpy)
  3462  			req.SetContext(ctx)
  3463  			req.ApplyOptions(opts...)
  3464  			return req, nil
  3465  		},
  3466  	}
  3467  
  3468  	for p.Next() {
  3469  		if !fn(p.Page().(*ListAssessmentReportsOutput), !p.HasNextPage()) {
  3470  			break
  3471  		}
  3472  	}
  3473  
  3474  	return p.Err()
  3475  }
  3476  
  3477  const opListAssessments = "ListAssessments"
  3478  
  3479  // ListAssessmentsRequest generates a "aws/request.Request" representing the
  3480  // client's request for the ListAssessments operation. The "output" return
  3481  // value will be populated with the request's response once the request completes
  3482  // successfully.
  3483  //
  3484  // Use "Send" method on the returned Request to send the API call to the service.
  3485  // the "output" return value is not valid until after Send returns without error.
  3486  //
  3487  // See ListAssessments for more information on using the ListAssessments
  3488  // API call, and error handling.
  3489  //
  3490  // This method is useful when you want to inject custom logic or configuration
  3491  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3492  //
  3493  //
  3494  //    // Example sending a request using the ListAssessmentsRequest method.
  3495  //    req, resp := client.ListAssessmentsRequest(params)
  3496  //
  3497  //    err := req.Send()
  3498  //    if err == nil { // resp is now filled
  3499  //        fmt.Println(resp)
  3500  //    }
  3501  //
  3502  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListAssessments
  3503  func (c *AuditManager) ListAssessmentsRequest(input *ListAssessmentsInput) (req *request.Request, output *ListAssessmentsOutput) {
  3504  	op := &request.Operation{
  3505  		Name:       opListAssessments,
  3506  		HTTPMethod: "GET",
  3507  		HTTPPath:   "/assessments",
  3508  		Paginator: &request.Paginator{
  3509  			InputTokens:     []string{"nextToken"},
  3510  			OutputTokens:    []string{"nextToken"},
  3511  			LimitToken:      "maxResults",
  3512  			TruncationToken: "",
  3513  		},
  3514  	}
  3515  
  3516  	if input == nil {
  3517  		input = &ListAssessmentsInput{}
  3518  	}
  3519  
  3520  	output = &ListAssessmentsOutput{}
  3521  	req = c.newRequest(op, input, output)
  3522  	return
  3523  }
  3524  
  3525  // ListAssessments API operation for AWS Audit Manager.
  3526  //
  3527  // Returns a list of current and past assessments from Audit Manager.
  3528  //
  3529  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3530  // with awserr.Error's Code and Message methods to get detailed information about
  3531  // the error.
  3532  //
  3533  // See the AWS API reference guide for AWS Audit Manager's
  3534  // API operation ListAssessments for usage and error information.
  3535  //
  3536  // Returned Error Types:
  3537  //   * AccessDeniedException
  3538  //   Your account is not registered with Audit Manager. Check the delegated administrator
  3539  //   setup on the Audit Manager settings page, and try again.
  3540  //
  3541  //   * ValidationException
  3542  //   The request has invalid or missing parameters.
  3543  //
  3544  //   * InternalServerException
  3545  //   An internal service error occurred during the processing of your request.
  3546  //   Try again later.
  3547  //
  3548  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListAssessments
  3549  func (c *AuditManager) ListAssessments(input *ListAssessmentsInput) (*ListAssessmentsOutput, error) {
  3550  	req, out := c.ListAssessmentsRequest(input)
  3551  	return out, req.Send()
  3552  }
  3553  
  3554  // ListAssessmentsWithContext is the same as ListAssessments with the addition of
  3555  // the ability to pass a context and additional request options.
  3556  //
  3557  // See ListAssessments for details on how to use this API operation.
  3558  //
  3559  // The context must be non-nil and will be used for request cancellation. If
  3560  // the context is nil a panic will occur. In the future the SDK may create
  3561  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3562  // for more information on using Contexts.
  3563  func (c *AuditManager) ListAssessmentsWithContext(ctx aws.Context, input *ListAssessmentsInput, opts ...request.Option) (*ListAssessmentsOutput, error) {
  3564  	req, out := c.ListAssessmentsRequest(input)
  3565  	req.SetContext(ctx)
  3566  	req.ApplyOptions(opts...)
  3567  	return out, req.Send()
  3568  }
  3569  
  3570  // ListAssessmentsPages iterates over the pages of a ListAssessments operation,
  3571  // calling the "fn" function with the response data for each page. To stop
  3572  // iterating, return false from the fn function.
  3573  //
  3574  // See ListAssessments method for more information on how to use this operation.
  3575  //
  3576  // Note: This operation can generate multiple requests to a service.
  3577  //
  3578  //    // Example iterating over at most 3 pages of a ListAssessments operation.
  3579  //    pageNum := 0
  3580  //    err := client.ListAssessmentsPages(params,
  3581  //        func(page *auditmanager.ListAssessmentsOutput, lastPage bool) bool {
  3582  //            pageNum++
  3583  //            fmt.Println(page)
  3584  //            return pageNum <= 3
  3585  //        })
  3586  //
  3587  func (c *AuditManager) ListAssessmentsPages(input *ListAssessmentsInput, fn func(*ListAssessmentsOutput, bool) bool) error {
  3588  	return c.ListAssessmentsPagesWithContext(aws.BackgroundContext(), input, fn)
  3589  }
  3590  
  3591  // ListAssessmentsPagesWithContext same as ListAssessmentsPages except
  3592  // it takes a Context and allows setting request options on the pages.
  3593  //
  3594  // The context must be non-nil and will be used for request cancellation. If
  3595  // the context is nil a panic will occur. In the future the SDK may create
  3596  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3597  // for more information on using Contexts.
  3598  func (c *AuditManager) ListAssessmentsPagesWithContext(ctx aws.Context, input *ListAssessmentsInput, fn func(*ListAssessmentsOutput, bool) bool, opts ...request.Option) error {
  3599  	p := request.Pagination{
  3600  		NewRequest: func() (*request.Request, error) {
  3601  			var inCpy *ListAssessmentsInput
  3602  			if input != nil {
  3603  				tmp := *input
  3604  				inCpy = &tmp
  3605  			}
  3606  			req, _ := c.ListAssessmentsRequest(inCpy)
  3607  			req.SetContext(ctx)
  3608  			req.ApplyOptions(opts...)
  3609  			return req, nil
  3610  		},
  3611  	}
  3612  
  3613  	for p.Next() {
  3614  		if !fn(p.Page().(*ListAssessmentsOutput), !p.HasNextPage()) {
  3615  			break
  3616  		}
  3617  	}
  3618  
  3619  	return p.Err()
  3620  }
  3621  
  3622  const opListControls = "ListControls"
  3623  
  3624  // ListControlsRequest generates a "aws/request.Request" representing the
  3625  // client's request for the ListControls operation. The "output" return
  3626  // value will be populated with the request's response once the request completes
  3627  // successfully.
  3628  //
  3629  // Use "Send" method on the returned Request to send the API call to the service.
  3630  // the "output" return value is not valid until after Send returns without error.
  3631  //
  3632  // See ListControls for more information on using the ListControls
  3633  // API call, and error handling.
  3634  //
  3635  // This method is useful when you want to inject custom logic or configuration
  3636  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3637  //
  3638  //
  3639  //    // Example sending a request using the ListControlsRequest method.
  3640  //    req, resp := client.ListControlsRequest(params)
  3641  //
  3642  //    err := req.Send()
  3643  //    if err == nil { // resp is now filled
  3644  //        fmt.Println(resp)
  3645  //    }
  3646  //
  3647  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListControls
  3648  func (c *AuditManager) ListControlsRequest(input *ListControlsInput) (req *request.Request, output *ListControlsOutput) {
  3649  	op := &request.Operation{
  3650  		Name:       opListControls,
  3651  		HTTPMethod: "GET",
  3652  		HTTPPath:   "/controls",
  3653  		Paginator: &request.Paginator{
  3654  			InputTokens:     []string{"nextToken"},
  3655  			OutputTokens:    []string{"nextToken"},
  3656  			LimitToken:      "maxResults",
  3657  			TruncationToken: "",
  3658  		},
  3659  	}
  3660  
  3661  	if input == nil {
  3662  		input = &ListControlsInput{}
  3663  	}
  3664  
  3665  	output = &ListControlsOutput{}
  3666  	req = c.newRequest(op, input, output)
  3667  	return
  3668  }
  3669  
  3670  // ListControls API operation for AWS Audit Manager.
  3671  //
  3672  // Returns a list of controls from Audit Manager.
  3673  //
  3674  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3675  // with awserr.Error's Code and Message methods to get detailed information about
  3676  // the error.
  3677  //
  3678  // See the AWS API reference guide for AWS Audit Manager's
  3679  // API operation ListControls for usage and error information.
  3680  //
  3681  // Returned Error Types:
  3682  //   * AccessDeniedException
  3683  //   Your account is not registered with Audit Manager. Check the delegated administrator
  3684  //   setup on the Audit Manager settings page, and try again.
  3685  //
  3686  //   * ValidationException
  3687  //   The request has invalid or missing parameters.
  3688  //
  3689  //   * InternalServerException
  3690  //   An internal service error occurred during the processing of your request.
  3691  //   Try again later.
  3692  //
  3693  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListControls
  3694  func (c *AuditManager) ListControls(input *ListControlsInput) (*ListControlsOutput, error) {
  3695  	req, out := c.ListControlsRequest(input)
  3696  	return out, req.Send()
  3697  }
  3698  
  3699  // ListControlsWithContext is the same as ListControls with the addition of
  3700  // the ability to pass a context and additional request options.
  3701  //
  3702  // See ListControls for details on how to use this API operation.
  3703  //
  3704  // The context must be non-nil and will be used for request cancellation. If
  3705  // the context is nil a panic will occur. In the future the SDK may create
  3706  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3707  // for more information on using Contexts.
  3708  func (c *AuditManager) ListControlsWithContext(ctx aws.Context, input *ListControlsInput, opts ...request.Option) (*ListControlsOutput, error) {
  3709  	req, out := c.ListControlsRequest(input)
  3710  	req.SetContext(ctx)
  3711  	req.ApplyOptions(opts...)
  3712  	return out, req.Send()
  3713  }
  3714  
  3715  // ListControlsPages iterates over the pages of a ListControls operation,
  3716  // calling the "fn" function with the response data for each page. To stop
  3717  // iterating, return false from the fn function.
  3718  //
  3719  // See ListControls method for more information on how to use this operation.
  3720  //
  3721  // Note: This operation can generate multiple requests to a service.
  3722  //
  3723  //    // Example iterating over at most 3 pages of a ListControls operation.
  3724  //    pageNum := 0
  3725  //    err := client.ListControlsPages(params,
  3726  //        func(page *auditmanager.ListControlsOutput, lastPage bool) bool {
  3727  //            pageNum++
  3728  //            fmt.Println(page)
  3729  //            return pageNum <= 3
  3730  //        })
  3731  //
  3732  func (c *AuditManager) ListControlsPages(input *ListControlsInput, fn func(*ListControlsOutput, bool) bool) error {
  3733  	return c.ListControlsPagesWithContext(aws.BackgroundContext(), input, fn)
  3734  }
  3735  
  3736  // ListControlsPagesWithContext same as ListControlsPages except
  3737  // it takes a Context and allows setting request options on the pages.
  3738  //
  3739  // The context must be non-nil and will be used for request cancellation. If
  3740  // the context is nil a panic will occur. In the future the SDK may create
  3741  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3742  // for more information on using Contexts.
  3743  func (c *AuditManager) ListControlsPagesWithContext(ctx aws.Context, input *ListControlsInput, fn func(*ListControlsOutput, bool) bool, opts ...request.Option) error {
  3744  	p := request.Pagination{
  3745  		NewRequest: func() (*request.Request, error) {
  3746  			var inCpy *ListControlsInput
  3747  			if input != nil {
  3748  				tmp := *input
  3749  				inCpy = &tmp
  3750  			}
  3751  			req, _ := c.ListControlsRequest(inCpy)
  3752  			req.SetContext(ctx)
  3753  			req.ApplyOptions(opts...)
  3754  			return req, nil
  3755  		},
  3756  	}
  3757  
  3758  	for p.Next() {
  3759  		if !fn(p.Page().(*ListControlsOutput), !p.HasNextPage()) {
  3760  			break
  3761  		}
  3762  	}
  3763  
  3764  	return p.Err()
  3765  }
  3766  
  3767  const opListKeywordsForDataSource = "ListKeywordsForDataSource"
  3768  
  3769  // ListKeywordsForDataSourceRequest generates a "aws/request.Request" representing the
  3770  // client's request for the ListKeywordsForDataSource operation. The "output" return
  3771  // value will be populated with the request's response once the request completes
  3772  // successfully.
  3773  //
  3774  // Use "Send" method on the returned Request to send the API call to the service.
  3775  // the "output" return value is not valid until after Send returns without error.
  3776  //
  3777  // See ListKeywordsForDataSource for more information on using the ListKeywordsForDataSource
  3778  // API call, and error handling.
  3779  //
  3780  // This method is useful when you want to inject custom logic or configuration
  3781  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3782  //
  3783  //
  3784  //    // Example sending a request using the ListKeywordsForDataSourceRequest method.
  3785  //    req, resp := client.ListKeywordsForDataSourceRequest(params)
  3786  //
  3787  //    err := req.Send()
  3788  //    if err == nil { // resp is now filled
  3789  //        fmt.Println(resp)
  3790  //    }
  3791  //
  3792  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListKeywordsForDataSource
  3793  func (c *AuditManager) ListKeywordsForDataSourceRequest(input *ListKeywordsForDataSourceInput) (req *request.Request, output *ListKeywordsForDataSourceOutput) {
  3794  	op := &request.Operation{
  3795  		Name:       opListKeywordsForDataSource,
  3796  		HTTPMethod: "GET",
  3797  		HTTPPath:   "/dataSourceKeywords",
  3798  		Paginator: &request.Paginator{
  3799  			InputTokens:     []string{"nextToken"},
  3800  			OutputTokens:    []string{"nextToken"},
  3801  			LimitToken:      "maxResults",
  3802  			TruncationToken: "",
  3803  		},
  3804  	}
  3805  
  3806  	if input == nil {
  3807  		input = &ListKeywordsForDataSourceInput{}
  3808  	}
  3809  
  3810  	output = &ListKeywordsForDataSourceOutput{}
  3811  	req = c.newRequest(op, input, output)
  3812  	return
  3813  }
  3814  
  3815  // ListKeywordsForDataSource API operation for AWS Audit Manager.
  3816  //
  3817  // Returns a list of keywords that pre-mapped to the specified control data
  3818  // source.
  3819  //
  3820  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3821  // with awserr.Error's Code and Message methods to get detailed information about
  3822  // the error.
  3823  //
  3824  // See the AWS API reference guide for AWS Audit Manager's
  3825  // API operation ListKeywordsForDataSource for usage and error information.
  3826  //
  3827  // Returned Error Types:
  3828  //   * AccessDeniedException
  3829  //   Your account is not registered with Audit Manager. Check the delegated administrator
  3830  //   setup on the Audit Manager settings page, and try again.
  3831  //
  3832  //   * ValidationException
  3833  //   The request has invalid or missing parameters.
  3834  //
  3835  //   * InternalServerException
  3836  //   An internal service error occurred during the processing of your request.
  3837  //   Try again later.
  3838  //
  3839  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListKeywordsForDataSource
  3840  func (c *AuditManager) ListKeywordsForDataSource(input *ListKeywordsForDataSourceInput) (*ListKeywordsForDataSourceOutput, error) {
  3841  	req, out := c.ListKeywordsForDataSourceRequest(input)
  3842  	return out, req.Send()
  3843  }
  3844  
  3845  // ListKeywordsForDataSourceWithContext is the same as ListKeywordsForDataSource with the addition of
  3846  // the ability to pass a context and additional request options.
  3847  //
  3848  // See ListKeywordsForDataSource for details on how to use this API operation.
  3849  //
  3850  // The context must be non-nil and will be used for request cancellation. If
  3851  // the context is nil a panic will occur. In the future the SDK may create
  3852  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3853  // for more information on using Contexts.
  3854  func (c *AuditManager) ListKeywordsForDataSourceWithContext(ctx aws.Context, input *ListKeywordsForDataSourceInput, opts ...request.Option) (*ListKeywordsForDataSourceOutput, error) {
  3855  	req, out := c.ListKeywordsForDataSourceRequest(input)
  3856  	req.SetContext(ctx)
  3857  	req.ApplyOptions(opts...)
  3858  	return out, req.Send()
  3859  }
  3860  
  3861  // ListKeywordsForDataSourcePages iterates over the pages of a ListKeywordsForDataSource operation,
  3862  // calling the "fn" function with the response data for each page. To stop
  3863  // iterating, return false from the fn function.
  3864  //
  3865  // See ListKeywordsForDataSource method for more information on how to use this operation.
  3866  //
  3867  // Note: This operation can generate multiple requests to a service.
  3868  //
  3869  //    // Example iterating over at most 3 pages of a ListKeywordsForDataSource operation.
  3870  //    pageNum := 0
  3871  //    err := client.ListKeywordsForDataSourcePages(params,
  3872  //        func(page *auditmanager.ListKeywordsForDataSourceOutput, lastPage bool) bool {
  3873  //            pageNum++
  3874  //            fmt.Println(page)
  3875  //            return pageNum <= 3
  3876  //        })
  3877  //
  3878  func (c *AuditManager) ListKeywordsForDataSourcePages(input *ListKeywordsForDataSourceInput, fn func(*ListKeywordsForDataSourceOutput, bool) bool) error {
  3879  	return c.ListKeywordsForDataSourcePagesWithContext(aws.BackgroundContext(), input, fn)
  3880  }
  3881  
  3882  // ListKeywordsForDataSourcePagesWithContext same as ListKeywordsForDataSourcePages except
  3883  // it takes a Context and allows setting request options on the pages.
  3884  //
  3885  // The context must be non-nil and will be used for request cancellation. If
  3886  // the context is nil a panic will occur. In the future the SDK may create
  3887  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3888  // for more information on using Contexts.
  3889  func (c *AuditManager) ListKeywordsForDataSourcePagesWithContext(ctx aws.Context, input *ListKeywordsForDataSourceInput, fn func(*ListKeywordsForDataSourceOutput, bool) bool, opts ...request.Option) error {
  3890  	p := request.Pagination{
  3891  		NewRequest: func() (*request.Request, error) {
  3892  			var inCpy *ListKeywordsForDataSourceInput
  3893  			if input != nil {
  3894  				tmp := *input
  3895  				inCpy = &tmp
  3896  			}
  3897  			req, _ := c.ListKeywordsForDataSourceRequest(inCpy)
  3898  			req.SetContext(ctx)
  3899  			req.ApplyOptions(opts...)
  3900  			return req, nil
  3901  		},
  3902  	}
  3903  
  3904  	for p.Next() {
  3905  		if !fn(p.Page().(*ListKeywordsForDataSourceOutput), !p.HasNextPage()) {
  3906  			break
  3907  		}
  3908  	}
  3909  
  3910  	return p.Err()
  3911  }
  3912  
  3913  const opListNotifications = "ListNotifications"
  3914  
  3915  // ListNotificationsRequest generates a "aws/request.Request" representing the
  3916  // client's request for the ListNotifications operation. The "output" return
  3917  // value will be populated with the request's response once the request completes
  3918  // successfully.
  3919  //
  3920  // Use "Send" method on the returned Request to send the API call to the service.
  3921  // the "output" return value is not valid until after Send returns without error.
  3922  //
  3923  // See ListNotifications for more information on using the ListNotifications
  3924  // API call, and error handling.
  3925  //
  3926  // This method is useful when you want to inject custom logic or configuration
  3927  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3928  //
  3929  //
  3930  //    // Example sending a request using the ListNotificationsRequest method.
  3931  //    req, resp := client.ListNotificationsRequest(params)
  3932  //
  3933  //    err := req.Send()
  3934  //    if err == nil { // resp is now filled
  3935  //        fmt.Println(resp)
  3936  //    }
  3937  //
  3938  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListNotifications
  3939  func (c *AuditManager) ListNotificationsRequest(input *ListNotificationsInput) (req *request.Request, output *ListNotificationsOutput) {
  3940  	op := &request.Operation{
  3941  		Name:       opListNotifications,
  3942  		HTTPMethod: "GET",
  3943  		HTTPPath:   "/notifications",
  3944  		Paginator: &request.Paginator{
  3945  			InputTokens:     []string{"nextToken"},
  3946  			OutputTokens:    []string{"nextToken"},
  3947  			LimitToken:      "maxResults",
  3948  			TruncationToken: "",
  3949  		},
  3950  	}
  3951  
  3952  	if input == nil {
  3953  		input = &ListNotificationsInput{}
  3954  	}
  3955  
  3956  	output = &ListNotificationsOutput{}
  3957  	req = c.newRequest(op, input, output)
  3958  	return
  3959  }
  3960  
  3961  // ListNotifications API operation for AWS Audit Manager.
  3962  //
  3963  // Returns a list of all Audit Manager notifications.
  3964  //
  3965  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3966  // with awserr.Error's Code and Message methods to get detailed information about
  3967  // the error.
  3968  //
  3969  // See the AWS API reference guide for AWS Audit Manager's
  3970  // API operation ListNotifications for usage and error information.
  3971  //
  3972  // Returned Error Types:
  3973  //   * AccessDeniedException
  3974  //   Your account is not registered with Audit Manager. Check the delegated administrator
  3975  //   setup on the Audit Manager settings page, and try again.
  3976  //
  3977  //   * ValidationException
  3978  //   The request has invalid or missing parameters.
  3979  //
  3980  //   * InternalServerException
  3981  //   An internal service error occurred during the processing of your request.
  3982  //   Try again later.
  3983  //
  3984  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListNotifications
  3985  func (c *AuditManager) ListNotifications(input *ListNotificationsInput) (*ListNotificationsOutput, error) {
  3986  	req, out := c.ListNotificationsRequest(input)
  3987  	return out, req.Send()
  3988  }
  3989  
  3990  // ListNotificationsWithContext is the same as ListNotifications with the addition of
  3991  // the ability to pass a context and additional request options.
  3992  //
  3993  // See ListNotifications for details on how to use this API operation.
  3994  //
  3995  // The context must be non-nil and will be used for request cancellation. If
  3996  // the context is nil a panic will occur. In the future the SDK may create
  3997  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3998  // for more information on using Contexts.
  3999  func (c *AuditManager) ListNotificationsWithContext(ctx aws.Context, input *ListNotificationsInput, opts ...request.Option) (*ListNotificationsOutput, error) {
  4000  	req, out := c.ListNotificationsRequest(input)
  4001  	req.SetContext(ctx)
  4002  	req.ApplyOptions(opts...)
  4003  	return out, req.Send()
  4004  }
  4005  
  4006  // ListNotificationsPages iterates over the pages of a ListNotifications operation,
  4007  // calling the "fn" function with the response data for each page. To stop
  4008  // iterating, return false from the fn function.
  4009  //
  4010  // See ListNotifications method for more information on how to use this operation.
  4011  //
  4012  // Note: This operation can generate multiple requests to a service.
  4013  //
  4014  //    // Example iterating over at most 3 pages of a ListNotifications operation.
  4015  //    pageNum := 0
  4016  //    err := client.ListNotificationsPages(params,
  4017  //        func(page *auditmanager.ListNotificationsOutput, lastPage bool) bool {
  4018  //            pageNum++
  4019  //            fmt.Println(page)
  4020  //            return pageNum <= 3
  4021  //        })
  4022  //
  4023  func (c *AuditManager) ListNotificationsPages(input *ListNotificationsInput, fn func(*ListNotificationsOutput, bool) bool) error {
  4024  	return c.ListNotificationsPagesWithContext(aws.BackgroundContext(), input, fn)
  4025  }
  4026  
  4027  // ListNotificationsPagesWithContext same as ListNotificationsPages except
  4028  // it takes a Context and allows setting request options on the pages.
  4029  //
  4030  // The context must be non-nil and will be used for request cancellation. If
  4031  // the context is nil a panic will occur. In the future the SDK may create
  4032  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4033  // for more information on using Contexts.
  4034  func (c *AuditManager) ListNotificationsPagesWithContext(ctx aws.Context, input *ListNotificationsInput, fn func(*ListNotificationsOutput, bool) bool, opts ...request.Option) error {
  4035  	p := request.Pagination{
  4036  		NewRequest: func() (*request.Request, error) {
  4037  			var inCpy *ListNotificationsInput
  4038  			if input != nil {
  4039  				tmp := *input
  4040  				inCpy = &tmp
  4041  			}
  4042  			req, _ := c.ListNotificationsRequest(inCpy)
  4043  			req.SetContext(ctx)
  4044  			req.ApplyOptions(opts...)
  4045  			return req, nil
  4046  		},
  4047  	}
  4048  
  4049  	for p.Next() {
  4050  		if !fn(p.Page().(*ListNotificationsOutput), !p.HasNextPage()) {
  4051  			break
  4052  		}
  4053  	}
  4054  
  4055  	return p.Err()
  4056  }
  4057  
  4058  const opListTagsForResource = "ListTagsForResource"
  4059  
  4060  // ListTagsForResourceRequest generates a "aws/request.Request" representing the
  4061  // client's request for the ListTagsForResource operation. The "output" return
  4062  // value will be populated with the request's response once the request completes
  4063  // successfully.
  4064  //
  4065  // Use "Send" method on the returned Request to send the API call to the service.
  4066  // the "output" return value is not valid until after Send returns without error.
  4067  //
  4068  // See ListTagsForResource for more information on using the ListTagsForResource
  4069  // API call, and error handling.
  4070  //
  4071  // This method is useful when you want to inject custom logic or configuration
  4072  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4073  //
  4074  //
  4075  //    // Example sending a request using the ListTagsForResourceRequest method.
  4076  //    req, resp := client.ListTagsForResourceRequest(params)
  4077  //
  4078  //    err := req.Send()
  4079  //    if err == nil { // resp is now filled
  4080  //        fmt.Println(resp)
  4081  //    }
  4082  //
  4083  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListTagsForResource
  4084  func (c *AuditManager) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
  4085  	op := &request.Operation{
  4086  		Name:       opListTagsForResource,
  4087  		HTTPMethod: "GET",
  4088  		HTTPPath:   "/tags/{resourceArn}",
  4089  	}
  4090  
  4091  	if input == nil {
  4092  		input = &ListTagsForResourceInput{}
  4093  	}
  4094  
  4095  	output = &ListTagsForResourceOutput{}
  4096  	req = c.newRequest(op, input, output)
  4097  	return
  4098  }
  4099  
  4100  // ListTagsForResource API operation for AWS Audit Manager.
  4101  //
  4102  // Returns a list of tags for the specified resource in Audit Manager.
  4103  //
  4104  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4105  // with awserr.Error's Code and Message methods to get detailed information about
  4106  // the error.
  4107  //
  4108  // See the AWS API reference guide for AWS Audit Manager's
  4109  // API operation ListTagsForResource for usage and error information.
  4110  //
  4111  // Returned Error Types:
  4112  //   * InternalServerException
  4113  //   An internal service error occurred during the processing of your request.
  4114  //   Try again later.
  4115  //
  4116  //   * ValidationException
  4117  //   The request has invalid or missing parameters.
  4118  //
  4119  //   * ResourceNotFoundException
  4120  //   The resource specified in the request cannot be found.
  4121  //
  4122  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ListTagsForResource
  4123  func (c *AuditManager) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
  4124  	req, out := c.ListTagsForResourceRequest(input)
  4125  	return out, req.Send()
  4126  }
  4127  
  4128  // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
  4129  // the ability to pass a context and additional request options.
  4130  //
  4131  // See ListTagsForResource for details on how to use this API operation.
  4132  //
  4133  // The context must be non-nil and will be used for request cancellation. If
  4134  // the context is nil a panic will occur. In the future the SDK may create
  4135  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4136  // for more information on using Contexts.
  4137  func (c *AuditManager) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
  4138  	req, out := c.ListTagsForResourceRequest(input)
  4139  	req.SetContext(ctx)
  4140  	req.ApplyOptions(opts...)
  4141  	return out, req.Send()
  4142  }
  4143  
  4144  const opRegisterAccount = "RegisterAccount"
  4145  
  4146  // RegisterAccountRequest generates a "aws/request.Request" representing the
  4147  // client's request for the RegisterAccount operation. The "output" return
  4148  // value will be populated with the request's response once the request completes
  4149  // successfully.
  4150  //
  4151  // Use "Send" method on the returned Request to send the API call to the service.
  4152  // the "output" return value is not valid until after Send returns without error.
  4153  //
  4154  // See RegisterAccount for more information on using the RegisterAccount
  4155  // API call, and error handling.
  4156  //
  4157  // This method is useful when you want to inject custom logic or configuration
  4158  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4159  //
  4160  //
  4161  //    // Example sending a request using the RegisterAccountRequest method.
  4162  //    req, resp := client.RegisterAccountRequest(params)
  4163  //
  4164  //    err := req.Send()
  4165  //    if err == nil { // resp is now filled
  4166  //        fmt.Println(resp)
  4167  //    }
  4168  //
  4169  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/RegisterAccount
  4170  func (c *AuditManager) RegisterAccountRequest(input *RegisterAccountInput) (req *request.Request, output *RegisterAccountOutput) {
  4171  	op := &request.Operation{
  4172  		Name:       opRegisterAccount,
  4173  		HTTPMethod: "POST",
  4174  		HTTPPath:   "/account/registerAccount",
  4175  	}
  4176  
  4177  	if input == nil {
  4178  		input = &RegisterAccountInput{}
  4179  	}
  4180  
  4181  	output = &RegisterAccountOutput{}
  4182  	req = c.newRequest(op, input, output)
  4183  	return
  4184  }
  4185  
  4186  // RegisterAccount API operation for AWS Audit Manager.
  4187  //
  4188  // Enables Audit Manager for the specified account.
  4189  //
  4190  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4191  // with awserr.Error's Code and Message methods to get detailed information about
  4192  // the error.
  4193  //
  4194  // See the AWS API reference guide for AWS Audit Manager's
  4195  // API operation RegisterAccount for usage and error information.
  4196  //
  4197  // Returned Error Types:
  4198  //   * ValidationException
  4199  //   The request has invalid or missing parameters.
  4200  //
  4201  //   * AccessDeniedException
  4202  //   Your account is not registered with Audit Manager. Check the delegated administrator
  4203  //   setup on the Audit Manager settings page, and try again.
  4204  //
  4205  //   * InternalServerException
  4206  //   An internal service error occurred during the processing of your request.
  4207  //   Try again later.
  4208  //
  4209  //   * ResourceNotFoundException
  4210  //   The resource specified in the request cannot be found.
  4211  //
  4212  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/RegisterAccount
  4213  func (c *AuditManager) RegisterAccount(input *RegisterAccountInput) (*RegisterAccountOutput, error) {
  4214  	req, out := c.RegisterAccountRequest(input)
  4215  	return out, req.Send()
  4216  }
  4217  
  4218  // RegisterAccountWithContext is the same as RegisterAccount with the addition of
  4219  // the ability to pass a context and additional request options.
  4220  //
  4221  // See RegisterAccount for details on how to use this API operation.
  4222  //
  4223  // The context must be non-nil and will be used for request cancellation. If
  4224  // the context is nil a panic will occur. In the future the SDK may create
  4225  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4226  // for more information on using Contexts.
  4227  func (c *AuditManager) RegisterAccountWithContext(ctx aws.Context, input *RegisterAccountInput, opts ...request.Option) (*RegisterAccountOutput, error) {
  4228  	req, out := c.RegisterAccountRequest(input)
  4229  	req.SetContext(ctx)
  4230  	req.ApplyOptions(opts...)
  4231  	return out, req.Send()
  4232  }
  4233  
  4234  const opRegisterOrganizationAdminAccount = "RegisterOrganizationAdminAccount"
  4235  
  4236  // RegisterOrganizationAdminAccountRequest generates a "aws/request.Request" representing the
  4237  // client's request for the RegisterOrganizationAdminAccount operation. The "output" return
  4238  // value will be populated with the request's response once the request completes
  4239  // successfully.
  4240  //
  4241  // Use "Send" method on the returned Request to send the API call to the service.
  4242  // the "output" return value is not valid until after Send returns without error.
  4243  //
  4244  // See RegisterOrganizationAdminAccount for more information on using the RegisterOrganizationAdminAccount
  4245  // API call, and error handling.
  4246  //
  4247  // This method is useful when you want to inject custom logic or configuration
  4248  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4249  //
  4250  //
  4251  //    // Example sending a request using the RegisterOrganizationAdminAccountRequest method.
  4252  //    req, resp := client.RegisterOrganizationAdminAccountRequest(params)
  4253  //
  4254  //    err := req.Send()
  4255  //    if err == nil { // resp is now filled
  4256  //        fmt.Println(resp)
  4257  //    }
  4258  //
  4259  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/RegisterOrganizationAdminAccount
  4260  func (c *AuditManager) RegisterOrganizationAdminAccountRequest(input *RegisterOrganizationAdminAccountInput) (req *request.Request, output *RegisterOrganizationAdminAccountOutput) {
  4261  	op := &request.Operation{
  4262  		Name:       opRegisterOrganizationAdminAccount,
  4263  		HTTPMethod: "POST",
  4264  		HTTPPath:   "/account/registerOrganizationAdminAccount",
  4265  	}
  4266  
  4267  	if input == nil {
  4268  		input = &RegisterOrganizationAdminAccountInput{}
  4269  	}
  4270  
  4271  	output = &RegisterOrganizationAdminAccountOutput{}
  4272  	req = c.newRequest(op, input, output)
  4273  	return
  4274  }
  4275  
  4276  // RegisterOrganizationAdminAccount API operation for AWS Audit Manager.
  4277  //
  4278  // Enables an account within the organization as the delegated administrator
  4279  // for Audit Manager.
  4280  //
  4281  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4282  // with awserr.Error's Code and Message methods to get detailed information about
  4283  // the error.
  4284  //
  4285  // See the AWS API reference guide for AWS Audit Manager's
  4286  // API operation RegisterOrganizationAdminAccount for usage and error information.
  4287  //
  4288  // Returned Error Types:
  4289  //   * ValidationException
  4290  //   The request has invalid or missing parameters.
  4291  //
  4292  //   * AccessDeniedException
  4293  //   Your account is not registered with Audit Manager. Check the delegated administrator
  4294  //   setup on the Audit Manager settings page, and try again.
  4295  //
  4296  //   * InternalServerException
  4297  //   An internal service error occurred during the processing of your request.
  4298  //   Try again later.
  4299  //
  4300  //   * ResourceNotFoundException
  4301  //   The resource specified in the request cannot be found.
  4302  //
  4303  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/RegisterOrganizationAdminAccount
  4304  func (c *AuditManager) RegisterOrganizationAdminAccount(input *RegisterOrganizationAdminAccountInput) (*RegisterOrganizationAdminAccountOutput, error) {
  4305  	req, out := c.RegisterOrganizationAdminAccountRequest(input)
  4306  	return out, req.Send()
  4307  }
  4308  
  4309  // RegisterOrganizationAdminAccountWithContext is the same as RegisterOrganizationAdminAccount with the addition of
  4310  // the ability to pass a context and additional request options.
  4311  //
  4312  // See RegisterOrganizationAdminAccount for details on how to use this API operation.
  4313  //
  4314  // The context must be non-nil and will be used for request cancellation. If
  4315  // the context is nil a panic will occur. In the future the SDK may create
  4316  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4317  // for more information on using Contexts.
  4318  func (c *AuditManager) RegisterOrganizationAdminAccountWithContext(ctx aws.Context, input *RegisterOrganizationAdminAccountInput, opts ...request.Option) (*RegisterOrganizationAdminAccountOutput, error) {
  4319  	req, out := c.RegisterOrganizationAdminAccountRequest(input)
  4320  	req.SetContext(ctx)
  4321  	req.ApplyOptions(opts...)
  4322  	return out, req.Send()
  4323  }
  4324  
  4325  const opTagResource = "TagResource"
  4326  
  4327  // TagResourceRequest generates a "aws/request.Request" representing the
  4328  // client's request for the TagResource operation. The "output" return
  4329  // value will be populated with the request's response once the request completes
  4330  // successfully.
  4331  //
  4332  // Use "Send" method on the returned Request to send the API call to the service.
  4333  // the "output" return value is not valid until after Send returns without error.
  4334  //
  4335  // See TagResource for more information on using the TagResource
  4336  // API call, and error handling.
  4337  //
  4338  // This method is useful when you want to inject custom logic or configuration
  4339  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4340  //
  4341  //
  4342  //    // Example sending a request using the TagResourceRequest method.
  4343  //    req, resp := client.TagResourceRequest(params)
  4344  //
  4345  //    err := req.Send()
  4346  //    if err == nil { // resp is now filled
  4347  //        fmt.Println(resp)
  4348  //    }
  4349  //
  4350  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/TagResource
  4351  func (c *AuditManager) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
  4352  	op := &request.Operation{
  4353  		Name:       opTagResource,
  4354  		HTTPMethod: "POST",
  4355  		HTTPPath:   "/tags/{resourceArn}",
  4356  	}
  4357  
  4358  	if input == nil {
  4359  		input = &TagResourceInput{}
  4360  	}
  4361  
  4362  	output = &TagResourceOutput{}
  4363  	req = c.newRequest(op, input, output)
  4364  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4365  	return
  4366  }
  4367  
  4368  // TagResource API operation for AWS Audit Manager.
  4369  //
  4370  // Tags the specified resource in Audit Manager.
  4371  //
  4372  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4373  // with awserr.Error's Code and Message methods to get detailed information about
  4374  // the error.
  4375  //
  4376  // See the AWS API reference guide for AWS Audit Manager's
  4377  // API operation TagResource for usage and error information.
  4378  //
  4379  // Returned Error Types:
  4380  //   * InternalServerException
  4381  //   An internal service error occurred during the processing of your request.
  4382  //   Try again later.
  4383  //
  4384  //   * ValidationException
  4385  //   The request has invalid or missing parameters.
  4386  //
  4387  //   * ResourceNotFoundException
  4388  //   The resource specified in the request cannot be found.
  4389  //
  4390  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/TagResource
  4391  func (c *AuditManager) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
  4392  	req, out := c.TagResourceRequest(input)
  4393  	return out, req.Send()
  4394  }
  4395  
  4396  // TagResourceWithContext is the same as TagResource with the addition of
  4397  // the ability to pass a context and additional request options.
  4398  //
  4399  // See TagResource for details on how to use this API operation.
  4400  //
  4401  // The context must be non-nil and will be used for request cancellation. If
  4402  // the context is nil a panic will occur. In the future the SDK may create
  4403  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4404  // for more information on using Contexts.
  4405  func (c *AuditManager) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
  4406  	req, out := c.TagResourceRequest(input)
  4407  	req.SetContext(ctx)
  4408  	req.ApplyOptions(opts...)
  4409  	return out, req.Send()
  4410  }
  4411  
  4412  const opUntagResource = "UntagResource"
  4413  
  4414  // UntagResourceRequest generates a "aws/request.Request" representing the
  4415  // client's request for the UntagResource operation. The "output" return
  4416  // value will be populated with the request's response once the request completes
  4417  // successfully.
  4418  //
  4419  // Use "Send" method on the returned Request to send the API call to the service.
  4420  // the "output" return value is not valid until after Send returns without error.
  4421  //
  4422  // See UntagResource for more information on using the UntagResource
  4423  // API call, and error handling.
  4424  //
  4425  // This method is useful when you want to inject custom logic or configuration
  4426  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4427  //
  4428  //
  4429  //    // Example sending a request using the UntagResourceRequest method.
  4430  //    req, resp := client.UntagResourceRequest(params)
  4431  //
  4432  //    err := req.Send()
  4433  //    if err == nil { // resp is now filled
  4434  //        fmt.Println(resp)
  4435  //    }
  4436  //
  4437  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UntagResource
  4438  func (c *AuditManager) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
  4439  	op := &request.Operation{
  4440  		Name:       opUntagResource,
  4441  		HTTPMethod: "DELETE",
  4442  		HTTPPath:   "/tags/{resourceArn}",
  4443  	}
  4444  
  4445  	if input == nil {
  4446  		input = &UntagResourceInput{}
  4447  	}
  4448  
  4449  	output = &UntagResourceOutput{}
  4450  	req = c.newRequest(op, input, output)
  4451  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4452  	return
  4453  }
  4454  
  4455  // UntagResource API operation for AWS Audit Manager.
  4456  //
  4457  // Removes a tag from a resource in Audit Manager.
  4458  //
  4459  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4460  // with awserr.Error's Code and Message methods to get detailed information about
  4461  // the error.
  4462  //
  4463  // See the AWS API reference guide for AWS Audit Manager's
  4464  // API operation UntagResource for usage and error information.
  4465  //
  4466  // Returned Error Types:
  4467  //   * InternalServerException
  4468  //   An internal service error occurred during the processing of your request.
  4469  //   Try again later.
  4470  //
  4471  //   * ValidationException
  4472  //   The request has invalid or missing parameters.
  4473  //
  4474  //   * ResourceNotFoundException
  4475  //   The resource specified in the request cannot be found.
  4476  //
  4477  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UntagResource
  4478  func (c *AuditManager) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
  4479  	req, out := c.UntagResourceRequest(input)
  4480  	return out, req.Send()
  4481  }
  4482  
  4483  // UntagResourceWithContext is the same as UntagResource with the addition of
  4484  // the ability to pass a context and additional request options.
  4485  //
  4486  // See UntagResource for details on how to use this API operation.
  4487  //
  4488  // The context must be non-nil and will be used for request cancellation. If
  4489  // the context is nil a panic will occur. In the future the SDK may create
  4490  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4491  // for more information on using Contexts.
  4492  func (c *AuditManager) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
  4493  	req, out := c.UntagResourceRequest(input)
  4494  	req.SetContext(ctx)
  4495  	req.ApplyOptions(opts...)
  4496  	return out, req.Send()
  4497  }
  4498  
  4499  const opUpdateAssessment = "UpdateAssessment"
  4500  
  4501  // UpdateAssessmentRequest generates a "aws/request.Request" representing the
  4502  // client's request for the UpdateAssessment operation. The "output" return
  4503  // value will be populated with the request's response once the request completes
  4504  // successfully.
  4505  //
  4506  // Use "Send" method on the returned Request to send the API call to the service.
  4507  // the "output" return value is not valid until after Send returns without error.
  4508  //
  4509  // See UpdateAssessment for more information on using the UpdateAssessment
  4510  // API call, and error handling.
  4511  //
  4512  // This method is useful when you want to inject custom logic or configuration
  4513  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4514  //
  4515  //
  4516  //    // Example sending a request using the UpdateAssessmentRequest method.
  4517  //    req, resp := client.UpdateAssessmentRequest(params)
  4518  //
  4519  //    err := req.Send()
  4520  //    if err == nil { // resp is now filled
  4521  //        fmt.Println(resp)
  4522  //    }
  4523  //
  4524  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateAssessment
  4525  func (c *AuditManager) UpdateAssessmentRequest(input *UpdateAssessmentInput) (req *request.Request, output *UpdateAssessmentOutput) {
  4526  	op := &request.Operation{
  4527  		Name:       opUpdateAssessment,
  4528  		HTTPMethod: "PUT",
  4529  		HTTPPath:   "/assessments/{assessmentId}",
  4530  	}
  4531  
  4532  	if input == nil {
  4533  		input = &UpdateAssessmentInput{}
  4534  	}
  4535  
  4536  	output = &UpdateAssessmentOutput{}
  4537  	req = c.newRequest(op, input, output)
  4538  	return
  4539  }
  4540  
  4541  // UpdateAssessment API operation for AWS Audit Manager.
  4542  //
  4543  // Edits an Audit Manager assessment.
  4544  //
  4545  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4546  // with awserr.Error's Code and Message methods to get detailed information about
  4547  // the error.
  4548  //
  4549  // See the AWS API reference guide for AWS Audit Manager's
  4550  // API operation UpdateAssessment for usage and error information.
  4551  //
  4552  // Returned Error Types:
  4553  //   * ResourceNotFoundException
  4554  //   The resource specified in the request cannot be found.
  4555  //
  4556  //   * ValidationException
  4557  //   The request has invalid or missing parameters.
  4558  //
  4559  //   * AccessDeniedException
  4560  //   Your account is not registered with Audit Manager. Check the delegated administrator
  4561  //   setup on the Audit Manager settings page, and try again.
  4562  //
  4563  //   * InternalServerException
  4564  //   An internal service error occurred during the processing of your request.
  4565  //   Try again later.
  4566  //
  4567  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateAssessment
  4568  func (c *AuditManager) UpdateAssessment(input *UpdateAssessmentInput) (*UpdateAssessmentOutput, error) {
  4569  	req, out := c.UpdateAssessmentRequest(input)
  4570  	return out, req.Send()
  4571  }
  4572  
  4573  // UpdateAssessmentWithContext is the same as UpdateAssessment with the addition of
  4574  // the ability to pass a context and additional request options.
  4575  //
  4576  // See UpdateAssessment for details on how to use this API operation.
  4577  //
  4578  // The context must be non-nil and will be used for request cancellation. If
  4579  // the context is nil a panic will occur. In the future the SDK may create
  4580  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4581  // for more information on using Contexts.
  4582  func (c *AuditManager) UpdateAssessmentWithContext(ctx aws.Context, input *UpdateAssessmentInput, opts ...request.Option) (*UpdateAssessmentOutput, error) {
  4583  	req, out := c.UpdateAssessmentRequest(input)
  4584  	req.SetContext(ctx)
  4585  	req.ApplyOptions(opts...)
  4586  	return out, req.Send()
  4587  }
  4588  
  4589  const opUpdateAssessmentControl = "UpdateAssessmentControl"
  4590  
  4591  // UpdateAssessmentControlRequest generates a "aws/request.Request" representing the
  4592  // client's request for the UpdateAssessmentControl operation. The "output" return
  4593  // value will be populated with the request's response once the request completes
  4594  // successfully.
  4595  //
  4596  // Use "Send" method on the returned Request to send the API call to the service.
  4597  // the "output" return value is not valid until after Send returns without error.
  4598  //
  4599  // See UpdateAssessmentControl for more information on using the UpdateAssessmentControl
  4600  // API call, and error handling.
  4601  //
  4602  // This method is useful when you want to inject custom logic or configuration
  4603  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4604  //
  4605  //
  4606  //    // Example sending a request using the UpdateAssessmentControlRequest method.
  4607  //    req, resp := client.UpdateAssessmentControlRequest(params)
  4608  //
  4609  //    err := req.Send()
  4610  //    if err == nil { // resp is now filled
  4611  //        fmt.Println(resp)
  4612  //    }
  4613  //
  4614  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateAssessmentControl
  4615  func (c *AuditManager) UpdateAssessmentControlRequest(input *UpdateAssessmentControlInput) (req *request.Request, output *UpdateAssessmentControlOutput) {
  4616  	op := &request.Operation{
  4617  		Name:       opUpdateAssessmentControl,
  4618  		HTTPMethod: "PUT",
  4619  		HTTPPath:   "/assessments/{assessmentId}/controlSets/{controlSetId}/controls/{controlId}",
  4620  	}
  4621  
  4622  	if input == nil {
  4623  		input = &UpdateAssessmentControlInput{}
  4624  	}
  4625  
  4626  	output = &UpdateAssessmentControlOutput{}
  4627  	req = c.newRequest(op, input, output)
  4628  	return
  4629  }
  4630  
  4631  // UpdateAssessmentControl API operation for AWS Audit Manager.
  4632  //
  4633  // Updates a control within an assessment in Audit Manager.
  4634  //
  4635  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4636  // with awserr.Error's Code and Message methods to get detailed information about
  4637  // the error.
  4638  //
  4639  // See the AWS API reference guide for AWS Audit Manager's
  4640  // API operation UpdateAssessmentControl for usage and error information.
  4641  //
  4642  // Returned Error Types:
  4643  //   * ResourceNotFoundException
  4644  //   The resource specified in the request cannot be found.
  4645  //
  4646  //   * ValidationException
  4647  //   The request has invalid or missing parameters.
  4648  //
  4649  //   * AccessDeniedException
  4650  //   Your account is not registered with Audit Manager. Check the delegated administrator
  4651  //   setup on the Audit Manager settings page, and try again.
  4652  //
  4653  //   * InternalServerException
  4654  //   An internal service error occurred during the processing of your request.
  4655  //   Try again later.
  4656  //
  4657  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateAssessmentControl
  4658  func (c *AuditManager) UpdateAssessmentControl(input *UpdateAssessmentControlInput) (*UpdateAssessmentControlOutput, error) {
  4659  	req, out := c.UpdateAssessmentControlRequest(input)
  4660  	return out, req.Send()
  4661  }
  4662  
  4663  // UpdateAssessmentControlWithContext is the same as UpdateAssessmentControl with the addition of
  4664  // the ability to pass a context and additional request options.
  4665  //
  4666  // See UpdateAssessmentControl for details on how to use this API operation.
  4667  //
  4668  // The context must be non-nil and will be used for request cancellation. If
  4669  // the context is nil a panic will occur. In the future the SDK may create
  4670  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4671  // for more information on using Contexts.
  4672  func (c *AuditManager) UpdateAssessmentControlWithContext(ctx aws.Context, input *UpdateAssessmentControlInput, opts ...request.Option) (*UpdateAssessmentControlOutput, error) {
  4673  	req, out := c.UpdateAssessmentControlRequest(input)
  4674  	req.SetContext(ctx)
  4675  	req.ApplyOptions(opts...)
  4676  	return out, req.Send()
  4677  }
  4678  
  4679  const opUpdateAssessmentControlSetStatus = "UpdateAssessmentControlSetStatus"
  4680  
  4681  // UpdateAssessmentControlSetStatusRequest generates a "aws/request.Request" representing the
  4682  // client's request for the UpdateAssessmentControlSetStatus operation. The "output" return
  4683  // value will be populated with the request's response once the request completes
  4684  // successfully.
  4685  //
  4686  // Use "Send" method on the returned Request to send the API call to the service.
  4687  // the "output" return value is not valid until after Send returns without error.
  4688  //
  4689  // See UpdateAssessmentControlSetStatus for more information on using the UpdateAssessmentControlSetStatus
  4690  // API call, and error handling.
  4691  //
  4692  // This method is useful when you want to inject custom logic or configuration
  4693  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4694  //
  4695  //
  4696  //    // Example sending a request using the UpdateAssessmentControlSetStatusRequest method.
  4697  //    req, resp := client.UpdateAssessmentControlSetStatusRequest(params)
  4698  //
  4699  //    err := req.Send()
  4700  //    if err == nil { // resp is now filled
  4701  //        fmt.Println(resp)
  4702  //    }
  4703  //
  4704  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateAssessmentControlSetStatus
  4705  func (c *AuditManager) UpdateAssessmentControlSetStatusRequest(input *UpdateAssessmentControlSetStatusInput) (req *request.Request, output *UpdateAssessmentControlSetStatusOutput) {
  4706  	op := &request.Operation{
  4707  		Name:       opUpdateAssessmentControlSetStatus,
  4708  		HTTPMethod: "PUT",
  4709  		HTTPPath:   "/assessments/{assessmentId}/controlSets/{controlSetId}/status",
  4710  	}
  4711  
  4712  	if input == nil {
  4713  		input = &UpdateAssessmentControlSetStatusInput{}
  4714  	}
  4715  
  4716  	output = &UpdateAssessmentControlSetStatusOutput{}
  4717  	req = c.newRequest(op, input, output)
  4718  	return
  4719  }
  4720  
  4721  // UpdateAssessmentControlSetStatus API operation for AWS Audit Manager.
  4722  //
  4723  // Updates the status of a control set in an Audit Manager assessment.
  4724  //
  4725  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4726  // with awserr.Error's Code and Message methods to get detailed information about
  4727  // the error.
  4728  //
  4729  // See the AWS API reference guide for AWS Audit Manager's
  4730  // API operation UpdateAssessmentControlSetStatus for usage and error information.
  4731  //
  4732  // Returned Error Types:
  4733  //   * ResourceNotFoundException
  4734  //   The resource specified in the request cannot be found.
  4735  //
  4736  //   * ValidationException
  4737  //   The request has invalid or missing parameters.
  4738  //
  4739  //   * AccessDeniedException
  4740  //   Your account is not registered with Audit Manager. Check the delegated administrator
  4741  //   setup on the Audit Manager settings page, and try again.
  4742  //
  4743  //   * InternalServerException
  4744  //   An internal service error occurred during the processing of your request.
  4745  //   Try again later.
  4746  //
  4747  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateAssessmentControlSetStatus
  4748  func (c *AuditManager) UpdateAssessmentControlSetStatus(input *UpdateAssessmentControlSetStatusInput) (*UpdateAssessmentControlSetStatusOutput, error) {
  4749  	req, out := c.UpdateAssessmentControlSetStatusRequest(input)
  4750  	return out, req.Send()
  4751  }
  4752  
  4753  // UpdateAssessmentControlSetStatusWithContext is the same as UpdateAssessmentControlSetStatus with the addition of
  4754  // the ability to pass a context and additional request options.
  4755  //
  4756  // See UpdateAssessmentControlSetStatus for details on how to use this API operation.
  4757  //
  4758  // The context must be non-nil and will be used for request cancellation. If
  4759  // the context is nil a panic will occur. In the future the SDK may create
  4760  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4761  // for more information on using Contexts.
  4762  func (c *AuditManager) UpdateAssessmentControlSetStatusWithContext(ctx aws.Context, input *UpdateAssessmentControlSetStatusInput, opts ...request.Option) (*UpdateAssessmentControlSetStatusOutput, error) {
  4763  	req, out := c.UpdateAssessmentControlSetStatusRequest(input)
  4764  	req.SetContext(ctx)
  4765  	req.ApplyOptions(opts...)
  4766  	return out, req.Send()
  4767  }
  4768  
  4769  const opUpdateAssessmentFramework = "UpdateAssessmentFramework"
  4770  
  4771  // UpdateAssessmentFrameworkRequest generates a "aws/request.Request" representing the
  4772  // client's request for the UpdateAssessmentFramework operation. The "output" return
  4773  // value will be populated with the request's response once the request completes
  4774  // successfully.
  4775  //
  4776  // Use "Send" method on the returned Request to send the API call to the service.
  4777  // the "output" return value is not valid until after Send returns without error.
  4778  //
  4779  // See UpdateAssessmentFramework for more information on using the UpdateAssessmentFramework
  4780  // API call, and error handling.
  4781  //
  4782  // This method is useful when you want to inject custom logic or configuration
  4783  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4784  //
  4785  //
  4786  //    // Example sending a request using the UpdateAssessmentFrameworkRequest method.
  4787  //    req, resp := client.UpdateAssessmentFrameworkRequest(params)
  4788  //
  4789  //    err := req.Send()
  4790  //    if err == nil { // resp is now filled
  4791  //        fmt.Println(resp)
  4792  //    }
  4793  //
  4794  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateAssessmentFramework
  4795  func (c *AuditManager) UpdateAssessmentFrameworkRequest(input *UpdateAssessmentFrameworkInput) (req *request.Request, output *UpdateAssessmentFrameworkOutput) {
  4796  	op := &request.Operation{
  4797  		Name:       opUpdateAssessmentFramework,
  4798  		HTTPMethod: "PUT",
  4799  		HTTPPath:   "/assessmentFrameworks/{frameworkId}",
  4800  	}
  4801  
  4802  	if input == nil {
  4803  		input = &UpdateAssessmentFrameworkInput{}
  4804  	}
  4805  
  4806  	output = &UpdateAssessmentFrameworkOutput{}
  4807  	req = c.newRequest(op, input, output)
  4808  	return
  4809  }
  4810  
  4811  // UpdateAssessmentFramework API operation for AWS Audit Manager.
  4812  //
  4813  // Updates a custom framework in Audit Manager.
  4814  //
  4815  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4816  // with awserr.Error's Code and Message methods to get detailed information about
  4817  // the error.
  4818  //
  4819  // See the AWS API reference guide for AWS Audit Manager's
  4820  // API operation UpdateAssessmentFramework for usage and error information.
  4821  //
  4822  // Returned Error Types:
  4823  //   * ResourceNotFoundException
  4824  //   The resource specified in the request cannot be found.
  4825  //
  4826  //   * ValidationException
  4827  //   The request has invalid or missing parameters.
  4828  //
  4829  //   * AccessDeniedException
  4830  //   Your account is not registered with Audit Manager. Check the delegated administrator
  4831  //   setup on the Audit Manager settings page, and try again.
  4832  //
  4833  //   * InternalServerException
  4834  //   An internal service error occurred during the processing of your request.
  4835  //   Try again later.
  4836  //
  4837  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateAssessmentFramework
  4838  func (c *AuditManager) UpdateAssessmentFramework(input *UpdateAssessmentFrameworkInput) (*UpdateAssessmentFrameworkOutput, error) {
  4839  	req, out := c.UpdateAssessmentFrameworkRequest(input)
  4840  	return out, req.Send()
  4841  }
  4842  
  4843  // UpdateAssessmentFrameworkWithContext is the same as UpdateAssessmentFramework with the addition of
  4844  // the ability to pass a context and additional request options.
  4845  //
  4846  // See UpdateAssessmentFramework for details on how to use this API operation.
  4847  //
  4848  // The context must be non-nil and will be used for request cancellation. If
  4849  // the context is nil a panic will occur. In the future the SDK may create
  4850  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4851  // for more information on using Contexts.
  4852  func (c *AuditManager) UpdateAssessmentFrameworkWithContext(ctx aws.Context, input *UpdateAssessmentFrameworkInput, opts ...request.Option) (*UpdateAssessmentFrameworkOutput, error) {
  4853  	req, out := c.UpdateAssessmentFrameworkRequest(input)
  4854  	req.SetContext(ctx)
  4855  	req.ApplyOptions(opts...)
  4856  	return out, req.Send()
  4857  }
  4858  
  4859  const opUpdateAssessmentStatus = "UpdateAssessmentStatus"
  4860  
  4861  // UpdateAssessmentStatusRequest generates a "aws/request.Request" representing the
  4862  // client's request for the UpdateAssessmentStatus operation. The "output" return
  4863  // value will be populated with the request's response once the request completes
  4864  // successfully.
  4865  //
  4866  // Use "Send" method on the returned Request to send the API call to the service.
  4867  // the "output" return value is not valid until after Send returns without error.
  4868  //
  4869  // See UpdateAssessmentStatus for more information on using the UpdateAssessmentStatus
  4870  // API call, and error handling.
  4871  //
  4872  // This method is useful when you want to inject custom logic or configuration
  4873  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4874  //
  4875  //
  4876  //    // Example sending a request using the UpdateAssessmentStatusRequest method.
  4877  //    req, resp := client.UpdateAssessmentStatusRequest(params)
  4878  //
  4879  //    err := req.Send()
  4880  //    if err == nil { // resp is now filled
  4881  //        fmt.Println(resp)
  4882  //    }
  4883  //
  4884  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateAssessmentStatus
  4885  func (c *AuditManager) UpdateAssessmentStatusRequest(input *UpdateAssessmentStatusInput) (req *request.Request, output *UpdateAssessmentStatusOutput) {
  4886  	op := &request.Operation{
  4887  		Name:       opUpdateAssessmentStatus,
  4888  		HTTPMethod: "PUT",
  4889  		HTTPPath:   "/assessments/{assessmentId}/status",
  4890  	}
  4891  
  4892  	if input == nil {
  4893  		input = &UpdateAssessmentStatusInput{}
  4894  	}
  4895  
  4896  	output = &UpdateAssessmentStatusOutput{}
  4897  	req = c.newRequest(op, input, output)
  4898  	return
  4899  }
  4900  
  4901  // UpdateAssessmentStatus API operation for AWS Audit Manager.
  4902  //
  4903  // Updates the status of an assessment in Audit Manager.
  4904  //
  4905  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4906  // with awserr.Error's Code and Message methods to get detailed information about
  4907  // the error.
  4908  //
  4909  // See the AWS API reference guide for AWS Audit Manager's
  4910  // API operation UpdateAssessmentStatus for usage and error information.
  4911  //
  4912  // Returned Error Types:
  4913  //   * ResourceNotFoundException
  4914  //   The resource specified in the request cannot be found.
  4915  //
  4916  //   * ValidationException
  4917  //   The request has invalid or missing parameters.
  4918  //
  4919  //   * AccessDeniedException
  4920  //   Your account is not registered with Audit Manager. Check the delegated administrator
  4921  //   setup on the Audit Manager settings page, and try again.
  4922  //
  4923  //   * InternalServerException
  4924  //   An internal service error occurred during the processing of your request.
  4925  //   Try again later.
  4926  //
  4927  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateAssessmentStatus
  4928  func (c *AuditManager) UpdateAssessmentStatus(input *UpdateAssessmentStatusInput) (*UpdateAssessmentStatusOutput, error) {
  4929  	req, out := c.UpdateAssessmentStatusRequest(input)
  4930  	return out, req.Send()
  4931  }
  4932  
  4933  // UpdateAssessmentStatusWithContext is the same as UpdateAssessmentStatus with the addition of
  4934  // the ability to pass a context and additional request options.
  4935  //
  4936  // See UpdateAssessmentStatus for details on how to use this API operation.
  4937  //
  4938  // The context must be non-nil and will be used for request cancellation. If
  4939  // the context is nil a panic will occur. In the future the SDK may create
  4940  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4941  // for more information on using Contexts.
  4942  func (c *AuditManager) UpdateAssessmentStatusWithContext(ctx aws.Context, input *UpdateAssessmentStatusInput, opts ...request.Option) (*UpdateAssessmentStatusOutput, error) {
  4943  	req, out := c.UpdateAssessmentStatusRequest(input)
  4944  	req.SetContext(ctx)
  4945  	req.ApplyOptions(opts...)
  4946  	return out, req.Send()
  4947  }
  4948  
  4949  const opUpdateControl = "UpdateControl"
  4950  
  4951  // UpdateControlRequest generates a "aws/request.Request" representing the
  4952  // client's request for the UpdateControl operation. The "output" return
  4953  // value will be populated with the request's response once the request completes
  4954  // successfully.
  4955  //
  4956  // Use "Send" method on the returned Request to send the API call to the service.
  4957  // the "output" return value is not valid until after Send returns without error.
  4958  //
  4959  // See UpdateControl for more information on using the UpdateControl
  4960  // API call, and error handling.
  4961  //
  4962  // This method is useful when you want to inject custom logic or configuration
  4963  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4964  //
  4965  //
  4966  //    // Example sending a request using the UpdateControlRequest method.
  4967  //    req, resp := client.UpdateControlRequest(params)
  4968  //
  4969  //    err := req.Send()
  4970  //    if err == nil { // resp is now filled
  4971  //        fmt.Println(resp)
  4972  //    }
  4973  //
  4974  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateControl
  4975  func (c *AuditManager) UpdateControlRequest(input *UpdateControlInput) (req *request.Request, output *UpdateControlOutput) {
  4976  	op := &request.Operation{
  4977  		Name:       opUpdateControl,
  4978  		HTTPMethod: "PUT",
  4979  		HTTPPath:   "/controls/{controlId}",
  4980  	}
  4981  
  4982  	if input == nil {
  4983  		input = &UpdateControlInput{}
  4984  	}
  4985  
  4986  	output = &UpdateControlOutput{}
  4987  	req = c.newRequest(op, input, output)
  4988  	return
  4989  }
  4990  
  4991  // UpdateControl API operation for AWS Audit Manager.
  4992  //
  4993  // Updates a custom control in Audit Manager.
  4994  //
  4995  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4996  // with awserr.Error's Code and Message methods to get detailed information about
  4997  // the error.
  4998  //
  4999  // See the AWS API reference guide for AWS Audit Manager's
  5000  // API operation UpdateControl for usage and error information.
  5001  //
  5002  // Returned Error Types:
  5003  //   * ResourceNotFoundException
  5004  //   The resource specified in the request cannot be found.
  5005  //
  5006  //   * ValidationException
  5007  //   The request has invalid or missing parameters.
  5008  //
  5009  //   * AccessDeniedException
  5010  //   Your account is not registered with Audit Manager. Check the delegated administrator
  5011  //   setup on the Audit Manager settings page, and try again.
  5012  //
  5013  //   * InternalServerException
  5014  //   An internal service error occurred during the processing of your request.
  5015  //   Try again later.
  5016  //
  5017  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateControl
  5018  func (c *AuditManager) UpdateControl(input *UpdateControlInput) (*UpdateControlOutput, error) {
  5019  	req, out := c.UpdateControlRequest(input)
  5020  	return out, req.Send()
  5021  }
  5022  
  5023  // UpdateControlWithContext is the same as UpdateControl with the addition of
  5024  // the ability to pass a context and additional request options.
  5025  //
  5026  // See UpdateControl for details on how to use this API operation.
  5027  //
  5028  // The context must be non-nil and will be used for request cancellation. If
  5029  // the context is nil a panic will occur. In the future the SDK may create
  5030  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5031  // for more information on using Contexts.
  5032  func (c *AuditManager) UpdateControlWithContext(ctx aws.Context, input *UpdateControlInput, opts ...request.Option) (*UpdateControlOutput, error) {
  5033  	req, out := c.UpdateControlRequest(input)
  5034  	req.SetContext(ctx)
  5035  	req.ApplyOptions(opts...)
  5036  	return out, req.Send()
  5037  }
  5038  
  5039  const opUpdateSettings = "UpdateSettings"
  5040  
  5041  // UpdateSettingsRequest generates a "aws/request.Request" representing the
  5042  // client's request for the UpdateSettings operation. The "output" return
  5043  // value will be populated with the request's response once the request completes
  5044  // successfully.
  5045  //
  5046  // Use "Send" method on the returned Request to send the API call to the service.
  5047  // the "output" return value is not valid until after Send returns without error.
  5048  //
  5049  // See UpdateSettings for more information on using the UpdateSettings
  5050  // API call, and error handling.
  5051  //
  5052  // This method is useful when you want to inject custom logic or configuration
  5053  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5054  //
  5055  //
  5056  //    // Example sending a request using the UpdateSettingsRequest method.
  5057  //    req, resp := client.UpdateSettingsRequest(params)
  5058  //
  5059  //    err := req.Send()
  5060  //    if err == nil { // resp is now filled
  5061  //        fmt.Println(resp)
  5062  //    }
  5063  //
  5064  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateSettings
  5065  func (c *AuditManager) UpdateSettingsRequest(input *UpdateSettingsInput) (req *request.Request, output *UpdateSettingsOutput) {
  5066  	op := &request.Operation{
  5067  		Name:       opUpdateSettings,
  5068  		HTTPMethod: "PUT",
  5069  		HTTPPath:   "/settings",
  5070  	}
  5071  
  5072  	if input == nil {
  5073  		input = &UpdateSettingsInput{}
  5074  	}
  5075  
  5076  	output = &UpdateSettingsOutput{}
  5077  	req = c.newRequest(op, input, output)
  5078  	return
  5079  }
  5080  
  5081  // UpdateSettings API operation for AWS Audit Manager.
  5082  //
  5083  // Updates Audit Manager settings for the current user account.
  5084  //
  5085  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5086  // with awserr.Error's Code and Message methods to get detailed information about
  5087  // the error.
  5088  //
  5089  // See the AWS API reference guide for AWS Audit Manager's
  5090  // API operation UpdateSettings for usage and error information.
  5091  //
  5092  // Returned Error Types:
  5093  //   * ValidationException
  5094  //   The request has invalid or missing parameters.
  5095  //
  5096  //   * AccessDeniedException
  5097  //   Your account is not registered with Audit Manager. Check the delegated administrator
  5098  //   setup on the Audit Manager settings page, and try again.
  5099  //
  5100  //   * InternalServerException
  5101  //   An internal service error occurred during the processing of your request.
  5102  //   Try again later.
  5103  //
  5104  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/UpdateSettings
  5105  func (c *AuditManager) UpdateSettings(input *UpdateSettingsInput) (*UpdateSettingsOutput, error) {
  5106  	req, out := c.UpdateSettingsRequest(input)
  5107  	return out, req.Send()
  5108  }
  5109  
  5110  // UpdateSettingsWithContext is the same as UpdateSettings with the addition of
  5111  // the ability to pass a context and additional request options.
  5112  //
  5113  // See UpdateSettings for details on how to use this API operation.
  5114  //
  5115  // The context must be non-nil and will be used for request cancellation. If
  5116  // the context is nil a panic will occur. In the future the SDK may create
  5117  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5118  // for more information on using Contexts.
  5119  func (c *AuditManager) UpdateSettingsWithContext(ctx aws.Context, input *UpdateSettingsInput, opts ...request.Option) (*UpdateSettingsOutput, error) {
  5120  	req, out := c.UpdateSettingsRequest(input)
  5121  	req.SetContext(ctx)
  5122  	req.ApplyOptions(opts...)
  5123  	return out, req.Send()
  5124  }
  5125  
  5126  const opValidateAssessmentReportIntegrity = "ValidateAssessmentReportIntegrity"
  5127  
  5128  // ValidateAssessmentReportIntegrityRequest generates a "aws/request.Request" representing the
  5129  // client's request for the ValidateAssessmentReportIntegrity operation. The "output" return
  5130  // value will be populated with the request's response once the request completes
  5131  // successfully.
  5132  //
  5133  // Use "Send" method on the returned Request to send the API call to the service.
  5134  // the "output" return value is not valid until after Send returns without error.
  5135  //
  5136  // See ValidateAssessmentReportIntegrity for more information on using the ValidateAssessmentReportIntegrity
  5137  // API call, and error handling.
  5138  //
  5139  // This method is useful when you want to inject custom logic or configuration
  5140  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5141  //
  5142  //
  5143  //    // Example sending a request using the ValidateAssessmentReportIntegrityRequest method.
  5144  //    req, resp := client.ValidateAssessmentReportIntegrityRequest(params)
  5145  //
  5146  //    err := req.Send()
  5147  //    if err == nil { // resp is now filled
  5148  //        fmt.Println(resp)
  5149  //    }
  5150  //
  5151  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ValidateAssessmentReportIntegrity
  5152  func (c *AuditManager) ValidateAssessmentReportIntegrityRequest(input *ValidateAssessmentReportIntegrityInput) (req *request.Request, output *ValidateAssessmentReportIntegrityOutput) {
  5153  	op := &request.Operation{
  5154  		Name:       opValidateAssessmentReportIntegrity,
  5155  		HTTPMethod: "POST",
  5156  		HTTPPath:   "/assessmentReports/integrity",
  5157  	}
  5158  
  5159  	if input == nil {
  5160  		input = &ValidateAssessmentReportIntegrityInput{}
  5161  	}
  5162  
  5163  	output = &ValidateAssessmentReportIntegrityOutput{}
  5164  	req = c.newRequest(op, input, output)
  5165  	return
  5166  }
  5167  
  5168  // ValidateAssessmentReportIntegrity API operation for AWS Audit Manager.
  5169  //
  5170  // Validates the integrity of an assessment report in Audit Manager.
  5171  //
  5172  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5173  // with awserr.Error's Code and Message methods to get detailed information about
  5174  // the error.
  5175  //
  5176  // See the AWS API reference guide for AWS Audit Manager's
  5177  // API operation ValidateAssessmentReportIntegrity for usage and error information.
  5178  //
  5179  // Returned Error Types:
  5180  //   * ValidationException
  5181  //   The request has invalid or missing parameters.
  5182  //
  5183  //   * AccessDeniedException
  5184  //   Your account is not registered with Audit Manager. Check the delegated administrator
  5185  //   setup on the Audit Manager settings page, and try again.
  5186  //
  5187  //   * InternalServerException
  5188  //   An internal service error occurred during the processing of your request.
  5189  //   Try again later.
  5190  //
  5191  //   * ResourceNotFoundException
  5192  //   The resource specified in the request cannot be found.
  5193  //
  5194  // See also, https://docs.aws.amazon.com/goto/WebAPI/auditmanager-2017-07-25/ValidateAssessmentReportIntegrity
  5195  func (c *AuditManager) ValidateAssessmentReportIntegrity(input *ValidateAssessmentReportIntegrityInput) (*ValidateAssessmentReportIntegrityOutput, error) {
  5196  	req, out := c.ValidateAssessmentReportIntegrityRequest(input)
  5197  	return out, req.Send()
  5198  }
  5199  
  5200  // ValidateAssessmentReportIntegrityWithContext is the same as ValidateAssessmentReportIntegrity with the addition of
  5201  // the ability to pass a context and additional request options.
  5202  //
  5203  // See ValidateAssessmentReportIntegrity for details on how to use this API operation.
  5204  //
  5205  // The context must be non-nil and will be used for request cancellation. If
  5206  // the context is nil a panic will occur. In the future the SDK may create
  5207  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5208  // for more information on using Contexts.
  5209  func (c *AuditManager) ValidateAssessmentReportIntegrityWithContext(ctx aws.Context, input *ValidateAssessmentReportIntegrityInput, opts ...request.Option) (*ValidateAssessmentReportIntegrityOutput, error) {
  5210  	req, out := c.ValidateAssessmentReportIntegrityRequest(input)
  5211  	req.SetContext(ctx)
  5212  	req.ApplyOptions(opts...)
  5213  	return out, req.Send()
  5214  }
  5215  
  5216  // The wrapper of account details, such as account ID, email address, and so
  5217  // on.
  5218  type AWSAccount struct {
  5219  	_ struct{} `type:"structure"`
  5220  
  5221  	// The email address associated with the specified account.
  5222  	EmailAddress *string `locationName:"emailAddress" min:"1" type:"string"`
  5223  
  5224  	// The identifier for the specified account.
  5225  	Id *string `locationName:"id" min:"12" type:"string"`
  5226  
  5227  	// The name of the specified account.
  5228  	Name *string `locationName:"name" min:"1" type:"string"`
  5229  }
  5230  
  5231  // String returns the string representation.
  5232  //
  5233  // API parameter values that are decorated as "sensitive" in the API will not
  5234  // be included in the string output. The member name will be present, but the
  5235  // value will be replaced with "sensitive".
  5236  func (s AWSAccount) String() string {
  5237  	return awsutil.Prettify(s)
  5238  }
  5239  
  5240  // GoString returns the string representation.
  5241  //
  5242  // API parameter values that are decorated as "sensitive" in the API will not
  5243  // be included in the string output. The member name will be present, but the
  5244  // value will be replaced with "sensitive".
  5245  func (s AWSAccount) GoString() string {
  5246  	return s.String()
  5247  }
  5248  
  5249  // Validate inspects the fields of the type to determine if they are valid.
  5250  func (s *AWSAccount) Validate() error {
  5251  	invalidParams := request.ErrInvalidParams{Context: "AWSAccount"}
  5252  	if s.EmailAddress != nil && len(*s.EmailAddress) < 1 {
  5253  		invalidParams.Add(request.NewErrParamMinLen("EmailAddress", 1))
  5254  	}
  5255  	if s.Id != nil && len(*s.Id) < 12 {
  5256  		invalidParams.Add(request.NewErrParamMinLen("Id", 12))
  5257  	}
  5258  	if s.Name != nil && len(*s.Name) < 1 {
  5259  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  5260  	}
  5261  
  5262  	if invalidParams.Len() > 0 {
  5263  		return invalidParams
  5264  	}
  5265  	return nil
  5266  }
  5267  
  5268  // SetEmailAddress sets the EmailAddress field's value.
  5269  func (s *AWSAccount) SetEmailAddress(v string) *AWSAccount {
  5270  	s.EmailAddress = &v
  5271  	return s
  5272  }
  5273  
  5274  // SetId sets the Id field's value.
  5275  func (s *AWSAccount) SetId(v string) *AWSAccount {
  5276  	s.Id = &v
  5277  	return s
  5278  }
  5279  
  5280  // SetName sets the Name field's value.
  5281  func (s *AWSAccount) SetName(v string) *AWSAccount {
  5282  	s.Name = &v
  5283  	return s
  5284  }
  5285  
  5286  // An Amazon Web Service such as Amazon S3, CloudTrail, and so on.
  5287  type AWSService struct {
  5288  	_ struct{} `type:"structure"`
  5289  
  5290  	// The name of the Amazon Web Service.
  5291  	ServiceName *string `locationName:"serviceName" min:"1" type:"string"`
  5292  }
  5293  
  5294  // String returns the string representation.
  5295  //
  5296  // API parameter values that are decorated as "sensitive" in the API will not
  5297  // be included in the string output. The member name will be present, but the
  5298  // value will be replaced with "sensitive".
  5299  func (s AWSService) String() string {
  5300  	return awsutil.Prettify(s)
  5301  }
  5302  
  5303  // GoString returns the string representation.
  5304  //
  5305  // API parameter values that are decorated as "sensitive" in the API will not
  5306  // be included in the string output. The member name will be present, but the
  5307  // value will be replaced with "sensitive".
  5308  func (s AWSService) GoString() string {
  5309  	return s.String()
  5310  }
  5311  
  5312  // Validate inspects the fields of the type to determine if they are valid.
  5313  func (s *AWSService) Validate() error {
  5314  	invalidParams := request.ErrInvalidParams{Context: "AWSService"}
  5315  	if s.ServiceName != nil && len(*s.ServiceName) < 1 {
  5316  		invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1))
  5317  	}
  5318  
  5319  	if invalidParams.Len() > 0 {
  5320  		return invalidParams
  5321  	}
  5322  	return nil
  5323  }
  5324  
  5325  // SetServiceName sets the ServiceName field's value.
  5326  func (s *AWSService) SetServiceName(v string) *AWSService {
  5327  	s.ServiceName = &v
  5328  	return s
  5329  }
  5330  
  5331  // Your account is not registered with Audit Manager. Check the delegated administrator
  5332  // setup on the Audit Manager settings page, and try again.
  5333  type AccessDeniedException struct {
  5334  	_            struct{}                  `type:"structure"`
  5335  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  5336  
  5337  	Message_ *string `locationName:"message" type:"string"`
  5338  }
  5339  
  5340  // String returns the string representation.
  5341  //
  5342  // API parameter values that are decorated as "sensitive" in the API will not
  5343  // be included in the string output. The member name will be present, but the
  5344  // value will be replaced with "sensitive".
  5345  func (s AccessDeniedException) String() string {
  5346  	return awsutil.Prettify(s)
  5347  }
  5348  
  5349  // GoString returns the string representation.
  5350  //
  5351  // API parameter values that are decorated as "sensitive" in the API will not
  5352  // be included in the string output. The member name will be present, but the
  5353  // value will be replaced with "sensitive".
  5354  func (s AccessDeniedException) GoString() string {
  5355  	return s.String()
  5356  }
  5357  
  5358  func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
  5359  	return &AccessDeniedException{
  5360  		RespMetadata: v,
  5361  	}
  5362  }
  5363  
  5364  // Code returns the exception type name.
  5365  func (s *AccessDeniedException) Code() string {
  5366  	return "AccessDeniedException"
  5367  }
  5368  
  5369  // Message returns the exception's message.
  5370  func (s *AccessDeniedException) Message() string {
  5371  	if s.Message_ != nil {
  5372  		return *s.Message_
  5373  	}
  5374  	return ""
  5375  }
  5376  
  5377  // OrigErr always returns nil, satisfies awserr.Error interface.
  5378  func (s *AccessDeniedException) OrigErr() error {
  5379  	return nil
  5380  }
  5381  
  5382  func (s *AccessDeniedException) Error() string {
  5383  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  5384  }
  5385  
  5386  // Status code returns the HTTP status code for the request's response error.
  5387  func (s *AccessDeniedException) StatusCode() int {
  5388  	return s.RespMetadata.StatusCode
  5389  }
  5390  
  5391  // RequestID returns the service's response RequestID for request.
  5392  func (s *AccessDeniedException) RequestID() string {
  5393  	return s.RespMetadata.RequestID
  5394  }
  5395  
  5396  // An entity that defines the scope of audit evidence collected by Audit Manager.
  5397  // An Audit Manager assessment is an implementation of an Audit Manager framework.
  5398  type Assessment struct {
  5399  	_ struct{} `type:"structure"`
  5400  
  5401  	// The Amazon Resource Name (ARN) of the assessment.
  5402  	Arn *string `locationName:"arn" min:"20" type:"string"`
  5403  
  5404  	// The account associated with the assessment.
  5405  	AwsAccount *AWSAccount `locationName:"awsAccount" type:"structure"`
  5406  
  5407  	// The framework from which the assessment was created.
  5408  	Framework *AssessmentFramework `locationName:"framework" type:"structure"`
  5409  
  5410  	// The metadata for the specified assessment.
  5411  	Metadata *AssessmentMetadata `locationName:"metadata" type:"structure"`
  5412  
  5413  	// The tags associated with the assessment.
  5414  	Tags map[string]*string `locationName:"tags" type:"map"`
  5415  }
  5416  
  5417  // String returns the string representation.
  5418  //
  5419  // API parameter values that are decorated as "sensitive" in the API will not
  5420  // be included in the string output. The member name will be present, but the
  5421  // value will be replaced with "sensitive".
  5422  func (s Assessment) String() string {
  5423  	return awsutil.Prettify(s)
  5424  }
  5425  
  5426  // GoString returns the string representation.
  5427  //
  5428  // API parameter values that are decorated as "sensitive" in the API will not
  5429  // be included in the string output. The member name will be present, but the
  5430  // value will be replaced with "sensitive".
  5431  func (s Assessment) GoString() string {
  5432  	return s.String()
  5433  }
  5434  
  5435  // SetArn sets the Arn field's value.
  5436  func (s *Assessment) SetArn(v string) *Assessment {
  5437  	s.Arn = &v
  5438  	return s
  5439  }
  5440  
  5441  // SetAwsAccount sets the AwsAccount field's value.
  5442  func (s *Assessment) SetAwsAccount(v *AWSAccount) *Assessment {
  5443  	s.AwsAccount = v
  5444  	return s
  5445  }
  5446  
  5447  // SetFramework sets the Framework field's value.
  5448  func (s *Assessment) SetFramework(v *AssessmentFramework) *Assessment {
  5449  	s.Framework = v
  5450  	return s
  5451  }
  5452  
  5453  // SetMetadata sets the Metadata field's value.
  5454  func (s *Assessment) SetMetadata(v *AssessmentMetadata) *Assessment {
  5455  	s.Metadata = v
  5456  	return s
  5457  }
  5458  
  5459  // SetTags sets the Tags field's value.
  5460  func (s *Assessment) SetTags(v map[string]*string) *Assessment {
  5461  	s.Tags = v
  5462  	return s
  5463  }
  5464  
  5465  // The control entity that represents a standard or custom control used in an
  5466  // Audit Manager assessment.
  5467  type AssessmentControl struct {
  5468  	_ struct{} `type:"structure"`
  5469  
  5470  	// The amount of evidence in the assessment report.
  5471  	AssessmentReportEvidenceCount *int64 `locationName:"assessmentReportEvidenceCount" type:"integer"`
  5472  
  5473  	// The list of comments attached to the specified control.
  5474  	Comments []*ControlComment `locationName:"comments" type:"list"`
  5475  
  5476  	// The description of the specified control.
  5477  	Description *string `locationName:"description" type:"string"`
  5478  
  5479  	// The amount of evidence generated for the control.
  5480  	EvidenceCount *int64 `locationName:"evidenceCount" type:"integer"`
  5481  
  5482  	// The list of data sources for the specified evidence.
  5483  	EvidenceSources []*string `locationName:"evidenceSources" type:"list"`
  5484  
  5485  	// The identifier for the specified control.
  5486  	Id *string `locationName:"id" min:"36" type:"string"`
  5487  
  5488  	// The name of the specified control.
  5489  	Name *string `locationName:"name" min:"1" type:"string"`
  5490  
  5491  	// The response of the specified control.
  5492  	Response *string `locationName:"response" type:"string" enum:"ControlResponse"`
  5493  
  5494  	// The status of the specified control.
  5495  	Status *string `locationName:"status" type:"string" enum:"ControlStatus"`
  5496  }
  5497  
  5498  // String returns the string representation.
  5499  //
  5500  // API parameter values that are decorated as "sensitive" in the API will not
  5501  // be included in the string output. The member name will be present, but the
  5502  // value will be replaced with "sensitive".
  5503  func (s AssessmentControl) String() string {
  5504  	return awsutil.Prettify(s)
  5505  }
  5506  
  5507  // GoString returns the string representation.
  5508  //
  5509  // API parameter values that are decorated as "sensitive" in the API will not
  5510  // be included in the string output. The member name will be present, but the
  5511  // value will be replaced with "sensitive".
  5512  func (s AssessmentControl) GoString() string {
  5513  	return s.String()
  5514  }
  5515  
  5516  // SetAssessmentReportEvidenceCount sets the AssessmentReportEvidenceCount field's value.
  5517  func (s *AssessmentControl) SetAssessmentReportEvidenceCount(v int64) *AssessmentControl {
  5518  	s.AssessmentReportEvidenceCount = &v
  5519  	return s
  5520  }
  5521  
  5522  // SetComments sets the Comments field's value.
  5523  func (s *AssessmentControl) SetComments(v []*ControlComment) *AssessmentControl {
  5524  	s.Comments = v
  5525  	return s
  5526  }
  5527  
  5528  // SetDescription sets the Description field's value.
  5529  func (s *AssessmentControl) SetDescription(v string) *AssessmentControl {
  5530  	s.Description = &v
  5531  	return s
  5532  }
  5533  
  5534  // SetEvidenceCount sets the EvidenceCount field's value.
  5535  func (s *AssessmentControl) SetEvidenceCount(v int64) *AssessmentControl {
  5536  	s.EvidenceCount = &v
  5537  	return s
  5538  }
  5539  
  5540  // SetEvidenceSources sets the EvidenceSources field's value.
  5541  func (s *AssessmentControl) SetEvidenceSources(v []*string) *AssessmentControl {
  5542  	s.EvidenceSources = v
  5543  	return s
  5544  }
  5545  
  5546  // SetId sets the Id field's value.
  5547  func (s *AssessmentControl) SetId(v string) *AssessmentControl {
  5548  	s.Id = &v
  5549  	return s
  5550  }
  5551  
  5552  // SetName sets the Name field's value.
  5553  func (s *AssessmentControl) SetName(v string) *AssessmentControl {
  5554  	s.Name = &v
  5555  	return s
  5556  }
  5557  
  5558  // SetResponse sets the Response field's value.
  5559  func (s *AssessmentControl) SetResponse(v string) *AssessmentControl {
  5560  	s.Response = &v
  5561  	return s
  5562  }
  5563  
  5564  // SetStatus sets the Status field's value.
  5565  func (s *AssessmentControl) SetStatus(v string) *AssessmentControl {
  5566  	s.Status = &v
  5567  	return s
  5568  }
  5569  
  5570  // Represents a set of controls in an Audit Manager assessment.
  5571  type AssessmentControlSet struct {
  5572  	_ struct{} `type:"structure"`
  5573  
  5574  	// The list of controls contained with the control set.
  5575  	Controls []*AssessmentControl `locationName:"controls" type:"list"`
  5576  
  5577  	// The delegations associated with the control set.
  5578  	Delegations []*Delegation `locationName:"delegations" type:"list"`
  5579  
  5580  	// The description for the control set.
  5581  	Description *string `locationName:"description" min:"1" type:"string"`
  5582  
  5583  	// The identifier of the control set in the assessment. This is the control
  5584  	// set name in a plain string format.
  5585  	Id *string `locationName:"id" min:"1" type:"string"`
  5586  
  5587  	// The total number of evidence objects uploaded manually to the control set.
  5588  	ManualEvidenceCount *int64 `locationName:"manualEvidenceCount" type:"integer"`
  5589  
  5590  	// The roles associated with the control set.
  5591  	Roles []*Role `locationName:"roles" type:"list"`
  5592  
  5593  	// Specifies the current status of the control set.
  5594  	Status *string `locationName:"status" type:"string" enum:"ControlSetStatus"`
  5595  
  5596  	// The total number of evidence objects retrieved automatically for the control
  5597  	// set.
  5598  	SystemEvidenceCount *int64 `locationName:"systemEvidenceCount" type:"integer"`
  5599  }
  5600  
  5601  // String returns the string representation.
  5602  //
  5603  // API parameter values that are decorated as "sensitive" in the API will not
  5604  // be included in the string output. The member name will be present, but the
  5605  // value will be replaced with "sensitive".
  5606  func (s AssessmentControlSet) String() string {
  5607  	return awsutil.Prettify(s)
  5608  }
  5609  
  5610  // GoString returns the string representation.
  5611  //
  5612  // API parameter values that are decorated as "sensitive" in the API will not
  5613  // be included in the string output. The member name will be present, but the
  5614  // value will be replaced with "sensitive".
  5615  func (s AssessmentControlSet) GoString() string {
  5616  	return s.String()
  5617  }
  5618  
  5619  // SetControls sets the Controls field's value.
  5620  func (s *AssessmentControlSet) SetControls(v []*AssessmentControl) *AssessmentControlSet {
  5621  	s.Controls = v
  5622  	return s
  5623  }
  5624  
  5625  // SetDelegations sets the Delegations field's value.
  5626  func (s *AssessmentControlSet) SetDelegations(v []*Delegation) *AssessmentControlSet {
  5627  	s.Delegations = v
  5628  	return s
  5629  }
  5630  
  5631  // SetDescription sets the Description field's value.
  5632  func (s *AssessmentControlSet) SetDescription(v string) *AssessmentControlSet {
  5633  	s.Description = &v
  5634  	return s
  5635  }
  5636  
  5637  // SetId sets the Id field's value.
  5638  func (s *AssessmentControlSet) SetId(v string) *AssessmentControlSet {
  5639  	s.Id = &v
  5640  	return s
  5641  }
  5642  
  5643  // SetManualEvidenceCount sets the ManualEvidenceCount field's value.
  5644  func (s *AssessmentControlSet) SetManualEvidenceCount(v int64) *AssessmentControlSet {
  5645  	s.ManualEvidenceCount = &v
  5646  	return s
  5647  }
  5648  
  5649  // SetRoles sets the Roles field's value.
  5650  func (s *AssessmentControlSet) SetRoles(v []*Role) *AssessmentControlSet {
  5651  	s.Roles = v
  5652  	return s
  5653  }
  5654  
  5655  // SetStatus sets the Status field's value.
  5656  func (s *AssessmentControlSet) SetStatus(v string) *AssessmentControlSet {
  5657  	s.Status = &v
  5658  	return s
  5659  }
  5660  
  5661  // SetSystemEvidenceCount sets the SystemEvidenceCount field's value.
  5662  func (s *AssessmentControlSet) SetSystemEvidenceCount(v int64) *AssessmentControlSet {
  5663  	s.SystemEvidenceCount = &v
  5664  	return s
  5665  }
  5666  
  5667  // The folder in which Audit Manager stores evidence for an assessment.
  5668  type AssessmentEvidenceFolder struct {
  5669  	_ struct{} `type:"structure"`
  5670  
  5671  	// The identifier for the specified assessment.
  5672  	AssessmentId *string `locationName:"assessmentId" min:"36" type:"string"`
  5673  
  5674  	// The total count of evidence included in the assessment report.
  5675  	AssessmentReportSelectionCount *int64 `locationName:"assessmentReportSelectionCount" type:"integer"`
  5676  
  5677  	// The name of the user who created the evidence folder.
  5678  	Author *string `locationName:"author" type:"string"`
  5679  
  5680  	// The unique identifier for the specified control.
  5681  	ControlId *string `locationName:"controlId" min:"36" type:"string"`
  5682  
  5683  	// The name of the control.
  5684  	ControlName *string `locationName:"controlName" min:"1" type:"string"`
  5685  
  5686  	// The identifier for the control set.
  5687  	ControlSetId *string `locationName:"controlSetId" min:"1" type:"string"`
  5688  
  5689  	// The Amazon Web Service from which the evidence was collected.
  5690  	DataSource *string `locationName:"dataSource" type:"string"`
  5691  
  5692  	// The date when the first evidence was added to the evidence folder.
  5693  	Date *time.Time `locationName:"date" type:"timestamp"`
  5694  
  5695  	// The total number of Amazon Web Services resources assessed to generate the
  5696  	// evidence.
  5697  	EvidenceAwsServiceSourceCount *int64 `locationName:"evidenceAwsServiceSourceCount" type:"integer"`
  5698  
  5699  	// The number of evidence that falls under the compliance check category. This
  5700  	// evidence is collected from Config or Security Hub.
  5701  	EvidenceByTypeComplianceCheckCount *int64 `locationName:"evidenceByTypeComplianceCheckCount" type:"integer"`
  5702  
  5703  	// The total number of issues that were reported directly from Security Hub,
  5704  	// Config, or both.
  5705  	EvidenceByTypeComplianceCheckIssuesCount *int64 `locationName:"evidenceByTypeComplianceCheckIssuesCount" type:"integer"`
  5706  
  5707  	// The number of evidence that falls under the configuration data category.
  5708  	// This evidence is collected from configuration snapshots of other Amazon Web
  5709  	// Services services such as Amazon EC2, Amazon S3, or IAM.
  5710  	EvidenceByTypeConfigurationDataCount *int64 `locationName:"evidenceByTypeConfigurationDataCount" type:"integer"`
  5711  
  5712  	// The number of evidence that falls under the manual category. This evidence
  5713  	// is imported manually.
  5714  	EvidenceByTypeManualCount *int64 `locationName:"evidenceByTypeManualCount" type:"integer"`
  5715  
  5716  	// The number of evidence that falls under the user activity category. This
  5717  	// evidence is collected from CloudTrail logs.
  5718  	EvidenceByTypeUserActivityCount *int64 `locationName:"evidenceByTypeUserActivityCount" type:"integer"`
  5719  
  5720  	// The amount of evidence included in the evidence folder.
  5721  	EvidenceResourcesIncludedCount *int64 `locationName:"evidenceResourcesIncludedCount" type:"integer"`
  5722  
  5723  	// The identifier for the folder in which evidence is stored.
  5724  	Id *string `locationName:"id" min:"36" type:"string"`
  5725  
  5726  	// The name of the specified evidence folder.
  5727  	Name *string `locationName:"name" min:"1" type:"string"`
  5728  
  5729  	// The total amount of evidence in the evidence folder.
  5730  	TotalEvidence *int64 `locationName:"totalEvidence" type:"integer"`
  5731  }
  5732  
  5733  // String returns the string representation.
  5734  //
  5735  // API parameter values that are decorated as "sensitive" in the API will not
  5736  // be included in the string output. The member name will be present, but the
  5737  // value will be replaced with "sensitive".
  5738  func (s AssessmentEvidenceFolder) String() string {
  5739  	return awsutil.Prettify(s)
  5740  }
  5741  
  5742  // GoString returns the string representation.
  5743  //
  5744  // API parameter values that are decorated as "sensitive" in the API will not
  5745  // be included in the string output. The member name will be present, but the
  5746  // value will be replaced with "sensitive".
  5747  func (s AssessmentEvidenceFolder) GoString() string {
  5748  	return s.String()
  5749  }
  5750  
  5751  // SetAssessmentId sets the AssessmentId field's value.
  5752  func (s *AssessmentEvidenceFolder) SetAssessmentId(v string) *AssessmentEvidenceFolder {
  5753  	s.AssessmentId = &v
  5754  	return s
  5755  }
  5756  
  5757  // SetAssessmentReportSelectionCount sets the AssessmentReportSelectionCount field's value.
  5758  func (s *AssessmentEvidenceFolder) SetAssessmentReportSelectionCount(v int64) *AssessmentEvidenceFolder {
  5759  	s.AssessmentReportSelectionCount = &v
  5760  	return s
  5761  }
  5762  
  5763  // SetAuthor sets the Author field's value.
  5764  func (s *AssessmentEvidenceFolder) SetAuthor(v string) *AssessmentEvidenceFolder {
  5765  	s.Author = &v
  5766  	return s
  5767  }
  5768  
  5769  // SetControlId sets the ControlId field's value.
  5770  func (s *AssessmentEvidenceFolder) SetControlId(v string) *AssessmentEvidenceFolder {
  5771  	s.ControlId = &v
  5772  	return s
  5773  }
  5774  
  5775  // SetControlName sets the ControlName field's value.
  5776  func (s *AssessmentEvidenceFolder) SetControlName(v string) *AssessmentEvidenceFolder {
  5777  	s.ControlName = &v
  5778  	return s
  5779  }
  5780  
  5781  // SetControlSetId sets the ControlSetId field's value.
  5782  func (s *AssessmentEvidenceFolder) SetControlSetId(v string) *AssessmentEvidenceFolder {
  5783  	s.ControlSetId = &v
  5784  	return s
  5785  }
  5786  
  5787  // SetDataSource sets the DataSource field's value.
  5788  func (s *AssessmentEvidenceFolder) SetDataSource(v string) *AssessmentEvidenceFolder {
  5789  	s.DataSource = &v
  5790  	return s
  5791  }
  5792  
  5793  // SetDate sets the Date field's value.
  5794  func (s *AssessmentEvidenceFolder) SetDate(v time.Time) *AssessmentEvidenceFolder {
  5795  	s.Date = &v
  5796  	return s
  5797  }
  5798  
  5799  // SetEvidenceAwsServiceSourceCount sets the EvidenceAwsServiceSourceCount field's value.
  5800  func (s *AssessmentEvidenceFolder) SetEvidenceAwsServiceSourceCount(v int64) *AssessmentEvidenceFolder {
  5801  	s.EvidenceAwsServiceSourceCount = &v
  5802  	return s
  5803  }
  5804  
  5805  // SetEvidenceByTypeComplianceCheckCount sets the EvidenceByTypeComplianceCheckCount field's value.
  5806  func (s *AssessmentEvidenceFolder) SetEvidenceByTypeComplianceCheckCount(v int64) *AssessmentEvidenceFolder {
  5807  	s.EvidenceByTypeComplianceCheckCount = &v
  5808  	return s
  5809  }
  5810  
  5811  // SetEvidenceByTypeComplianceCheckIssuesCount sets the EvidenceByTypeComplianceCheckIssuesCount field's value.
  5812  func (s *AssessmentEvidenceFolder) SetEvidenceByTypeComplianceCheckIssuesCount(v int64) *AssessmentEvidenceFolder {
  5813  	s.EvidenceByTypeComplianceCheckIssuesCount = &v
  5814  	return s
  5815  }
  5816  
  5817  // SetEvidenceByTypeConfigurationDataCount sets the EvidenceByTypeConfigurationDataCount field's value.
  5818  func (s *AssessmentEvidenceFolder) SetEvidenceByTypeConfigurationDataCount(v int64) *AssessmentEvidenceFolder {
  5819  	s.EvidenceByTypeConfigurationDataCount = &v
  5820  	return s
  5821  }
  5822  
  5823  // SetEvidenceByTypeManualCount sets the EvidenceByTypeManualCount field's value.
  5824  func (s *AssessmentEvidenceFolder) SetEvidenceByTypeManualCount(v int64) *AssessmentEvidenceFolder {
  5825  	s.EvidenceByTypeManualCount = &v
  5826  	return s
  5827  }
  5828  
  5829  // SetEvidenceByTypeUserActivityCount sets the EvidenceByTypeUserActivityCount field's value.
  5830  func (s *AssessmentEvidenceFolder) SetEvidenceByTypeUserActivityCount(v int64) *AssessmentEvidenceFolder {
  5831  	s.EvidenceByTypeUserActivityCount = &v
  5832  	return s
  5833  }
  5834  
  5835  // SetEvidenceResourcesIncludedCount sets the EvidenceResourcesIncludedCount field's value.
  5836  func (s *AssessmentEvidenceFolder) SetEvidenceResourcesIncludedCount(v int64) *AssessmentEvidenceFolder {
  5837  	s.EvidenceResourcesIncludedCount = &v
  5838  	return s
  5839  }
  5840  
  5841  // SetId sets the Id field's value.
  5842  func (s *AssessmentEvidenceFolder) SetId(v string) *AssessmentEvidenceFolder {
  5843  	s.Id = &v
  5844  	return s
  5845  }
  5846  
  5847  // SetName sets the Name field's value.
  5848  func (s *AssessmentEvidenceFolder) SetName(v string) *AssessmentEvidenceFolder {
  5849  	s.Name = &v
  5850  	return s
  5851  }
  5852  
  5853  // SetTotalEvidence sets the TotalEvidence field's value.
  5854  func (s *AssessmentEvidenceFolder) SetTotalEvidence(v int64) *AssessmentEvidenceFolder {
  5855  	s.TotalEvidence = &v
  5856  	return s
  5857  }
  5858  
  5859  // The file used to structure and automate Audit Manager assessments for a given
  5860  // compliance standard.
  5861  type AssessmentFramework struct {
  5862  	_ struct{} `type:"structure"`
  5863  
  5864  	// The Amazon Resource Name (ARN) of the specified framework.
  5865  	Arn *string `locationName:"arn" min:"20" type:"string"`
  5866  
  5867  	// The control sets associated with the framework.
  5868  	ControlSets []*AssessmentControlSet `locationName:"controlSets" type:"list"`
  5869  
  5870  	// The unique identifier for the framework.
  5871  	Id *string `locationName:"id" min:"36" type:"string"`
  5872  
  5873  	// The metadata of a framework, such as the name, ID, description, and so on.
  5874  	Metadata *FrameworkMetadata `locationName:"metadata" type:"structure"`
  5875  }
  5876  
  5877  // String returns the string representation.
  5878  //
  5879  // API parameter values that are decorated as "sensitive" in the API will not
  5880  // be included in the string output. The member name will be present, but the
  5881  // value will be replaced with "sensitive".
  5882  func (s AssessmentFramework) String() string {
  5883  	return awsutil.Prettify(s)
  5884  }
  5885  
  5886  // GoString returns the string representation.
  5887  //
  5888  // API parameter values that are decorated as "sensitive" in the API will not
  5889  // be included in the string output. The member name will be present, but the
  5890  // value will be replaced with "sensitive".
  5891  func (s AssessmentFramework) GoString() string {
  5892  	return s.String()
  5893  }
  5894  
  5895  // SetArn sets the Arn field's value.
  5896  func (s *AssessmentFramework) SetArn(v string) *AssessmentFramework {
  5897  	s.Arn = &v
  5898  	return s
  5899  }
  5900  
  5901  // SetControlSets sets the ControlSets field's value.
  5902  func (s *AssessmentFramework) SetControlSets(v []*AssessmentControlSet) *AssessmentFramework {
  5903  	s.ControlSets = v
  5904  	return s
  5905  }
  5906  
  5907  // SetId sets the Id field's value.
  5908  func (s *AssessmentFramework) SetId(v string) *AssessmentFramework {
  5909  	s.Id = &v
  5910  	return s
  5911  }
  5912  
  5913  // SetMetadata sets the Metadata field's value.
  5914  func (s *AssessmentFramework) SetMetadata(v *FrameworkMetadata) *AssessmentFramework {
  5915  	s.Metadata = v
  5916  	return s
  5917  }
  5918  
  5919  // The metadata associated with a standard or custom framework.
  5920  type AssessmentFrameworkMetadata struct {
  5921  	_ struct{} `type:"structure"`
  5922  
  5923  	// The Amazon Resource Name (ARN) of the framework.
  5924  	Arn *string `locationName:"arn" min:"20" type:"string"`
  5925  
  5926  	// The compliance type that the new custom framework supports, such as CIS or
  5927  	// HIPAA.
  5928  	ComplianceType *string `locationName:"complianceType" type:"string"`
  5929  
  5930  	// The number of control sets associated with the specified framework.
  5931  	ControlSetsCount *int64 `locationName:"controlSetsCount" type:"integer"`
  5932  
  5933  	// The number of controls associated with the specified framework.
  5934  	ControlsCount *int64 `locationName:"controlsCount" type:"integer"`
  5935  
  5936  	// Specifies when the framework was created.
  5937  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
  5938  
  5939  	// The description of the specified framework.
  5940  	Description *string `locationName:"description" min:"1" type:"string"`
  5941  
  5942  	// The unique identified for the specified framework.
  5943  	Id *string `locationName:"id" min:"36" type:"string"`
  5944  
  5945  	// Specifies when the framework was most recently updated.
  5946  	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
  5947  
  5948  	// The logo associated with the framework.
  5949  	Logo *string `locationName:"logo" min:"1" type:"string"`
  5950  
  5951  	// The name of the specified framework.
  5952  	Name *string `locationName:"name" min:"1" type:"string"`
  5953  
  5954  	// The framework type, such as standard or custom.
  5955  	Type *string `locationName:"type" type:"string" enum:"FrameworkType"`
  5956  }
  5957  
  5958  // String returns the string representation.
  5959  //
  5960  // API parameter values that are decorated as "sensitive" in the API will not
  5961  // be included in the string output. The member name will be present, but the
  5962  // value will be replaced with "sensitive".
  5963  func (s AssessmentFrameworkMetadata) String() string {
  5964  	return awsutil.Prettify(s)
  5965  }
  5966  
  5967  // GoString returns the string representation.
  5968  //
  5969  // API parameter values that are decorated as "sensitive" in the API will not
  5970  // be included in the string output. The member name will be present, but the
  5971  // value will be replaced with "sensitive".
  5972  func (s AssessmentFrameworkMetadata) GoString() string {
  5973  	return s.String()
  5974  }
  5975  
  5976  // SetArn sets the Arn field's value.
  5977  func (s *AssessmentFrameworkMetadata) SetArn(v string) *AssessmentFrameworkMetadata {
  5978  	s.Arn = &v
  5979  	return s
  5980  }
  5981  
  5982  // SetComplianceType sets the ComplianceType field's value.
  5983  func (s *AssessmentFrameworkMetadata) SetComplianceType(v string) *AssessmentFrameworkMetadata {
  5984  	s.ComplianceType = &v
  5985  	return s
  5986  }
  5987  
  5988  // SetControlSetsCount sets the ControlSetsCount field's value.
  5989  func (s *AssessmentFrameworkMetadata) SetControlSetsCount(v int64) *AssessmentFrameworkMetadata {
  5990  	s.ControlSetsCount = &v
  5991  	return s
  5992  }
  5993  
  5994  // SetControlsCount sets the ControlsCount field's value.
  5995  func (s *AssessmentFrameworkMetadata) SetControlsCount(v int64) *AssessmentFrameworkMetadata {
  5996  	s.ControlsCount = &v
  5997  	return s
  5998  }
  5999  
  6000  // SetCreatedAt sets the CreatedAt field's value.
  6001  func (s *AssessmentFrameworkMetadata) SetCreatedAt(v time.Time) *AssessmentFrameworkMetadata {
  6002  	s.CreatedAt = &v
  6003  	return s
  6004  }
  6005  
  6006  // SetDescription sets the Description field's value.
  6007  func (s *AssessmentFrameworkMetadata) SetDescription(v string) *AssessmentFrameworkMetadata {
  6008  	s.Description = &v
  6009  	return s
  6010  }
  6011  
  6012  // SetId sets the Id field's value.
  6013  func (s *AssessmentFrameworkMetadata) SetId(v string) *AssessmentFrameworkMetadata {
  6014  	s.Id = &v
  6015  	return s
  6016  }
  6017  
  6018  // SetLastUpdatedAt sets the LastUpdatedAt field's value.
  6019  func (s *AssessmentFrameworkMetadata) SetLastUpdatedAt(v time.Time) *AssessmentFrameworkMetadata {
  6020  	s.LastUpdatedAt = &v
  6021  	return s
  6022  }
  6023  
  6024  // SetLogo sets the Logo field's value.
  6025  func (s *AssessmentFrameworkMetadata) SetLogo(v string) *AssessmentFrameworkMetadata {
  6026  	s.Logo = &v
  6027  	return s
  6028  }
  6029  
  6030  // SetName sets the Name field's value.
  6031  func (s *AssessmentFrameworkMetadata) SetName(v string) *AssessmentFrameworkMetadata {
  6032  	s.Name = &v
  6033  	return s
  6034  }
  6035  
  6036  // SetType sets the Type field's value.
  6037  func (s *AssessmentFrameworkMetadata) SetType(v string) *AssessmentFrameworkMetadata {
  6038  	s.Type = &v
  6039  	return s
  6040  }
  6041  
  6042  // The metadata associated with the specified assessment.
  6043  type AssessmentMetadata struct {
  6044  	_ struct{} `type:"structure"`
  6045  
  6046  	// The destination in which evidence reports are stored for the specified assessment.
  6047  	AssessmentReportsDestination *AssessmentReportsDestination `locationName:"assessmentReportsDestination" type:"structure"`
  6048  
  6049  	// The name of a compliance standard related to the assessment, such as PCI-DSS.
  6050  	ComplianceType *string `locationName:"complianceType" type:"string"`
  6051  
  6052  	// Specifies when the assessment was created.
  6053  	CreationTime *time.Time `locationName:"creationTime" type:"timestamp"`
  6054  
  6055  	// The delegations associated with the assessment.
  6056  	Delegations []*Delegation `locationName:"delegations" type:"list"`
  6057  
  6058  	// The description of the assessment.
  6059  	Description *string `locationName:"description" type:"string"`
  6060  
  6061  	// The unique identifier for the assessment.
  6062  	Id *string `locationName:"id" min:"36" type:"string"`
  6063  
  6064  	// The time of the most recent update.
  6065  	LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp"`
  6066  
  6067  	// The name of the assessment.
  6068  	Name *string `locationName:"name" min:"1" type:"string"`
  6069  
  6070  	// The roles associated with the assessment.
  6071  	Roles []*Role `locationName:"roles" type:"list"`
  6072  
  6073  	// The wrapper of accounts and services in scope for the assessment.
  6074  	Scope *Scope `locationName:"scope" type:"structure"`
  6075  
  6076  	// The overall status of the assessment.
  6077  	Status *string `locationName:"status" type:"string" enum:"AssessmentStatus"`
  6078  }
  6079  
  6080  // String returns the string representation.
  6081  //
  6082  // API parameter values that are decorated as "sensitive" in the API will not
  6083  // be included in the string output. The member name will be present, but the
  6084  // value will be replaced with "sensitive".
  6085  func (s AssessmentMetadata) String() string {
  6086  	return awsutil.Prettify(s)
  6087  }
  6088  
  6089  // GoString returns the string representation.
  6090  //
  6091  // API parameter values that are decorated as "sensitive" in the API will not
  6092  // be included in the string output. The member name will be present, but the
  6093  // value will be replaced with "sensitive".
  6094  func (s AssessmentMetadata) GoString() string {
  6095  	return s.String()
  6096  }
  6097  
  6098  // SetAssessmentReportsDestination sets the AssessmentReportsDestination field's value.
  6099  func (s *AssessmentMetadata) SetAssessmentReportsDestination(v *AssessmentReportsDestination) *AssessmentMetadata {
  6100  	s.AssessmentReportsDestination = v
  6101  	return s
  6102  }
  6103  
  6104  // SetComplianceType sets the ComplianceType field's value.
  6105  func (s *AssessmentMetadata) SetComplianceType(v string) *AssessmentMetadata {
  6106  	s.ComplianceType = &v
  6107  	return s
  6108  }
  6109  
  6110  // SetCreationTime sets the CreationTime field's value.
  6111  func (s *AssessmentMetadata) SetCreationTime(v time.Time) *AssessmentMetadata {
  6112  	s.CreationTime = &v
  6113  	return s
  6114  }
  6115  
  6116  // SetDelegations sets the Delegations field's value.
  6117  func (s *AssessmentMetadata) SetDelegations(v []*Delegation) *AssessmentMetadata {
  6118  	s.Delegations = v
  6119  	return s
  6120  }
  6121  
  6122  // SetDescription sets the Description field's value.
  6123  func (s *AssessmentMetadata) SetDescription(v string) *AssessmentMetadata {
  6124  	s.Description = &v
  6125  	return s
  6126  }
  6127  
  6128  // SetId sets the Id field's value.
  6129  func (s *AssessmentMetadata) SetId(v string) *AssessmentMetadata {
  6130  	s.Id = &v
  6131  	return s
  6132  }
  6133  
  6134  // SetLastUpdated sets the LastUpdated field's value.
  6135  func (s *AssessmentMetadata) SetLastUpdated(v time.Time) *AssessmentMetadata {
  6136  	s.LastUpdated = &v
  6137  	return s
  6138  }
  6139  
  6140  // SetName sets the Name field's value.
  6141  func (s *AssessmentMetadata) SetName(v string) *AssessmentMetadata {
  6142  	s.Name = &v
  6143  	return s
  6144  }
  6145  
  6146  // SetRoles sets the Roles field's value.
  6147  func (s *AssessmentMetadata) SetRoles(v []*Role) *AssessmentMetadata {
  6148  	s.Roles = v
  6149  	return s
  6150  }
  6151  
  6152  // SetScope sets the Scope field's value.
  6153  func (s *AssessmentMetadata) SetScope(v *Scope) *AssessmentMetadata {
  6154  	s.Scope = v
  6155  	return s
  6156  }
  6157  
  6158  // SetStatus sets the Status field's value.
  6159  func (s *AssessmentMetadata) SetStatus(v string) *AssessmentMetadata {
  6160  	s.Status = &v
  6161  	return s
  6162  }
  6163  
  6164  // A metadata object associated with an assessment in Audit Manager.
  6165  type AssessmentMetadataItem struct {
  6166  	_ struct{} `type:"structure"`
  6167  
  6168  	// The name of the compliance standard related to the assessment, such as PCI-DSS.
  6169  	ComplianceType *string `locationName:"complianceType" type:"string"`
  6170  
  6171  	// Specifies when the assessment was created.
  6172  	CreationTime *time.Time `locationName:"creationTime" type:"timestamp"`
  6173  
  6174  	// The delegations associated with the assessment.
  6175  	Delegations []*Delegation `locationName:"delegations" type:"list"`
  6176  
  6177  	// The unique identifier for the assessment.
  6178  	Id *string `locationName:"id" min:"36" type:"string"`
  6179  
  6180  	// The time of the most recent update.
  6181  	LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp"`
  6182  
  6183  	// The name of the assessment.
  6184  	Name *string `locationName:"name" min:"1" type:"string"`
  6185  
  6186  	// The roles associated with the assessment.
  6187  	Roles []*Role `locationName:"roles" type:"list"`
  6188  
  6189  	// The current status of the assessment.
  6190  	Status *string `locationName:"status" type:"string" enum:"AssessmentStatus"`
  6191  }
  6192  
  6193  // String returns the string representation.
  6194  //
  6195  // API parameter values that are decorated as "sensitive" in the API will not
  6196  // be included in the string output. The member name will be present, but the
  6197  // value will be replaced with "sensitive".
  6198  func (s AssessmentMetadataItem) String() string {
  6199  	return awsutil.Prettify(s)
  6200  }
  6201  
  6202  // GoString returns the string representation.
  6203  //
  6204  // API parameter values that are decorated as "sensitive" in the API will not
  6205  // be included in the string output. The member name will be present, but the
  6206  // value will be replaced with "sensitive".
  6207  func (s AssessmentMetadataItem) GoString() string {
  6208  	return s.String()
  6209  }
  6210  
  6211  // SetComplianceType sets the ComplianceType field's value.
  6212  func (s *AssessmentMetadataItem) SetComplianceType(v string) *AssessmentMetadataItem {
  6213  	s.ComplianceType = &v
  6214  	return s
  6215  }
  6216  
  6217  // SetCreationTime sets the CreationTime field's value.
  6218  func (s *AssessmentMetadataItem) SetCreationTime(v time.Time) *AssessmentMetadataItem {
  6219  	s.CreationTime = &v
  6220  	return s
  6221  }
  6222  
  6223  // SetDelegations sets the Delegations field's value.
  6224  func (s *AssessmentMetadataItem) SetDelegations(v []*Delegation) *AssessmentMetadataItem {
  6225  	s.Delegations = v
  6226  	return s
  6227  }
  6228  
  6229  // SetId sets the Id field's value.
  6230  func (s *AssessmentMetadataItem) SetId(v string) *AssessmentMetadataItem {
  6231  	s.Id = &v
  6232  	return s
  6233  }
  6234  
  6235  // SetLastUpdated sets the LastUpdated field's value.
  6236  func (s *AssessmentMetadataItem) SetLastUpdated(v time.Time) *AssessmentMetadataItem {
  6237  	s.LastUpdated = &v
  6238  	return s
  6239  }
  6240  
  6241  // SetName sets the Name field's value.
  6242  func (s *AssessmentMetadataItem) SetName(v string) *AssessmentMetadataItem {
  6243  	s.Name = &v
  6244  	return s
  6245  }
  6246  
  6247  // SetRoles sets the Roles field's value.
  6248  func (s *AssessmentMetadataItem) SetRoles(v []*Role) *AssessmentMetadataItem {
  6249  	s.Roles = v
  6250  	return s
  6251  }
  6252  
  6253  // SetStatus sets the Status field's value.
  6254  func (s *AssessmentMetadataItem) SetStatus(v string) *AssessmentMetadataItem {
  6255  	s.Status = &v
  6256  	return s
  6257  }
  6258  
  6259  // A finalized document generated from an Audit Manager assessment. These reports
  6260  // summarize the relevant evidence collected for your audit, and link to the
  6261  // relevant evidence folders which are named and organized according to the
  6262  // controls specified in your assessment.
  6263  type AssessmentReport struct {
  6264  	_ struct{} `type:"structure"`
  6265  
  6266  	// The identifier for the specified assessment.
  6267  	AssessmentId *string `locationName:"assessmentId" min:"36" type:"string"`
  6268  
  6269  	// The name of the associated assessment.
  6270  	AssessmentName *string `locationName:"assessmentName" min:"1" type:"string"`
  6271  
  6272  	// The name of the user who created the assessment report.
  6273  	Author *string `locationName:"author" min:"1" type:"string"`
  6274  
  6275  	// The identifier for the specified account.
  6276  	AwsAccountId *string `locationName:"awsAccountId" min:"12" type:"string"`
  6277  
  6278  	// Specifies when the assessment report was created.
  6279  	CreationTime *time.Time `locationName:"creationTime" type:"timestamp"`
  6280  
  6281  	// The description of the specified assessment report.
  6282  	Description *string `locationName:"description" type:"string"`
  6283  
  6284  	// The unique identifier for the specified assessment report.
  6285  	Id *string `locationName:"id" min:"36" type:"string"`
  6286  
  6287  	// The name given to the assessment report.
  6288  	Name *string `locationName:"name" min:"1" type:"string"`
  6289  
  6290  	// The current status of the specified assessment report.
  6291  	Status *string `locationName:"status" type:"string" enum:"AssessmentReportStatus"`
  6292  }
  6293  
  6294  // String returns the string representation.
  6295  //
  6296  // API parameter values that are decorated as "sensitive" in the API will not
  6297  // be included in the string output. The member name will be present, but the
  6298  // value will be replaced with "sensitive".
  6299  func (s AssessmentReport) String() string {
  6300  	return awsutil.Prettify(s)
  6301  }
  6302  
  6303  // GoString returns the string representation.
  6304  //
  6305  // API parameter values that are decorated as "sensitive" in the API will not
  6306  // be included in the string output. The member name will be present, but the
  6307  // value will be replaced with "sensitive".
  6308  func (s AssessmentReport) GoString() string {
  6309  	return s.String()
  6310  }
  6311  
  6312  // SetAssessmentId sets the AssessmentId field's value.
  6313  func (s *AssessmentReport) SetAssessmentId(v string) *AssessmentReport {
  6314  	s.AssessmentId = &v
  6315  	return s
  6316  }
  6317  
  6318  // SetAssessmentName sets the AssessmentName field's value.
  6319  func (s *AssessmentReport) SetAssessmentName(v string) *AssessmentReport {
  6320  	s.AssessmentName = &v
  6321  	return s
  6322  }
  6323  
  6324  // SetAuthor sets the Author field's value.
  6325  func (s *AssessmentReport) SetAuthor(v string) *AssessmentReport {
  6326  	s.Author = &v
  6327  	return s
  6328  }
  6329  
  6330  // SetAwsAccountId sets the AwsAccountId field's value.
  6331  func (s *AssessmentReport) SetAwsAccountId(v string) *AssessmentReport {
  6332  	s.AwsAccountId = &v
  6333  	return s
  6334  }
  6335  
  6336  // SetCreationTime sets the CreationTime field's value.
  6337  func (s *AssessmentReport) SetCreationTime(v time.Time) *AssessmentReport {
  6338  	s.CreationTime = &v
  6339  	return s
  6340  }
  6341  
  6342  // SetDescription sets the Description field's value.
  6343  func (s *AssessmentReport) SetDescription(v string) *AssessmentReport {
  6344  	s.Description = &v
  6345  	return s
  6346  }
  6347  
  6348  // SetId sets the Id field's value.
  6349  func (s *AssessmentReport) SetId(v string) *AssessmentReport {
  6350  	s.Id = &v
  6351  	return s
  6352  }
  6353  
  6354  // SetName sets the Name field's value.
  6355  func (s *AssessmentReport) SetName(v string) *AssessmentReport {
  6356  	s.Name = &v
  6357  	return s
  6358  }
  6359  
  6360  // SetStatus sets the Status field's value.
  6361  func (s *AssessmentReport) SetStatus(v string) *AssessmentReport {
  6362  	s.Status = &v
  6363  	return s
  6364  }
  6365  
  6366  // An error entity for the AssessmentReportEvidence API. This is used to provide
  6367  // more meaningful errors than a simple string message.
  6368  type AssessmentReportEvidenceError struct {
  6369  	_ struct{} `type:"structure"`
  6370  
  6371  	// The error code returned by the AssessmentReportEvidence API.
  6372  	ErrorCode *string `locationName:"errorCode" min:"3" type:"string"`
  6373  
  6374  	// The error message returned by the AssessmentReportEvidence API.
  6375  	ErrorMessage *string `locationName:"errorMessage" type:"string"`
  6376  
  6377  	// The identifier for the evidence.
  6378  	EvidenceId *string `locationName:"evidenceId" min:"36" type:"string"`
  6379  }
  6380  
  6381  // String returns the string representation.
  6382  //
  6383  // API parameter values that are decorated as "sensitive" in the API will not
  6384  // be included in the string output. The member name will be present, but the
  6385  // value will be replaced with "sensitive".
  6386  func (s AssessmentReportEvidenceError) String() string {
  6387  	return awsutil.Prettify(s)
  6388  }
  6389  
  6390  // GoString returns the string representation.
  6391  //
  6392  // API parameter values that are decorated as "sensitive" in the API will not
  6393  // be included in the string output. The member name will be present, but the
  6394  // value will be replaced with "sensitive".
  6395  func (s AssessmentReportEvidenceError) GoString() string {
  6396  	return s.String()
  6397  }
  6398  
  6399  // SetErrorCode sets the ErrorCode field's value.
  6400  func (s *AssessmentReportEvidenceError) SetErrorCode(v string) *AssessmentReportEvidenceError {
  6401  	s.ErrorCode = &v
  6402  	return s
  6403  }
  6404  
  6405  // SetErrorMessage sets the ErrorMessage field's value.
  6406  func (s *AssessmentReportEvidenceError) SetErrorMessage(v string) *AssessmentReportEvidenceError {
  6407  	s.ErrorMessage = &v
  6408  	return s
  6409  }
  6410  
  6411  // SetEvidenceId sets the EvidenceId field's value.
  6412  func (s *AssessmentReportEvidenceError) SetEvidenceId(v string) *AssessmentReportEvidenceError {
  6413  	s.EvidenceId = &v
  6414  	return s
  6415  }
  6416  
  6417  // The metadata objects associated with the specified assessment report.
  6418  type AssessmentReportMetadata struct {
  6419  	_ struct{} `type:"structure"`
  6420  
  6421  	// The unique identifier for the associated assessment.
  6422  	AssessmentId *string `locationName:"assessmentId" min:"36" type:"string"`
  6423  
  6424  	// The name of the associated assessment.
  6425  	AssessmentName *string `locationName:"assessmentName" min:"1" type:"string"`
  6426  
  6427  	// The name of the user who created the assessment report.
  6428  	Author *string `locationName:"author" min:"1" type:"string"`
  6429  
  6430  	// Specifies when the assessment report was created.
  6431  	CreationTime *time.Time `locationName:"creationTime" type:"timestamp"`
  6432  
  6433  	// The description of the specified assessment report.
  6434  	Description *string `locationName:"description" type:"string"`
  6435  
  6436  	// The unique identifier for the assessment report.
  6437  	Id *string `locationName:"id" min:"36" type:"string"`
  6438  
  6439  	// The name of the assessment report.
  6440  	Name *string `locationName:"name" min:"1" type:"string"`
  6441  
  6442  	// The current status of the assessment report.
  6443  	Status *string `locationName:"status" type:"string" enum:"AssessmentReportStatus"`
  6444  }
  6445  
  6446  // String returns the string representation.
  6447  //
  6448  // API parameter values that are decorated as "sensitive" in the API will not
  6449  // be included in the string output. The member name will be present, but the
  6450  // value will be replaced with "sensitive".
  6451  func (s AssessmentReportMetadata) String() string {
  6452  	return awsutil.Prettify(s)
  6453  }
  6454  
  6455  // GoString returns the string representation.
  6456  //
  6457  // API parameter values that are decorated as "sensitive" in the API will not
  6458  // be included in the string output. The member name will be present, but the
  6459  // value will be replaced with "sensitive".
  6460  func (s AssessmentReportMetadata) GoString() string {
  6461  	return s.String()
  6462  }
  6463  
  6464  // SetAssessmentId sets the AssessmentId field's value.
  6465  func (s *AssessmentReportMetadata) SetAssessmentId(v string) *AssessmentReportMetadata {
  6466  	s.AssessmentId = &v
  6467  	return s
  6468  }
  6469  
  6470  // SetAssessmentName sets the AssessmentName field's value.
  6471  func (s *AssessmentReportMetadata) SetAssessmentName(v string) *AssessmentReportMetadata {
  6472  	s.AssessmentName = &v
  6473  	return s
  6474  }
  6475  
  6476  // SetAuthor sets the Author field's value.
  6477  func (s *AssessmentReportMetadata) SetAuthor(v string) *AssessmentReportMetadata {
  6478  	s.Author = &v
  6479  	return s
  6480  }
  6481  
  6482  // SetCreationTime sets the CreationTime field's value.
  6483  func (s *AssessmentReportMetadata) SetCreationTime(v time.Time) *AssessmentReportMetadata {
  6484  	s.CreationTime = &v
  6485  	return s
  6486  }
  6487  
  6488  // SetDescription sets the Description field's value.
  6489  func (s *AssessmentReportMetadata) SetDescription(v string) *AssessmentReportMetadata {
  6490  	s.Description = &v
  6491  	return s
  6492  }
  6493  
  6494  // SetId sets the Id field's value.
  6495  func (s *AssessmentReportMetadata) SetId(v string) *AssessmentReportMetadata {
  6496  	s.Id = &v
  6497  	return s
  6498  }
  6499  
  6500  // SetName sets the Name field's value.
  6501  func (s *AssessmentReportMetadata) SetName(v string) *AssessmentReportMetadata {
  6502  	s.Name = &v
  6503  	return s
  6504  }
  6505  
  6506  // SetStatus sets the Status field's value.
  6507  func (s *AssessmentReportMetadata) SetStatus(v string) *AssessmentReportMetadata {
  6508  	s.Status = &v
  6509  	return s
  6510  }
  6511  
  6512  // The location in which Audit Manager saves assessment reports for the given
  6513  // assessment.
  6514  type AssessmentReportsDestination struct {
  6515  	_ struct{} `type:"structure"`
  6516  
  6517  	// The destination of the assessment report.
  6518  	Destination *string `locationName:"destination" min:"1" type:"string"`
  6519  
  6520  	// The destination type, such as Amazon S3.
  6521  	DestinationType *string `locationName:"destinationType" type:"string" enum:"AssessmentReportDestinationType"`
  6522  }
  6523  
  6524  // String returns the string representation.
  6525  //
  6526  // API parameter values that are decorated as "sensitive" in the API will not
  6527  // be included in the string output. The member name will be present, but the
  6528  // value will be replaced with "sensitive".
  6529  func (s AssessmentReportsDestination) String() string {
  6530  	return awsutil.Prettify(s)
  6531  }
  6532  
  6533  // GoString returns the string representation.
  6534  //
  6535  // API parameter values that are decorated as "sensitive" in the API will not
  6536  // be included in the string output. The member name will be present, but the
  6537  // value will be replaced with "sensitive".
  6538  func (s AssessmentReportsDestination) GoString() string {
  6539  	return s.String()
  6540  }
  6541  
  6542  // Validate inspects the fields of the type to determine if they are valid.
  6543  func (s *AssessmentReportsDestination) Validate() error {
  6544  	invalidParams := request.ErrInvalidParams{Context: "AssessmentReportsDestination"}
  6545  	if s.Destination != nil && len(*s.Destination) < 1 {
  6546  		invalidParams.Add(request.NewErrParamMinLen("Destination", 1))
  6547  	}
  6548  
  6549  	if invalidParams.Len() > 0 {
  6550  		return invalidParams
  6551  	}
  6552  	return nil
  6553  }
  6554  
  6555  // SetDestination sets the Destination field's value.
  6556  func (s *AssessmentReportsDestination) SetDestination(v string) *AssessmentReportsDestination {
  6557  	s.Destination = &v
  6558  	return s
  6559  }
  6560  
  6561  // SetDestinationType sets the DestinationType field's value.
  6562  func (s *AssessmentReportsDestination) SetDestinationType(v string) *AssessmentReportsDestination {
  6563  	s.DestinationType = &v
  6564  	return s
  6565  }
  6566  
  6567  type AssociateAssessmentReportEvidenceFolderInput struct {
  6568  	_ struct{} `type:"structure"`
  6569  
  6570  	// The identifier for the specified assessment.
  6571  	//
  6572  	// AssessmentId is a required field
  6573  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
  6574  
  6575  	// The identifier for the folder in which evidence is stored.
  6576  	//
  6577  	// EvidenceFolderId is a required field
  6578  	EvidenceFolderId *string `locationName:"evidenceFolderId" min:"36" type:"string" required:"true"`
  6579  }
  6580  
  6581  // String returns the string representation.
  6582  //
  6583  // API parameter values that are decorated as "sensitive" in the API will not
  6584  // be included in the string output. The member name will be present, but the
  6585  // value will be replaced with "sensitive".
  6586  func (s AssociateAssessmentReportEvidenceFolderInput) String() string {
  6587  	return awsutil.Prettify(s)
  6588  }
  6589  
  6590  // GoString returns the string representation.
  6591  //
  6592  // API parameter values that are decorated as "sensitive" in the API will not
  6593  // be included in the string output. The member name will be present, but the
  6594  // value will be replaced with "sensitive".
  6595  func (s AssociateAssessmentReportEvidenceFolderInput) GoString() string {
  6596  	return s.String()
  6597  }
  6598  
  6599  // Validate inspects the fields of the type to determine if they are valid.
  6600  func (s *AssociateAssessmentReportEvidenceFolderInput) Validate() error {
  6601  	invalidParams := request.ErrInvalidParams{Context: "AssociateAssessmentReportEvidenceFolderInput"}
  6602  	if s.AssessmentId == nil {
  6603  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
  6604  	}
  6605  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
  6606  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
  6607  	}
  6608  	if s.EvidenceFolderId == nil {
  6609  		invalidParams.Add(request.NewErrParamRequired("EvidenceFolderId"))
  6610  	}
  6611  	if s.EvidenceFolderId != nil && len(*s.EvidenceFolderId) < 36 {
  6612  		invalidParams.Add(request.NewErrParamMinLen("EvidenceFolderId", 36))
  6613  	}
  6614  
  6615  	if invalidParams.Len() > 0 {
  6616  		return invalidParams
  6617  	}
  6618  	return nil
  6619  }
  6620  
  6621  // SetAssessmentId sets the AssessmentId field's value.
  6622  func (s *AssociateAssessmentReportEvidenceFolderInput) SetAssessmentId(v string) *AssociateAssessmentReportEvidenceFolderInput {
  6623  	s.AssessmentId = &v
  6624  	return s
  6625  }
  6626  
  6627  // SetEvidenceFolderId sets the EvidenceFolderId field's value.
  6628  func (s *AssociateAssessmentReportEvidenceFolderInput) SetEvidenceFolderId(v string) *AssociateAssessmentReportEvidenceFolderInput {
  6629  	s.EvidenceFolderId = &v
  6630  	return s
  6631  }
  6632  
  6633  type AssociateAssessmentReportEvidenceFolderOutput struct {
  6634  	_ struct{} `type:"structure" nopayload:"true"`
  6635  }
  6636  
  6637  // String returns the string representation.
  6638  //
  6639  // API parameter values that are decorated as "sensitive" in the API will not
  6640  // be included in the string output. The member name will be present, but the
  6641  // value will be replaced with "sensitive".
  6642  func (s AssociateAssessmentReportEvidenceFolderOutput) String() string {
  6643  	return awsutil.Prettify(s)
  6644  }
  6645  
  6646  // GoString returns the string representation.
  6647  //
  6648  // API parameter values that are decorated as "sensitive" in the API will not
  6649  // be included in the string output. The member name will be present, but the
  6650  // value will be replaced with "sensitive".
  6651  func (s AssociateAssessmentReportEvidenceFolderOutput) GoString() string {
  6652  	return s.String()
  6653  }
  6654  
  6655  type BatchAssociateAssessmentReportEvidenceInput struct {
  6656  	_ struct{} `type:"structure"`
  6657  
  6658  	// The unique identifier for the specified assessment.
  6659  	//
  6660  	// AssessmentId is a required field
  6661  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
  6662  
  6663  	// The identifier for the folder in which the evidence is stored.
  6664  	//
  6665  	// EvidenceFolderId is a required field
  6666  	EvidenceFolderId *string `locationName:"evidenceFolderId" min:"36" type:"string" required:"true"`
  6667  
  6668  	// The list of evidence identifiers.
  6669  	//
  6670  	// EvidenceIds is a required field
  6671  	EvidenceIds []*string `locationName:"evidenceIds" type:"list" required:"true"`
  6672  }
  6673  
  6674  // String returns the string representation.
  6675  //
  6676  // API parameter values that are decorated as "sensitive" in the API will not
  6677  // be included in the string output. The member name will be present, but the
  6678  // value will be replaced with "sensitive".
  6679  func (s BatchAssociateAssessmentReportEvidenceInput) String() string {
  6680  	return awsutil.Prettify(s)
  6681  }
  6682  
  6683  // GoString returns the string representation.
  6684  //
  6685  // API parameter values that are decorated as "sensitive" in the API will not
  6686  // be included in the string output. The member name will be present, but the
  6687  // value will be replaced with "sensitive".
  6688  func (s BatchAssociateAssessmentReportEvidenceInput) GoString() string {
  6689  	return s.String()
  6690  }
  6691  
  6692  // Validate inspects the fields of the type to determine if they are valid.
  6693  func (s *BatchAssociateAssessmentReportEvidenceInput) Validate() error {
  6694  	invalidParams := request.ErrInvalidParams{Context: "BatchAssociateAssessmentReportEvidenceInput"}
  6695  	if s.AssessmentId == nil {
  6696  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
  6697  	}
  6698  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
  6699  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
  6700  	}
  6701  	if s.EvidenceFolderId == nil {
  6702  		invalidParams.Add(request.NewErrParamRequired("EvidenceFolderId"))
  6703  	}
  6704  	if s.EvidenceFolderId != nil && len(*s.EvidenceFolderId) < 36 {
  6705  		invalidParams.Add(request.NewErrParamMinLen("EvidenceFolderId", 36))
  6706  	}
  6707  	if s.EvidenceIds == nil {
  6708  		invalidParams.Add(request.NewErrParamRequired("EvidenceIds"))
  6709  	}
  6710  
  6711  	if invalidParams.Len() > 0 {
  6712  		return invalidParams
  6713  	}
  6714  	return nil
  6715  }
  6716  
  6717  // SetAssessmentId sets the AssessmentId field's value.
  6718  func (s *BatchAssociateAssessmentReportEvidenceInput) SetAssessmentId(v string) *BatchAssociateAssessmentReportEvidenceInput {
  6719  	s.AssessmentId = &v
  6720  	return s
  6721  }
  6722  
  6723  // SetEvidenceFolderId sets the EvidenceFolderId field's value.
  6724  func (s *BatchAssociateAssessmentReportEvidenceInput) SetEvidenceFolderId(v string) *BatchAssociateAssessmentReportEvidenceInput {
  6725  	s.EvidenceFolderId = &v
  6726  	return s
  6727  }
  6728  
  6729  // SetEvidenceIds sets the EvidenceIds field's value.
  6730  func (s *BatchAssociateAssessmentReportEvidenceInput) SetEvidenceIds(v []*string) *BatchAssociateAssessmentReportEvidenceInput {
  6731  	s.EvidenceIds = v
  6732  	return s
  6733  }
  6734  
  6735  type BatchAssociateAssessmentReportEvidenceOutput struct {
  6736  	_ struct{} `type:"structure"`
  6737  
  6738  	// A list of errors returned by the BatchAssociateAssessmentReportEvidence API.
  6739  	Errors []*AssessmentReportEvidenceError `locationName:"errors" type:"list"`
  6740  
  6741  	// The identifier for the evidence.
  6742  	EvidenceIds []*string `locationName:"evidenceIds" type:"list"`
  6743  }
  6744  
  6745  // String returns the string representation.
  6746  //
  6747  // API parameter values that are decorated as "sensitive" in the API will not
  6748  // be included in the string output. The member name will be present, but the
  6749  // value will be replaced with "sensitive".
  6750  func (s BatchAssociateAssessmentReportEvidenceOutput) String() string {
  6751  	return awsutil.Prettify(s)
  6752  }
  6753  
  6754  // GoString returns the string representation.
  6755  //
  6756  // API parameter values that are decorated as "sensitive" in the API will not
  6757  // be included in the string output. The member name will be present, but the
  6758  // value will be replaced with "sensitive".
  6759  func (s BatchAssociateAssessmentReportEvidenceOutput) GoString() string {
  6760  	return s.String()
  6761  }
  6762  
  6763  // SetErrors sets the Errors field's value.
  6764  func (s *BatchAssociateAssessmentReportEvidenceOutput) SetErrors(v []*AssessmentReportEvidenceError) *BatchAssociateAssessmentReportEvidenceOutput {
  6765  	s.Errors = v
  6766  	return s
  6767  }
  6768  
  6769  // SetEvidenceIds sets the EvidenceIds field's value.
  6770  func (s *BatchAssociateAssessmentReportEvidenceOutput) SetEvidenceIds(v []*string) *BatchAssociateAssessmentReportEvidenceOutput {
  6771  	s.EvidenceIds = v
  6772  	return s
  6773  }
  6774  
  6775  // An error entity for the BatchCreateDelegationByAssessment API. This is used
  6776  // to provide more meaningful errors than a simple string message.
  6777  type BatchCreateDelegationByAssessmentError struct {
  6778  	_ struct{} `type:"structure"`
  6779  
  6780  	// The API request to batch create delegations in Audit Manager.
  6781  	CreateDelegationRequest *CreateDelegationRequest `locationName:"createDelegationRequest" type:"structure"`
  6782  
  6783  	// The error code returned by the BatchCreateDelegationByAssessment API.
  6784  	ErrorCode *string `locationName:"errorCode" min:"3" type:"string"`
  6785  
  6786  	// The error message returned by the BatchCreateDelegationByAssessment API.
  6787  	ErrorMessage *string `locationName:"errorMessage" type:"string"`
  6788  }
  6789  
  6790  // String returns the string representation.
  6791  //
  6792  // API parameter values that are decorated as "sensitive" in the API will not
  6793  // be included in the string output. The member name will be present, but the
  6794  // value will be replaced with "sensitive".
  6795  func (s BatchCreateDelegationByAssessmentError) String() string {
  6796  	return awsutil.Prettify(s)
  6797  }
  6798  
  6799  // GoString returns the string representation.
  6800  //
  6801  // API parameter values that are decorated as "sensitive" in the API will not
  6802  // be included in the string output. The member name will be present, but the
  6803  // value will be replaced with "sensitive".
  6804  func (s BatchCreateDelegationByAssessmentError) GoString() string {
  6805  	return s.String()
  6806  }
  6807  
  6808  // SetCreateDelegationRequest sets the CreateDelegationRequest field's value.
  6809  func (s *BatchCreateDelegationByAssessmentError) SetCreateDelegationRequest(v *CreateDelegationRequest) *BatchCreateDelegationByAssessmentError {
  6810  	s.CreateDelegationRequest = v
  6811  	return s
  6812  }
  6813  
  6814  // SetErrorCode sets the ErrorCode field's value.
  6815  func (s *BatchCreateDelegationByAssessmentError) SetErrorCode(v string) *BatchCreateDelegationByAssessmentError {
  6816  	s.ErrorCode = &v
  6817  	return s
  6818  }
  6819  
  6820  // SetErrorMessage sets the ErrorMessage field's value.
  6821  func (s *BatchCreateDelegationByAssessmentError) SetErrorMessage(v string) *BatchCreateDelegationByAssessmentError {
  6822  	s.ErrorMessage = &v
  6823  	return s
  6824  }
  6825  
  6826  type BatchCreateDelegationByAssessmentInput struct {
  6827  	_ struct{} `type:"structure"`
  6828  
  6829  	// The identifier for the specified assessment.
  6830  	//
  6831  	// AssessmentId is a required field
  6832  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
  6833  
  6834  	// The API request to batch create delegations in Audit Manager.
  6835  	//
  6836  	// CreateDelegationRequests is a required field
  6837  	CreateDelegationRequests []*CreateDelegationRequest `locationName:"createDelegationRequests" min:"1" type:"list" required:"true"`
  6838  }
  6839  
  6840  // String returns the string representation.
  6841  //
  6842  // API parameter values that are decorated as "sensitive" in the API will not
  6843  // be included in the string output. The member name will be present, but the
  6844  // value will be replaced with "sensitive".
  6845  func (s BatchCreateDelegationByAssessmentInput) String() string {
  6846  	return awsutil.Prettify(s)
  6847  }
  6848  
  6849  // GoString returns the string representation.
  6850  //
  6851  // API parameter values that are decorated as "sensitive" in the API will not
  6852  // be included in the string output. The member name will be present, but the
  6853  // value will be replaced with "sensitive".
  6854  func (s BatchCreateDelegationByAssessmentInput) GoString() string {
  6855  	return s.String()
  6856  }
  6857  
  6858  // Validate inspects the fields of the type to determine if they are valid.
  6859  func (s *BatchCreateDelegationByAssessmentInput) Validate() error {
  6860  	invalidParams := request.ErrInvalidParams{Context: "BatchCreateDelegationByAssessmentInput"}
  6861  	if s.AssessmentId == nil {
  6862  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
  6863  	}
  6864  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
  6865  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
  6866  	}
  6867  	if s.CreateDelegationRequests == nil {
  6868  		invalidParams.Add(request.NewErrParamRequired("CreateDelegationRequests"))
  6869  	}
  6870  	if s.CreateDelegationRequests != nil && len(s.CreateDelegationRequests) < 1 {
  6871  		invalidParams.Add(request.NewErrParamMinLen("CreateDelegationRequests", 1))
  6872  	}
  6873  	if s.CreateDelegationRequests != nil {
  6874  		for i, v := range s.CreateDelegationRequests {
  6875  			if v == nil {
  6876  				continue
  6877  			}
  6878  			if err := v.Validate(); err != nil {
  6879  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CreateDelegationRequests", i), err.(request.ErrInvalidParams))
  6880  			}
  6881  		}
  6882  	}
  6883  
  6884  	if invalidParams.Len() > 0 {
  6885  		return invalidParams
  6886  	}
  6887  	return nil
  6888  }
  6889  
  6890  // SetAssessmentId sets the AssessmentId field's value.
  6891  func (s *BatchCreateDelegationByAssessmentInput) SetAssessmentId(v string) *BatchCreateDelegationByAssessmentInput {
  6892  	s.AssessmentId = &v
  6893  	return s
  6894  }
  6895  
  6896  // SetCreateDelegationRequests sets the CreateDelegationRequests field's value.
  6897  func (s *BatchCreateDelegationByAssessmentInput) SetCreateDelegationRequests(v []*CreateDelegationRequest) *BatchCreateDelegationByAssessmentInput {
  6898  	s.CreateDelegationRequests = v
  6899  	return s
  6900  }
  6901  
  6902  type BatchCreateDelegationByAssessmentOutput struct {
  6903  	_ struct{} `type:"structure"`
  6904  
  6905  	// The delegations associated with the assessment.
  6906  	Delegations []*Delegation `locationName:"delegations" type:"list"`
  6907  
  6908  	// A list of errors returned by the BatchCreateDelegationByAssessment API.
  6909  	Errors []*BatchCreateDelegationByAssessmentError `locationName:"errors" type:"list"`
  6910  }
  6911  
  6912  // String returns the string representation.
  6913  //
  6914  // API parameter values that are decorated as "sensitive" in the API will not
  6915  // be included in the string output. The member name will be present, but the
  6916  // value will be replaced with "sensitive".
  6917  func (s BatchCreateDelegationByAssessmentOutput) String() string {
  6918  	return awsutil.Prettify(s)
  6919  }
  6920  
  6921  // GoString returns the string representation.
  6922  //
  6923  // API parameter values that are decorated as "sensitive" in the API will not
  6924  // be included in the string output. The member name will be present, but the
  6925  // value will be replaced with "sensitive".
  6926  func (s BatchCreateDelegationByAssessmentOutput) GoString() string {
  6927  	return s.String()
  6928  }
  6929  
  6930  // SetDelegations sets the Delegations field's value.
  6931  func (s *BatchCreateDelegationByAssessmentOutput) SetDelegations(v []*Delegation) *BatchCreateDelegationByAssessmentOutput {
  6932  	s.Delegations = v
  6933  	return s
  6934  }
  6935  
  6936  // SetErrors sets the Errors field's value.
  6937  func (s *BatchCreateDelegationByAssessmentOutput) SetErrors(v []*BatchCreateDelegationByAssessmentError) *BatchCreateDelegationByAssessmentOutput {
  6938  	s.Errors = v
  6939  	return s
  6940  }
  6941  
  6942  // An error entity for the BatchDeleteDelegationByAssessment API. This is used
  6943  // to provide more meaningful errors than a simple string message.
  6944  type BatchDeleteDelegationByAssessmentError struct {
  6945  	_ struct{} `type:"structure"`
  6946  
  6947  	// The identifier for the specified delegation.
  6948  	DelegationId *string `locationName:"delegationId" min:"36" type:"string"`
  6949  
  6950  	// The error code returned by the BatchDeleteDelegationByAssessment API.
  6951  	ErrorCode *string `locationName:"errorCode" min:"3" type:"string"`
  6952  
  6953  	// The error message returned by the BatchDeleteDelegationByAssessment API.
  6954  	ErrorMessage *string `locationName:"errorMessage" type:"string"`
  6955  }
  6956  
  6957  // String returns the string representation.
  6958  //
  6959  // API parameter values that are decorated as "sensitive" in the API will not
  6960  // be included in the string output. The member name will be present, but the
  6961  // value will be replaced with "sensitive".
  6962  func (s BatchDeleteDelegationByAssessmentError) String() string {
  6963  	return awsutil.Prettify(s)
  6964  }
  6965  
  6966  // GoString returns the string representation.
  6967  //
  6968  // API parameter values that are decorated as "sensitive" in the API will not
  6969  // be included in the string output. The member name will be present, but the
  6970  // value will be replaced with "sensitive".
  6971  func (s BatchDeleteDelegationByAssessmentError) GoString() string {
  6972  	return s.String()
  6973  }
  6974  
  6975  // SetDelegationId sets the DelegationId field's value.
  6976  func (s *BatchDeleteDelegationByAssessmentError) SetDelegationId(v string) *BatchDeleteDelegationByAssessmentError {
  6977  	s.DelegationId = &v
  6978  	return s
  6979  }
  6980  
  6981  // SetErrorCode sets the ErrorCode field's value.
  6982  func (s *BatchDeleteDelegationByAssessmentError) SetErrorCode(v string) *BatchDeleteDelegationByAssessmentError {
  6983  	s.ErrorCode = &v
  6984  	return s
  6985  }
  6986  
  6987  // SetErrorMessage sets the ErrorMessage field's value.
  6988  func (s *BatchDeleteDelegationByAssessmentError) SetErrorMessage(v string) *BatchDeleteDelegationByAssessmentError {
  6989  	s.ErrorMessage = &v
  6990  	return s
  6991  }
  6992  
  6993  type BatchDeleteDelegationByAssessmentInput struct {
  6994  	_ struct{} `type:"structure"`
  6995  
  6996  	// The identifier for the specified assessment.
  6997  	//
  6998  	// AssessmentId is a required field
  6999  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
  7000  
  7001  	// The identifiers for the specified delegations.
  7002  	//
  7003  	// DelegationIds is a required field
  7004  	DelegationIds []*string `locationName:"delegationIds" min:"1" type:"list" required:"true"`
  7005  }
  7006  
  7007  // String returns the string representation.
  7008  //
  7009  // API parameter values that are decorated as "sensitive" in the API will not
  7010  // be included in the string output. The member name will be present, but the
  7011  // value will be replaced with "sensitive".
  7012  func (s BatchDeleteDelegationByAssessmentInput) String() string {
  7013  	return awsutil.Prettify(s)
  7014  }
  7015  
  7016  // GoString returns the string representation.
  7017  //
  7018  // API parameter values that are decorated as "sensitive" in the API will not
  7019  // be included in the string output. The member name will be present, but the
  7020  // value will be replaced with "sensitive".
  7021  func (s BatchDeleteDelegationByAssessmentInput) GoString() string {
  7022  	return s.String()
  7023  }
  7024  
  7025  // Validate inspects the fields of the type to determine if they are valid.
  7026  func (s *BatchDeleteDelegationByAssessmentInput) Validate() error {
  7027  	invalidParams := request.ErrInvalidParams{Context: "BatchDeleteDelegationByAssessmentInput"}
  7028  	if s.AssessmentId == nil {
  7029  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
  7030  	}
  7031  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
  7032  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
  7033  	}
  7034  	if s.DelegationIds == nil {
  7035  		invalidParams.Add(request.NewErrParamRequired("DelegationIds"))
  7036  	}
  7037  	if s.DelegationIds != nil && len(s.DelegationIds) < 1 {
  7038  		invalidParams.Add(request.NewErrParamMinLen("DelegationIds", 1))
  7039  	}
  7040  
  7041  	if invalidParams.Len() > 0 {
  7042  		return invalidParams
  7043  	}
  7044  	return nil
  7045  }
  7046  
  7047  // SetAssessmentId sets the AssessmentId field's value.
  7048  func (s *BatchDeleteDelegationByAssessmentInput) SetAssessmentId(v string) *BatchDeleteDelegationByAssessmentInput {
  7049  	s.AssessmentId = &v
  7050  	return s
  7051  }
  7052  
  7053  // SetDelegationIds sets the DelegationIds field's value.
  7054  func (s *BatchDeleteDelegationByAssessmentInput) SetDelegationIds(v []*string) *BatchDeleteDelegationByAssessmentInput {
  7055  	s.DelegationIds = v
  7056  	return s
  7057  }
  7058  
  7059  type BatchDeleteDelegationByAssessmentOutput struct {
  7060  	_ struct{} `type:"structure"`
  7061  
  7062  	// A list of errors returned by the BatchDeleteDelegationByAssessment API.
  7063  	Errors []*BatchDeleteDelegationByAssessmentError `locationName:"errors" type:"list"`
  7064  }
  7065  
  7066  // String returns the string representation.
  7067  //
  7068  // API parameter values that are decorated as "sensitive" in the API will not
  7069  // be included in the string output. The member name will be present, but the
  7070  // value will be replaced with "sensitive".
  7071  func (s BatchDeleteDelegationByAssessmentOutput) String() string {
  7072  	return awsutil.Prettify(s)
  7073  }
  7074  
  7075  // GoString returns the string representation.
  7076  //
  7077  // API parameter values that are decorated as "sensitive" in the API will not
  7078  // be included in the string output. The member name will be present, but the
  7079  // value will be replaced with "sensitive".
  7080  func (s BatchDeleteDelegationByAssessmentOutput) GoString() string {
  7081  	return s.String()
  7082  }
  7083  
  7084  // SetErrors sets the Errors field's value.
  7085  func (s *BatchDeleteDelegationByAssessmentOutput) SetErrors(v []*BatchDeleteDelegationByAssessmentError) *BatchDeleteDelegationByAssessmentOutput {
  7086  	s.Errors = v
  7087  	return s
  7088  }
  7089  
  7090  type BatchDisassociateAssessmentReportEvidenceInput struct {
  7091  	_ struct{} `type:"structure"`
  7092  
  7093  	// The identifier for the specified assessment.
  7094  	//
  7095  	// AssessmentId is a required field
  7096  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
  7097  
  7098  	// The identifier for the folder in which evidence is stored.
  7099  	//
  7100  	// EvidenceFolderId is a required field
  7101  	EvidenceFolderId *string `locationName:"evidenceFolderId" min:"36" type:"string" required:"true"`
  7102  
  7103  	// The list of evidence identifiers.
  7104  	//
  7105  	// EvidenceIds is a required field
  7106  	EvidenceIds []*string `locationName:"evidenceIds" type:"list" required:"true"`
  7107  }
  7108  
  7109  // String returns the string representation.
  7110  //
  7111  // API parameter values that are decorated as "sensitive" in the API will not
  7112  // be included in the string output. The member name will be present, but the
  7113  // value will be replaced with "sensitive".
  7114  func (s BatchDisassociateAssessmentReportEvidenceInput) String() string {
  7115  	return awsutil.Prettify(s)
  7116  }
  7117  
  7118  // GoString returns the string representation.
  7119  //
  7120  // API parameter values that are decorated as "sensitive" in the API will not
  7121  // be included in the string output. The member name will be present, but the
  7122  // value will be replaced with "sensitive".
  7123  func (s BatchDisassociateAssessmentReportEvidenceInput) GoString() string {
  7124  	return s.String()
  7125  }
  7126  
  7127  // Validate inspects the fields of the type to determine if they are valid.
  7128  func (s *BatchDisassociateAssessmentReportEvidenceInput) Validate() error {
  7129  	invalidParams := request.ErrInvalidParams{Context: "BatchDisassociateAssessmentReportEvidenceInput"}
  7130  	if s.AssessmentId == nil {
  7131  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
  7132  	}
  7133  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
  7134  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
  7135  	}
  7136  	if s.EvidenceFolderId == nil {
  7137  		invalidParams.Add(request.NewErrParamRequired("EvidenceFolderId"))
  7138  	}
  7139  	if s.EvidenceFolderId != nil && len(*s.EvidenceFolderId) < 36 {
  7140  		invalidParams.Add(request.NewErrParamMinLen("EvidenceFolderId", 36))
  7141  	}
  7142  	if s.EvidenceIds == nil {
  7143  		invalidParams.Add(request.NewErrParamRequired("EvidenceIds"))
  7144  	}
  7145  
  7146  	if invalidParams.Len() > 0 {
  7147  		return invalidParams
  7148  	}
  7149  	return nil
  7150  }
  7151  
  7152  // SetAssessmentId sets the AssessmentId field's value.
  7153  func (s *BatchDisassociateAssessmentReportEvidenceInput) SetAssessmentId(v string) *BatchDisassociateAssessmentReportEvidenceInput {
  7154  	s.AssessmentId = &v
  7155  	return s
  7156  }
  7157  
  7158  // SetEvidenceFolderId sets the EvidenceFolderId field's value.
  7159  func (s *BatchDisassociateAssessmentReportEvidenceInput) SetEvidenceFolderId(v string) *BatchDisassociateAssessmentReportEvidenceInput {
  7160  	s.EvidenceFolderId = &v
  7161  	return s
  7162  }
  7163  
  7164  // SetEvidenceIds sets the EvidenceIds field's value.
  7165  func (s *BatchDisassociateAssessmentReportEvidenceInput) SetEvidenceIds(v []*string) *BatchDisassociateAssessmentReportEvidenceInput {
  7166  	s.EvidenceIds = v
  7167  	return s
  7168  }
  7169  
  7170  type BatchDisassociateAssessmentReportEvidenceOutput struct {
  7171  	_ struct{} `type:"structure"`
  7172  
  7173  	// A list of errors returned by the BatchDisassociateAssessmentReportEvidence
  7174  	// API.
  7175  	Errors []*AssessmentReportEvidenceError `locationName:"errors" type:"list"`
  7176  
  7177  	// The identifier for the evidence.
  7178  	EvidenceIds []*string `locationName:"evidenceIds" type:"list"`
  7179  }
  7180  
  7181  // String returns the string representation.
  7182  //
  7183  // API parameter values that are decorated as "sensitive" in the API will not
  7184  // be included in the string output. The member name will be present, but the
  7185  // value will be replaced with "sensitive".
  7186  func (s BatchDisassociateAssessmentReportEvidenceOutput) String() string {
  7187  	return awsutil.Prettify(s)
  7188  }
  7189  
  7190  // GoString returns the string representation.
  7191  //
  7192  // API parameter values that are decorated as "sensitive" in the API will not
  7193  // be included in the string output. The member name will be present, but the
  7194  // value will be replaced with "sensitive".
  7195  func (s BatchDisassociateAssessmentReportEvidenceOutput) GoString() string {
  7196  	return s.String()
  7197  }
  7198  
  7199  // SetErrors sets the Errors field's value.
  7200  func (s *BatchDisassociateAssessmentReportEvidenceOutput) SetErrors(v []*AssessmentReportEvidenceError) *BatchDisassociateAssessmentReportEvidenceOutput {
  7201  	s.Errors = v
  7202  	return s
  7203  }
  7204  
  7205  // SetEvidenceIds sets the EvidenceIds field's value.
  7206  func (s *BatchDisassociateAssessmentReportEvidenceOutput) SetEvidenceIds(v []*string) *BatchDisassociateAssessmentReportEvidenceOutput {
  7207  	s.EvidenceIds = v
  7208  	return s
  7209  }
  7210  
  7211  // An error entity for the BatchImportEvidenceToAssessmentControl API. This
  7212  // is used to provide more meaningful errors than a simple string message.
  7213  type BatchImportEvidenceToAssessmentControlError struct {
  7214  	_ struct{} `type:"structure"`
  7215  
  7216  	// The error code returned by the BatchImportEvidenceToAssessmentControl API.
  7217  	ErrorCode *string `locationName:"errorCode" min:"3" type:"string"`
  7218  
  7219  	// The error message returned by the BatchImportEvidenceToAssessmentControl
  7220  	// API.
  7221  	ErrorMessage *string `locationName:"errorMessage" type:"string"`
  7222  
  7223  	// Manual evidence that cannot be collected automatically by Audit Manager.
  7224  	ManualEvidence *ManualEvidence `locationName:"manualEvidence" type:"structure"`
  7225  }
  7226  
  7227  // String returns the string representation.
  7228  //
  7229  // API parameter values that are decorated as "sensitive" in the API will not
  7230  // be included in the string output. The member name will be present, but the
  7231  // value will be replaced with "sensitive".
  7232  func (s BatchImportEvidenceToAssessmentControlError) String() string {
  7233  	return awsutil.Prettify(s)
  7234  }
  7235  
  7236  // GoString returns the string representation.
  7237  //
  7238  // API parameter values that are decorated as "sensitive" in the API will not
  7239  // be included in the string output. The member name will be present, but the
  7240  // value will be replaced with "sensitive".
  7241  func (s BatchImportEvidenceToAssessmentControlError) GoString() string {
  7242  	return s.String()
  7243  }
  7244  
  7245  // SetErrorCode sets the ErrorCode field's value.
  7246  func (s *BatchImportEvidenceToAssessmentControlError) SetErrorCode(v string) *BatchImportEvidenceToAssessmentControlError {
  7247  	s.ErrorCode = &v
  7248  	return s
  7249  }
  7250  
  7251  // SetErrorMessage sets the ErrorMessage field's value.
  7252  func (s *BatchImportEvidenceToAssessmentControlError) SetErrorMessage(v string) *BatchImportEvidenceToAssessmentControlError {
  7253  	s.ErrorMessage = &v
  7254  	return s
  7255  }
  7256  
  7257  // SetManualEvidence sets the ManualEvidence field's value.
  7258  func (s *BatchImportEvidenceToAssessmentControlError) SetManualEvidence(v *ManualEvidence) *BatchImportEvidenceToAssessmentControlError {
  7259  	s.ManualEvidence = v
  7260  	return s
  7261  }
  7262  
  7263  type BatchImportEvidenceToAssessmentControlInput struct {
  7264  	_ struct{} `type:"structure"`
  7265  
  7266  	// The identifier for the specified assessment.
  7267  	//
  7268  	// AssessmentId is a required field
  7269  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
  7270  
  7271  	// The identifier for the specified control.
  7272  	//
  7273  	// ControlId is a required field
  7274  	ControlId *string `location:"uri" locationName:"controlId" min:"36" type:"string" required:"true"`
  7275  
  7276  	// The identifier for the specified control set.
  7277  	//
  7278  	// ControlSetId is a required field
  7279  	ControlSetId *string `location:"uri" locationName:"controlSetId" min:"1" type:"string" required:"true"`
  7280  
  7281  	// The list of manual evidence objects.
  7282  	//
  7283  	// ManualEvidence is a required field
  7284  	ManualEvidence []*ManualEvidence `locationName:"manualEvidence" min:"1" type:"list" required:"true"`
  7285  }
  7286  
  7287  // String returns the string representation.
  7288  //
  7289  // API parameter values that are decorated as "sensitive" in the API will not
  7290  // be included in the string output. The member name will be present, but the
  7291  // value will be replaced with "sensitive".
  7292  func (s BatchImportEvidenceToAssessmentControlInput) String() string {
  7293  	return awsutil.Prettify(s)
  7294  }
  7295  
  7296  // GoString returns the string representation.
  7297  //
  7298  // API parameter values that are decorated as "sensitive" in the API will not
  7299  // be included in the string output. The member name will be present, but the
  7300  // value will be replaced with "sensitive".
  7301  func (s BatchImportEvidenceToAssessmentControlInput) GoString() string {
  7302  	return s.String()
  7303  }
  7304  
  7305  // Validate inspects the fields of the type to determine if they are valid.
  7306  func (s *BatchImportEvidenceToAssessmentControlInput) Validate() error {
  7307  	invalidParams := request.ErrInvalidParams{Context: "BatchImportEvidenceToAssessmentControlInput"}
  7308  	if s.AssessmentId == nil {
  7309  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
  7310  	}
  7311  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
  7312  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
  7313  	}
  7314  	if s.ControlId == nil {
  7315  		invalidParams.Add(request.NewErrParamRequired("ControlId"))
  7316  	}
  7317  	if s.ControlId != nil && len(*s.ControlId) < 36 {
  7318  		invalidParams.Add(request.NewErrParamMinLen("ControlId", 36))
  7319  	}
  7320  	if s.ControlSetId == nil {
  7321  		invalidParams.Add(request.NewErrParamRequired("ControlSetId"))
  7322  	}
  7323  	if s.ControlSetId != nil && len(*s.ControlSetId) < 1 {
  7324  		invalidParams.Add(request.NewErrParamMinLen("ControlSetId", 1))
  7325  	}
  7326  	if s.ManualEvidence == nil {
  7327  		invalidParams.Add(request.NewErrParamRequired("ManualEvidence"))
  7328  	}
  7329  	if s.ManualEvidence != nil && len(s.ManualEvidence) < 1 {
  7330  		invalidParams.Add(request.NewErrParamMinLen("ManualEvidence", 1))
  7331  	}
  7332  	if s.ManualEvidence != nil {
  7333  		for i, v := range s.ManualEvidence {
  7334  			if v == nil {
  7335  				continue
  7336  			}
  7337  			if err := v.Validate(); err != nil {
  7338  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ManualEvidence", i), err.(request.ErrInvalidParams))
  7339  			}
  7340  		}
  7341  	}
  7342  
  7343  	if invalidParams.Len() > 0 {
  7344  		return invalidParams
  7345  	}
  7346  	return nil
  7347  }
  7348  
  7349  // SetAssessmentId sets the AssessmentId field's value.
  7350  func (s *BatchImportEvidenceToAssessmentControlInput) SetAssessmentId(v string) *BatchImportEvidenceToAssessmentControlInput {
  7351  	s.AssessmentId = &v
  7352  	return s
  7353  }
  7354  
  7355  // SetControlId sets the ControlId field's value.
  7356  func (s *BatchImportEvidenceToAssessmentControlInput) SetControlId(v string) *BatchImportEvidenceToAssessmentControlInput {
  7357  	s.ControlId = &v
  7358  	return s
  7359  }
  7360  
  7361  // SetControlSetId sets the ControlSetId field's value.
  7362  func (s *BatchImportEvidenceToAssessmentControlInput) SetControlSetId(v string) *BatchImportEvidenceToAssessmentControlInput {
  7363  	s.ControlSetId = &v
  7364  	return s
  7365  }
  7366  
  7367  // SetManualEvidence sets the ManualEvidence field's value.
  7368  func (s *BatchImportEvidenceToAssessmentControlInput) SetManualEvidence(v []*ManualEvidence) *BatchImportEvidenceToAssessmentControlInput {
  7369  	s.ManualEvidence = v
  7370  	return s
  7371  }
  7372  
  7373  type BatchImportEvidenceToAssessmentControlOutput struct {
  7374  	_ struct{} `type:"structure"`
  7375  
  7376  	// A list of errors returned by the BatchImportEvidenceToAssessmentControl API.
  7377  	Errors []*BatchImportEvidenceToAssessmentControlError `locationName:"errors" type:"list"`
  7378  }
  7379  
  7380  // String returns the string representation.
  7381  //
  7382  // API parameter values that are decorated as "sensitive" in the API will not
  7383  // be included in the string output. The member name will be present, but the
  7384  // value will be replaced with "sensitive".
  7385  func (s BatchImportEvidenceToAssessmentControlOutput) String() string {
  7386  	return awsutil.Prettify(s)
  7387  }
  7388  
  7389  // GoString returns the string representation.
  7390  //
  7391  // API parameter values that are decorated as "sensitive" in the API will not
  7392  // be included in the string output. The member name will be present, but the
  7393  // value will be replaced with "sensitive".
  7394  func (s BatchImportEvidenceToAssessmentControlOutput) GoString() string {
  7395  	return s.String()
  7396  }
  7397  
  7398  // SetErrors sets the Errors field's value.
  7399  func (s *BatchImportEvidenceToAssessmentControlOutput) SetErrors(v []*BatchImportEvidenceToAssessmentControlError) *BatchImportEvidenceToAssessmentControlOutput {
  7400  	s.Errors = v
  7401  	return s
  7402  }
  7403  
  7404  // The record of a change within Audit Manager, such as a modified assessment,
  7405  // a delegated control set, and so on.
  7406  type ChangeLog struct {
  7407  	_ struct{} `type:"structure"`
  7408  
  7409  	// The action performed.
  7410  	Action *string `locationName:"action" type:"string" enum:"ActionEnum"`
  7411  
  7412  	// The time of creation for the changelog object.
  7413  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
  7414  
  7415  	// The IAM user or role that performed the action.
  7416  	CreatedBy *string `locationName:"createdBy" min:"20" type:"string"`
  7417  
  7418  	// The name of the changelog object.
  7419  	ObjectName *string `locationName:"objectName" min:"1" type:"string"`
  7420  
  7421  	// The changelog object type, such as an assessment, control, or control set.
  7422  	ObjectType *string `locationName:"objectType" type:"string" enum:"ObjectTypeEnum"`
  7423  }
  7424  
  7425  // String returns the string representation.
  7426  //
  7427  // API parameter values that are decorated as "sensitive" in the API will not
  7428  // be included in the string output. The member name will be present, but the
  7429  // value will be replaced with "sensitive".
  7430  func (s ChangeLog) String() string {
  7431  	return awsutil.Prettify(s)
  7432  }
  7433  
  7434  // GoString returns the string representation.
  7435  //
  7436  // API parameter values that are decorated as "sensitive" in the API will not
  7437  // be included in the string output. The member name will be present, but the
  7438  // value will be replaced with "sensitive".
  7439  func (s ChangeLog) GoString() string {
  7440  	return s.String()
  7441  }
  7442  
  7443  // SetAction sets the Action field's value.
  7444  func (s *ChangeLog) SetAction(v string) *ChangeLog {
  7445  	s.Action = &v
  7446  	return s
  7447  }
  7448  
  7449  // SetCreatedAt sets the CreatedAt field's value.
  7450  func (s *ChangeLog) SetCreatedAt(v time.Time) *ChangeLog {
  7451  	s.CreatedAt = &v
  7452  	return s
  7453  }
  7454  
  7455  // SetCreatedBy sets the CreatedBy field's value.
  7456  func (s *ChangeLog) SetCreatedBy(v string) *ChangeLog {
  7457  	s.CreatedBy = &v
  7458  	return s
  7459  }
  7460  
  7461  // SetObjectName sets the ObjectName field's value.
  7462  func (s *ChangeLog) SetObjectName(v string) *ChangeLog {
  7463  	s.ObjectName = &v
  7464  	return s
  7465  }
  7466  
  7467  // SetObjectType sets the ObjectType field's value.
  7468  func (s *ChangeLog) SetObjectType(v string) *ChangeLog {
  7469  	s.ObjectType = &v
  7470  	return s
  7471  }
  7472  
  7473  // A control in Audit Manager.
  7474  type Control struct {
  7475  	_ struct{} `type:"structure"`
  7476  
  7477  	// The recommended actions to carry out if the control is not fulfilled.
  7478  	ActionPlanInstructions *string `locationName:"actionPlanInstructions" type:"string"`
  7479  
  7480  	// The title of the action plan for remediating the control.
  7481  	ActionPlanTitle *string `locationName:"actionPlanTitle" type:"string"`
  7482  
  7483  	// The Amazon Resource Name (ARN) of the specified control.
  7484  	Arn *string `locationName:"arn" min:"20" type:"string"`
  7485  
  7486  	// The data mapping sources for the specified control.
  7487  	ControlMappingSources []*ControlMappingSource `locationName:"controlMappingSources" min:"1" type:"list"`
  7488  
  7489  	// The data source that determines from where Audit Manager collects evidence
  7490  	// for the control.
  7491  	ControlSources *string `locationName:"controlSources" min:"1" type:"string"`
  7492  
  7493  	// Specifies when the control was created.
  7494  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
  7495  
  7496  	// The IAM user or role that created the control.
  7497  	CreatedBy *string `locationName:"createdBy" min:"1" type:"string"`
  7498  
  7499  	// The description of the specified control.
  7500  	Description *string `locationName:"description" type:"string"`
  7501  
  7502  	// The unique identifier for the control.
  7503  	Id *string `locationName:"id" min:"36" type:"string"`
  7504  
  7505  	// Specifies when the control was most recently updated.
  7506  	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
  7507  
  7508  	// The IAM user or role that most recently updated the control.
  7509  	LastUpdatedBy *string `locationName:"lastUpdatedBy" min:"1" type:"string"`
  7510  
  7511  	// The name of the specified control.
  7512  	Name *string `locationName:"name" min:"1" type:"string"`
  7513  
  7514  	// The tags associated with the control.
  7515  	Tags map[string]*string `locationName:"tags" type:"map"`
  7516  
  7517  	// The steps to follow to determine if the control has been satisfied.
  7518  	TestingInformation *string `locationName:"testingInformation" type:"string"`
  7519  
  7520  	// The type of control, such as custom or standard.
  7521  	Type *string `locationName:"type" type:"string" enum:"ControlType"`
  7522  }
  7523  
  7524  // String returns the string representation.
  7525  //
  7526  // API parameter values that are decorated as "sensitive" in the API will not
  7527  // be included in the string output. The member name will be present, but the
  7528  // value will be replaced with "sensitive".
  7529  func (s Control) String() string {
  7530  	return awsutil.Prettify(s)
  7531  }
  7532  
  7533  // GoString returns the string representation.
  7534  //
  7535  // API parameter values that are decorated as "sensitive" in the API will not
  7536  // be included in the string output. The member name will be present, but the
  7537  // value will be replaced with "sensitive".
  7538  func (s Control) GoString() string {
  7539  	return s.String()
  7540  }
  7541  
  7542  // SetActionPlanInstructions sets the ActionPlanInstructions field's value.
  7543  func (s *Control) SetActionPlanInstructions(v string) *Control {
  7544  	s.ActionPlanInstructions = &v
  7545  	return s
  7546  }
  7547  
  7548  // SetActionPlanTitle sets the ActionPlanTitle field's value.
  7549  func (s *Control) SetActionPlanTitle(v string) *Control {
  7550  	s.ActionPlanTitle = &v
  7551  	return s
  7552  }
  7553  
  7554  // SetArn sets the Arn field's value.
  7555  func (s *Control) SetArn(v string) *Control {
  7556  	s.Arn = &v
  7557  	return s
  7558  }
  7559  
  7560  // SetControlMappingSources sets the ControlMappingSources field's value.
  7561  func (s *Control) SetControlMappingSources(v []*ControlMappingSource) *Control {
  7562  	s.ControlMappingSources = v
  7563  	return s
  7564  }
  7565  
  7566  // SetControlSources sets the ControlSources field's value.
  7567  func (s *Control) SetControlSources(v string) *Control {
  7568  	s.ControlSources = &v
  7569  	return s
  7570  }
  7571  
  7572  // SetCreatedAt sets the CreatedAt field's value.
  7573  func (s *Control) SetCreatedAt(v time.Time) *Control {
  7574  	s.CreatedAt = &v
  7575  	return s
  7576  }
  7577  
  7578  // SetCreatedBy sets the CreatedBy field's value.
  7579  func (s *Control) SetCreatedBy(v string) *Control {
  7580  	s.CreatedBy = &v
  7581  	return s
  7582  }
  7583  
  7584  // SetDescription sets the Description field's value.
  7585  func (s *Control) SetDescription(v string) *Control {
  7586  	s.Description = &v
  7587  	return s
  7588  }
  7589  
  7590  // SetId sets the Id field's value.
  7591  func (s *Control) SetId(v string) *Control {
  7592  	s.Id = &v
  7593  	return s
  7594  }
  7595  
  7596  // SetLastUpdatedAt sets the LastUpdatedAt field's value.
  7597  func (s *Control) SetLastUpdatedAt(v time.Time) *Control {
  7598  	s.LastUpdatedAt = &v
  7599  	return s
  7600  }
  7601  
  7602  // SetLastUpdatedBy sets the LastUpdatedBy field's value.
  7603  func (s *Control) SetLastUpdatedBy(v string) *Control {
  7604  	s.LastUpdatedBy = &v
  7605  	return s
  7606  }
  7607  
  7608  // SetName sets the Name field's value.
  7609  func (s *Control) SetName(v string) *Control {
  7610  	s.Name = &v
  7611  	return s
  7612  }
  7613  
  7614  // SetTags sets the Tags field's value.
  7615  func (s *Control) SetTags(v map[string]*string) *Control {
  7616  	s.Tags = v
  7617  	return s
  7618  }
  7619  
  7620  // SetTestingInformation sets the TestingInformation field's value.
  7621  func (s *Control) SetTestingInformation(v string) *Control {
  7622  	s.TestingInformation = &v
  7623  	return s
  7624  }
  7625  
  7626  // SetType sets the Type field's value.
  7627  func (s *Control) SetType(v string) *Control {
  7628  	s.Type = &v
  7629  	return s
  7630  }
  7631  
  7632  // A comment posted by a user on a control. This includes the author's name,
  7633  // the comment text, and a timestamp.
  7634  type ControlComment struct {
  7635  	_ struct{} `type:"structure"`
  7636  
  7637  	// The name of the user who authored the comment.
  7638  	AuthorName *string `locationName:"authorName" min:"1" type:"string"`
  7639  
  7640  	// The body text of a control comment.
  7641  	CommentBody *string `locationName:"commentBody" type:"string"`
  7642  
  7643  	// The time when the comment was posted.
  7644  	PostedDate *time.Time `locationName:"postedDate" type:"timestamp"`
  7645  }
  7646  
  7647  // String returns the string representation.
  7648  //
  7649  // API parameter values that are decorated as "sensitive" in the API will not
  7650  // be included in the string output. The member name will be present, but the
  7651  // value will be replaced with "sensitive".
  7652  func (s ControlComment) String() string {
  7653  	return awsutil.Prettify(s)
  7654  }
  7655  
  7656  // GoString returns the string representation.
  7657  //
  7658  // API parameter values that are decorated as "sensitive" in the API will not
  7659  // be included in the string output. The member name will be present, but the
  7660  // value will be replaced with "sensitive".
  7661  func (s ControlComment) GoString() string {
  7662  	return s.String()
  7663  }
  7664  
  7665  // SetAuthorName sets the AuthorName field's value.
  7666  func (s *ControlComment) SetAuthorName(v string) *ControlComment {
  7667  	s.AuthorName = &v
  7668  	return s
  7669  }
  7670  
  7671  // SetCommentBody sets the CommentBody field's value.
  7672  func (s *ControlComment) SetCommentBody(v string) *ControlComment {
  7673  	s.CommentBody = &v
  7674  	return s
  7675  }
  7676  
  7677  // SetPostedDate sets the PostedDate field's value.
  7678  func (s *ControlComment) SetPostedDate(v time.Time) *ControlComment {
  7679  	s.PostedDate = &v
  7680  	return s
  7681  }
  7682  
  7683  // The data source that determines from where Audit Manager collects evidence
  7684  // for the control.
  7685  type ControlMappingSource struct {
  7686  	_ struct{} `type:"structure"`
  7687  
  7688  	// The description of the specified source.
  7689  	SourceDescription *string `locationName:"sourceDescription" type:"string"`
  7690  
  7691  	// The frequency of evidence collection for the specified control mapping source.
  7692  	SourceFrequency *string `locationName:"sourceFrequency" type:"string" enum:"SourceFrequency"`
  7693  
  7694  	// The unique identifier for the specified source.
  7695  	SourceId *string `locationName:"sourceId" min:"36" type:"string"`
  7696  
  7697  	// The keyword to search for in CloudTrail logs, Config rules, Security Hub
  7698  	// checks, and Amazon Web Services API names.
  7699  	SourceKeyword *SourceKeyword `locationName:"sourceKeyword" type:"structure"`
  7700  
  7701  	// The name of the specified source.
  7702  	SourceName *string `locationName:"sourceName" min:"1" type:"string"`
  7703  
  7704  	// The setup option for the data source, which reflects if the evidence collection
  7705  	// is automated or manual.
  7706  	SourceSetUpOption *string `locationName:"sourceSetUpOption" type:"string" enum:"SourceSetUpOption"`
  7707  
  7708  	// Specifies one of the five types of data sources for evidence collection.
  7709  	SourceType *string `locationName:"sourceType" type:"string" enum:"SourceType"`
  7710  
  7711  	// The instructions for troubleshooting the specified control.
  7712  	TroubleshootingText *string `locationName:"troubleshootingText" type:"string"`
  7713  }
  7714  
  7715  // String returns the string representation.
  7716  //
  7717  // API parameter values that are decorated as "sensitive" in the API will not
  7718  // be included in the string output. The member name will be present, but the
  7719  // value will be replaced with "sensitive".
  7720  func (s ControlMappingSource) String() string {
  7721  	return awsutil.Prettify(s)
  7722  }
  7723  
  7724  // GoString returns the string representation.
  7725  //
  7726  // API parameter values that are decorated as "sensitive" in the API will not
  7727  // be included in the string output. The member name will be present, but the
  7728  // value will be replaced with "sensitive".
  7729  func (s ControlMappingSource) GoString() string {
  7730  	return s.String()
  7731  }
  7732  
  7733  // Validate inspects the fields of the type to determine if they are valid.
  7734  func (s *ControlMappingSource) Validate() error {
  7735  	invalidParams := request.ErrInvalidParams{Context: "ControlMappingSource"}
  7736  	if s.SourceId != nil && len(*s.SourceId) < 36 {
  7737  		invalidParams.Add(request.NewErrParamMinLen("SourceId", 36))
  7738  	}
  7739  	if s.SourceName != nil && len(*s.SourceName) < 1 {
  7740  		invalidParams.Add(request.NewErrParamMinLen("SourceName", 1))
  7741  	}
  7742  	if s.SourceKeyword != nil {
  7743  		if err := s.SourceKeyword.Validate(); err != nil {
  7744  			invalidParams.AddNested("SourceKeyword", err.(request.ErrInvalidParams))
  7745  		}
  7746  	}
  7747  
  7748  	if invalidParams.Len() > 0 {
  7749  		return invalidParams
  7750  	}
  7751  	return nil
  7752  }
  7753  
  7754  // SetSourceDescription sets the SourceDescription field's value.
  7755  func (s *ControlMappingSource) SetSourceDescription(v string) *ControlMappingSource {
  7756  	s.SourceDescription = &v
  7757  	return s
  7758  }
  7759  
  7760  // SetSourceFrequency sets the SourceFrequency field's value.
  7761  func (s *ControlMappingSource) SetSourceFrequency(v string) *ControlMappingSource {
  7762  	s.SourceFrequency = &v
  7763  	return s
  7764  }
  7765  
  7766  // SetSourceId sets the SourceId field's value.
  7767  func (s *ControlMappingSource) SetSourceId(v string) *ControlMappingSource {
  7768  	s.SourceId = &v
  7769  	return s
  7770  }
  7771  
  7772  // SetSourceKeyword sets the SourceKeyword field's value.
  7773  func (s *ControlMappingSource) SetSourceKeyword(v *SourceKeyword) *ControlMappingSource {
  7774  	s.SourceKeyword = v
  7775  	return s
  7776  }
  7777  
  7778  // SetSourceName sets the SourceName field's value.
  7779  func (s *ControlMappingSource) SetSourceName(v string) *ControlMappingSource {
  7780  	s.SourceName = &v
  7781  	return s
  7782  }
  7783  
  7784  // SetSourceSetUpOption sets the SourceSetUpOption field's value.
  7785  func (s *ControlMappingSource) SetSourceSetUpOption(v string) *ControlMappingSource {
  7786  	s.SourceSetUpOption = &v
  7787  	return s
  7788  }
  7789  
  7790  // SetSourceType sets the SourceType field's value.
  7791  func (s *ControlMappingSource) SetSourceType(v string) *ControlMappingSource {
  7792  	s.SourceType = &v
  7793  	return s
  7794  }
  7795  
  7796  // SetTroubleshootingText sets the TroubleshootingText field's value.
  7797  func (s *ControlMappingSource) SetTroubleshootingText(v string) *ControlMappingSource {
  7798  	s.TroubleshootingText = &v
  7799  	return s
  7800  }
  7801  
  7802  // The metadata associated with the specified standard or custom control.
  7803  type ControlMetadata struct {
  7804  	_ struct{} `type:"structure"`
  7805  
  7806  	// The Amazon Resource Name (ARN) of the specified control.
  7807  	Arn *string `locationName:"arn" min:"20" type:"string"`
  7808  
  7809  	// The data source that determines from where Audit Manager collects evidence
  7810  	// for the control.
  7811  	ControlSources *string `locationName:"controlSources" min:"1" type:"string"`
  7812  
  7813  	// Specifies when the control was created.
  7814  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
  7815  
  7816  	// The unique identifier for the specified control.
  7817  	Id *string `locationName:"id" min:"36" type:"string"`
  7818  
  7819  	// Specifies when the control was most recently updated.
  7820  	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
  7821  
  7822  	// The name of the specified control.
  7823  	Name *string `locationName:"name" min:"1" type:"string"`
  7824  }
  7825  
  7826  // String returns the string representation.
  7827  //
  7828  // API parameter values that are decorated as "sensitive" in the API will not
  7829  // be included in the string output. The member name will be present, but the
  7830  // value will be replaced with "sensitive".
  7831  func (s ControlMetadata) String() string {
  7832  	return awsutil.Prettify(s)
  7833  }
  7834  
  7835  // GoString returns the string representation.
  7836  //
  7837  // API parameter values that are decorated as "sensitive" in the API will not
  7838  // be included in the string output. The member name will be present, but the
  7839  // value will be replaced with "sensitive".
  7840  func (s ControlMetadata) GoString() string {
  7841  	return s.String()
  7842  }
  7843  
  7844  // SetArn sets the Arn field's value.
  7845  func (s *ControlMetadata) SetArn(v string) *ControlMetadata {
  7846  	s.Arn = &v
  7847  	return s
  7848  }
  7849  
  7850  // SetControlSources sets the ControlSources field's value.
  7851  func (s *ControlMetadata) SetControlSources(v string) *ControlMetadata {
  7852  	s.ControlSources = &v
  7853  	return s
  7854  }
  7855  
  7856  // SetCreatedAt sets the CreatedAt field's value.
  7857  func (s *ControlMetadata) SetCreatedAt(v time.Time) *ControlMetadata {
  7858  	s.CreatedAt = &v
  7859  	return s
  7860  }
  7861  
  7862  // SetId sets the Id field's value.
  7863  func (s *ControlMetadata) SetId(v string) *ControlMetadata {
  7864  	s.Id = &v
  7865  	return s
  7866  }
  7867  
  7868  // SetLastUpdatedAt sets the LastUpdatedAt field's value.
  7869  func (s *ControlMetadata) SetLastUpdatedAt(v time.Time) *ControlMetadata {
  7870  	s.LastUpdatedAt = &v
  7871  	return s
  7872  }
  7873  
  7874  // SetName sets the Name field's value.
  7875  func (s *ControlMetadata) SetName(v string) *ControlMetadata {
  7876  	s.Name = &v
  7877  	return s
  7878  }
  7879  
  7880  // A set of controls in Audit Manager.
  7881  type ControlSet struct {
  7882  	_ struct{} `type:"structure"`
  7883  
  7884  	// The list of controls within the control set.
  7885  	Controls []*Control `locationName:"controls" min:"1" type:"list"`
  7886  
  7887  	// The identifier of the control set in the assessment. This is the control
  7888  	// set name in a plain string format.
  7889  	Id *string `locationName:"id" min:"36" type:"string"`
  7890  
  7891  	// The name of the control set.
  7892  	Name *string `locationName:"name" min:"1" type:"string"`
  7893  }
  7894  
  7895  // String returns the string representation.
  7896  //
  7897  // API parameter values that are decorated as "sensitive" in the API will not
  7898  // be included in the string output. The member name will be present, but the
  7899  // value will be replaced with "sensitive".
  7900  func (s ControlSet) String() string {
  7901  	return awsutil.Prettify(s)
  7902  }
  7903  
  7904  // GoString returns the string representation.
  7905  //
  7906  // API parameter values that are decorated as "sensitive" in the API will not
  7907  // be included in the string output. The member name will be present, but the
  7908  // value will be replaced with "sensitive".
  7909  func (s ControlSet) GoString() string {
  7910  	return s.String()
  7911  }
  7912  
  7913  // SetControls sets the Controls field's value.
  7914  func (s *ControlSet) SetControls(v []*Control) *ControlSet {
  7915  	s.Controls = v
  7916  	return s
  7917  }
  7918  
  7919  // SetId sets the Id field's value.
  7920  func (s *ControlSet) SetId(v string) *ControlSet {
  7921  	s.Id = &v
  7922  	return s
  7923  }
  7924  
  7925  // SetName sets the Name field's value.
  7926  func (s *ControlSet) SetName(v string) *ControlSet {
  7927  	s.Name = &v
  7928  	return s
  7929  }
  7930  
  7931  // Control entity attributes that uniquely identify an existing control to be
  7932  // added to a framework in Audit Manager.
  7933  type CreateAssessmentFrameworkControl struct {
  7934  	_ struct{} `type:"structure"`
  7935  
  7936  	// The unique identifier of the control.
  7937  	Id *string `locationName:"id" min:"36" type:"string"`
  7938  }
  7939  
  7940  // String returns the string representation.
  7941  //
  7942  // API parameter values that are decorated as "sensitive" in the API will not
  7943  // be included in the string output. The member name will be present, but the
  7944  // value will be replaced with "sensitive".
  7945  func (s CreateAssessmentFrameworkControl) String() string {
  7946  	return awsutil.Prettify(s)
  7947  }
  7948  
  7949  // GoString returns the string representation.
  7950  //
  7951  // API parameter values that are decorated as "sensitive" in the API will not
  7952  // be included in the string output. The member name will be present, but the
  7953  // value will be replaced with "sensitive".
  7954  func (s CreateAssessmentFrameworkControl) GoString() string {
  7955  	return s.String()
  7956  }
  7957  
  7958  // Validate inspects the fields of the type to determine if they are valid.
  7959  func (s *CreateAssessmentFrameworkControl) Validate() error {
  7960  	invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentFrameworkControl"}
  7961  	if s.Id != nil && len(*s.Id) < 36 {
  7962  		invalidParams.Add(request.NewErrParamMinLen("Id", 36))
  7963  	}
  7964  
  7965  	if invalidParams.Len() > 0 {
  7966  		return invalidParams
  7967  	}
  7968  	return nil
  7969  }
  7970  
  7971  // SetId sets the Id field's value.
  7972  func (s *CreateAssessmentFrameworkControl) SetId(v string) *CreateAssessmentFrameworkControl {
  7973  	s.Id = &v
  7974  	return s
  7975  }
  7976  
  7977  // A controlSet entity that represents a collection of controls in Audit Manager.
  7978  // This does not contain the control set ID.
  7979  type CreateAssessmentFrameworkControlSet struct {
  7980  	_ struct{} `type:"structure"`
  7981  
  7982  	// The list of controls within the control set. This does not contain the control
  7983  	// set ID.
  7984  	Controls []*CreateAssessmentFrameworkControl `locationName:"controls" min:"1" type:"list"`
  7985  
  7986  	// The name of the specified control set.
  7987  	//
  7988  	// Name is a required field
  7989  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  7990  }
  7991  
  7992  // String returns the string representation.
  7993  //
  7994  // API parameter values that are decorated as "sensitive" in the API will not
  7995  // be included in the string output. The member name will be present, but the
  7996  // value will be replaced with "sensitive".
  7997  func (s CreateAssessmentFrameworkControlSet) String() string {
  7998  	return awsutil.Prettify(s)
  7999  }
  8000  
  8001  // GoString returns the string representation.
  8002  //
  8003  // API parameter values that are decorated as "sensitive" in the API will not
  8004  // be included in the string output. The member name will be present, but the
  8005  // value will be replaced with "sensitive".
  8006  func (s CreateAssessmentFrameworkControlSet) GoString() string {
  8007  	return s.String()
  8008  }
  8009  
  8010  // Validate inspects the fields of the type to determine if they are valid.
  8011  func (s *CreateAssessmentFrameworkControlSet) Validate() error {
  8012  	invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentFrameworkControlSet"}
  8013  	if s.Controls != nil && len(s.Controls) < 1 {
  8014  		invalidParams.Add(request.NewErrParamMinLen("Controls", 1))
  8015  	}
  8016  	if s.Name == nil {
  8017  		invalidParams.Add(request.NewErrParamRequired("Name"))
  8018  	}
  8019  	if s.Name != nil && len(*s.Name) < 1 {
  8020  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  8021  	}
  8022  	if s.Controls != nil {
  8023  		for i, v := range s.Controls {
  8024  			if v == nil {
  8025  				continue
  8026  			}
  8027  			if err := v.Validate(); err != nil {
  8028  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Controls", i), err.(request.ErrInvalidParams))
  8029  			}
  8030  		}
  8031  	}
  8032  
  8033  	if invalidParams.Len() > 0 {
  8034  		return invalidParams
  8035  	}
  8036  	return nil
  8037  }
  8038  
  8039  // SetControls sets the Controls field's value.
  8040  func (s *CreateAssessmentFrameworkControlSet) SetControls(v []*CreateAssessmentFrameworkControl) *CreateAssessmentFrameworkControlSet {
  8041  	s.Controls = v
  8042  	return s
  8043  }
  8044  
  8045  // SetName sets the Name field's value.
  8046  func (s *CreateAssessmentFrameworkControlSet) SetName(v string) *CreateAssessmentFrameworkControlSet {
  8047  	s.Name = &v
  8048  	return s
  8049  }
  8050  
  8051  type CreateAssessmentFrameworkInput struct {
  8052  	_ struct{} `type:"structure"`
  8053  
  8054  	// The compliance type that the new custom framework supports, such as CIS or
  8055  	// HIPAA.
  8056  	ComplianceType *string `locationName:"complianceType" type:"string"`
  8057  
  8058  	// The control sets to be associated with the framework.
  8059  	//
  8060  	// ControlSets is a required field
  8061  	ControlSets []*CreateAssessmentFrameworkControlSet `locationName:"controlSets" min:"1" type:"list" required:"true"`
  8062  
  8063  	// An optional description for the new custom framework.
  8064  	Description *string `locationName:"description" min:"1" type:"string"`
  8065  
  8066  	// The name of the new custom framework.
  8067  	//
  8068  	// Name is a required field
  8069  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  8070  
  8071  	// The tags associated with the framework.
  8072  	Tags map[string]*string `locationName:"tags" type:"map"`
  8073  }
  8074  
  8075  // String returns the string representation.
  8076  //
  8077  // API parameter values that are decorated as "sensitive" in the API will not
  8078  // be included in the string output. The member name will be present, but the
  8079  // value will be replaced with "sensitive".
  8080  func (s CreateAssessmentFrameworkInput) String() string {
  8081  	return awsutil.Prettify(s)
  8082  }
  8083  
  8084  // GoString returns the string representation.
  8085  //
  8086  // API parameter values that are decorated as "sensitive" in the API will not
  8087  // be included in the string output. The member name will be present, but the
  8088  // value will be replaced with "sensitive".
  8089  func (s CreateAssessmentFrameworkInput) GoString() string {
  8090  	return s.String()
  8091  }
  8092  
  8093  // Validate inspects the fields of the type to determine if they are valid.
  8094  func (s *CreateAssessmentFrameworkInput) Validate() error {
  8095  	invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentFrameworkInput"}
  8096  	if s.ControlSets == nil {
  8097  		invalidParams.Add(request.NewErrParamRequired("ControlSets"))
  8098  	}
  8099  	if s.ControlSets != nil && len(s.ControlSets) < 1 {
  8100  		invalidParams.Add(request.NewErrParamMinLen("ControlSets", 1))
  8101  	}
  8102  	if s.Description != nil && len(*s.Description) < 1 {
  8103  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
  8104  	}
  8105  	if s.Name == nil {
  8106  		invalidParams.Add(request.NewErrParamRequired("Name"))
  8107  	}
  8108  	if s.Name != nil && len(*s.Name) < 1 {
  8109  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  8110  	}
  8111  	if s.ControlSets != nil {
  8112  		for i, v := range s.ControlSets {
  8113  			if v == nil {
  8114  				continue
  8115  			}
  8116  			if err := v.Validate(); err != nil {
  8117  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ControlSets", i), err.(request.ErrInvalidParams))
  8118  			}
  8119  		}
  8120  	}
  8121  
  8122  	if invalidParams.Len() > 0 {
  8123  		return invalidParams
  8124  	}
  8125  	return nil
  8126  }
  8127  
  8128  // SetComplianceType sets the ComplianceType field's value.
  8129  func (s *CreateAssessmentFrameworkInput) SetComplianceType(v string) *CreateAssessmentFrameworkInput {
  8130  	s.ComplianceType = &v
  8131  	return s
  8132  }
  8133  
  8134  // SetControlSets sets the ControlSets field's value.
  8135  func (s *CreateAssessmentFrameworkInput) SetControlSets(v []*CreateAssessmentFrameworkControlSet) *CreateAssessmentFrameworkInput {
  8136  	s.ControlSets = v
  8137  	return s
  8138  }
  8139  
  8140  // SetDescription sets the Description field's value.
  8141  func (s *CreateAssessmentFrameworkInput) SetDescription(v string) *CreateAssessmentFrameworkInput {
  8142  	s.Description = &v
  8143  	return s
  8144  }
  8145  
  8146  // SetName sets the Name field's value.
  8147  func (s *CreateAssessmentFrameworkInput) SetName(v string) *CreateAssessmentFrameworkInput {
  8148  	s.Name = &v
  8149  	return s
  8150  }
  8151  
  8152  // SetTags sets the Tags field's value.
  8153  func (s *CreateAssessmentFrameworkInput) SetTags(v map[string]*string) *CreateAssessmentFrameworkInput {
  8154  	s.Tags = v
  8155  	return s
  8156  }
  8157  
  8158  type CreateAssessmentFrameworkOutput struct {
  8159  	_ struct{} `type:"structure"`
  8160  
  8161  	// The name of the new framework returned by the CreateAssessmentFramework API.
  8162  	Framework *Framework `locationName:"framework" type:"structure"`
  8163  }
  8164  
  8165  // String returns the string representation.
  8166  //
  8167  // API parameter values that are decorated as "sensitive" in the API will not
  8168  // be included in the string output. The member name will be present, but the
  8169  // value will be replaced with "sensitive".
  8170  func (s CreateAssessmentFrameworkOutput) String() string {
  8171  	return awsutil.Prettify(s)
  8172  }
  8173  
  8174  // GoString returns the string representation.
  8175  //
  8176  // API parameter values that are decorated as "sensitive" in the API will not
  8177  // be included in the string output. The member name will be present, but the
  8178  // value will be replaced with "sensitive".
  8179  func (s CreateAssessmentFrameworkOutput) GoString() string {
  8180  	return s.String()
  8181  }
  8182  
  8183  // SetFramework sets the Framework field's value.
  8184  func (s *CreateAssessmentFrameworkOutput) SetFramework(v *Framework) *CreateAssessmentFrameworkOutput {
  8185  	s.Framework = v
  8186  	return s
  8187  }
  8188  
  8189  type CreateAssessmentInput struct {
  8190  	_ struct{} `type:"structure"`
  8191  
  8192  	// The assessment report storage destination for the specified assessment that
  8193  	// is being created.
  8194  	//
  8195  	// AssessmentReportsDestination is a required field
  8196  	AssessmentReportsDestination *AssessmentReportsDestination `locationName:"assessmentReportsDestination" type:"structure" required:"true"`
  8197  
  8198  	// The optional description of the assessment to be created.
  8199  	Description *string `locationName:"description" type:"string"`
  8200  
  8201  	// The identifier for the specified framework.
  8202  	//
  8203  	// FrameworkId is a required field
  8204  	FrameworkId *string `locationName:"frameworkId" min:"36" type:"string" required:"true"`
  8205  
  8206  	// The name of the assessment to be created.
  8207  	//
  8208  	// Name is a required field
  8209  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  8210  
  8211  	// The list of roles for the specified assessment.
  8212  	//
  8213  	// Roles is a required field
  8214  	Roles []*Role `locationName:"roles" type:"list" required:"true"`
  8215  
  8216  	// The wrapper that contains the accounts and services in scope for the assessment.
  8217  	//
  8218  	// Scope is a required field
  8219  	Scope *Scope `locationName:"scope" type:"structure" required:"true"`
  8220  
  8221  	// The tags associated with the assessment.
  8222  	Tags map[string]*string `locationName:"tags" type:"map"`
  8223  }
  8224  
  8225  // String returns the string representation.
  8226  //
  8227  // API parameter values that are decorated as "sensitive" in the API will not
  8228  // be included in the string output. The member name will be present, but the
  8229  // value will be replaced with "sensitive".
  8230  func (s CreateAssessmentInput) String() string {
  8231  	return awsutil.Prettify(s)
  8232  }
  8233  
  8234  // GoString returns the string representation.
  8235  //
  8236  // API parameter values that are decorated as "sensitive" in the API will not
  8237  // be included in the string output. The member name will be present, but the
  8238  // value will be replaced with "sensitive".
  8239  func (s CreateAssessmentInput) GoString() string {
  8240  	return s.String()
  8241  }
  8242  
  8243  // Validate inspects the fields of the type to determine if they are valid.
  8244  func (s *CreateAssessmentInput) Validate() error {
  8245  	invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentInput"}
  8246  	if s.AssessmentReportsDestination == nil {
  8247  		invalidParams.Add(request.NewErrParamRequired("AssessmentReportsDestination"))
  8248  	}
  8249  	if s.FrameworkId == nil {
  8250  		invalidParams.Add(request.NewErrParamRequired("FrameworkId"))
  8251  	}
  8252  	if s.FrameworkId != nil && len(*s.FrameworkId) < 36 {
  8253  		invalidParams.Add(request.NewErrParamMinLen("FrameworkId", 36))
  8254  	}
  8255  	if s.Name == nil {
  8256  		invalidParams.Add(request.NewErrParamRequired("Name"))
  8257  	}
  8258  	if s.Name != nil && len(*s.Name) < 1 {
  8259  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  8260  	}
  8261  	if s.Roles == nil {
  8262  		invalidParams.Add(request.NewErrParamRequired("Roles"))
  8263  	}
  8264  	if s.Scope == nil {
  8265  		invalidParams.Add(request.NewErrParamRequired("Scope"))
  8266  	}
  8267  	if s.AssessmentReportsDestination != nil {
  8268  		if err := s.AssessmentReportsDestination.Validate(); err != nil {
  8269  			invalidParams.AddNested("AssessmentReportsDestination", err.(request.ErrInvalidParams))
  8270  		}
  8271  	}
  8272  	if s.Roles != nil {
  8273  		for i, v := range s.Roles {
  8274  			if v == nil {
  8275  				continue
  8276  			}
  8277  			if err := v.Validate(); err != nil {
  8278  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Roles", i), err.(request.ErrInvalidParams))
  8279  			}
  8280  		}
  8281  	}
  8282  	if s.Scope != nil {
  8283  		if err := s.Scope.Validate(); err != nil {
  8284  			invalidParams.AddNested("Scope", err.(request.ErrInvalidParams))
  8285  		}
  8286  	}
  8287  
  8288  	if invalidParams.Len() > 0 {
  8289  		return invalidParams
  8290  	}
  8291  	return nil
  8292  }
  8293  
  8294  // SetAssessmentReportsDestination sets the AssessmentReportsDestination field's value.
  8295  func (s *CreateAssessmentInput) SetAssessmentReportsDestination(v *AssessmentReportsDestination) *CreateAssessmentInput {
  8296  	s.AssessmentReportsDestination = v
  8297  	return s
  8298  }
  8299  
  8300  // SetDescription sets the Description field's value.
  8301  func (s *CreateAssessmentInput) SetDescription(v string) *CreateAssessmentInput {
  8302  	s.Description = &v
  8303  	return s
  8304  }
  8305  
  8306  // SetFrameworkId sets the FrameworkId field's value.
  8307  func (s *CreateAssessmentInput) SetFrameworkId(v string) *CreateAssessmentInput {
  8308  	s.FrameworkId = &v
  8309  	return s
  8310  }
  8311  
  8312  // SetName sets the Name field's value.
  8313  func (s *CreateAssessmentInput) SetName(v string) *CreateAssessmentInput {
  8314  	s.Name = &v
  8315  	return s
  8316  }
  8317  
  8318  // SetRoles sets the Roles field's value.
  8319  func (s *CreateAssessmentInput) SetRoles(v []*Role) *CreateAssessmentInput {
  8320  	s.Roles = v
  8321  	return s
  8322  }
  8323  
  8324  // SetScope sets the Scope field's value.
  8325  func (s *CreateAssessmentInput) SetScope(v *Scope) *CreateAssessmentInput {
  8326  	s.Scope = v
  8327  	return s
  8328  }
  8329  
  8330  // SetTags sets the Tags field's value.
  8331  func (s *CreateAssessmentInput) SetTags(v map[string]*string) *CreateAssessmentInput {
  8332  	s.Tags = v
  8333  	return s
  8334  }
  8335  
  8336  type CreateAssessmentOutput struct {
  8337  	_ struct{} `type:"structure"`
  8338  
  8339  	// An entity that defines the scope of audit evidence collected by Audit Manager.
  8340  	// An Audit Manager assessment is an implementation of an Audit Manager framework.
  8341  	Assessment *Assessment `locationName:"assessment" type:"structure"`
  8342  }
  8343  
  8344  // String returns the string representation.
  8345  //
  8346  // API parameter values that are decorated as "sensitive" in the API will not
  8347  // be included in the string output. The member name will be present, but the
  8348  // value will be replaced with "sensitive".
  8349  func (s CreateAssessmentOutput) String() string {
  8350  	return awsutil.Prettify(s)
  8351  }
  8352  
  8353  // GoString returns the string representation.
  8354  //
  8355  // API parameter values that are decorated as "sensitive" in the API will not
  8356  // be included in the string output. The member name will be present, but the
  8357  // value will be replaced with "sensitive".
  8358  func (s CreateAssessmentOutput) GoString() string {
  8359  	return s.String()
  8360  }
  8361  
  8362  // SetAssessment sets the Assessment field's value.
  8363  func (s *CreateAssessmentOutput) SetAssessment(v *Assessment) *CreateAssessmentOutput {
  8364  	s.Assessment = v
  8365  	return s
  8366  }
  8367  
  8368  type CreateAssessmentReportInput struct {
  8369  	_ struct{} `type:"structure"`
  8370  
  8371  	// The identifier for the specified assessment.
  8372  	//
  8373  	// AssessmentId is a required field
  8374  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
  8375  
  8376  	// The description of the assessment report.
  8377  	Description *string `locationName:"description" type:"string"`
  8378  
  8379  	// The name of the new assessment report.
  8380  	//
  8381  	// Name is a required field
  8382  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  8383  }
  8384  
  8385  // String returns the string representation.
  8386  //
  8387  // API parameter values that are decorated as "sensitive" in the API will not
  8388  // be included in the string output. The member name will be present, but the
  8389  // value will be replaced with "sensitive".
  8390  func (s CreateAssessmentReportInput) String() string {
  8391  	return awsutil.Prettify(s)
  8392  }
  8393  
  8394  // GoString returns the string representation.
  8395  //
  8396  // API parameter values that are decorated as "sensitive" in the API will not
  8397  // be included in the string output. The member name will be present, but the
  8398  // value will be replaced with "sensitive".
  8399  func (s CreateAssessmentReportInput) GoString() string {
  8400  	return s.String()
  8401  }
  8402  
  8403  // Validate inspects the fields of the type to determine if they are valid.
  8404  func (s *CreateAssessmentReportInput) Validate() error {
  8405  	invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentReportInput"}
  8406  	if s.AssessmentId == nil {
  8407  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
  8408  	}
  8409  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
  8410  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
  8411  	}
  8412  	if s.Name == nil {
  8413  		invalidParams.Add(request.NewErrParamRequired("Name"))
  8414  	}
  8415  	if s.Name != nil && len(*s.Name) < 1 {
  8416  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  8417  	}
  8418  
  8419  	if invalidParams.Len() > 0 {
  8420  		return invalidParams
  8421  	}
  8422  	return nil
  8423  }
  8424  
  8425  // SetAssessmentId sets the AssessmentId field's value.
  8426  func (s *CreateAssessmentReportInput) SetAssessmentId(v string) *CreateAssessmentReportInput {
  8427  	s.AssessmentId = &v
  8428  	return s
  8429  }
  8430  
  8431  // SetDescription sets the Description field's value.
  8432  func (s *CreateAssessmentReportInput) SetDescription(v string) *CreateAssessmentReportInput {
  8433  	s.Description = &v
  8434  	return s
  8435  }
  8436  
  8437  // SetName sets the Name field's value.
  8438  func (s *CreateAssessmentReportInput) SetName(v string) *CreateAssessmentReportInput {
  8439  	s.Name = &v
  8440  	return s
  8441  }
  8442  
  8443  type CreateAssessmentReportOutput struct {
  8444  	_ struct{} `type:"structure"`
  8445  
  8446  	// The new assessment report returned by the CreateAssessmentReport API.
  8447  	AssessmentReport *AssessmentReport `locationName:"assessmentReport" type:"structure"`
  8448  }
  8449  
  8450  // String returns the string representation.
  8451  //
  8452  // API parameter values that are decorated as "sensitive" in the API will not
  8453  // be included in the string output. The member name will be present, but the
  8454  // value will be replaced with "sensitive".
  8455  func (s CreateAssessmentReportOutput) String() string {
  8456  	return awsutil.Prettify(s)
  8457  }
  8458  
  8459  // GoString returns the string representation.
  8460  //
  8461  // API parameter values that are decorated as "sensitive" in the API will not
  8462  // be included in the string output. The member name will be present, but the
  8463  // value will be replaced with "sensitive".
  8464  func (s CreateAssessmentReportOutput) GoString() string {
  8465  	return s.String()
  8466  }
  8467  
  8468  // SetAssessmentReport sets the AssessmentReport field's value.
  8469  func (s *CreateAssessmentReportOutput) SetAssessmentReport(v *AssessmentReport) *CreateAssessmentReportOutput {
  8470  	s.AssessmentReport = v
  8471  	return s
  8472  }
  8473  
  8474  type CreateControlInput struct {
  8475  	_ struct{} `type:"structure"`
  8476  
  8477  	// The recommended actions to carry out if the control is not fulfilled.
  8478  	ActionPlanInstructions *string `locationName:"actionPlanInstructions" type:"string"`
  8479  
  8480  	// The title of the action plan for remediating the control.
  8481  	ActionPlanTitle *string `locationName:"actionPlanTitle" type:"string"`
  8482  
  8483  	// The data mapping sources for the specified control.
  8484  	//
  8485  	// ControlMappingSources is a required field
  8486  	ControlMappingSources []*CreateControlMappingSource `locationName:"controlMappingSources" min:"1" type:"list" required:"true"`
  8487  
  8488  	// The description of the control.
  8489  	Description *string `locationName:"description" type:"string"`
  8490  
  8491  	// The name of the control.
  8492  	//
  8493  	// Name is a required field
  8494  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  8495  
  8496  	// The tags associated with the control.
  8497  	Tags map[string]*string `locationName:"tags" type:"map"`
  8498  
  8499  	// The steps to follow to determine if the control has been satisfied.
  8500  	TestingInformation *string `locationName:"testingInformation" type:"string"`
  8501  }
  8502  
  8503  // String returns the string representation.
  8504  //
  8505  // API parameter values that are decorated as "sensitive" in the API will not
  8506  // be included in the string output. The member name will be present, but the
  8507  // value will be replaced with "sensitive".
  8508  func (s CreateControlInput) String() string {
  8509  	return awsutil.Prettify(s)
  8510  }
  8511  
  8512  // GoString returns the string representation.
  8513  //
  8514  // API parameter values that are decorated as "sensitive" in the API will not
  8515  // be included in the string output. The member name will be present, but the
  8516  // value will be replaced with "sensitive".
  8517  func (s CreateControlInput) GoString() string {
  8518  	return s.String()
  8519  }
  8520  
  8521  // Validate inspects the fields of the type to determine if they are valid.
  8522  func (s *CreateControlInput) Validate() error {
  8523  	invalidParams := request.ErrInvalidParams{Context: "CreateControlInput"}
  8524  	if s.ControlMappingSources == nil {
  8525  		invalidParams.Add(request.NewErrParamRequired("ControlMappingSources"))
  8526  	}
  8527  	if s.ControlMappingSources != nil && len(s.ControlMappingSources) < 1 {
  8528  		invalidParams.Add(request.NewErrParamMinLen("ControlMappingSources", 1))
  8529  	}
  8530  	if s.Name == nil {
  8531  		invalidParams.Add(request.NewErrParamRequired("Name"))
  8532  	}
  8533  	if s.Name != nil && len(*s.Name) < 1 {
  8534  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  8535  	}
  8536  	if s.ControlMappingSources != nil {
  8537  		for i, v := range s.ControlMappingSources {
  8538  			if v == nil {
  8539  				continue
  8540  			}
  8541  			if err := v.Validate(); err != nil {
  8542  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ControlMappingSources", i), err.(request.ErrInvalidParams))
  8543  			}
  8544  		}
  8545  	}
  8546  
  8547  	if invalidParams.Len() > 0 {
  8548  		return invalidParams
  8549  	}
  8550  	return nil
  8551  }
  8552  
  8553  // SetActionPlanInstructions sets the ActionPlanInstructions field's value.
  8554  func (s *CreateControlInput) SetActionPlanInstructions(v string) *CreateControlInput {
  8555  	s.ActionPlanInstructions = &v
  8556  	return s
  8557  }
  8558  
  8559  // SetActionPlanTitle sets the ActionPlanTitle field's value.
  8560  func (s *CreateControlInput) SetActionPlanTitle(v string) *CreateControlInput {
  8561  	s.ActionPlanTitle = &v
  8562  	return s
  8563  }
  8564  
  8565  // SetControlMappingSources sets the ControlMappingSources field's value.
  8566  func (s *CreateControlInput) SetControlMappingSources(v []*CreateControlMappingSource) *CreateControlInput {
  8567  	s.ControlMappingSources = v
  8568  	return s
  8569  }
  8570  
  8571  // SetDescription sets the Description field's value.
  8572  func (s *CreateControlInput) SetDescription(v string) *CreateControlInput {
  8573  	s.Description = &v
  8574  	return s
  8575  }
  8576  
  8577  // SetName sets the Name field's value.
  8578  func (s *CreateControlInput) SetName(v string) *CreateControlInput {
  8579  	s.Name = &v
  8580  	return s
  8581  }
  8582  
  8583  // SetTags sets the Tags field's value.
  8584  func (s *CreateControlInput) SetTags(v map[string]*string) *CreateControlInput {
  8585  	s.Tags = v
  8586  	return s
  8587  }
  8588  
  8589  // SetTestingInformation sets the TestingInformation field's value.
  8590  func (s *CreateControlInput) SetTestingInformation(v string) *CreateControlInput {
  8591  	s.TestingInformation = &v
  8592  	return s
  8593  }
  8594  
  8595  // Control mapping fields that represent the source for evidence collection,
  8596  // along with related parameters and metadata. This does not contain mappingID.
  8597  type CreateControlMappingSource struct {
  8598  	_ struct{} `type:"structure"`
  8599  
  8600  	// The description of the data source that determines from where Audit Manager
  8601  	// collects evidence for the control.
  8602  	SourceDescription *string `locationName:"sourceDescription" type:"string"`
  8603  
  8604  	// The frequency of evidence collection for the specified control mapping source.
  8605  	SourceFrequency *string `locationName:"sourceFrequency" type:"string" enum:"SourceFrequency"`
  8606  
  8607  	// The keyword to search for in CloudTrail logs, Config rules, Security Hub
  8608  	// checks, and Amazon Web Services API names.
  8609  	SourceKeyword *SourceKeyword `locationName:"sourceKeyword" type:"structure"`
  8610  
  8611  	// The name of the control mapping data source.
  8612  	SourceName *string `locationName:"sourceName" min:"1" type:"string"`
  8613  
  8614  	// The setup option for the data source, which reflects if the evidence collection
  8615  	// is automated or manual.
  8616  	SourceSetUpOption *string `locationName:"sourceSetUpOption" type:"string" enum:"SourceSetUpOption"`
  8617  
  8618  	// Specifies one of the five types of data sources for evidence collection.
  8619  	SourceType *string `locationName:"sourceType" type:"string" enum:"SourceType"`
  8620  
  8621  	// The instructions for troubleshooting the specified control.
  8622  	TroubleshootingText *string `locationName:"troubleshootingText" type:"string"`
  8623  }
  8624  
  8625  // String returns the string representation.
  8626  //
  8627  // API parameter values that are decorated as "sensitive" in the API will not
  8628  // be included in the string output. The member name will be present, but the
  8629  // value will be replaced with "sensitive".
  8630  func (s CreateControlMappingSource) String() string {
  8631  	return awsutil.Prettify(s)
  8632  }
  8633  
  8634  // GoString returns the string representation.
  8635  //
  8636  // API parameter values that are decorated as "sensitive" in the API will not
  8637  // be included in the string output. The member name will be present, but the
  8638  // value will be replaced with "sensitive".
  8639  func (s CreateControlMappingSource) GoString() string {
  8640  	return s.String()
  8641  }
  8642  
  8643  // Validate inspects the fields of the type to determine if they are valid.
  8644  func (s *CreateControlMappingSource) Validate() error {
  8645  	invalidParams := request.ErrInvalidParams{Context: "CreateControlMappingSource"}
  8646  	if s.SourceName != nil && len(*s.SourceName) < 1 {
  8647  		invalidParams.Add(request.NewErrParamMinLen("SourceName", 1))
  8648  	}
  8649  	if s.SourceKeyword != nil {
  8650  		if err := s.SourceKeyword.Validate(); err != nil {
  8651  			invalidParams.AddNested("SourceKeyword", err.(request.ErrInvalidParams))
  8652  		}
  8653  	}
  8654  
  8655  	if invalidParams.Len() > 0 {
  8656  		return invalidParams
  8657  	}
  8658  	return nil
  8659  }
  8660  
  8661  // SetSourceDescription sets the SourceDescription field's value.
  8662  func (s *CreateControlMappingSource) SetSourceDescription(v string) *CreateControlMappingSource {
  8663  	s.SourceDescription = &v
  8664  	return s
  8665  }
  8666  
  8667  // SetSourceFrequency sets the SourceFrequency field's value.
  8668  func (s *CreateControlMappingSource) SetSourceFrequency(v string) *CreateControlMappingSource {
  8669  	s.SourceFrequency = &v
  8670  	return s
  8671  }
  8672  
  8673  // SetSourceKeyword sets the SourceKeyword field's value.
  8674  func (s *CreateControlMappingSource) SetSourceKeyword(v *SourceKeyword) *CreateControlMappingSource {
  8675  	s.SourceKeyword = v
  8676  	return s
  8677  }
  8678  
  8679  // SetSourceName sets the SourceName field's value.
  8680  func (s *CreateControlMappingSource) SetSourceName(v string) *CreateControlMappingSource {
  8681  	s.SourceName = &v
  8682  	return s
  8683  }
  8684  
  8685  // SetSourceSetUpOption sets the SourceSetUpOption field's value.
  8686  func (s *CreateControlMappingSource) SetSourceSetUpOption(v string) *CreateControlMappingSource {
  8687  	s.SourceSetUpOption = &v
  8688  	return s
  8689  }
  8690  
  8691  // SetSourceType sets the SourceType field's value.
  8692  func (s *CreateControlMappingSource) SetSourceType(v string) *CreateControlMappingSource {
  8693  	s.SourceType = &v
  8694  	return s
  8695  }
  8696  
  8697  // SetTroubleshootingText sets the TroubleshootingText field's value.
  8698  func (s *CreateControlMappingSource) SetTroubleshootingText(v string) *CreateControlMappingSource {
  8699  	s.TroubleshootingText = &v
  8700  	return s
  8701  }
  8702  
  8703  type CreateControlOutput struct {
  8704  	_ struct{} `type:"structure"`
  8705  
  8706  	// The new control returned by the CreateControl API.
  8707  	Control *Control `locationName:"control" type:"structure"`
  8708  }
  8709  
  8710  // String returns the string representation.
  8711  //
  8712  // API parameter values that are decorated as "sensitive" in the API will not
  8713  // be included in the string output. The member name will be present, but the
  8714  // value will be replaced with "sensitive".
  8715  func (s CreateControlOutput) String() string {
  8716  	return awsutil.Prettify(s)
  8717  }
  8718  
  8719  // GoString returns the string representation.
  8720  //
  8721  // API parameter values that are decorated as "sensitive" in the API will not
  8722  // be included in the string output. The member name will be present, but the
  8723  // value will be replaced with "sensitive".
  8724  func (s CreateControlOutput) GoString() string {
  8725  	return s.String()
  8726  }
  8727  
  8728  // SetControl sets the Control field's value.
  8729  func (s *CreateControlOutput) SetControl(v *Control) *CreateControlOutput {
  8730  	s.Control = v
  8731  	return s
  8732  }
  8733  
  8734  // A collection of attributes used to create a delegation for an assessment
  8735  // in Audit Manager.
  8736  type CreateDelegationRequest struct {
  8737  	_ struct{} `type:"structure"`
  8738  
  8739  	// A comment related to the delegation request.
  8740  	Comment *string `locationName:"comment" type:"string"`
  8741  
  8742  	// The unique identifier for the control set.
  8743  	ControlSetId *string `locationName:"controlSetId" min:"1" type:"string"`
  8744  
  8745  	// The Amazon Resource Name (ARN) of the IAM role.
  8746  	RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  8747  
  8748  	// The type of customer persona.
  8749  	//
  8750  	// In CreateAssessment, roleType can only be PROCESS_OWNER.
  8751  	//
  8752  	// In UpdateSettings, roleType can only be PROCESS_OWNER.
  8753  	//
  8754  	// In BatchCreateDelegationByAssessment, roleType can only be RESOURCE_OWNER.
  8755  	RoleType *string `locationName:"roleType" type:"string" enum:"RoleType"`
  8756  }
  8757  
  8758  // String returns the string representation.
  8759  //
  8760  // API parameter values that are decorated as "sensitive" in the API will not
  8761  // be included in the string output. The member name will be present, but the
  8762  // value will be replaced with "sensitive".
  8763  func (s CreateDelegationRequest) String() string {
  8764  	return awsutil.Prettify(s)
  8765  }
  8766  
  8767  // GoString returns the string representation.
  8768  //
  8769  // API parameter values that are decorated as "sensitive" in the API will not
  8770  // be included in the string output. The member name will be present, but the
  8771  // value will be replaced with "sensitive".
  8772  func (s CreateDelegationRequest) GoString() string {
  8773  	return s.String()
  8774  }
  8775  
  8776  // Validate inspects the fields of the type to determine if they are valid.
  8777  func (s *CreateDelegationRequest) Validate() error {
  8778  	invalidParams := request.ErrInvalidParams{Context: "CreateDelegationRequest"}
  8779  	if s.ControlSetId != nil && len(*s.ControlSetId) < 1 {
  8780  		invalidParams.Add(request.NewErrParamMinLen("ControlSetId", 1))
  8781  	}
  8782  	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  8783  		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  8784  	}
  8785  
  8786  	if invalidParams.Len() > 0 {
  8787  		return invalidParams
  8788  	}
  8789  	return nil
  8790  }
  8791  
  8792  // SetComment sets the Comment field's value.
  8793  func (s *CreateDelegationRequest) SetComment(v string) *CreateDelegationRequest {
  8794  	s.Comment = &v
  8795  	return s
  8796  }
  8797  
  8798  // SetControlSetId sets the ControlSetId field's value.
  8799  func (s *CreateDelegationRequest) SetControlSetId(v string) *CreateDelegationRequest {
  8800  	s.ControlSetId = &v
  8801  	return s
  8802  }
  8803  
  8804  // SetRoleArn sets the RoleArn field's value.
  8805  func (s *CreateDelegationRequest) SetRoleArn(v string) *CreateDelegationRequest {
  8806  	s.RoleArn = &v
  8807  	return s
  8808  }
  8809  
  8810  // SetRoleType sets the RoleType field's value.
  8811  func (s *CreateDelegationRequest) SetRoleType(v string) *CreateDelegationRequest {
  8812  	s.RoleType = &v
  8813  	return s
  8814  }
  8815  
  8816  // The assignment of a control set to a delegate for review.
  8817  type Delegation struct {
  8818  	_ struct{} `type:"structure"`
  8819  
  8820  	// The identifier for the associated assessment.
  8821  	AssessmentId *string `locationName:"assessmentId" min:"36" type:"string"`
  8822  
  8823  	// The name of the associated assessment.
  8824  	AssessmentName *string `locationName:"assessmentName" min:"1" type:"string"`
  8825  
  8826  	// The comment related to the delegation.
  8827  	Comment *string `locationName:"comment" type:"string"`
  8828  
  8829  	// The identifier for the associated control set.
  8830  	ControlSetId *string `locationName:"controlSetId" min:"1" type:"string"`
  8831  
  8832  	// The IAM user or role that created the delegation.
  8833  	CreatedBy *string `locationName:"createdBy" min:"1" type:"string"`
  8834  
  8835  	// Specifies when the delegation was created.
  8836  	CreationTime *time.Time `locationName:"creationTime" type:"timestamp"`
  8837  
  8838  	// The unique identifier for the delegation.
  8839  	Id *string `locationName:"id" min:"36" type:"string"`
  8840  
  8841  	// Specifies when the delegation was last updated.
  8842  	LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp"`
  8843  
  8844  	// The Amazon Resource Name (ARN) of the IAM role.
  8845  	RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  8846  
  8847  	// The type of customer persona.
  8848  	//
  8849  	// In CreateAssessment, roleType can only be PROCESS_OWNER.
  8850  	//
  8851  	// In UpdateSettings, roleType can only be PROCESS_OWNER.
  8852  	//
  8853  	// In BatchCreateDelegationByAssessment, roleType can only be RESOURCE_OWNER.
  8854  	RoleType *string `locationName:"roleType" type:"string" enum:"RoleType"`
  8855  
  8856  	// The status of the delegation.
  8857  	Status *string `locationName:"status" type:"string" enum:"DelegationStatus"`
  8858  }
  8859  
  8860  // String returns the string representation.
  8861  //
  8862  // API parameter values that are decorated as "sensitive" in the API will not
  8863  // be included in the string output. The member name will be present, but the
  8864  // value will be replaced with "sensitive".
  8865  func (s Delegation) String() string {
  8866  	return awsutil.Prettify(s)
  8867  }
  8868  
  8869  // GoString returns the string representation.
  8870  //
  8871  // API parameter values that are decorated as "sensitive" in the API will not
  8872  // be included in the string output. The member name will be present, but the
  8873  // value will be replaced with "sensitive".
  8874  func (s Delegation) GoString() string {
  8875  	return s.String()
  8876  }
  8877  
  8878  // SetAssessmentId sets the AssessmentId field's value.
  8879  func (s *Delegation) SetAssessmentId(v string) *Delegation {
  8880  	s.AssessmentId = &v
  8881  	return s
  8882  }
  8883  
  8884  // SetAssessmentName sets the AssessmentName field's value.
  8885  func (s *Delegation) SetAssessmentName(v string) *Delegation {
  8886  	s.AssessmentName = &v
  8887  	return s
  8888  }
  8889  
  8890  // SetComment sets the Comment field's value.
  8891  func (s *Delegation) SetComment(v string) *Delegation {
  8892  	s.Comment = &v
  8893  	return s
  8894  }
  8895  
  8896  // SetControlSetId sets the ControlSetId field's value.
  8897  func (s *Delegation) SetControlSetId(v string) *Delegation {
  8898  	s.ControlSetId = &v
  8899  	return s
  8900  }
  8901  
  8902  // SetCreatedBy sets the CreatedBy field's value.
  8903  func (s *Delegation) SetCreatedBy(v string) *Delegation {
  8904  	s.CreatedBy = &v
  8905  	return s
  8906  }
  8907  
  8908  // SetCreationTime sets the CreationTime field's value.
  8909  func (s *Delegation) SetCreationTime(v time.Time) *Delegation {
  8910  	s.CreationTime = &v
  8911  	return s
  8912  }
  8913  
  8914  // SetId sets the Id field's value.
  8915  func (s *Delegation) SetId(v string) *Delegation {
  8916  	s.Id = &v
  8917  	return s
  8918  }
  8919  
  8920  // SetLastUpdated sets the LastUpdated field's value.
  8921  func (s *Delegation) SetLastUpdated(v time.Time) *Delegation {
  8922  	s.LastUpdated = &v
  8923  	return s
  8924  }
  8925  
  8926  // SetRoleArn sets the RoleArn field's value.
  8927  func (s *Delegation) SetRoleArn(v string) *Delegation {
  8928  	s.RoleArn = &v
  8929  	return s
  8930  }
  8931  
  8932  // SetRoleType sets the RoleType field's value.
  8933  func (s *Delegation) SetRoleType(v string) *Delegation {
  8934  	s.RoleType = &v
  8935  	return s
  8936  }
  8937  
  8938  // SetStatus sets the Status field's value.
  8939  func (s *Delegation) SetStatus(v string) *Delegation {
  8940  	s.Status = &v
  8941  	return s
  8942  }
  8943  
  8944  // The metadata associated with the specified delegation.
  8945  type DelegationMetadata struct {
  8946  	_ struct{} `type:"structure"`
  8947  
  8948  	// The unique identifier for the specified assessment.
  8949  	AssessmentId *string `locationName:"assessmentId" min:"36" type:"string"`
  8950  
  8951  	// The name of the associated assessment.
  8952  	AssessmentName *string `locationName:"assessmentName" min:"1" type:"string"`
  8953  
  8954  	// Specifies the name of the control set delegated for review.
  8955  	ControlSetName *string `locationName:"controlSetName" min:"1" type:"string"`
  8956  
  8957  	// Specifies when the delegation was created.
  8958  	CreationTime *time.Time `locationName:"creationTime" type:"timestamp"`
  8959  
  8960  	// The unique identifier for the delegation.
  8961  	Id *string `locationName:"id" min:"36" type:"string"`
  8962  
  8963  	// The Amazon Resource Name (ARN) of the IAM role.
  8964  	RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  8965  
  8966  	// The current status of the delgation.
  8967  	Status *string `locationName:"status" type:"string" enum:"DelegationStatus"`
  8968  }
  8969  
  8970  // String returns the string representation.
  8971  //
  8972  // API parameter values that are decorated as "sensitive" in the API will not
  8973  // be included in the string output. The member name will be present, but the
  8974  // value will be replaced with "sensitive".
  8975  func (s DelegationMetadata) String() string {
  8976  	return awsutil.Prettify(s)
  8977  }
  8978  
  8979  // GoString returns the string representation.
  8980  //
  8981  // API parameter values that are decorated as "sensitive" in the API will not
  8982  // be included in the string output. The member name will be present, but the
  8983  // value will be replaced with "sensitive".
  8984  func (s DelegationMetadata) GoString() string {
  8985  	return s.String()
  8986  }
  8987  
  8988  // SetAssessmentId sets the AssessmentId field's value.
  8989  func (s *DelegationMetadata) SetAssessmentId(v string) *DelegationMetadata {
  8990  	s.AssessmentId = &v
  8991  	return s
  8992  }
  8993  
  8994  // SetAssessmentName sets the AssessmentName field's value.
  8995  func (s *DelegationMetadata) SetAssessmentName(v string) *DelegationMetadata {
  8996  	s.AssessmentName = &v
  8997  	return s
  8998  }
  8999  
  9000  // SetControlSetName sets the ControlSetName field's value.
  9001  func (s *DelegationMetadata) SetControlSetName(v string) *DelegationMetadata {
  9002  	s.ControlSetName = &v
  9003  	return s
  9004  }
  9005  
  9006  // SetCreationTime sets the CreationTime field's value.
  9007  func (s *DelegationMetadata) SetCreationTime(v time.Time) *DelegationMetadata {
  9008  	s.CreationTime = &v
  9009  	return s
  9010  }
  9011  
  9012  // SetId sets the Id field's value.
  9013  func (s *DelegationMetadata) SetId(v string) *DelegationMetadata {
  9014  	s.Id = &v
  9015  	return s
  9016  }
  9017  
  9018  // SetRoleArn sets the RoleArn field's value.
  9019  func (s *DelegationMetadata) SetRoleArn(v string) *DelegationMetadata {
  9020  	s.RoleArn = &v
  9021  	return s
  9022  }
  9023  
  9024  // SetStatus sets the Status field's value.
  9025  func (s *DelegationMetadata) SetStatus(v string) *DelegationMetadata {
  9026  	s.Status = &v
  9027  	return s
  9028  }
  9029  
  9030  type DeleteAssessmentFrameworkInput struct {
  9031  	_ struct{} `type:"structure" nopayload:"true"`
  9032  
  9033  	// The identifier for the specified framework.
  9034  	//
  9035  	// FrameworkId is a required field
  9036  	FrameworkId *string `location:"uri" locationName:"frameworkId" min:"36" type:"string" required:"true"`
  9037  }
  9038  
  9039  // String returns the string representation.
  9040  //
  9041  // API parameter values that are decorated as "sensitive" in the API will not
  9042  // be included in the string output. The member name will be present, but the
  9043  // value will be replaced with "sensitive".
  9044  func (s DeleteAssessmentFrameworkInput) String() string {
  9045  	return awsutil.Prettify(s)
  9046  }
  9047  
  9048  // GoString returns the string representation.
  9049  //
  9050  // API parameter values that are decorated as "sensitive" in the API will not
  9051  // be included in the string output. The member name will be present, but the
  9052  // value will be replaced with "sensitive".
  9053  func (s DeleteAssessmentFrameworkInput) GoString() string {
  9054  	return s.String()
  9055  }
  9056  
  9057  // Validate inspects the fields of the type to determine if they are valid.
  9058  func (s *DeleteAssessmentFrameworkInput) Validate() error {
  9059  	invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentFrameworkInput"}
  9060  	if s.FrameworkId == nil {
  9061  		invalidParams.Add(request.NewErrParamRequired("FrameworkId"))
  9062  	}
  9063  	if s.FrameworkId != nil && len(*s.FrameworkId) < 36 {
  9064  		invalidParams.Add(request.NewErrParamMinLen("FrameworkId", 36))
  9065  	}
  9066  
  9067  	if invalidParams.Len() > 0 {
  9068  		return invalidParams
  9069  	}
  9070  	return nil
  9071  }
  9072  
  9073  // SetFrameworkId sets the FrameworkId field's value.
  9074  func (s *DeleteAssessmentFrameworkInput) SetFrameworkId(v string) *DeleteAssessmentFrameworkInput {
  9075  	s.FrameworkId = &v
  9076  	return s
  9077  }
  9078  
  9079  type DeleteAssessmentFrameworkOutput struct {
  9080  	_ struct{} `type:"structure" nopayload:"true"`
  9081  }
  9082  
  9083  // String returns the string representation.
  9084  //
  9085  // API parameter values that are decorated as "sensitive" in the API will not
  9086  // be included in the string output. The member name will be present, but the
  9087  // value will be replaced with "sensitive".
  9088  func (s DeleteAssessmentFrameworkOutput) String() string {
  9089  	return awsutil.Prettify(s)
  9090  }
  9091  
  9092  // GoString returns the string representation.
  9093  //
  9094  // API parameter values that are decorated as "sensitive" in the API will not
  9095  // be included in the string output. The member name will be present, but the
  9096  // value will be replaced with "sensitive".
  9097  func (s DeleteAssessmentFrameworkOutput) GoString() string {
  9098  	return s.String()
  9099  }
  9100  
  9101  type DeleteAssessmentInput struct {
  9102  	_ struct{} `type:"structure" nopayload:"true"`
  9103  
  9104  	// The identifier for the specified assessment.
  9105  	//
  9106  	// AssessmentId is a required field
  9107  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
  9108  }
  9109  
  9110  // String returns the string representation.
  9111  //
  9112  // API parameter values that are decorated as "sensitive" in the API will not
  9113  // be included in the string output. The member name will be present, but the
  9114  // value will be replaced with "sensitive".
  9115  func (s DeleteAssessmentInput) String() string {
  9116  	return awsutil.Prettify(s)
  9117  }
  9118  
  9119  // GoString returns the string representation.
  9120  //
  9121  // API parameter values that are decorated as "sensitive" in the API will not
  9122  // be included in the string output. The member name will be present, but the
  9123  // value will be replaced with "sensitive".
  9124  func (s DeleteAssessmentInput) GoString() string {
  9125  	return s.String()
  9126  }
  9127  
  9128  // Validate inspects the fields of the type to determine if they are valid.
  9129  func (s *DeleteAssessmentInput) Validate() error {
  9130  	invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentInput"}
  9131  	if s.AssessmentId == nil {
  9132  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
  9133  	}
  9134  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
  9135  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
  9136  	}
  9137  
  9138  	if invalidParams.Len() > 0 {
  9139  		return invalidParams
  9140  	}
  9141  	return nil
  9142  }
  9143  
  9144  // SetAssessmentId sets the AssessmentId field's value.
  9145  func (s *DeleteAssessmentInput) SetAssessmentId(v string) *DeleteAssessmentInput {
  9146  	s.AssessmentId = &v
  9147  	return s
  9148  }
  9149  
  9150  type DeleteAssessmentOutput struct {
  9151  	_ struct{} `type:"structure" nopayload:"true"`
  9152  }
  9153  
  9154  // String returns the string representation.
  9155  //
  9156  // API parameter values that are decorated as "sensitive" in the API will not
  9157  // be included in the string output. The member name will be present, but the
  9158  // value will be replaced with "sensitive".
  9159  func (s DeleteAssessmentOutput) String() string {
  9160  	return awsutil.Prettify(s)
  9161  }
  9162  
  9163  // GoString returns the string representation.
  9164  //
  9165  // API parameter values that are decorated as "sensitive" in the API will not
  9166  // be included in the string output. The member name will be present, but the
  9167  // value will be replaced with "sensitive".
  9168  func (s DeleteAssessmentOutput) GoString() string {
  9169  	return s.String()
  9170  }
  9171  
  9172  type DeleteAssessmentReportInput struct {
  9173  	_ struct{} `type:"structure" nopayload:"true"`
  9174  
  9175  	// The identifier for the specified assessment.
  9176  	//
  9177  	// AssessmentId is a required field
  9178  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
  9179  
  9180  	// The unique identifier for the assessment report.
  9181  	//
  9182  	// AssessmentReportId is a required field
  9183  	AssessmentReportId *string `location:"uri" locationName:"assessmentReportId" min:"36" type:"string" required:"true"`
  9184  }
  9185  
  9186  // String returns the string representation.
  9187  //
  9188  // API parameter values that are decorated as "sensitive" in the API will not
  9189  // be included in the string output. The member name will be present, but the
  9190  // value will be replaced with "sensitive".
  9191  func (s DeleteAssessmentReportInput) String() string {
  9192  	return awsutil.Prettify(s)
  9193  }
  9194  
  9195  // GoString returns the string representation.
  9196  //
  9197  // API parameter values that are decorated as "sensitive" in the API will not
  9198  // be included in the string output. The member name will be present, but the
  9199  // value will be replaced with "sensitive".
  9200  func (s DeleteAssessmentReportInput) GoString() string {
  9201  	return s.String()
  9202  }
  9203  
  9204  // Validate inspects the fields of the type to determine if they are valid.
  9205  func (s *DeleteAssessmentReportInput) Validate() error {
  9206  	invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentReportInput"}
  9207  	if s.AssessmentId == nil {
  9208  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
  9209  	}
  9210  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
  9211  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
  9212  	}
  9213  	if s.AssessmentReportId == nil {
  9214  		invalidParams.Add(request.NewErrParamRequired("AssessmentReportId"))
  9215  	}
  9216  	if s.AssessmentReportId != nil && len(*s.AssessmentReportId) < 36 {
  9217  		invalidParams.Add(request.NewErrParamMinLen("AssessmentReportId", 36))
  9218  	}
  9219  
  9220  	if invalidParams.Len() > 0 {
  9221  		return invalidParams
  9222  	}
  9223  	return nil
  9224  }
  9225  
  9226  // SetAssessmentId sets the AssessmentId field's value.
  9227  func (s *DeleteAssessmentReportInput) SetAssessmentId(v string) *DeleteAssessmentReportInput {
  9228  	s.AssessmentId = &v
  9229  	return s
  9230  }
  9231  
  9232  // SetAssessmentReportId sets the AssessmentReportId field's value.
  9233  func (s *DeleteAssessmentReportInput) SetAssessmentReportId(v string) *DeleteAssessmentReportInput {
  9234  	s.AssessmentReportId = &v
  9235  	return s
  9236  }
  9237  
  9238  type DeleteAssessmentReportOutput struct {
  9239  	_ struct{} `type:"structure" nopayload:"true"`
  9240  }
  9241  
  9242  // String returns the string representation.
  9243  //
  9244  // API parameter values that are decorated as "sensitive" in the API will not
  9245  // be included in the string output. The member name will be present, but the
  9246  // value will be replaced with "sensitive".
  9247  func (s DeleteAssessmentReportOutput) String() string {
  9248  	return awsutil.Prettify(s)
  9249  }
  9250  
  9251  // GoString returns the string representation.
  9252  //
  9253  // API parameter values that are decorated as "sensitive" in the API will not
  9254  // be included in the string output. The member name will be present, but the
  9255  // value will be replaced with "sensitive".
  9256  func (s DeleteAssessmentReportOutput) GoString() string {
  9257  	return s.String()
  9258  }
  9259  
  9260  type DeleteControlInput struct {
  9261  	_ struct{} `type:"structure" nopayload:"true"`
  9262  
  9263  	// The identifier for the specified control.
  9264  	//
  9265  	// ControlId is a required field
  9266  	ControlId *string `location:"uri" locationName:"controlId" min:"36" type:"string" required:"true"`
  9267  }
  9268  
  9269  // String returns the string representation.
  9270  //
  9271  // API parameter values that are decorated as "sensitive" in the API will not
  9272  // be included in the string output. The member name will be present, but the
  9273  // value will be replaced with "sensitive".
  9274  func (s DeleteControlInput) String() string {
  9275  	return awsutil.Prettify(s)
  9276  }
  9277  
  9278  // GoString returns the string representation.
  9279  //
  9280  // API parameter values that are decorated as "sensitive" in the API will not
  9281  // be included in the string output. The member name will be present, but the
  9282  // value will be replaced with "sensitive".
  9283  func (s DeleteControlInput) GoString() string {
  9284  	return s.String()
  9285  }
  9286  
  9287  // Validate inspects the fields of the type to determine if they are valid.
  9288  func (s *DeleteControlInput) Validate() error {
  9289  	invalidParams := request.ErrInvalidParams{Context: "DeleteControlInput"}
  9290  	if s.ControlId == nil {
  9291  		invalidParams.Add(request.NewErrParamRequired("ControlId"))
  9292  	}
  9293  	if s.ControlId != nil && len(*s.ControlId) < 36 {
  9294  		invalidParams.Add(request.NewErrParamMinLen("ControlId", 36))
  9295  	}
  9296  
  9297  	if invalidParams.Len() > 0 {
  9298  		return invalidParams
  9299  	}
  9300  	return nil
  9301  }
  9302  
  9303  // SetControlId sets the ControlId field's value.
  9304  func (s *DeleteControlInput) SetControlId(v string) *DeleteControlInput {
  9305  	s.ControlId = &v
  9306  	return s
  9307  }
  9308  
  9309  type DeleteControlOutput struct {
  9310  	_ struct{} `type:"structure" nopayload:"true"`
  9311  }
  9312  
  9313  // String returns the string representation.
  9314  //
  9315  // API parameter values that are decorated as "sensitive" in the API will not
  9316  // be included in the string output. The member name will be present, but the
  9317  // value will be replaced with "sensitive".
  9318  func (s DeleteControlOutput) String() string {
  9319  	return awsutil.Prettify(s)
  9320  }
  9321  
  9322  // GoString returns the string representation.
  9323  //
  9324  // API parameter values that are decorated as "sensitive" in the API will not
  9325  // be included in the string output. The member name will be present, but the
  9326  // value will be replaced with "sensitive".
  9327  func (s DeleteControlOutput) GoString() string {
  9328  	return s.String()
  9329  }
  9330  
  9331  type DeregisterAccountInput struct {
  9332  	_ struct{} `type:"structure" nopayload:"true"`
  9333  }
  9334  
  9335  // String returns the string representation.
  9336  //
  9337  // API parameter values that are decorated as "sensitive" in the API will not
  9338  // be included in the string output. The member name will be present, but the
  9339  // value will be replaced with "sensitive".
  9340  func (s DeregisterAccountInput) String() string {
  9341  	return awsutil.Prettify(s)
  9342  }
  9343  
  9344  // GoString returns the string representation.
  9345  //
  9346  // API parameter values that are decorated as "sensitive" in the API will not
  9347  // be included in the string output. The member name will be present, but the
  9348  // value will be replaced with "sensitive".
  9349  func (s DeregisterAccountInput) GoString() string {
  9350  	return s.String()
  9351  }
  9352  
  9353  type DeregisterAccountOutput struct {
  9354  	_ struct{} `type:"structure"`
  9355  
  9356  	// The registration status of the account.
  9357  	Status *string `locationName:"status" type:"string" enum:"AccountStatus"`
  9358  }
  9359  
  9360  // String returns the string representation.
  9361  //
  9362  // API parameter values that are decorated as "sensitive" in the API will not
  9363  // be included in the string output. The member name will be present, but the
  9364  // value will be replaced with "sensitive".
  9365  func (s DeregisterAccountOutput) String() string {
  9366  	return awsutil.Prettify(s)
  9367  }
  9368  
  9369  // GoString returns the string representation.
  9370  //
  9371  // API parameter values that are decorated as "sensitive" in the API will not
  9372  // be included in the string output. The member name will be present, but the
  9373  // value will be replaced with "sensitive".
  9374  func (s DeregisterAccountOutput) GoString() string {
  9375  	return s.String()
  9376  }
  9377  
  9378  // SetStatus sets the Status field's value.
  9379  func (s *DeregisterAccountOutput) SetStatus(v string) *DeregisterAccountOutput {
  9380  	s.Status = &v
  9381  	return s
  9382  }
  9383  
  9384  type DeregisterOrganizationAdminAccountInput struct {
  9385  	_ struct{} `type:"structure"`
  9386  
  9387  	// The identifier for the specified administrator account.
  9388  	AdminAccountId *string `locationName:"adminAccountId" min:"12" type:"string"`
  9389  }
  9390  
  9391  // String returns the string representation.
  9392  //
  9393  // API parameter values that are decorated as "sensitive" in the API will not
  9394  // be included in the string output. The member name will be present, but the
  9395  // value will be replaced with "sensitive".
  9396  func (s DeregisterOrganizationAdminAccountInput) String() string {
  9397  	return awsutil.Prettify(s)
  9398  }
  9399  
  9400  // GoString returns the string representation.
  9401  //
  9402  // API parameter values that are decorated as "sensitive" in the API will not
  9403  // be included in the string output. The member name will be present, but the
  9404  // value will be replaced with "sensitive".
  9405  func (s DeregisterOrganizationAdminAccountInput) GoString() string {
  9406  	return s.String()
  9407  }
  9408  
  9409  // Validate inspects the fields of the type to determine if they are valid.
  9410  func (s *DeregisterOrganizationAdminAccountInput) Validate() error {
  9411  	invalidParams := request.ErrInvalidParams{Context: "DeregisterOrganizationAdminAccountInput"}
  9412  	if s.AdminAccountId != nil && len(*s.AdminAccountId) < 12 {
  9413  		invalidParams.Add(request.NewErrParamMinLen("AdminAccountId", 12))
  9414  	}
  9415  
  9416  	if invalidParams.Len() > 0 {
  9417  		return invalidParams
  9418  	}
  9419  	return nil
  9420  }
  9421  
  9422  // SetAdminAccountId sets the AdminAccountId field's value.
  9423  func (s *DeregisterOrganizationAdminAccountInput) SetAdminAccountId(v string) *DeregisterOrganizationAdminAccountInput {
  9424  	s.AdminAccountId = &v
  9425  	return s
  9426  }
  9427  
  9428  type DeregisterOrganizationAdminAccountOutput struct {
  9429  	_ struct{} `type:"structure" nopayload:"true"`
  9430  }
  9431  
  9432  // String returns the string representation.
  9433  //
  9434  // API parameter values that are decorated as "sensitive" in the API will not
  9435  // be included in the string output. The member name will be present, but the
  9436  // value will be replaced with "sensitive".
  9437  func (s DeregisterOrganizationAdminAccountOutput) String() string {
  9438  	return awsutil.Prettify(s)
  9439  }
  9440  
  9441  // GoString returns the string representation.
  9442  //
  9443  // API parameter values that are decorated as "sensitive" in the API will not
  9444  // be included in the string output. The member name will be present, but the
  9445  // value will be replaced with "sensitive".
  9446  func (s DeregisterOrganizationAdminAccountOutput) GoString() string {
  9447  	return s.String()
  9448  }
  9449  
  9450  type DisassociateAssessmentReportEvidenceFolderInput struct {
  9451  	_ struct{} `type:"structure"`
  9452  
  9453  	// The identifier for the specified assessment.
  9454  	//
  9455  	// AssessmentId is a required field
  9456  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
  9457  
  9458  	// The identifier for the folder in which evidence is stored.
  9459  	//
  9460  	// EvidenceFolderId is a required field
  9461  	EvidenceFolderId *string `locationName:"evidenceFolderId" min:"36" type:"string" required:"true"`
  9462  }
  9463  
  9464  // String returns the string representation.
  9465  //
  9466  // API parameter values that are decorated as "sensitive" in the API will not
  9467  // be included in the string output. The member name will be present, but the
  9468  // value will be replaced with "sensitive".
  9469  func (s DisassociateAssessmentReportEvidenceFolderInput) String() string {
  9470  	return awsutil.Prettify(s)
  9471  }
  9472  
  9473  // GoString returns the string representation.
  9474  //
  9475  // API parameter values that are decorated as "sensitive" in the API will not
  9476  // be included in the string output. The member name will be present, but the
  9477  // value will be replaced with "sensitive".
  9478  func (s DisassociateAssessmentReportEvidenceFolderInput) GoString() string {
  9479  	return s.String()
  9480  }
  9481  
  9482  // Validate inspects the fields of the type to determine if they are valid.
  9483  func (s *DisassociateAssessmentReportEvidenceFolderInput) Validate() error {
  9484  	invalidParams := request.ErrInvalidParams{Context: "DisassociateAssessmentReportEvidenceFolderInput"}
  9485  	if s.AssessmentId == nil {
  9486  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
  9487  	}
  9488  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
  9489  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
  9490  	}
  9491  	if s.EvidenceFolderId == nil {
  9492  		invalidParams.Add(request.NewErrParamRequired("EvidenceFolderId"))
  9493  	}
  9494  	if s.EvidenceFolderId != nil && len(*s.EvidenceFolderId) < 36 {
  9495  		invalidParams.Add(request.NewErrParamMinLen("EvidenceFolderId", 36))
  9496  	}
  9497  
  9498  	if invalidParams.Len() > 0 {
  9499  		return invalidParams
  9500  	}
  9501  	return nil
  9502  }
  9503  
  9504  // SetAssessmentId sets the AssessmentId field's value.
  9505  func (s *DisassociateAssessmentReportEvidenceFolderInput) SetAssessmentId(v string) *DisassociateAssessmentReportEvidenceFolderInput {
  9506  	s.AssessmentId = &v
  9507  	return s
  9508  }
  9509  
  9510  // SetEvidenceFolderId sets the EvidenceFolderId field's value.
  9511  func (s *DisassociateAssessmentReportEvidenceFolderInput) SetEvidenceFolderId(v string) *DisassociateAssessmentReportEvidenceFolderInput {
  9512  	s.EvidenceFolderId = &v
  9513  	return s
  9514  }
  9515  
  9516  type DisassociateAssessmentReportEvidenceFolderOutput struct {
  9517  	_ struct{} `type:"structure" nopayload:"true"`
  9518  }
  9519  
  9520  // String returns the string representation.
  9521  //
  9522  // API parameter values that are decorated as "sensitive" in the API will not
  9523  // be included in the string output. The member name will be present, but the
  9524  // value will be replaced with "sensitive".
  9525  func (s DisassociateAssessmentReportEvidenceFolderOutput) String() string {
  9526  	return awsutil.Prettify(s)
  9527  }
  9528  
  9529  // GoString returns the string representation.
  9530  //
  9531  // API parameter values that are decorated as "sensitive" in the API will not
  9532  // be included in the string output. The member name will be present, but the
  9533  // value will be replaced with "sensitive".
  9534  func (s DisassociateAssessmentReportEvidenceFolderOutput) GoString() string {
  9535  	return s.String()
  9536  }
  9537  
  9538  // A record that contains the information needed to demonstrate compliance with
  9539  // the requirements specified by a control. Examples of evidence include change
  9540  // activity triggered by a user, or a system configuration snapshot.
  9541  type Evidence struct {
  9542  	_ struct{} `type:"structure"`
  9543  
  9544  	// Specifies whether the evidence is included in the assessment report.
  9545  	AssessmentReportSelection *string `locationName:"assessmentReportSelection" type:"string"`
  9546  
  9547  	// The names and values used by the evidence event, including an attribute name
  9548  	// (such as allowUsersToChangePassword) and value (such as true or false).
  9549  	Attributes map[string]*string `locationName:"attributes" type:"map"`
  9550  
  9551  	// The identifier for the specified account.
  9552  	AwsAccountId *string `locationName:"awsAccountId" min:"12" type:"string"`
  9553  
  9554  	// The account from which the evidence is collected, and its organization path.
  9555  	AwsOrganization *string `locationName:"awsOrganization" type:"string"`
  9556  
  9557  	// The evaluation status for evidence that falls under the compliance check
  9558  	// category. For evidence collected from Security Hub, a Pass or Fail result
  9559  	// is shown. For evidence collected from Config, a Compliant or Noncompliant
  9560  	// result is shown.
  9561  	ComplianceCheck *string `locationName:"complianceCheck" type:"string"`
  9562  
  9563  	// The data source from which the specified evidence was collected.
  9564  	DataSource *string `locationName:"dataSource" type:"string"`
  9565  
  9566  	// The name of the specified evidence event.
  9567  	EventName *string `locationName:"eventName" type:"string"`
  9568  
  9569  	// The Amazon Web Service from which the evidence is collected.
  9570  	EventSource *string `locationName:"eventSource" min:"1" type:"string"`
  9571  
  9572  	// The identifier for the specified account.
  9573  	EvidenceAwsAccountId *string `locationName:"evidenceAwsAccountId" min:"12" type:"string"`
  9574  
  9575  	// The type of automated evidence.
  9576  	EvidenceByType *string `locationName:"evidenceByType" type:"string"`
  9577  
  9578  	// The identifier for the folder in which the evidence is stored.
  9579  	EvidenceFolderId *string `locationName:"evidenceFolderId" min:"36" type:"string"`
  9580  
  9581  	// The unique identifier for the IAM user or role associated with the evidence.
  9582  	IamId *string `locationName:"iamId" min:"20" type:"string"`
  9583  
  9584  	// The identifier for the evidence.
  9585  	Id *string `locationName:"id" min:"36" type:"string"`
  9586  
  9587  	// The list of resources assessed to generate the evidence.
  9588  	ResourcesIncluded []*Resource `locationName:"resourcesIncluded" type:"list"`
  9589  
  9590  	// The timestamp that represents when the evidence was collected.
  9591  	Time *time.Time `locationName:"time" type:"timestamp"`
  9592  }
  9593  
  9594  // String returns the string representation.
  9595  //
  9596  // API parameter values that are decorated as "sensitive" in the API will not
  9597  // be included in the string output. The member name will be present, but the
  9598  // value will be replaced with "sensitive".
  9599  func (s Evidence) String() string {
  9600  	return awsutil.Prettify(s)
  9601  }
  9602  
  9603  // GoString returns the string representation.
  9604  //
  9605  // API parameter values that are decorated as "sensitive" in the API will not
  9606  // be included in the string output. The member name will be present, but the
  9607  // value will be replaced with "sensitive".
  9608  func (s Evidence) GoString() string {
  9609  	return s.String()
  9610  }
  9611  
  9612  // SetAssessmentReportSelection sets the AssessmentReportSelection field's value.
  9613  func (s *Evidence) SetAssessmentReportSelection(v string) *Evidence {
  9614  	s.AssessmentReportSelection = &v
  9615  	return s
  9616  }
  9617  
  9618  // SetAttributes sets the Attributes field's value.
  9619  func (s *Evidence) SetAttributes(v map[string]*string) *Evidence {
  9620  	s.Attributes = v
  9621  	return s
  9622  }
  9623  
  9624  // SetAwsAccountId sets the AwsAccountId field's value.
  9625  func (s *Evidence) SetAwsAccountId(v string) *Evidence {
  9626  	s.AwsAccountId = &v
  9627  	return s
  9628  }
  9629  
  9630  // SetAwsOrganization sets the AwsOrganization field's value.
  9631  func (s *Evidence) SetAwsOrganization(v string) *Evidence {
  9632  	s.AwsOrganization = &v
  9633  	return s
  9634  }
  9635  
  9636  // SetComplianceCheck sets the ComplianceCheck field's value.
  9637  func (s *Evidence) SetComplianceCheck(v string) *Evidence {
  9638  	s.ComplianceCheck = &v
  9639  	return s
  9640  }
  9641  
  9642  // SetDataSource sets the DataSource field's value.
  9643  func (s *Evidence) SetDataSource(v string) *Evidence {
  9644  	s.DataSource = &v
  9645  	return s
  9646  }
  9647  
  9648  // SetEventName sets the EventName field's value.
  9649  func (s *Evidence) SetEventName(v string) *Evidence {
  9650  	s.EventName = &v
  9651  	return s
  9652  }
  9653  
  9654  // SetEventSource sets the EventSource field's value.
  9655  func (s *Evidence) SetEventSource(v string) *Evidence {
  9656  	s.EventSource = &v
  9657  	return s
  9658  }
  9659  
  9660  // SetEvidenceAwsAccountId sets the EvidenceAwsAccountId field's value.
  9661  func (s *Evidence) SetEvidenceAwsAccountId(v string) *Evidence {
  9662  	s.EvidenceAwsAccountId = &v
  9663  	return s
  9664  }
  9665  
  9666  // SetEvidenceByType sets the EvidenceByType field's value.
  9667  func (s *Evidence) SetEvidenceByType(v string) *Evidence {
  9668  	s.EvidenceByType = &v
  9669  	return s
  9670  }
  9671  
  9672  // SetEvidenceFolderId sets the EvidenceFolderId field's value.
  9673  func (s *Evidence) SetEvidenceFolderId(v string) *Evidence {
  9674  	s.EvidenceFolderId = &v
  9675  	return s
  9676  }
  9677  
  9678  // SetIamId sets the IamId field's value.
  9679  func (s *Evidence) SetIamId(v string) *Evidence {
  9680  	s.IamId = &v
  9681  	return s
  9682  }
  9683  
  9684  // SetId sets the Id field's value.
  9685  func (s *Evidence) SetId(v string) *Evidence {
  9686  	s.Id = &v
  9687  	return s
  9688  }
  9689  
  9690  // SetResourcesIncluded sets the ResourcesIncluded field's value.
  9691  func (s *Evidence) SetResourcesIncluded(v []*Resource) *Evidence {
  9692  	s.ResourcesIncluded = v
  9693  	return s
  9694  }
  9695  
  9696  // SetTime sets the Time field's value.
  9697  func (s *Evidence) SetTime(v time.Time) *Evidence {
  9698  	s.Time = &v
  9699  	return s
  9700  }
  9701  
  9702  // The file used to structure and automate Audit Manager assessments for a given
  9703  // compliance standard.
  9704  type Framework struct {
  9705  	_ struct{} `type:"structure"`
  9706  
  9707  	// The Amazon Resource Name (ARN) of the specified framework.
  9708  	Arn *string `locationName:"arn" min:"20" type:"string"`
  9709  
  9710  	// The compliance type that the new custom framework supports, such as CIS or
  9711  	// HIPAA.
  9712  	ComplianceType *string `locationName:"complianceType" type:"string"`
  9713  
  9714  	// The control sets associated with the framework.
  9715  	ControlSets []*ControlSet `locationName:"controlSets" min:"1" type:"list"`
  9716  
  9717  	// The sources from which Audit Manager collects evidence for the control.
  9718  	ControlSources *string `locationName:"controlSources" min:"1" type:"string"`
  9719  
  9720  	// Specifies when the framework was created.
  9721  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
  9722  
  9723  	// The IAM user or role that created the framework.
  9724  	CreatedBy *string `locationName:"createdBy" min:"1" type:"string"`
  9725  
  9726  	// The description of the specified framework.
  9727  	Description *string `locationName:"description" min:"1" type:"string"`
  9728  
  9729  	// The unique identifier for the specified framework.
  9730  	Id *string `locationName:"id" min:"36" type:"string"`
  9731  
  9732  	// Specifies when the framework was most recently updated.
  9733  	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
  9734  
  9735  	// The IAM user or role that most recently updated the framework.
  9736  	LastUpdatedBy *string `locationName:"lastUpdatedBy" min:"1" type:"string"`
  9737  
  9738  	// The logo associated with the framework.
  9739  	Logo *string `locationName:"logo" min:"1" type:"string"`
  9740  
  9741  	// The name of the specified framework.
  9742  	Name *string `locationName:"name" min:"1" type:"string"`
  9743  
  9744  	// The tags associated with the framework.
  9745  	Tags map[string]*string `locationName:"tags" type:"map"`
  9746  
  9747  	// The framework type, such as custom or standard.
  9748  	Type *string `locationName:"type" type:"string" enum:"FrameworkType"`
  9749  }
  9750  
  9751  // String returns the string representation.
  9752  //
  9753  // API parameter values that are decorated as "sensitive" in the API will not
  9754  // be included in the string output. The member name will be present, but the
  9755  // value will be replaced with "sensitive".
  9756  func (s Framework) String() string {
  9757  	return awsutil.Prettify(s)
  9758  }
  9759  
  9760  // GoString returns the string representation.
  9761  //
  9762  // API parameter values that are decorated as "sensitive" in the API will not
  9763  // be included in the string output. The member name will be present, but the
  9764  // value will be replaced with "sensitive".
  9765  func (s Framework) GoString() string {
  9766  	return s.String()
  9767  }
  9768  
  9769  // SetArn sets the Arn field's value.
  9770  func (s *Framework) SetArn(v string) *Framework {
  9771  	s.Arn = &v
  9772  	return s
  9773  }
  9774  
  9775  // SetComplianceType sets the ComplianceType field's value.
  9776  func (s *Framework) SetComplianceType(v string) *Framework {
  9777  	s.ComplianceType = &v
  9778  	return s
  9779  }
  9780  
  9781  // SetControlSets sets the ControlSets field's value.
  9782  func (s *Framework) SetControlSets(v []*ControlSet) *Framework {
  9783  	s.ControlSets = v
  9784  	return s
  9785  }
  9786  
  9787  // SetControlSources sets the ControlSources field's value.
  9788  func (s *Framework) SetControlSources(v string) *Framework {
  9789  	s.ControlSources = &v
  9790  	return s
  9791  }
  9792  
  9793  // SetCreatedAt sets the CreatedAt field's value.
  9794  func (s *Framework) SetCreatedAt(v time.Time) *Framework {
  9795  	s.CreatedAt = &v
  9796  	return s
  9797  }
  9798  
  9799  // SetCreatedBy sets the CreatedBy field's value.
  9800  func (s *Framework) SetCreatedBy(v string) *Framework {
  9801  	s.CreatedBy = &v
  9802  	return s
  9803  }
  9804  
  9805  // SetDescription sets the Description field's value.
  9806  func (s *Framework) SetDescription(v string) *Framework {
  9807  	s.Description = &v
  9808  	return s
  9809  }
  9810  
  9811  // SetId sets the Id field's value.
  9812  func (s *Framework) SetId(v string) *Framework {
  9813  	s.Id = &v
  9814  	return s
  9815  }
  9816  
  9817  // SetLastUpdatedAt sets the LastUpdatedAt field's value.
  9818  func (s *Framework) SetLastUpdatedAt(v time.Time) *Framework {
  9819  	s.LastUpdatedAt = &v
  9820  	return s
  9821  }
  9822  
  9823  // SetLastUpdatedBy sets the LastUpdatedBy field's value.
  9824  func (s *Framework) SetLastUpdatedBy(v string) *Framework {
  9825  	s.LastUpdatedBy = &v
  9826  	return s
  9827  }
  9828  
  9829  // SetLogo sets the Logo field's value.
  9830  func (s *Framework) SetLogo(v string) *Framework {
  9831  	s.Logo = &v
  9832  	return s
  9833  }
  9834  
  9835  // SetName sets the Name field's value.
  9836  func (s *Framework) SetName(v string) *Framework {
  9837  	s.Name = &v
  9838  	return s
  9839  }
  9840  
  9841  // SetTags sets the Tags field's value.
  9842  func (s *Framework) SetTags(v map[string]*string) *Framework {
  9843  	s.Tags = v
  9844  	return s
  9845  }
  9846  
  9847  // SetType sets the Type field's value.
  9848  func (s *Framework) SetType(v string) *Framework {
  9849  	s.Type = &v
  9850  	return s
  9851  }
  9852  
  9853  // The metadata of a framework, such as the name, ID, description, and so on.
  9854  type FrameworkMetadata struct {
  9855  	_ struct{} `type:"structure"`
  9856  
  9857  	// The compliance standard associated with the framework, such as PCI-DSS or
  9858  	// HIPAA.
  9859  	ComplianceType *string `locationName:"complianceType" type:"string"`
  9860  
  9861  	// The description of the framework.
  9862  	Description *string `locationName:"description" min:"1" type:"string"`
  9863  
  9864  	// The logo associated with the framework.
  9865  	Logo *string `locationName:"logo" min:"1" type:"string"`
  9866  
  9867  	// The name of the framework.
  9868  	Name *string `locationName:"name" min:"1" type:"string"`
  9869  }
  9870  
  9871  // String returns the string representation.
  9872  //
  9873  // API parameter values that are decorated as "sensitive" in the API will not
  9874  // be included in the string output. The member name will be present, but the
  9875  // value will be replaced with "sensitive".
  9876  func (s FrameworkMetadata) String() string {
  9877  	return awsutil.Prettify(s)
  9878  }
  9879  
  9880  // GoString returns the string representation.
  9881  //
  9882  // API parameter values that are decorated as "sensitive" in the API will not
  9883  // be included in the string output. The member name will be present, but the
  9884  // value will be replaced with "sensitive".
  9885  func (s FrameworkMetadata) GoString() string {
  9886  	return s.String()
  9887  }
  9888  
  9889  // SetComplianceType sets the ComplianceType field's value.
  9890  func (s *FrameworkMetadata) SetComplianceType(v string) *FrameworkMetadata {
  9891  	s.ComplianceType = &v
  9892  	return s
  9893  }
  9894  
  9895  // SetDescription sets the Description field's value.
  9896  func (s *FrameworkMetadata) SetDescription(v string) *FrameworkMetadata {
  9897  	s.Description = &v
  9898  	return s
  9899  }
  9900  
  9901  // SetLogo sets the Logo field's value.
  9902  func (s *FrameworkMetadata) SetLogo(v string) *FrameworkMetadata {
  9903  	s.Logo = &v
  9904  	return s
  9905  }
  9906  
  9907  // SetName sets the Name field's value.
  9908  func (s *FrameworkMetadata) SetName(v string) *FrameworkMetadata {
  9909  	s.Name = &v
  9910  	return s
  9911  }
  9912  
  9913  type GetAccountStatusInput struct {
  9914  	_ struct{} `type:"structure" nopayload:"true"`
  9915  }
  9916  
  9917  // String returns the string representation.
  9918  //
  9919  // API parameter values that are decorated as "sensitive" in the API will not
  9920  // be included in the string output. The member name will be present, but the
  9921  // value will be replaced with "sensitive".
  9922  func (s GetAccountStatusInput) String() string {
  9923  	return awsutil.Prettify(s)
  9924  }
  9925  
  9926  // GoString returns the string representation.
  9927  //
  9928  // API parameter values that are decorated as "sensitive" in the API will not
  9929  // be included in the string output. The member name will be present, but the
  9930  // value will be replaced with "sensitive".
  9931  func (s GetAccountStatusInput) GoString() string {
  9932  	return s.String()
  9933  }
  9934  
  9935  type GetAccountStatusOutput struct {
  9936  	_ struct{} `type:"structure"`
  9937  
  9938  	// The status of the specified account.
  9939  	Status *string `locationName:"status" type:"string" enum:"AccountStatus"`
  9940  }
  9941  
  9942  // String returns the string representation.
  9943  //
  9944  // API parameter values that are decorated as "sensitive" in the API will not
  9945  // be included in the string output. The member name will be present, but the
  9946  // value will be replaced with "sensitive".
  9947  func (s GetAccountStatusOutput) String() string {
  9948  	return awsutil.Prettify(s)
  9949  }
  9950  
  9951  // GoString returns the string representation.
  9952  //
  9953  // API parameter values that are decorated as "sensitive" in the API will not
  9954  // be included in the string output. The member name will be present, but the
  9955  // value will be replaced with "sensitive".
  9956  func (s GetAccountStatusOutput) GoString() string {
  9957  	return s.String()
  9958  }
  9959  
  9960  // SetStatus sets the Status field's value.
  9961  func (s *GetAccountStatusOutput) SetStatus(v string) *GetAccountStatusOutput {
  9962  	s.Status = &v
  9963  	return s
  9964  }
  9965  
  9966  type GetAssessmentFrameworkInput struct {
  9967  	_ struct{} `type:"structure" nopayload:"true"`
  9968  
  9969  	// The identifier for the specified framework.
  9970  	//
  9971  	// FrameworkId is a required field
  9972  	FrameworkId *string `location:"uri" locationName:"frameworkId" min:"36" type:"string" required:"true"`
  9973  }
  9974  
  9975  // String returns the string representation.
  9976  //
  9977  // API parameter values that are decorated as "sensitive" in the API will not
  9978  // be included in the string output. The member name will be present, but the
  9979  // value will be replaced with "sensitive".
  9980  func (s GetAssessmentFrameworkInput) String() string {
  9981  	return awsutil.Prettify(s)
  9982  }
  9983  
  9984  // GoString returns the string representation.
  9985  //
  9986  // API parameter values that are decorated as "sensitive" in the API will not
  9987  // be included in the string output. The member name will be present, but the
  9988  // value will be replaced with "sensitive".
  9989  func (s GetAssessmentFrameworkInput) GoString() string {
  9990  	return s.String()
  9991  }
  9992  
  9993  // Validate inspects the fields of the type to determine if they are valid.
  9994  func (s *GetAssessmentFrameworkInput) Validate() error {
  9995  	invalidParams := request.ErrInvalidParams{Context: "GetAssessmentFrameworkInput"}
  9996  	if s.FrameworkId == nil {
  9997  		invalidParams.Add(request.NewErrParamRequired("FrameworkId"))
  9998  	}
  9999  	if s.FrameworkId != nil && len(*s.FrameworkId) < 36 {
 10000  		invalidParams.Add(request.NewErrParamMinLen("FrameworkId", 36))
 10001  	}
 10002  
 10003  	if invalidParams.Len() > 0 {
 10004  		return invalidParams
 10005  	}
 10006  	return nil
 10007  }
 10008  
 10009  // SetFrameworkId sets the FrameworkId field's value.
 10010  func (s *GetAssessmentFrameworkInput) SetFrameworkId(v string) *GetAssessmentFrameworkInput {
 10011  	s.FrameworkId = &v
 10012  	return s
 10013  }
 10014  
 10015  type GetAssessmentFrameworkOutput struct {
 10016  	_ struct{} `type:"structure"`
 10017  
 10018  	// The framework returned by the GetAssessmentFramework API.
 10019  	Framework *Framework `locationName:"framework" type:"structure"`
 10020  }
 10021  
 10022  // String returns the string representation.
 10023  //
 10024  // API parameter values that are decorated as "sensitive" in the API will not
 10025  // be included in the string output. The member name will be present, but the
 10026  // value will be replaced with "sensitive".
 10027  func (s GetAssessmentFrameworkOutput) String() string {
 10028  	return awsutil.Prettify(s)
 10029  }
 10030  
 10031  // GoString returns the string representation.
 10032  //
 10033  // API parameter values that are decorated as "sensitive" in the API will not
 10034  // be included in the string output. The member name will be present, but the
 10035  // value will be replaced with "sensitive".
 10036  func (s GetAssessmentFrameworkOutput) GoString() string {
 10037  	return s.String()
 10038  }
 10039  
 10040  // SetFramework sets the Framework field's value.
 10041  func (s *GetAssessmentFrameworkOutput) SetFramework(v *Framework) *GetAssessmentFrameworkOutput {
 10042  	s.Framework = v
 10043  	return s
 10044  }
 10045  
 10046  type GetAssessmentInput struct {
 10047  	_ struct{} `type:"structure" nopayload:"true"`
 10048  
 10049  	// The identifier for the specified assessment.
 10050  	//
 10051  	// AssessmentId is a required field
 10052  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 10053  }
 10054  
 10055  // String returns the string representation.
 10056  //
 10057  // API parameter values that are decorated as "sensitive" in the API will not
 10058  // be included in the string output. The member name will be present, but the
 10059  // value will be replaced with "sensitive".
 10060  func (s GetAssessmentInput) String() string {
 10061  	return awsutil.Prettify(s)
 10062  }
 10063  
 10064  // GoString returns the string representation.
 10065  //
 10066  // API parameter values that are decorated as "sensitive" in the API will not
 10067  // be included in the string output. The member name will be present, but the
 10068  // value will be replaced with "sensitive".
 10069  func (s GetAssessmentInput) GoString() string {
 10070  	return s.String()
 10071  }
 10072  
 10073  // Validate inspects the fields of the type to determine if they are valid.
 10074  func (s *GetAssessmentInput) Validate() error {
 10075  	invalidParams := request.ErrInvalidParams{Context: "GetAssessmentInput"}
 10076  	if s.AssessmentId == nil {
 10077  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 10078  	}
 10079  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 10080  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 10081  	}
 10082  
 10083  	if invalidParams.Len() > 0 {
 10084  		return invalidParams
 10085  	}
 10086  	return nil
 10087  }
 10088  
 10089  // SetAssessmentId sets the AssessmentId field's value.
 10090  func (s *GetAssessmentInput) SetAssessmentId(v string) *GetAssessmentInput {
 10091  	s.AssessmentId = &v
 10092  	return s
 10093  }
 10094  
 10095  type GetAssessmentOutput struct {
 10096  	_ struct{} `type:"structure"`
 10097  
 10098  	// An entity that defines the scope of audit evidence collected by Audit Manager.
 10099  	// An Audit Manager assessment is an implementation of an Audit Manager framework.
 10100  	Assessment *Assessment `locationName:"assessment" type:"structure"`
 10101  
 10102  	// The wrapper that contains the Audit Manager role information of the current
 10103  	// user, such as the role type and IAM Amazon Resource Name (ARN).
 10104  	UserRole *Role `locationName:"userRole" type:"structure"`
 10105  }
 10106  
 10107  // String returns the string representation.
 10108  //
 10109  // API parameter values that are decorated as "sensitive" in the API will not
 10110  // be included in the string output. The member name will be present, but the
 10111  // value will be replaced with "sensitive".
 10112  func (s GetAssessmentOutput) String() string {
 10113  	return awsutil.Prettify(s)
 10114  }
 10115  
 10116  // GoString returns the string representation.
 10117  //
 10118  // API parameter values that are decorated as "sensitive" in the API will not
 10119  // be included in the string output. The member name will be present, but the
 10120  // value will be replaced with "sensitive".
 10121  func (s GetAssessmentOutput) GoString() string {
 10122  	return s.String()
 10123  }
 10124  
 10125  // SetAssessment sets the Assessment field's value.
 10126  func (s *GetAssessmentOutput) SetAssessment(v *Assessment) *GetAssessmentOutput {
 10127  	s.Assessment = v
 10128  	return s
 10129  }
 10130  
 10131  // SetUserRole sets the UserRole field's value.
 10132  func (s *GetAssessmentOutput) SetUserRole(v *Role) *GetAssessmentOutput {
 10133  	s.UserRole = v
 10134  	return s
 10135  }
 10136  
 10137  type GetAssessmentReportUrlInput struct {
 10138  	_ struct{} `type:"structure" nopayload:"true"`
 10139  
 10140  	// The identifier for the specified assessment.
 10141  	//
 10142  	// AssessmentId is a required field
 10143  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 10144  
 10145  	// The identifier for the assessment report.
 10146  	//
 10147  	// AssessmentReportId is a required field
 10148  	AssessmentReportId *string `location:"uri" locationName:"assessmentReportId" min:"36" type:"string" required:"true"`
 10149  }
 10150  
 10151  // String returns the string representation.
 10152  //
 10153  // API parameter values that are decorated as "sensitive" in the API will not
 10154  // be included in the string output. The member name will be present, but the
 10155  // value will be replaced with "sensitive".
 10156  func (s GetAssessmentReportUrlInput) String() string {
 10157  	return awsutil.Prettify(s)
 10158  }
 10159  
 10160  // GoString returns the string representation.
 10161  //
 10162  // API parameter values that are decorated as "sensitive" in the API will not
 10163  // be included in the string output. The member name will be present, but the
 10164  // value will be replaced with "sensitive".
 10165  func (s GetAssessmentReportUrlInput) GoString() string {
 10166  	return s.String()
 10167  }
 10168  
 10169  // Validate inspects the fields of the type to determine if they are valid.
 10170  func (s *GetAssessmentReportUrlInput) Validate() error {
 10171  	invalidParams := request.ErrInvalidParams{Context: "GetAssessmentReportUrlInput"}
 10172  	if s.AssessmentId == nil {
 10173  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 10174  	}
 10175  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 10176  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 10177  	}
 10178  	if s.AssessmentReportId == nil {
 10179  		invalidParams.Add(request.NewErrParamRequired("AssessmentReportId"))
 10180  	}
 10181  	if s.AssessmentReportId != nil && len(*s.AssessmentReportId) < 36 {
 10182  		invalidParams.Add(request.NewErrParamMinLen("AssessmentReportId", 36))
 10183  	}
 10184  
 10185  	if invalidParams.Len() > 0 {
 10186  		return invalidParams
 10187  	}
 10188  	return nil
 10189  }
 10190  
 10191  // SetAssessmentId sets the AssessmentId field's value.
 10192  func (s *GetAssessmentReportUrlInput) SetAssessmentId(v string) *GetAssessmentReportUrlInput {
 10193  	s.AssessmentId = &v
 10194  	return s
 10195  }
 10196  
 10197  // SetAssessmentReportId sets the AssessmentReportId field's value.
 10198  func (s *GetAssessmentReportUrlInput) SetAssessmentReportId(v string) *GetAssessmentReportUrlInput {
 10199  	s.AssessmentReportId = &v
 10200  	return s
 10201  }
 10202  
 10203  type GetAssessmentReportUrlOutput struct {
 10204  	_ struct{} `type:"structure"`
 10205  
 10206  	// A uniform resource locator, used as a unique identifier to locate a resource
 10207  	// on the internet.
 10208  	PreSignedUrl *URL `locationName:"preSignedUrl" type:"structure"`
 10209  }
 10210  
 10211  // String returns the string representation.
 10212  //
 10213  // API parameter values that are decorated as "sensitive" in the API will not
 10214  // be included in the string output. The member name will be present, but the
 10215  // value will be replaced with "sensitive".
 10216  func (s GetAssessmentReportUrlOutput) String() string {
 10217  	return awsutil.Prettify(s)
 10218  }
 10219  
 10220  // GoString returns the string representation.
 10221  //
 10222  // API parameter values that are decorated as "sensitive" in the API will not
 10223  // be included in the string output. The member name will be present, but the
 10224  // value will be replaced with "sensitive".
 10225  func (s GetAssessmentReportUrlOutput) GoString() string {
 10226  	return s.String()
 10227  }
 10228  
 10229  // SetPreSignedUrl sets the PreSignedUrl field's value.
 10230  func (s *GetAssessmentReportUrlOutput) SetPreSignedUrl(v *URL) *GetAssessmentReportUrlOutput {
 10231  	s.PreSignedUrl = v
 10232  	return s
 10233  }
 10234  
 10235  type GetChangeLogsInput struct {
 10236  	_ struct{} `type:"structure" nopayload:"true"`
 10237  
 10238  	// The identifier for the specified assessment.
 10239  	//
 10240  	// AssessmentId is a required field
 10241  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 10242  
 10243  	// The identifier for the specified control.
 10244  	ControlId *string `location:"querystring" locationName:"controlId" min:"36" type:"string"`
 10245  
 10246  	// The identifier for the specified control set.
 10247  	ControlSetId *string `location:"querystring" locationName:"controlSetId" min:"1" type:"string"`
 10248  
 10249  	// Represents the maximum number of results per page, or per API request call.
 10250  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 10251  
 10252  	// The pagination token used to fetch the next set of results.
 10253  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 10254  }
 10255  
 10256  // String returns the string representation.
 10257  //
 10258  // API parameter values that are decorated as "sensitive" in the API will not
 10259  // be included in the string output. The member name will be present, but the
 10260  // value will be replaced with "sensitive".
 10261  func (s GetChangeLogsInput) String() string {
 10262  	return awsutil.Prettify(s)
 10263  }
 10264  
 10265  // GoString returns the string representation.
 10266  //
 10267  // API parameter values that are decorated as "sensitive" in the API will not
 10268  // be included in the string output. The member name will be present, but the
 10269  // value will be replaced with "sensitive".
 10270  func (s GetChangeLogsInput) GoString() string {
 10271  	return s.String()
 10272  }
 10273  
 10274  // Validate inspects the fields of the type to determine if they are valid.
 10275  func (s *GetChangeLogsInput) Validate() error {
 10276  	invalidParams := request.ErrInvalidParams{Context: "GetChangeLogsInput"}
 10277  	if s.AssessmentId == nil {
 10278  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 10279  	}
 10280  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 10281  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 10282  	}
 10283  	if s.ControlId != nil && len(*s.ControlId) < 36 {
 10284  		invalidParams.Add(request.NewErrParamMinLen("ControlId", 36))
 10285  	}
 10286  	if s.ControlSetId != nil && len(*s.ControlSetId) < 1 {
 10287  		invalidParams.Add(request.NewErrParamMinLen("ControlSetId", 1))
 10288  	}
 10289  	if s.MaxResults != nil && *s.MaxResults < 1 {
 10290  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 10291  	}
 10292  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 10293  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 10294  	}
 10295  
 10296  	if invalidParams.Len() > 0 {
 10297  		return invalidParams
 10298  	}
 10299  	return nil
 10300  }
 10301  
 10302  // SetAssessmentId sets the AssessmentId field's value.
 10303  func (s *GetChangeLogsInput) SetAssessmentId(v string) *GetChangeLogsInput {
 10304  	s.AssessmentId = &v
 10305  	return s
 10306  }
 10307  
 10308  // SetControlId sets the ControlId field's value.
 10309  func (s *GetChangeLogsInput) SetControlId(v string) *GetChangeLogsInput {
 10310  	s.ControlId = &v
 10311  	return s
 10312  }
 10313  
 10314  // SetControlSetId sets the ControlSetId field's value.
 10315  func (s *GetChangeLogsInput) SetControlSetId(v string) *GetChangeLogsInput {
 10316  	s.ControlSetId = &v
 10317  	return s
 10318  }
 10319  
 10320  // SetMaxResults sets the MaxResults field's value.
 10321  func (s *GetChangeLogsInput) SetMaxResults(v int64) *GetChangeLogsInput {
 10322  	s.MaxResults = &v
 10323  	return s
 10324  }
 10325  
 10326  // SetNextToken sets the NextToken field's value.
 10327  func (s *GetChangeLogsInput) SetNextToken(v string) *GetChangeLogsInput {
 10328  	s.NextToken = &v
 10329  	return s
 10330  }
 10331  
 10332  type GetChangeLogsOutput struct {
 10333  	_ struct{} `type:"structure"`
 10334  
 10335  	// The list of user activity for the control.
 10336  	ChangeLogs []*ChangeLog `locationName:"changeLogs" type:"list"`
 10337  
 10338  	// The pagination token used to fetch the next set of results.
 10339  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10340  }
 10341  
 10342  // String returns the string representation.
 10343  //
 10344  // API parameter values that are decorated as "sensitive" in the API will not
 10345  // be included in the string output. The member name will be present, but the
 10346  // value will be replaced with "sensitive".
 10347  func (s GetChangeLogsOutput) String() string {
 10348  	return awsutil.Prettify(s)
 10349  }
 10350  
 10351  // GoString returns the string representation.
 10352  //
 10353  // API parameter values that are decorated as "sensitive" in the API will not
 10354  // be included in the string output. The member name will be present, but the
 10355  // value will be replaced with "sensitive".
 10356  func (s GetChangeLogsOutput) GoString() string {
 10357  	return s.String()
 10358  }
 10359  
 10360  // SetChangeLogs sets the ChangeLogs field's value.
 10361  func (s *GetChangeLogsOutput) SetChangeLogs(v []*ChangeLog) *GetChangeLogsOutput {
 10362  	s.ChangeLogs = v
 10363  	return s
 10364  }
 10365  
 10366  // SetNextToken sets the NextToken field's value.
 10367  func (s *GetChangeLogsOutput) SetNextToken(v string) *GetChangeLogsOutput {
 10368  	s.NextToken = &v
 10369  	return s
 10370  }
 10371  
 10372  type GetControlInput struct {
 10373  	_ struct{} `type:"structure" nopayload:"true"`
 10374  
 10375  	// The identifier for the specified control.
 10376  	//
 10377  	// ControlId is a required field
 10378  	ControlId *string `location:"uri" locationName:"controlId" min:"36" type:"string" required:"true"`
 10379  }
 10380  
 10381  // String returns the string representation.
 10382  //
 10383  // API parameter values that are decorated as "sensitive" in the API will not
 10384  // be included in the string output. The member name will be present, but the
 10385  // value will be replaced with "sensitive".
 10386  func (s GetControlInput) String() string {
 10387  	return awsutil.Prettify(s)
 10388  }
 10389  
 10390  // GoString returns the string representation.
 10391  //
 10392  // API parameter values that are decorated as "sensitive" in the API will not
 10393  // be included in the string output. The member name will be present, but the
 10394  // value will be replaced with "sensitive".
 10395  func (s GetControlInput) GoString() string {
 10396  	return s.String()
 10397  }
 10398  
 10399  // Validate inspects the fields of the type to determine if they are valid.
 10400  func (s *GetControlInput) Validate() error {
 10401  	invalidParams := request.ErrInvalidParams{Context: "GetControlInput"}
 10402  	if s.ControlId == nil {
 10403  		invalidParams.Add(request.NewErrParamRequired("ControlId"))
 10404  	}
 10405  	if s.ControlId != nil && len(*s.ControlId) < 36 {
 10406  		invalidParams.Add(request.NewErrParamMinLen("ControlId", 36))
 10407  	}
 10408  
 10409  	if invalidParams.Len() > 0 {
 10410  		return invalidParams
 10411  	}
 10412  	return nil
 10413  }
 10414  
 10415  // SetControlId sets the ControlId field's value.
 10416  func (s *GetControlInput) SetControlId(v string) *GetControlInput {
 10417  	s.ControlId = &v
 10418  	return s
 10419  }
 10420  
 10421  type GetControlOutput struct {
 10422  	_ struct{} `type:"structure"`
 10423  
 10424  	// The name of the control returned by the GetControl API.
 10425  	Control *Control `locationName:"control" type:"structure"`
 10426  }
 10427  
 10428  // String returns the string representation.
 10429  //
 10430  // API parameter values that are decorated as "sensitive" in the API will not
 10431  // be included in the string output. The member name will be present, but the
 10432  // value will be replaced with "sensitive".
 10433  func (s GetControlOutput) String() string {
 10434  	return awsutil.Prettify(s)
 10435  }
 10436  
 10437  // GoString returns the string representation.
 10438  //
 10439  // API parameter values that are decorated as "sensitive" in the API will not
 10440  // be included in the string output. The member name will be present, but the
 10441  // value will be replaced with "sensitive".
 10442  func (s GetControlOutput) GoString() string {
 10443  	return s.String()
 10444  }
 10445  
 10446  // SetControl sets the Control field's value.
 10447  func (s *GetControlOutput) SetControl(v *Control) *GetControlOutput {
 10448  	s.Control = v
 10449  	return s
 10450  }
 10451  
 10452  type GetDelegationsInput struct {
 10453  	_ struct{} `type:"structure" nopayload:"true"`
 10454  
 10455  	// Represents the maximum number of results per page, or per API request call.
 10456  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 10457  
 10458  	// The pagination token used to fetch the next set of results.
 10459  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 10460  }
 10461  
 10462  // String returns the string representation.
 10463  //
 10464  // API parameter values that are decorated as "sensitive" in the API will not
 10465  // be included in the string output. The member name will be present, but the
 10466  // value will be replaced with "sensitive".
 10467  func (s GetDelegationsInput) String() string {
 10468  	return awsutil.Prettify(s)
 10469  }
 10470  
 10471  // GoString returns the string representation.
 10472  //
 10473  // API parameter values that are decorated as "sensitive" in the API will not
 10474  // be included in the string output. The member name will be present, but the
 10475  // value will be replaced with "sensitive".
 10476  func (s GetDelegationsInput) GoString() string {
 10477  	return s.String()
 10478  }
 10479  
 10480  // Validate inspects the fields of the type to determine if they are valid.
 10481  func (s *GetDelegationsInput) Validate() error {
 10482  	invalidParams := request.ErrInvalidParams{Context: "GetDelegationsInput"}
 10483  	if s.MaxResults != nil && *s.MaxResults < 1 {
 10484  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 10485  	}
 10486  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 10487  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 10488  	}
 10489  
 10490  	if invalidParams.Len() > 0 {
 10491  		return invalidParams
 10492  	}
 10493  	return nil
 10494  }
 10495  
 10496  // SetMaxResults sets the MaxResults field's value.
 10497  func (s *GetDelegationsInput) SetMaxResults(v int64) *GetDelegationsInput {
 10498  	s.MaxResults = &v
 10499  	return s
 10500  }
 10501  
 10502  // SetNextToken sets the NextToken field's value.
 10503  func (s *GetDelegationsInput) SetNextToken(v string) *GetDelegationsInput {
 10504  	s.NextToken = &v
 10505  	return s
 10506  }
 10507  
 10508  type GetDelegationsOutput struct {
 10509  	_ struct{} `type:"structure"`
 10510  
 10511  	// The list of delegations returned by the GetDelegations API.
 10512  	Delegations []*DelegationMetadata `locationName:"delegations" type:"list"`
 10513  
 10514  	// The pagination token used to fetch the next set of results.
 10515  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10516  }
 10517  
 10518  // String returns the string representation.
 10519  //
 10520  // API parameter values that are decorated as "sensitive" in the API will not
 10521  // be included in the string output. The member name will be present, but the
 10522  // value will be replaced with "sensitive".
 10523  func (s GetDelegationsOutput) String() string {
 10524  	return awsutil.Prettify(s)
 10525  }
 10526  
 10527  // GoString returns the string representation.
 10528  //
 10529  // API parameter values that are decorated as "sensitive" in the API will not
 10530  // be included in the string output. The member name will be present, but the
 10531  // value will be replaced with "sensitive".
 10532  func (s GetDelegationsOutput) GoString() string {
 10533  	return s.String()
 10534  }
 10535  
 10536  // SetDelegations sets the Delegations field's value.
 10537  func (s *GetDelegationsOutput) SetDelegations(v []*DelegationMetadata) *GetDelegationsOutput {
 10538  	s.Delegations = v
 10539  	return s
 10540  }
 10541  
 10542  // SetNextToken sets the NextToken field's value.
 10543  func (s *GetDelegationsOutput) SetNextToken(v string) *GetDelegationsOutput {
 10544  	s.NextToken = &v
 10545  	return s
 10546  }
 10547  
 10548  type GetEvidenceByEvidenceFolderInput struct {
 10549  	_ struct{} `type:"structure" nopayload:"true"`
 10550  
 10551  	// The identifier for the specified assessment.
 10552  	//
 10553  	// AssessmentId is a required field
 10554  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 10555  
 10556  	// The identifier for the control set.
 10557  	//
 10558  	// ControlSetId is a required field
 10559  	ControlSetId *string `location:"uri" locationName:"controlSetId" min:"1" type:"string" required:"true"`
 10560  
 10561  	// The unique identifier for the folder in which the evidence is stored.
 10562  	//
 10563  	// EvidenceFolderId is a required field
 10564  	EvidenceFolderId *string `location:"uri" locationName:"evidenceFolderId" min:"36" type:"string" required:"true"`
 10565  
 10566  	// Represents the maximum number of results per page, or per API request call.
 10567  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 10568  
 10569  	// The pagination token used to fetch the next set of results.
 10570  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 10571  }
 10572  
 10573  // String returns the string representation.
 10574  //
 10575  // API parameter values that are decorated as "sensitive" in the API will not
 10576  // be included in the string output. The member name will be present, but the
 10577  // value will be replaced with "sensitive".
 10578  func (s GetEvidenceByEvidenceFolderInput) String() string {
 10579  	return awsutil.Prettify(s)
 10580  }
 10581  
 10582  // GoString returns the string representation.
 10583  //
 10584  // API parameter values that are decorated as "sensitive" in the API will not
 10585  // be included in the string output. The member name will be present, but the
 10586  // value will be replaced with "sensitive".
 10587  func (s GetEvidenceByEvidenceFolderInput) GoString() string {
 10588  	return s.String()
 10589  }
 10590  
 10591  // Validate inspects the fields of the type to determine if they are valid.
 10592  func (s *GetEvidenceByEvidenceFolderInput) Validate() error {
 10593  	invalidParams := request.ErrInvalidParams{Context: "GetEvidenceByEvidenceFolderInput"}
 10594  	if s.AssessmentId == nil {
 10595  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 10596  	}
 10597  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 10598  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 10599  	}
 10600  	if s.ControlSetId == nil {
 10601  		invalidParams.Add(request.NewErrParamRequired("ControlSetId"))
 10602  	}
 10603  	if s.ControlSetId != nil && len(*s.ControlSetId) < 1 {
 10604  		invalidParams.Add(request.NewErrParamMinLen("ControlSetId", 1))
 10605  	}
 10606  	if s.EvidenceFolderId == nil {
 10607  		invalidParams.Add(request.NewErrParamRequired("EvidenceFolderId"))
 10608  	}
 10609  	if s.EvidenceFolderId != nil && len(*s.EvidenceFolderId) < 36 {
 10610  		invalidParams.Add(request.NewErrParamMinLen("EvidenceFolderId", 36))
 10611  	}
 10612  	if s.MaxResults != nil && *s.MaxResults < 1 {
 10613  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 10614  	}
 10615  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 10616  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 10617  	}
 10618  
 10619  	if invalidParams.Len() > 0 {
 10620  		return invalidParams
 10621  	}
 10622  	return nil
 10623  }
 10624  
 10625  // SetAssessmentId sets the AssessmentId field's value.
 10626  func (s *GetEvidenceByEvidenceFolderInput) SetAssessmentId(v string) *GetEvidenceByEvidenceFolderInput {
 10627  	s.AssessmentId = &v
 10628  	return s
 10629  }
 10630  
 10631  // SetControlSetId sets the ControlSetId field's value.
 10632  func (s *GetEvidenceByEvidenceFolderInput) SetControlSetId(v string) *GetEvidenceByEvidenceFolderInput {
 10633  	s.ControlSetId = &v
 10634  	return s
 10635  }
 10636  
 10637  // SetEvidenceFolderId sets the EvidenceFolderId field's value.
 10638  func (s *GetEvidenceByEvidenceFolderInput) SetEvidenceFolderId(v string) *GetEvidenceByEvidenceFolderInput {
 10639  	s.EvidenceFolderId = &v
 10640  	return s
 10641  }
 10642  
 10643  // SetMaxResults sets the MaxResults field's value.
 10644  func (s *GetEvidenceByEvidenceFolderInput) SetMaxResults(v int64) *GetEvidenceByEvidenceFolderInput {
 10645  	s.MaxResults = &v
 10646  	return s
 10647  }
 10648  
 10649  // SetNextToken sets the NextToken field's value.
 10650  func (s *GetEvidenceByEvidenceFolderInput) SetNextToken(v string) *GetEvidenceByEvidenceFolderInput {
 10651  	s.NextToken = &v
 10652  	return s
 10653  }
 10654  
 10655  type GetEvidenceByEvidenceFolderOutput struct {
 10656  	_ struct{} `type:"structure"`
 10657  
 10658  	// The list of evidence returned by the GetEvidenceByEvidenceFolder API.
 10659  	Evidence []*Evidence `locationName:"evidence" type:"list"`
 10660  
 10661  	// The pagination token used to fetch the next set of results.
 10662  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10663  }
 10664  
 10665  // String returns the string representation.
 10666  //
 10667  // API parameter values that are decorated as "sensitive" in the API will not
 10668  // be included in the string output. The member name will be present, but the
 10669  // value will be replaced with "sensitive".
 10670  func (s GetEvidenceByEvidenceFolderOutput) String() string {
 10671  	return awsutil.Prettify(s)
 10672  }
 10673  
 10674  // GoString returns the string representation.
 10675  //
 10676  // API parameter values that are decorated as "sensitive" in the API will not
 10677  // be included in the string output. The member name will be present, but the
 10678  // value will be replaced with "sensitive".
 10679  func (s GetEvidenceByEvidenceFolderOutput) GoString() string {
 10680  	return s.String()
 10681  }
 10682  
 10683  // SetEvidence sets the Evidence field's value.
 10684  func (s *GetEvidenceByEvidenceFolderOutput) SetEvidence(v []*Evidence) *GetEvidenceByEvidenceFolderOutput {
 10685  	s.Evidence = v
 10686  	return s
 10687  }
 10688  
 10689  // SetNextToken sets the NextToken field's value.
 10690  func (s *GetEvidenceByEvidenceFolderOutput) SetNextToken(v string) *GetEvidenceByEvidenceFolderOutput {
 10691  	s.NextToken = &v
 10692  	return s
 10693  }
 10694  
 10695  type GetEvidenceFolderInput struct {
 10696  	_ struct{} `type:"structure" nopayload:"true"`
 10697  
 10698  	// The identifier for the specified assessment.
 10699  	//
 10700  	// AssessmentId is a required field
 10701  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 10702  
 10703  	// The identifier for the specified control set.
 10704  	//
 10705  	// ControlSetId is a required field
 10706  	ControlSetId *string `location:"uri" locationName:"controlSetId" min:"1" type:"string" required:"true"`
 10707  
 10708  	// The identifier for the folder in which the evidence is stored.
 10709  	//
 10710  	// EvidenceFolderId is a required field
 10711  	EvidenceFolderId *string `location:"uri" locationName:"evidenceFolderId" min:"36" type:"string" required:"true"`
 10712  }
 10713  
 10714  // String returns the string representation.
 10715  //
 10716  // API parameter values that are decorated as "sensitive" in the API will not
 10717  // be included in the string output. The member name will be present, but the
 10718  // value will be replaced with "sensitive".
 10719  func (s GetEvidenceFolderInput) String() string {
 10720  	return awsutil.Prettify(s)
 10721  }
 10722  
 10723  // GoString returns the string representation.
 10724  //
 10725  // API parameter values that are decorated as "sensitive" in the API will not
 10726  // be included in the string output. The member name will be present, but the
 10727  // value will be replaced with "sensitive".
 10728  func (s GetEvidenceFolderInput) GoString() string {
 10729  	return s.String()
 10730  }
 10731  
 10732  // Validate inspects the fields of the type to determine if they are valid.
 10733  func (s *GetEvidenceFolderInput) Validate() error {
 10734  	invalidParams := request.ErrInvalidParams{Context: "GetEvidenceFolderInput"}
 10735  	if s.AssessmentId == nil {
 10736  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 10737  	}
 10738  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 10739  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 10740  	}
 10741  	if s.ControlSetId == nil {
 10742  		invalidParams.Add(request.NewErrParamRequired("ControlSetId"))
 10743  	}
 10744  	if s.ControlSetId != nil && len(*s.ControlSetId) < 1 {
 10745  		invalidParams.Add(request.NewErrParamMinLen("ControlSetId", 1))
 10746  	}
 10747  	if s.EvidenceFolderId == nil {
 10748  		invalidParams.Add(request.NewErrParamRequired("EvidenceFolderId"))
 10749  	}
 10750  	if s.EvidenceFolderId != nil && len(*s.EvidenceFolderId) < 36 {
 10751  		invalidParams.Add(request.NewErrParamMinLen("EvidenceFolderId", 36))
 10752  	}
 10753  
 10754  	if invalidParams.Len() > 0 {
 10755  		return invalidParams
 10756  	}
 10757  	return nil
 10758  }
 10759  
 10760  // SetAssessmentId sets the AssessmentId field's value.
 10761  func (s *GetEvidenceFolderInput) SetAssessmentId(v string) *GetEvidenceFolderInput {
 10762  	s.AssessmentId = &v
 10763  	return s
 10764  }
 10765  
 10766  // SetControlSetId sets the ControlSetId field's value.
 10767  func (s *GetEvidenceFolderInput) SetControlSetId(v string) *GetEvidenceFolderInput {
 10768  	s.ControlSetId = &v
 10769  	return s
 10770  }
 10771  
 10772  // SetEvidenceFolderId sets the EvidenceFolderId field's value.
 10773  func (s *GetEvidenceFolderInput) SetEvidenceFolderId(v string) *GetEvidenceFolderInput {
 10774  	s.EvidenceFolderId = &v
 10775  	return s
 10776  }
 10777  
 10778  type GetEvidenceFolderOutput struct {
 10779  	_ struct{} `type:"structure"`
 10780  
 10781  	// The folder in which evidence is stored.
 10782  	EvidenceFolder *AssessmentEvidenceFolder `locationName:"evidenceFolder" type:"structure"`
 10783  }
 10784  
 10785  // String returns the string representation.
 10786  //
 10787  // API parameter values that are decorated as "sensitive" in the API will not
 10788  // be included in the string output. The member name will be present, but the
 10789  // value will be replaced with "sensitive".
 10790  func (s GetEvidenceFolderOutput) String() string {
 10791  	return awsutil.Prettify(s)
 10792  }
 10793  
 10794  // GoString returns the string representation.
 10795  //
 10796  // API parameter values that are decorated as "sensitive" in the API will not
 10797  // be included in the string output. The member name will be present, but the
 10798  // value will be replaced with "sensitive".
 10799  func (s GetEvidenceFolderOutput) GoString() string {
 10800  	return s.String()
 10801  }
 10802  
 10803  // SetEvidenceFolder sets the EvidenceFolder field's value.
 10804  func (s *GetEvidenceFolderOutput) SetEvidenceFolder(v *AssessmentEvidenceFolder) *GetEvidenceFolderOutput {
 10805  	s.EvidenceFolder = v
 10806  	return s
 10807  }
 10808  
 10809  type GetEvidenceFoldersByAssessmentControlInput struct {
 10810  	_ struct{} `type:"structure" nopayload:"true"`
 10811  
 10812  	// The identifier for the specified assessment.
 10813  	//
 10814  	// AssessmentId is a required field
 10815  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 10816  
 10817  	// The identifier for the specified control.
 10818  	//
 10819  	// ControlId is a required field
 10820  	ControlId *string `location:"uri" locationName:"controlId" min:"36" type:"string" required:"true"`
 10821  
 10822  	// The identifier for the specified control set.
 10823  	//
 10824  	// ControlSetId is a required field
 10825  	ControlSetId *string `location:"uri" locationName:"controlSetId" min:"1" type:"string" required:"true"`
 10826  
 10827  	// Represents the maximum number of results per page, or per API request call.
 10828  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 10829  
 10830  	// The pagination token used to fetch the next set of results.
 10831  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 10832  }
 10833  
 10834  // String returns the string representation.
 10835  //
 10836  // API parameter values that are decorated as "sensitive" in the API will not
 10837  // be included in the string output. The member name will be present, but the
 10838  // value will be replaced with "sensitive".
 10839  func (s GetEvidenceFoldersByAssessmentControlInput) String() string {
 10840  	return awsutil.Prettify(s)
 10841  }
 10842  
 10843  // GoString returns the string representation.
 10844  //
 10845  // API parameter values that are decorated as "sensitive" in the API will not
 10846  // be included in the string output. The member name will be present, but the
 10847  // value will be replaced with "sensitive".
 10848  func (s GetEvidenceFoldersByAssessmentControlInput) GoString() string {
 10849  	return s.String()
 10850  }
 10851  
 10852  // Validate inspects the fields of the type to determine if they are valid.
 10853  func (s *GetEvidenceFoldersByAssessmentControlInput) Validate() error {
 10854  	invalidParams := request.ErrInvalidParams{Context: "GetEvidenceFoldersByAssessmentControlInput"}
 10855  	if s.AssessmentId == nil {
 10856  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 10857  	}
 10858  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 10859  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 10860  	}
 10861  	if s.ControlId == nil {
 10862  		invalidParams.Add(request.NewErrParamRequired("ControlId"))
 10863  	}
 10864  	if s.ControlId != nil && len(*s.ControlId) < 36 {
 10865  		invalidParams.Add(request.NewErrParamMinLen("ControlId", 36))
 10866  	}
 10867  	if s.ControlSetId == nil {
 10868  		invalidParams.Add(request.NewErrParamRequired("ControlSetId"))
 10869  	}
 10870  	if s.ControlSetId != nil && len(*s.ControlSetId) < 1 {
 10871  		invalidParams.Add(request.NewErrParamMinLen("ControlSetId", 1))
 10872  	}
 10873  	if s.MaxResults != nil && *s.MaxResults < 1 {
 10874  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 10875  	}
 10876  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 10877  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 10878  	}
 10879  
 10880  	if invalidParams.Len() > 0 {
 10881  		return invalidParams
 10882  	}
 10883  	return nil
 10884  }
 10885  
 10886  // SetAssessmentId sets the AssessmentId field's value.
 10887  func (s *GetEvidenceFoldersByAssessmentControlInput) SetAssessmentId(v string) *GetEvidenceFoldersByAssessmentControlInput {
 10888  	s.AssessmentId = &v
 10889  	return s
 10890  }
 10891  
 10892  // SetControlId sets the ControlId field's value.
 10893  func (s *GetEvidenceFoldersByAssessmentControlInput) SetControlId(v string) *GetEvidenceFoldersByAssessmentControlInput {
 10894  	s.ControlId = &v
 10895  	return s
 10896  }
 10897  
 10898  // SetControlSetId sets the ControlSetId field's value.
 10899  func (s *GetEvidenceFoldersByAssessmentControlInput) SetControlSetId(v string) *GetEvidenceFoldersByAssessmentControlInput {
 10900  	s.ControlSetId = &v
 10901  	return s
 10902  }
 10903  
 10904  // SetMaxResults sets the MaxResults field's value.
 10905  func (s *GetEvidenceFoldersByAssessmentControlInput) SetMaxResults(v int64) *GetEvidenceFoldersByAssessmentControlInput {
 10906  	s.MaxResults = &v
 10907  	return s
 10908  }
 10909  
 10910  // SetNextToken sets the NextToken field's value.
 10911  func (s *GetEvidenceFoldersByAssessmentControlInput) SetNextToken(v string) *GetEvidenceFoldersByAssessmentControlInput {
 10912  	s.NextToken = &v
 10913  	return s
 10914  }
 10915  
 10916  type GetEvidenceFoldersByAssessmentControlOutput struct {
 10917  	_ struct{} `type:"structure"`
 10918  
 10919  	// The list of evidence folders returned by the GetEvidenceFoldersByAssessmentControl
 10920  	// API.
 10921  	EvidenceFolders []*AssessmentEvidenceFolder `locationName:"evidenceFolders" type:"list"`
 10922  
 10923  	// The pagination token used to fetch the next set of results.
 10924  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10925  }
 10926  
 10927  // String returns the string representation.
 10928  //
 10929  // API parameter values that are decorated as "sensitive" in the API will not
 10930  // be included in the string output. The member name will be present, but the
 10931  // value will be replaced with "sensitive".
 10932  func (s GetEvidenceFoldersByAssessmentControlOutput) String() string {
 10933  	return awsutil.Prettify(s)
 10934  }
 10935  
 10936  // GoString returns the string representation.
 10937  //
 10938  // API parameter values that are decorated as "sensitive" in the API will not
 10939  // be included in the string output. The member name will be present, but the
 10940  // value will be replaced with "sensitive".
 10941  func (s GetEvidenceFoldersByAssessmentControlOutput) GoString() string {
 10942  	return s.String()
 10943  }
 10944  
 10945  // SetEvidenceFolders sets the EvidenceFolders field's value.
 10946  func (s *GetEvidenceFoldersByAssessmentControlOutput) SetEvidenceFolders(v []*AssessmentEvidenceFolder) *GetEvidenceFoldersByAssessmentControlOutput {
 10947  	s.EvidenceFolders = v
 10948  	return s
 10949  }
 10950  
 10951  // SetNextToken sets the NextToken field's value.
 10952  func (s *GetEvidenceFoldersByAssessmentControlOutput) SetNextToken(v string) *GetEvidenceFoldersByAssessmentControlOutput {
 10953  	s.NextToken = &v
 10954  	return s
 10955  }
 10956  
 10957  type GetEvidenceFoldersByAssessmentInput struct {
 10958  	_ struct{} `type:"structure" nopayload:"true"`
 10959  
 10960  	// The identifier for the specified assessment.
 10961  	//
 10962  	// AssessmentId is a required field
 10963  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 10964  
 10965  	// Represents the maximum number of results per page, or per API request call.
 10966  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 10967  
 10968  	// The pagination token used to fetch the next set of results.
 10969  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 10970  }
 10971  
 10972  // String returns the string representation.
 10973  //
 10974  // API parameter values that are decorated as "sensitive" in the API will not
 10975  // be included in the string output. The member name will be present, but the
 10976  // value will be replaced with "sensitive".
 10977  func (s GetEvidenceFoldersByAssessmentInput) String() string {
 10978  	return awsutil.Prettify(s)
 10979  }
 10980  
 10981  // GoString returns the string representation.
 10982  //
 10983  // API parameter values that are decorated as "sensitive" in the API will not
 10984  // be included in the string output. The member name will be present, but the
 10985  // value will be replaced with "sensitive".
 10986  func (s GetEvidenceFoldersByAssessmentInput) GoString() string {
 10987  	return s.String()
 10988  }
 10989  
 10990  // Validate inspects the fields of the type to determine if they are valid.
 10991  func (s *GetEvidenceFoldersByAssessmentInput) Validate() error {
 10992  	invalidParams := request.ErrInvalidParams{Context: "GetEvidenceFoldersByAssessmentInput"}
 10993  	if s.AssessmentId == nil {
 10994  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 10995  	}
 10996  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 10997  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 10998  	}
 10999  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11000  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11001  	}
 11002  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 11003  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 11004  	}
 11005  
 11006  	if invalidParams.Len() > 0 {
 11007  		return invalidParams
 11008  	}
 11009  	return nil
 11010  }
 11011  
 11012  // SetAssessmentId sets the AssessmentId field's value.
 11013  func (s *GetEvidenceFoldersByAssessmentInput) SetAssessmentId(v string) *GetEvidenceFoldersByAssessmentInput {
 11014  	s.AssessmentId = &v
 11015  	return s
 11016  }
 11017  
 11018  // SetMaxResults sets the MaxResults field's value.
 11019  func (s *GetEvidenceFoldersByAssessmentInput) SetMaxResults(v int64) *GetEvidenceFoldersByAssessmentInput {
 11020  	s.MaxResults = &v
 11021  	return s
 11022  }
 11023  
 11024  // SetNextToken sets the NextToken field's value.
 11025  func (s *GetEvidenceFoldersByAssessmentInput) SetNextToken(v string) *GetEvidenceFoldersByAssessmentInput {
 11026  	s.NextToken = &v
 11027  	return s
 11028  }
 11029  
 11030  type GetEvidenceFoldersByAssessmentOutput struct {
 11031  	_ struct{} `type:"structure"`
 11032  
 11033  	// The list of evidence folders returned by the GetEvidenceFoldersByAssessment
 11034  	// API.
 11035  	EvidenceFolders []*AssessmentEvidenceFolder `locationName:"evidenceFolders" type:"list"`
 11036  
 11037  	// The pagination token used to fetch the next set of results.
 11038  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 11039  }
 11040  
 11041  // String returns the string representation.
 11042  //
 11043  // API parameter values that are decorated as "sensitive" in the API will not
 11044  // be included in the string output. The member name will be present, but the
 11045  // value will be replaced with "sensitive".
 11046  func (s GetEvidenceFoldersByAssessmentOutput) String() string {
 11047  	return awsutil.Prettify(s)
 11048  }
 11049  
 11050  // GoString returns the string representation.
 11051  //
 11052  // API parameter values that are decorated as "sensitive" in the API will not
 11053  // be included in the string output. The member name will be present, but the
 11054  // value will be replaced with "sensitive".
 11055  func (s GetEvidenceFoldersByAssessmentOutput) GoString() string {
 11056  	return s.String()
 11057  }
 11058  
 11059  // SetEvidenceFolders sets the EvidenceFolders field's value.
 11060  func (s *GetEvidenceFoldersByAssessmentOutput) SetEvidenceFolders(v []*AssessmentEvidenceFolder) *GetEvidenceFoldersByAssessmentOutput {
 11061  	s.EvidenceFolders = v
 11062  	return s
 11063  }
 11064  
 11065  // SetNextToken sets the NextToken field's value.
 11066  func (s *GetEvidenceFoldersByAssessmentOutput) SetNextToken(v string) *GetEvidenceFoldersByAssessmentOutput {
 11067  	s.NextToken = &v
 11068  	return s
 11069  }
 11070  
 11071  type GetEvidenceInput struct {
 11072  	_ struct{} `type:"structure" nopayload:"true"`
 11073  
 11074  	// The identifier for the specified assessment.
 11075  	//
 11076  	// AssessmentId is a required field
 11077  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 11078  
 11079  	// The identifier for the specified control set.
 11080  	//
 11081  	// ControlSetId is a required field
 11082  	ControlSetId *string `location:"uri" locationName:"controlSetId" min:"1" type:"string" required:"true"`
 11083  
 11084  	// The identifier for the folder in which the evidence is stored.
 11085  	//
 11086  	// EvidenceFolderId is a required field
 11087  	EvidenceFolderId *string `location:"uri" locationName:"evidenceFolderId" min:"36" type:"string" required:"true"`
 11088  
 11089  	// The identifier for the evidence.
 11090  	//
 11091  	// EvidenceId is a required field
 11092  	EvidenceId *string `location:"uri" locationName:"evidenceId" min:"36" type:"string" required:"true"`
 11093  }
 11094  
 11095  // String returns the string representation.
 11096  //
 11097  // API parameter values that are decorated as "sensitive" in the API will not
 11098  // be included in the string output. The member name will be present, but the
 11099  // value will be replaced with "sensitive".
 11100  func (s GetEvidenceInput) String() string {
 11101  	return awsutil.Prettify(s)
 11102  }
 11103  
 11104  // GoString returns the string representation.
 11105  //
 11106  // API parameter values that are decorated as "sensitive" in the API will not
 11107  // be included in the string output. The member name will be present, but the
 11108  // value will be replaced with "sensitive".
 11109  func (s GetEvidenceInput) GoString() string {
 11110  	return s.String()
 11111  }
 11112  
 11113  // Validate inspects the fields of the type to determine if they are valid.
 11114  func (s *GetEvidenceInput) Validate() error {
 11115  	invalidParams := request.ErrInvalidParams{Context: "GetEvidenceInput"}
 11116  	if s.AssessmentId == nil {
 11117  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 11118  	}
 11119  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 11120  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 11121  	}
 11122  	if s.ControlSetId == nil {
 11123  		invalidParams.Add(request.NewErrParamRequired("ControlSetId"))
 11124  	}
 11125  	if s.ControlSetId != nil && len(*s.ControlSetId) < 1 {
 11126  		invalidParams.Add(request.NewErrParamMinLen("ControlSetId", 1))
 11127  	}
 11128  	if s.EvidenceFolderId == nil {
 11129  		invalidParams.Add(request.NewErrParamRequired("EvidenceFolderId"))
 11130  	}
 11131  	if s.EvidenceFolderId != nil && len(*s.EvidenceFolderId) < 36 {
 11132  		invalidParams.Add(request.NewErrParamMinLen("EvidenceFolderId", 36))
 11133  	}
 11134  	if s.EvidenceId == nil {
 11135  		invalidParams.Add(request.NewErrParamRequired("EvidenceId"))
 11136  	}
 11137  	if s.EvidenceId != nil && len(*s.EvidenceId) < 36 {
 11138  		invalidParams.Add(request.NewErrParamMinLen("EvidenceId", 36))
 11139  	}
 11140  
 11141  	if invalidParams.Len() > 0 {
 11142  		return invalidParams
 11143  	}
 11144  	return nil
 11145  }
 11146  
 11147  // SetAssessmentId sets the AssessmentId field's value.
 11148  func (s *GetEvidenceInput) SetAssessmentId(v string) *GetEvidenceInput {
 11149  	s.AssessmentId = &v
 11150  	return s
 11151  }
 11152  
 11153  // SetControlSetId sets the ControlSetId field's value.
 11154  func (s *GetEvidenceInput) SetControlSetId(v string) *GetEvidenceInput {
 11155  	s.ControlSetId = &v
 11156  	return s
 11157  }
 11158  
 11159  // SetEvidenceFolderId sets the EvidenceFolderId field's value.
 11160  func (s *GetEvidenceInput) SetEvidenceFolderId(v string) *GetEvidenceInput {
 11161  	s.EvidenceFolderId = &v
 11162  	return s
 11163  }
 11164  
 11165  // SetEvidenceId sets the EvidenceId field's value.
 11166  func (s *GetEvidenceInput) SetEvidenceId(v string) *GetEvidenceInput {
 11167  	s.EvidenceId = &v
 11168  	return s
 11169  }
 11170  
 11171  type GetEvidenceOutput struct {
 11172  	_ struct{} `type:"structure"`
 11173  
 11174  	// The evidence returned by the GetEvidenceResponse API.
 11175  	Evidence *Evidence `locationName:"evidence" type:"structure"`
 11176  }
 11177  
 11178  // String returns the string representation.
 11179  //
 11180  // API parameter values that are decorated as "sensitive" in the API will not
 11181  // be included in the string output. The member name will be present, but the
 11182  // value will be replaced with "sensitive".
 11183  func (s GetEvidenceOutput) String() string {
 11184  	return awsutil.Prettify(s)
 11185  }
 11186  
 11187  // GoString returns the string representation.
 11188  //
 11189  // API parameter values that are decorated as "sensitive" in the API will not
 11190  // be included in the string output. The member name will be present, but the
 11191  // value will be replaced with "sensitive".
 11192  func (s GetEvidenceOutput) GoString() string {
 11193  	return s.String()
 11194  }
 11195  
 11196  // SetEvidence sets the Evidence field's value.
 11197  func (s *GetEvidenceOutput) SetEvidence(v *Evidence) *GetEvidenceOutput {
 11198  	s.Evidence = v
 11199  	return s
 11200  }
 11201  
 11202  type GetOrganizationAdminAccountInput struct {
 11203  	_ struct{} `type:"structure" nopayload:"true"`
 11204  }
 11205  
 11206  // String returns the string representation.
 11207  //
 11208  // API parameter values that are decorated as "sensitive" in the API will not
 11209  // be included in the string output. The member name will be present, but the
 11210  // value will be replaced with "sensitive".
 11211  func (s GetOrganizationAdminAccountInput) String() string {
 11212  	return awsutil.Prettify(s)
 11213  }
 11214  
 11215  // GoString returns the string representation.
 11216  //
 11217  // API parameter values that are decorated as "sensitive" in the API will not
 11218  // be included in the string output. The member name will be present, but the
 11219  // value will be replaced with "sensitive".
 11220  func (s GetOrganizationAdminAccountInput) GoString() string {
 11221  	return s.String()
 11222  }
 11223  
 11224  type GetOrganizationAdminAccountOutput struct {
 11225  	_ struct{} `type:"structure"`
 11226  
 11227  	// The identifier for the specified administrator account.
 11228  	AdminAccountId *string `locationName:"adminAccountId" min:"12" type:"string"`
 11229  
 11230  	// The identifier for the specified organization.
 11231  	OrganizationId *string `locationName:"organizationId" min:"12" type:"string"`
 11232  }
 11233  
 11234  // String returns the string representation.
 11235  //
 11236  // API parameter values that are decorated as "sensitive" in the API will not
 11237  // be included in the string output. The member name will be present, but the
 11238  // value will be replaced with "sensitive".
 11239  func (s GetOrganizationAdminAccountOutput) String() string {
 11240  	return awsutil.Prettify(s)
 11241  }
 11242  
 11243  // GoString returns the string representation.
 11244  //
 11245  // API parameter values that are decorated as "sensitive" in the API will not
 11246  // be included in the string output. The member name will be present, but the
 11247  // value will be replaced with "sensitive".
 11248  func (s GetOrganizationAdminAccountOutput) GoString() string {
 11249  	return s.String()
 11250  }
 11251  
 11252  // SetAdminAccountId sets the AdminAccountId field's value.
 11253  func (s *GetOrganizationAdminAccountOutput) SetAdminAccountId(v string) *GetOrganizationAdminAccountOutput {
 11254  	s.AdminAccountId = &v
 11255  	return s
 11256  }
 11257  
 11258  // SetOrganizationId sets the OrganizationId field's value.
 11259  func (s *GetOrganizationAdminAccountOutput) SetOrganizationId(v string) *GetOrganizationAdminAccountOutput {
 11260  	s.OrganizationId = &v
 11261  	return s
 11262  }
 11263  
 11264  type GetServicesInScopeInput struct {
 11265  	_ struct{} `type:"structure" nopayload:"true"`
 11266  }
 11267  
 11268  // String returns the string representation.
 11269  //
 11270  // API parameter values that are decorated as "sensitive" in the API will not
 11271  // be included in the string output. The member name will be present, but the
 11272  // value will be replaced with "sensitive".
 11273  func (s GetServicesInScopeInput) String() string {
 11274  	return awsutil.Prettify(s)
 11275  }
 11276  
 11277  // GoString returns the string representation.
 11278  //
 11279  // API parameter values that are decorated as "sensitive" in the API will not
 11280  // be included in the string output. The member name will be present, but the
 11281  // value will be replaced with "sensitive".
 11282  func (s GetServicesInScopeInput) GoString() string {
 11283  	return s.String()
 11284  }
 11285  
 11286  type GetServicesInScopeOutput struct {
 11287  	_ struct{} `type:"structure"`
 11288  
 11289  	// The metadata associated with the Amazon Web Service.
 11290  	ServiceMetadata []*ServiceMetadata `locationName:"serviceMetadata" type:"list"`
 11291  }
 11292  
 11293  // String returns the string representation.
 11294  //
 11295  // API parameter values that are decorated as "sensitive" in the API will not
 11296  // be included in the string output. The member name will be present, but the
 11297  // value will be replaced with "sensitive".
 11298  func (s GetServicesInScopeOutput) String() string {
 11299  	return awsutil.Prettify(s)
 11300  }
 11301  
 11302  // GoString returns the string representation.
 11303  //
 11304  // API parameter values that are decorated as "sensitive" in the API will not
 11305  // be included in the string output. The member name will be present, but the
 11306  // value will be replaced with "sensitive".
 11307  func (s GetServicesInScopeOutput) GoString() string {
 11308  	return s.String()
 11309  }
 11310  
 11311  // SetServiceMetadata sets the ServiceMetadata field's value.
 11312  func (s *GetServicesInScopeOutput) SetServiceMetadata(v []*ServiceMetadata) *GetServicesInScopeOutput {
 11313  	s.ServiceMetadata = v
 11314  	return s
 11315  }
 11316  
 11317  type GetSettingsInput struct {
 11318  	_ struct{} `type:"structure" nopayload:"true"`
 11319  
 11320  	// The list of SettingAttribute enum values.
 11321  	//
 11322  	// Attribute is a required field
 11323  	Attribute *string `location:"uri" locationName:"attribute" type:"string" required:"true" enum:"SettingAttribute"`
 11324  }
 11325  
 11326  // String returns the string representation.
 11327  //
 11328  // API parameter values that are decorated as "sensitive" in the API will not
 11329  // be included in the string output. The member name will be present, but the
 11330  // value will be replaced with "sensitive".
 11331  func (s GetSettingsInput) String() string {
 11332  	return awsutil.Prettify(s)
 11333  }
 11334  
 11335  // GoString returns the string representation.
 11336  //
 11337  // API parameter values that are decorated as "sensitive" in the API will not
 11338  // be included in the string output. The member name will be present, but the
 11339  // value will be replaced with "sensitive".
 11340  func (s GetSettingsInput) GoString() string {
 11341  	return s.String()
 11342  }
 11343  
 11344  // Validate inspects the fields of the type to determine if they are valid.
 11345  func (s *GetSettingsInput) Validate() error {
 11346  	invalidParams := request.ErrInvalidParams{Context: "GetSettingsInput"}
 11347  	if s.Attribute == nil {
 11348  		invalidParams.Add(request.NewErrParamRequired("Attribute"))
 11349  	}
 11350  	if s.Attribute != nil && len(*s.Attribute) < 1 {
 11351  		invalidParams.Add(request.NewErrParamMinLen("Attribute", 1))
 11352  	}
 11353  
 11354  	if invalidParams.Len() > 0 {
 11355  		return invalidParams
 11356  	}
 11357  	return nil
 11358  }
 11359  
 11360  // SetAttribute sets the Attribute field's value.
 11361  func (s *GetSettingsInput) SetAttribute(v string) *GetSettingsInput {
 11362  	s.Attribute = &v
 11363  	return s
 11364  }
 11365  
 11366  type GetSettingsOutput struct {
 11367  	_ struct{} `type:"structure"`
 11368  
 11369  	// The settings object that holds all supported Audit Manager settings.
 11370  	Settings *Settings `locationName:"settings" type:"structure"`
 11371  }
 11372  
 11373  // String returns the string representation.
 11374  //
 11375  // API parameter values that are decorated as "sensitive" in the API will not
 11376  // be included in the string output. The member name will be present, but the
 11377  // value will be replaced with "sensitive".
 11378  func (s GetSettingsOutput) String() string {
 11379  	return awsutil.Prettify(s)
 11380  }
 11381  
 11382  // GoString returns the string representation.
 11383  //
 11384  // API parameter values that are decorated as "sensitive" in the API will not
 11385  // be included in the string output. The member name will be present, but the
 11386  // value will be replaced with "sensitive".
 11387  func (s GetSettingsOutput) GoString() string {
 11388  	return s.String()
 11389  }
 11390  
 11391  // SetSettings sets the Settings field's value.
 11392  func (s *GetSettingsOutput) SetSettings(v *Settings) *GetSettingsOutput {
 11393  	s.Settings = v
 11394  	return s
 11395  }
 11396  
 11397  // An internal service error occurred during the processing of your request.
 11398  // Try again later.
 11399  type InternalServerException struct {
 11400  	_            struct{}                  `type:"structure"`
 11401  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11402  
 11403  	Message_ *string `locationName:"message" type:"string"`
 11404  }
 11405  
 11406  // String returns the string representation.
 11407  //
 11408  // API parameter values that are decorated as "sensitive" in the API will not
 11409  // be included in the string output. The member name will be present, but the
 11410  // value will be replaced with "sensitive".
 11411  func (s InternalServerException) String() string {
 11412  	return awsutil.Prettify(s)
 11413  }
 11414  
 11415  // GoString returns the string representation.
 11416  //
 11417  // API parameter values that are decorated as "sensitive" in the API will not
 11418  // be included in the string output. The member name will be present, but the
 11419  // value will be replaced with "sensitive".
 11420  func (s InternalServerException) GoString() string {
 11421  	return s.String()
 11422  }
 11423  
 11424  func newErrorInternalServerException(v protocol.ResponseMetadata) error {
 11425  	return &InternalServerException{
 11426  		RespMetadata: v,
 11427  	}
 11428  }
 11429  
 11430  // Code returns the exception type name.
 11431  func (s *InternalServerException) Code() string {
 11432  	return "InternalServerException"
 11433  }
 11434  
 11435  // Message returns the exception's message.
 11436  func (s *InternalServerException) Message() string {
 11437  	if s.Message_ != nil {
 11438  		return *s.Message_
 11439  	}
 11440  	return ""
 11441  }
 11442  
 11443  // OrigErr always returns nil, satisfies awserr.Error interface.
 11444  func (s *InternalServerException) OrigErr() error {
 11445  	return nil
 11446  }
 11447  
 11448  func (s *InternalServerException) Error() string {
 11449  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 11450  }
 11451  
 11452  // Status code returns the HTTP status code for the request's response error.
 11453  func (s *InternalServerException) StatusCode() int {
 11454  	return s.RespMetadata.StatusCode
 11455  }
 11456  
 11457  // RequestID returns the service's response RequestID for request.
 11458  func (s *InternalServerException) RequestID() string {
 11459  	return s.RespMetadata.RequestID
 11460  }
 11461  
 11462  type ListAssessmentFrameworksInput struct {
 11463  	_ struct{} `type:"structure" nopayload:"true"`
 11464  
 11465  	// The type of framework, such as standard or custom.
 11466  	//
 11467  	// FrameworkType is a required field
 11468  	FrameworkType *string `location:"querystring" locationName:"frameworkType" type:"string" required:"true" enum:"FrameworkType"`
 11469  
 11470  	// Represents the maximum number of results per page, or per API request call.
 11471  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 11472  
 11473  	// The pagination token used to fetch the next set of results.
 11474  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 11475  }
 11476  
 11477  // String returns the string representation.
 11478  //
 11479  // API parameter values that are decorated as "sensitive" in the API will not
 11480  // be included in the string output. The member name will be present, but the
 11481  // value will be replaced with "sensitive".
 11482  func (s ListAssessmentFrameworksInput) String() string {
 11483  	return awsutil.Prettify(s)
 11484  }
 11485  
 11486  // GoString returns the string representation.
 11487  //
 11488  // API parameter values that are decorated as "sensitive" in the API will not
 11489  // be included in the string output. The member name will be present, but the
 11490  // value will be replaced with "sensitive".
 11491  func (s ListAssessmentFrameworksInput) GoString() string {
 11492  	return s.String()
 11493  }
 11494  
 11495  // Validate inspects the fields of the type to determine if they are valid.
 11496  func (s *ListAssessmentFrameworksInput) Validate() error {
 11497  	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentFrameworksInput"}
 11498  	if s.FrameworkType == nil {
 11499  		invalidParams.Add(request.NewErrParamRequired("FrameworkType"))
 11500  	}
 11501  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11502  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11503  	}
 11504  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 11505  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 11506  	}
 11507  
 11508  	if invalidParams.Len() > 0 {
 11509  		return invalidParams
 11510  	}
 11511  	return nil
 11512  }
 11513  
 11514  // SetFrameworkType sets the FrameworkType field's value.
 11515  func (s *ListAssessmentFrameworksInput) SetFrameworkType(v string) *ListAssessmentFrameworksInput {
 11516  	s.FrameworkType = &v
 11517  	return s
 11518  }
 11519  
 11520  // SetMaxResults sets the MaxResults field's value.
 11521  func (s *ListAssessmentFrameworksInput) SetMaxResults(v int64) *ListAssessmentFrameworksInput {
 11522  	s.MaxResults = &v
 11523  	return s
 11524  }
 11525  
 11526  // SetNextToken sets the NextToken field's value.
 11527  func (s *ListAssessmentFrameworksInput) SetNextToken(v string) *ListAssessmentFrameworksInput {
 11528  	s.NextToken = &v
 11529  	return s
 11530  }
 11531  
 11532  type ListAssessmentFrameworksOutput struct {
 11533  	_ struct{} `type:"structure"`
 11534  
 11535  	// The list of metadata objects for the specified framework.
 11536  	FrameworkMetadataList []*AssessmentFrameworkMetadata `locationName:"frameworkMetadataList" type:"list"`
 11537  
 11538  	// The pagination token used to fetch the next set of results.
 11539  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 11540  }
 11541  
 11542  // String returns the string representation.
 11543  //
 11544  // API parameter values that are decorated as "sensitive" in the API will not
 11545  // be included in the string output. The member name will be present, but the
 11546  // value will be replaced with "sensitive".
 11547  func (s ListAssessmentFrameworksOutput) String() string {
 11548  	return awsutil.Prettify(s)
 11549  }
 11550  
 11551  // GoString returns the string representation.
 11552  //
 11553  // API parameter values that are decorated as "sensitive" in the API will not
 11554  // be included in the string output. The member name will be present, but the
 11555  // value will be replaced with "sensitive".
 11556  func (s ListAssessmentFrameworksOutput) GoString() string {
 11557  	return s.String()
 11558  }
 11559  
 11560  // SetFrameworkMetadataList sets the FrameworkMetadataList field's value.
 11561  func (s *ListAssessmentFrameworksOutput) SetFrameworkMetadataList(v []*AssessmentFrameworkMetadata) *ListAssessmentFrameworksOutput {
 11562  	s.FrameworkMetadataList = v
 11563  	return s
 11564  }
 11565  
 11566  // SetNextToken sets the NextToken field's value.
 11567  func (s *ListAssessmentFrameworksOutput) SetNextToken(v string) *ListAssessmentFrameworksOutput {
 11568  	s.NextToken = &v
 11569  	return s
 11570  }
 11571  
 11572  type ListAssessmentReportsInput struct {
 11573  	_ struct{} `type:"structure" nopayload:"true"`
 11574  
 11575  	// Represents the maximum number of results per page, or per API request call.
 11576  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 11577  
 11578  	// The pagination token used to fetch the next set of results.
 11579  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 11580  }
 11581  
 11582  // String returns the string representation.
 11583  //
 11584  // API parameter values that are decorated as "sensitive" in the API will not
 11585  // be included in the string output. The member name will be present, but the
 11586  // value will be replaced with "sensitive".
 11587  func (s ListAssessmentReportsInput) String() string {
 11588  	return awsutil.Prettify(s)
 11589  }
 11590  
 11591  // GoString returns the string representation.
 11592  //
 11593  // API parameter values that are decorated as "sensitive" in the API will not
 11594  // be included in the string output. The member name will be present, but the
 11595  // value will be replaced with "sensitive".
 11596  func (s ListAssessmentReportsInput) GoString() string {
 11597  	return s.String()
 11598  }
 11599  
 11600  // Validate inspects the fields of the type to determine if they are valid.
 11601  func (s *ListAssessmentReportsInput) Validate() error {
 11602  	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentReportsInput"}
 11603  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11604  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11605  	}
 11606  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 11607  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 11608  	}
 11609  
 11610  	if invalidParams.Len() > 0 {
 11611  		return invalidParams
 11612  	}
 11613  	return nil
 11614  }
 11615  
 11616  // SetMaxResults sets the MaxResults field's value.
 11617  func (s *ListAssessmentReportsInput) SetMaxResults(v int64) *ListAssessmentReportsInput {
 11618  	s.MaxResults = &v
 11619  	return s
 11620  }
 11621  
 11622  // SetNextToken sets the NextToken field's value.
 11623  func (s *ListAssessmentReportsInput) SetNextToken(v string) *ListAssessmentReportsInput {
 11624  	s.NextToken = &v
 11625  	return s
 11626  }
 11627  
 11628  type ListAssessmentReportsOutput struct {
 11629  	_ struct{} `type:"structure"`
 11630  
 11631  	// The list of assessment reports returned by the ListAssessmentReports API.
 11632  	AssessmentReports []*AssessmentReportMetadata `locationName:"assessmentReports" type:"list"`
 11633  
 11634  	// The pagination token used to fetch the next set of results.
 11635  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 11636  }
 11637  
 11638  // String returns the string representation.
 11639  //
 11640  // API parameter values that are decorated as "sensitive" in the API will not
 11641  // be included in the string output. The member name will be present, but the
 11642  // value will be replaced with "sensitive".
 11643  func (s ListAssessmentReportsOutput) String() string {
 11644  	return awsutil.Prettify(s)
 11645  }
 11646  
 11647  // GoString returns the string representation.
 11648  //
 11649  // API parameter values that are decorated as "sensitive" in the API will not
 11650  // be included in the string output. The member name will be present, but the
 11651  // value will be replaced with "sensitive".
 11652  func (s ListAssessmentReportsOutput) GoString() string {
 11653  	return s.String()
 11654  }
 11655  
 11656  // SetAssessmentReports sets the AssessmentReports field's value.
 11657  func (s *ListAssessmentReportsOutput) SetAssessmentReports(v []*AssessmentReportMetadata) *ListAssessmentReportsOutput {
 11658  	s.AssessmentReports = v
 11659  	return s
 11660  }
 11661  
 11662  // SetNextToken sets the NextToken field's value.
 11663  func (s *ListAssessmentReportsOutput) SetNextToken(v string) *ListAssessmentReportsOutput {
 11664  	s.NextToken = &v
 11665  	return s
 11666  }
 11667  
 11668  type ListAssessmentsInput struct {
 11669  	_ struct{} `type:"structure" nopayload:"true"`
 11670  
 11671  	// Represents the maximum number of results per page, or per API request call.
 11672  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 11673  
 11674  	// The pagination token used to fetch the next set of results.
 11675  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 11676  }
 11677  
 11678  // String returns the string representation.
 11679  //
 11680  // API parameter values that are decorated as "sensitive" in the API will not
 11681  // be included in the string output. The member name will be present, but the
 11682  // value will be replaced with "sensitive".
 11683  func (s ListAssessmentsInput) String() string {
 11684  	return awsutil.Prettify(s)
 11685  }
 11686  
 11687  // GoString returns the string representation.
 11688  //
 11689  // API parameter values that are decorated as "sensitive" in the API will not
 11690  // be included in the string output. The member name will be present, but the
 11691  // value will be replaced with "sensitive".
 11692  func (s ListAssessmentsInput) GoString() string {
 11693  	return s.String()
 11694  }
 11695  
 11696  // Validate inspects the fields of the type to determine if they are valid.
 11697  func (s *ListAssessmentsInput) Validate() error {
 11698  	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentsInput"}
 11699  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11700  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11701  	}
 11702  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 11703  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 11704  	}
 11705  
 11706  	if invalidParams.Len() > 0 {
 11707  		return invalidParams
 11708  	}
 11709  	return nil
 11710  }
 11711  
 11712  // SetMaxResults sets the MaxResults field's value.
 11713  func (s *ListAssessmentsInput) SetMaxResults(v int64) *ListAssessmentsInput {
 11714  	s.MaxResults = &v
 11715  	return s
 11716  }
 11717  
 11718  // SetNextToken sets the NextToken field's value.
 11719  func (s *ListAssessmentsInput) SetNextToken(v string) *ListAssessmentsInput {
 11720  	s.NextToken = &v
 11721  	return s
 11722  }
 11723  
 11724  type ListAssessmentsOutput struct {
 11725  	_ struct{} `type:"structure"`
 11726  
 11727  	// The metadata associated with the assessment.
 11728  	AssessmentMetadata []*AssessmentMetadataItem `locationName:"assessmentMetadata" type:"list"`
 11729  
 11730  	// The pagination token used to fetch the next set of results.
 11731  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 11732  }
 11733  
 11734  // String returns the string representation.
 11735  //
 11736  // API parameter values that are decorated as "sensitive" in the API will not
 11737  // be included in the string output. The member name will be present, but the
 11738  // value will be replaced with "sensitive".
 11739  func (s ListAssessmentsOutput) String() string {
 11740  	return awsutil.Prettify(s)
 11741  }
 11742  
 11743  // GoString returns the string representation.
 11744  //
 11745  // API parameter values that are decorated as "sensitive" in the API will not
 11746  // be included in the string output. The member name will be present, but the
 11747  // value will be replaced with "sensitive".
 11748  func (s ListAssessmentsOutput) GoString() string {
 11749  	return s.String()
 11750  }
 11751  
 11752  // SetAssessmentMetadata sets the AssessmentMetadata field's value.
 11753  func (s *ListAssessmentsOutput) SetAssessmentMetadata(v []*AssessmentMetadataItem) *ListAssessmentsOutput {
 11754  	s.AssessmentMetadata = v
 11755  	return s
 11756  }
 11757  
 11758  // SetNextToken sets the NextToken field's value.
 11759  func (s *ListAssessmentsOutput) SetNextToken(v string) *ListAssessmentsOutput {
 11760  	s.NextToken = &v
 11761  	return s
 11762  }
 11763  
 11764  type ListControlsInput struct {
 11765  	_ struct{} `type:"structure" nopayload:"true"`
 11766  
 11767  	// The type of control, such as standard or custom.
 11768  	//
 11769  	// ControlType is a required field
 11770  	ControlType *string `location:"querystring" locationName:"controlType" type:"string" required:"true" enum:"ControlType"`
 11771  
 11772  	// Represents the maximum number of results per page, or per API request call.
 11773  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 11774  
 11775  	// The pagination token used to fetch the next set of results.
 11776  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 11777  }
 11778  
 11779  // String returns the string representation.
 11780  //
 11781  // API parameter values that are decorated as "sensitive" in the API will not
 11782  // be included in the string output. The member name will be present, but the
 11783  // value will be replaced with "sensitive".
 11784  func (s ListControlsInput) String() string {
 11785  	return awsutil.Prettify(s)
 11786  }
 11787  
 11788  // GoString returns the string representation.
 11789  //
 11790  // API parameter values that are decorated as "sensitive" in the API will not
 11791  // be included in the string output. The member name will be present, but the
 11792  // value will be replaced with "sensitive".
 11793  func (s ListControlsInput) GoString() string {
 11794  	return s.String()
 11795  }
 11796  
 11797  // Validate inspects the fields of the type to determine if they are valid.
 11798  func (s *ListControlsInput) Validate() error {
 11799  	invalidParams := request.ErrInvalidParams{Context: "ListControlsInput"}
 11800  	if s.ControlType == nil {
 11801  		invalidParams.Add(request.NewErrParamRequired("ControlType"))
 11802  	}
 11803  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11804  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11805  	}
 11806  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 11807  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 11808  	}
 11809  
 11810  	if invalidParams.Len() > 0 {
 11811  		return invalidParams
 11812  	}
 11813  	return nil
 11814  }
 11815  
 11816  // SetControlType sets the ControlType field's value.
 11817  func (s *ListControlsInput) SetControlType(v string) *ListControlsInput {
 11818  	s.ControlType = &v
 11819  	return s
 11820  }
 11821  
 11822  // SetMaxResults sets the MaxResults field's value.
 11823  func (s *ListControlsInput) SetMaxResults(v int64) *ListControlsInput {
 11824  	s.MaxResults = &v
 11825  	return s
 11826  }
 11827  
 11828  // SetNextToken sets the NextToken field's value.
 11829  func (s *ListControlsInput) SetNextToken(v string) *ListControlsInput {
 11830  	s.NextToken = &v
 11831  	return s
 11832  }
 11833  
 11834  type ListControlsOutput struct {
 11835  	_ struct{} `type:"structure"`
 11836  
 11837  	// The list of control metadata objects returned by the ListControls API.
 11838  	ControlMetadataList []*ControlMetadata `locationName:"controlMetadataList" type:"list"`
 11839  
 11840  	// The pagination token used to fetch the next set of results.
 11841  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 11842  }
 11843  
 11844  // String returns the string representation.
 11845  //
 11846  // API parameter values that are decorated as "sensitive" in the API will not
 11847  // be included in the string output. The member name will be present, but the
 11848  // value will be replaced with "sensitive".
 11849  func (s ListControlsOutput) String() string {
 11850  	return awsutil.Prettify(s)
 11851  }
 11852  
 11853  // GoString returns the string representation.
 11854  //
 11855  // API parameter values that are decorated as "sensitive" in the API will not
 11856  // be included in the string output. The member name will be present, but the
 11857  // value will be replaced with "sensitive".
 11858  func (s ListControlsOutput) GoString() string {
 11859  	return s.String()
 11860  }
 11861  
 11862  // SetControlMetadataList sets the ControlMetadataList field's value.
 11863  func (s *ListControlsOutput) SetControlMetadataList(v []*ControlMetadata) *ListControlsOutput {
 11864  	s.ControlMetadataList = v
 11865  	return s
 11866  }
 11867  
 11868  // SetNextToken sets the NextToken field's value.
 11869  func (s *ListControlsOutput) SetNextToken(v string) *ListControlsOutput {
 11870  	s.NextToken = &v
 11871  	return s
 11872  }
 11873  
 11874  type ListKeywordsForDataSourceInput struct {
 11875  	_ struct{} `type:"structure" nopayload:"true"`
 11876  
 11877  	// Represents the maximum number of results per page, or per API request call.
 11878  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 11879  
 11880  	// The pagination token used to fetch the next set of results.
 11881  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 11882  
 11883  	// The control mapping data source to which the keywords apply.
 11884  	//
 11885  	// Source is a required field
 11886  	Source *string `location:"querystring" locationName:"source" type:"string" required:"true" enum:"SourceType"`
 11887  }
 11888  
 11889  // String returns the string representation.
 11890  //
 11891  // API parameter values that are decorated as "sensitive" in the API will not
 11892  // be included in the string output. The member name will be present, but the
 11893  // value will be replaced with "sensitive".
 11894  func (s ListKeywordsForDataSourceInput) String() string {
 11895  	return awsutil.Prettify(s)
 11896  }
 11897  
 11898  // GoString returns the string representation.
 11899  //
 11900  // API parameter values that are decorated as "sensitive" in the API will not
 11901  // be included in the string output. The member name will be present, but the
 11902  // value will be replaced with "sensitive".
 11903  func (s ListKeywordsForDataSourceInput) GoString() string {
 11904  	return s.String()
 11905  }
 11906  
 11907  // Validate inspects the fields of the type to determine if they are valid.
 11908  func (s *ListKeywordsForDataSourceInput) Validate() error {
 11909  	invalidParams := request.ErrInvalidParams{Context: "ListKeywordsForDataSourceInput"}
 11910  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11911  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11912  	}
 11913  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 11914  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 11915  	}
 11916  	if s.Source == nil {
 11917  		invalidParams.Add(request.NewErrParamRequired("Source"))
 11918  	}
 11919  
 11920  	if invalidParams.Len() > 0 {
 11921  		return invalidParams
 11922  	}
 11923  	return nil
 11924  }
 11925  
 11926  // SetMaxResults sets the MaxResults field's value.
 11927  func (s *ListKeywordsForDataSourceInput) SetMaxResults(v int64) *ListKeywordsForDataSourceInput {
 11928  	s.MaxResults = &v
 11929  	return s
 11930  }
 11931  
 11932  // SetNextToken sets the NextToken field's value.
 11933  func (s *ListKeywordsForDataSourceInput) SetNextToken(v string) *ListKeywordsForDataSourceInput {
 11934  	s.NextToken = &v
 11935  	return s
 11936  }
 11937  
 11938  // SetSource sets the Source field's value.
 11939  func (s *ListKeywordsForDataSourceInput) SetSource(v string) *ListKeywordsForDataSourceInput {
 11940  	s.Source = &v
 11941  	return s
 11942  }
 11943  
 11944  type ListKeywordsForDataSourceOutput struct {
 11945  	_ struct{} `type:"structure"`
 11946  
 11947  	// The list of keywords for the specified event mapping source.
 11948  	Keywords []*string `locationName:"keywords" type:"list"`
 11949  
 11950  	// The pagination token used to fetch the next set of results.
 11951  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 11952  }
 11953  
 11954  // String returns the string representation.
 11955  //
 11956  // API parameter values that are decorated as "sensitive" in the API will not
 11957  // be included in the string output. The member name will be present, but the
 11958  // value will be replaced with "sensitive".
 11959  func (s ListKeywordsForDataSourceOutput) String() string {
 11960  	return awsutil.Prettify(s)
 11961  }
 11962  
 11963  // GoString returns the string representation.
 11964  //
 11965  // API parameter values that are decorated as "sensitive" in the API will not
 11966  // be included in the string output. The member name will be present, but the
 11967  // value will be replaced with "sensitive".
 11968  func (s ListKeywordsForDataSourceOutput) GoString() string {
 11969  	return s.String()
 11970  }
 11971  
 11972  // SetKeywords sets the Keywords field's value.
 11973  func (s *ListKeywordsForDataSourceOutput) SetKeywords(v []*string) *ListKeywordsForDataSourceOutput {
 11974  	s.Keywords = v
 11975  	return s
 11976  }
 11977  
 11978  // SetNextToken sets the NextToken field's value.
 11979  func (s *ListKeywordsForDataSourceOutput) SetNextToken(v string) *ListKeywordsForDataSourceOutput {
 11980  	s.NextToken = &v
 11981  	return s
 11982  }
 11983  
 11984  type ListNotificationsInput struct {
 11985  	_ struct{} `type:"structure" nopayload:"true"`
 11986  
 11987  	// Represents the maximum number of results per page, or per API request call.
 11988  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
 11989  
 11990  	// The pagination token used to fetch the next set of results.
 11991  	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
 11992  }
 11993  
 11994  // String returns the string representation.
 11995  //
 11996  // API parameter values that are decorated as "sensitive" in the API will not
 11997  // be included in the string output. The member name will be present, but the
 11998  // value will be replaced with "sensitive".
 11999  func (s ListNotificationsInput) String() string {
 12000  	return awsutil.Prettify(s)
 12001  }
 12002  
 12003  // GoString returns the string representation.
 12004  //
 12005  // API parameter values that are decorated as "sensitive" in the API will not
 12006  // be included in the string output. The member name will be present, but the
 12007  // value will be replaced with "sensitive".
 12008  func (s ListNotificationsInput) GoString() string {
 12009  	return s.String()
 12010  }
 12011  
 12012  // Validate inspects the fields of the type to determine if they are valid.
 12013  func (s *ListNotificationsInput) Validate() error {
 12014  	invalidParams := request.ErrInvalidParams{Context: "ListNotificationsInput"}
 12015  	if s.MaxResults != nil && *s.MaxResults < 1 {
 12016  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 12017  	}
 12018  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 12019  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 12020  	}
 12021  
 12022  	if invalidParams.Len() > 0 {
 12023  		return invalidParams
 12024  	}
 12025  	return nil
 12026  }
 12027  
 12028  // SetMaxResults sets the MaxResults field's value.
 12029  func (s *ListNotificationsInput) SetMaxResults(v int64) *ListNotificationsInput {
 12030  	s.MaxResults = &v
 12031  	return s
 12032  }
 12033  
 12034  // SetNextToken sets the NextToken field's value.
 12035  func (s *ListNotificationsInput) SetNextToken(v string) *ListNotificationsInput {
 12036  	s.NextToken = &v
 12037  	return s
 12038  }
 12039  
 12040  type ListNotificationsOutput struct {
 12041  	_ struct{} `type:"structure"`
 12042  
 12043  	// The pagination token used to fetch the next set of results.
 12044  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 12045  
 12046  	// The returned list of notifications.
 12047  	Notifications []*Notification `locationName:"notifications" type:"list"`
 12048  }
 12049  
 12050  // String returns the string representation.
 12051  //
 12052  // API parameter values that are decorated as "sensitive" in the API will not
 12053  // be included in the string output. The member name will be present, but the
 12054  // value will be replaced with "sensitive".
 12055  func (s ListNotificationsOutput) String() string {
 12056  	return awsutil.Prettify(s)
 12057  }
 12058  
 12059  // GoString returns the string representation.
 12060  //
 12061  // API parameter values that are decorated as "sensitive" in the API will not
 12062  // be included in the string output. The member name will be present, but the
 12063  // value will be replaced with "sensitive".
 12064  func (s ListNotificationsOutput) GoString() string {
 12065  	return s.String()
 12066  }
 12067  
 12068  // SetNextToken sets the NextToken field's value.
 12069  func (s *ListNotificationsOutput) SetNextToken(v string) *ListNotificationsOutput {
 12070  	s.NextToken = &v
 12071  	return s
 12072  }
 12073  
 12074  // SetNotifications sets the Notifications field's value.
 12075  func (s *ListNotificationsOutput) SetNotifications(v []*Notification) *ListNotificationsOutput {
 12076  	s.Notifications = v
 12077  	return s
 12078  }
 12079  
 12080  type ListTagsForResourceInput struct {
 12081  	_ struct{} `type:"structure" nopayload:"true"`
 12082  
 12083  	// The Amazon Resource Name (ARN) of the specified resource.
 12084  	//
 12085  	// ResourceArn is a required field
 12086  	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"`
 12087  }
 12088  
 12089  // String returns the string representation.
 12090  //
 12091  // API parameter values that are decorated as "sensitive" in the API will not
 12092  // be included in the string output. The member name will be present, but the
 12093  // value will be replaced with "sensitive".
 12094  func (s ListTagsForResourceInput) String() string {
 12095  	return awsutil.Prettify(s)
 12096  }
 12097  
 12098  // GoString returns the string representation.
 12099  //
 12100  // API parameter values that are decorated as "sensitive" in the API will not
 12101  // be included in the string output. The member name will be present, but the
 12102  // value will be replaced with "sensitive".
 12103  func (s ListTagsForResourceInput) GoString() string {
 12104  	return s.String()
 12105  }
 12106  
 12107  // Validate inspects the fields of the type to determine if they are valid.
 12108  func (s *ListTagsForResourceInput) Validate() error {
 12109  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
 12110  	if s.ResourceArn == nil {
 12111  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 12112  	}
 12113  	if s.ResourceArn != nil && len(*s.ResourceArn) < 20 {
 12114  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20))
 12115  	}
 12116  
 12117  	if invalidParams.Len() > 0 {
 12118  		return invalidParams
 12119  	}
 12120  	return nil
 12121  }
 12122  
 12123  // SetResourceArn sets the ResourceArn field's value.
 12124  func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
 12125  	s.ResourceArn = &v
 12126  	return s
 12127  }
 12128  
 12129  type ListTagsForResourceOutput struct {
 12130  	_ struct{} `type:"structure"`
 12131  
 12132  	// The list of tags returned by the ListTagsForResource API.
 12133  	Tags map[string]*string `locationName:"tags" type:"map"`
 12134  }
 12135  
 12136  // String returns the string representation.
 12137  //
 12138  // API parameter values that are decorated as "sensitive" in the API will not
 12139  // be included in the string output. The member name will be present, but the
 12140  // value will be replaced with "sensitive".
 12141  func (s ListTagsForResourceOutput) String() string {
 12142  	return awsutil.Prettify(s)
 12143  }
 12144  
 12145  // GoString returns the string representation.
 12146  //
 12147  // API parameter values that are decorated as "sensitive" in the API will not
 12148  // be included in the string output. The member name will be present, but the
 12149  // value will be replaced with "sensitive".
 12150  func (s ListTagsForResourceOutput) GoString() string {
 12151  	return s.String()
 12152  }
 12153  
 12154  // SetTags sets the Tags field's value.
 12155  func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
 12156  	s.Tags = v
 12157  	return s
 12158  }
 12159  
 12160  // Evidence that is uploaded to Audit Manager manually.
 12161  type ManualEvidence struct {
 12162  	_ struct{} `type:"structure"`
 12163  
 12164  	// The Amazon S3 URL that points to a manual evidence object.
 12165  	S3ResourcePath *string `locationName:"s3ResourcePath" min:"1" type:"string"`
 12166  }
 12167  
 12168  // String returns the string representation.
 12169  //
 12170  // API parameter values that are decorated as "sensitive" in the API will not
 12171  // be included in the string output. The member name will be present, but the
 12172  // value will be replaced with "sensitive".
 12173  func (s ManualEvidence) String() string {
 12174  	return awsutil.Prettify(s)
 12175  }
 12176  
 12177  // GoString returns the string representation.
 12178  //
 12179  // API parameter values that are decorated as "sensitive" in the API will not
 12180  // be included in the string output. The member name will be present, but the
 12181  // value will be replaced with "sensitive".
 12182  func (s ManualEvidence) GoString() string {
 12183  	return s.String()
 12184  }
 12185  
 12186  // Validate inspects the fields of the type to determine if they are valid.
 12187  func (s *ManualEvidence) Validate() error {
 12188  	invalidParams := request.ErrInvalidParams{Context: "ManualEvidence"}
 12189  	if s.S3ResourcePath != nil && len(*s.S3ResourcePath) < 1 {
 12190  		invalidParams.Add(request.NewErrParamMinLen("S3ResourcePath", 1))
 12191  	}
 12192  
 12193  	if invalidParams.Len() > 0 {
 12194  		return invalidParams
 12195  	}
 12196  	return nil
 12197  }
 12198  
 12199  // SetS3ResourcePath sets the S3ResourcePath field's value.
 12200  func (s *ManualEvidence) SetS3ResourcePath(v string) *ManualEvidence {
 12201  	s.S3ResourcePath = &v
 12202  	return s
 12203  }
 12204  
 12205  // The notification used to inform a user of an update in Audit Manager. For
 12206  // example, this includes the notification that is sent when a control set is
 12207  // delegated for review.
 12208  type Notification struct {
 12209  	_ struct{} `type:"structure"`
 12210  
 12211  	// The identifier for the specified assessment.
 12212  	AssessmentId *string `locationName:"assessmentId" min:"36" type:"string"`
 12213  
 12214  	// The name of the related assessment.
 12215  	AssessmentName *string `locationName:"assessmentName" min:"1" type:"string"`
 12216  
 12217  	// The identifier for the specified control set.
 12218  	ControlSetId *string `locationName:"controlSetId" min:"1" type:"string"`
 12219  
 12220  	// Specifies the name of the control set that the notification is about.
 12221  	ControlSetName *string `locationName:"controlSetName" min:"1" type:"string"`
 12222  
 12223  	// The description of the notification.
 12224  	Description *string `locationName:"description" min:"1" type:"string"`
 12225  
 12226  	// The time when the notification was sent.
 12227  	EventTime *time.Time `locationName:"eventTime" type:"timestamp"`
 12228  
 12229  	// The unique identifier for the notification.
 12230  	Id *string `locationName:"id" min:"47" type:"string"`
 12231  
 12232  	// The sender of the notification.
 12233  	Source *string `locationName:"source" min:"1" type:"string"`
 12234  }
 12235  
 12236  // String returns the string representation.
 12237  //
 12238  // API parameter values that are decorated as "sensitive" in the API will not
 12239  // be included in the string output. The member name will be present, but the
 12240  // value will be replaced with "sensitive".
 12241  func (s Notification) String() string {
 12242  	return awsutil.Prettify(s)
 12243  }
 12244  
 12245  // GoString returns the string representation.
 12246  //
 12247  // API parameter values that are decorated as "sensitive" in the API will not
 12248  // be included in the string output. The member name will be present, but the
 12249  // value will be replaced with "sensitive".
 12250  func (s Notification) GoString() string {
 12251  	return s.String()
 12252  }
 12253  
 12254  // SetAssessmentId sets the AssessmentId field's value.
 12255  func (s *Notification) SetAssessmentId(v string) *Notification {
 12256  	s.AssessmentId = &v
 12257  	return s
 12258  }
 12259  
 12260  // SetAssessmentName sets the AssessmentName field's value.
 12261  func (s *Notification) SetAssessmentName(v string) *Notification {
 12262  	s.AssessmentName = &v
 12263  	return s
 12264  }
 12265  
 12266  // SetControlSetId sets the ControlSetId field's value.
 12267  func (s *Notification) SetControlSetId(v string) *Notification {
 12268  	s.ControlSetId = &v
 12269  	return s
 12270  }
 12271  
 12272  // SetControlSetName sets the ControlSetName field's value.
 12273  func (s *Notification) SetControlSetName(v string) *Notification {
 12274  	s.ControlSetName = &v
 12275  	return s
 12276  }
 12277  
 12278  // SetDescription sets the Description field's value.
 12279  func (s *Notification) SetDescription(v string) *Notification {
 12280  	s.Description = &v
 12281  	return s
 12282  }
 12283  
 12284  // SetEventTime sets the EventTime field's value.
 12285  func (s *Notification) SetEventTime(v time.Time) *Notification {
 12286  	s.EventTime = &v
 12287  	return s
 12288  }
 12289  
 12290  // SetId sets the Id field's value.
 12291  func (s *Notification) SetId(v string) *Notification {
 12292  	s.Id = &v
 12293  	return s
 12294  }
 12295  
 12296  // SetSource sets the Source field's value.
 12297  func (s *Notification) SetSource(v string) *Notification {
 12298  	s.Source = &v
 12299  	return s
 12300  }
 12301  
 12302  type RegisterAccountInput struct {
 12303  	_ struct{} `type:"structure"`
 12304  
 12305  	// The delegated administrator account for Audit Manager.
 12306  	DelegatedAdminAccount *string `locationName:"delegatedAdminAccount" min:"12" type:"string"`
 12307  
 12308  	// The KMS key details.
 12309  	KmsKey *string `locationName:"kmsKey" min:"7" type:"string"`
 12310  }
 12311  
 12312  // String returns the string representation.
 12313  //
 12314  // API parameter values that are decorated as "sensitive" in the API will not
 12315  // be included in the string output. The member name will be present, but the
 12316  // value will be replaced with "sensitive".
 12317  func (s RegisterAccountInput) String() string {
 12318  	return awsutil.Prettify(s)
 12319  }
 12320  
 12321  // GoString returns the string representation.
 12322  //
 12323  // API parameter values that are decorated as "sensitive" in the API will not
 12324  // be included in the string output. The member name will be present, but the
 12325  // value will be replaced with "sensitive".
 12326  func (s RegisterAccountInput) GoString() string {
 12327  	return s.String()
 12328  }
 12329  
 12330  // Validate inspects the fields of the type to determine if they are valid.
 12331  func (s *RegisterAccountInput) Validate() error {
 12332  	invalidParams := request.ErrInvalidParams{Context: "RegisterAccountInput"}
 12333  	if s.DelegatedAdminAccount != nil && len(*s.DelegatedAdminAccount) < 12 {
 12334  		invalidParams.Add(request.NewErrParamMinLen("DelegatedAdminAccount", 12))
 12335  	}
 12336  	if s.KmsKey != nil && len(*s.KmsKey) < 7 {
 12337  		invalidParams.Add(request.NewErrParamMinLen("KmsKey", 7))
 12338  	}
 12339  
 12340  	if invalidParams.Len() > 0 {
 12341  		return invalidParams
 12342  	}
 12343  	return nil
 12344  }
 12345  
 12346  // SetDelegatedAdminAccount sets the DelegatedAdminAccount field's value.
 12347  func (s *RegisterAccountInput) SetDelegatedAdminAccount(v string) *RegisterAccountInput {
 12348  	s.DelegatedAdminAccount = &v
 12349  	return s
 12350  }
 12351  
 12352  // SetKmsKey sets the KmsKey field's value.
 12353  func (s *RegisterAccountInput) SetKmsKey(v string) *RegisterAccountInput {
 12354  	s.KmsKey = &v
 12355  	return s
 12356  }
 12357  
 12358  type RegisterAccountOutput struct {
 12359  	_ struct{} `type:"structure"`
 12360  
 12361  	// The status of the account registration request.
 12362  	Status *string `locationName:"status" type:"string" enum:"AccountStatus"`
 12363  }
 12364  
 12365  // String returns the string representation.
 12366  //
 12367  // API parameter values that are decorated as "sensitive" in the API will not
 12368  // be included in the string output. The member name will be present, but the
 12369  // value will be replaced with "sensitive".
 12370  func (s RegisterAccountOutput) String() string {
 12371  	return awsutil.Prettify(s)
 12372  }
 12373  
 12374  // GoString returns the string representation.
 12375  //
 12376  // API parameter values that are decorated as "sensitive" in the API will not
 12377  // be included in the string output. The member name will be present, but the
 12378  // value will be replaced with "sensitive".
 12379  func (s RegisterAccountOutput) GoString() string {
 12380  	return s.String()
 12381  }
 12382  
 12383  // SetStatus sets the Status field's value.
 12384  func (s *RegisterAccountOutput) SetStatus(v string) *RegisterAccountOutput {
 12385  	s.Status = &v
 12386  	return s
 12387  }
 12388  
 12389  type RegisterOrganizationAdminAccountInput struct {
 12390  	_ struct{} `type:"structure"`
 12391  
 12392  	// The identifier for the specified delegated administrator account.
 12393  	//
 12394  	// AdminAccountId is a required field
 12395  	AdminAccountId *string `locationName:"adminAccountId" min:"12" type:"string" required:"true"`
 12396  }
 12397  
 12398  // String returns the string representation.
 12399  //
 12400  // API parameter values that are decorated as "sensitive" in the API will not
 12401  // be included in the string output. The member name will be present, but the
 12402  // value will be replaced with "sensitive".
 12403  func (s RegisterOrganizationAdminAccountInput) String() string {
 12404  	return awsutil.Prettify(s)
 12405  }
 12406  
 12407  // GoString returns the string representation.
 12408  //
 12409  // API parameter values that are decorated as "sensitive" in the API will not
 12410  // be included in the string output. The member name will be present, but the
 12411  // value will be replaced with "sensitive".
 12412  func (s RegisterOrganizationAdminAccountInput) GoString() string {
 12413  	return s.String()
 12414  }
 12415  
 12416  // Validate inspects the fields of the type to determine if they are valid.
 12417  func (s *RegisterOrganizationAdminAccountInput) Validate() error {
 12418  	invalidParams := request.ErrInvalidParams{Context: "RegisterOrganizationAdminAccountInput"}
 12419  	if s.AdminAccountId == nil {
 12420  		invalidParams.Add(request.NewErrParamRequired("AdminAccountId"))
 12421  	}
 12422  	if s.AdminAccountId != nil && len(*s.AdminAccountId) < 12 {
 12423  		invalidParams.Add(request.NewErrParamMinLen("AdminAccountId", 12))
 12424  	}
 12425  
 12426  	if invalidParams.Len() > 0 {
 12427  		return invalidParams
 12428  	}
 12429  	return nil
 12430  }
 12431  
 12432  // SetAdminAccountId sets the AdminAccountId field's value.
 12433  func (s *RegisterOrganizationAdminAccountInput) SetAdminAccountId(v string) *RegisterOrganizationAdminAccountInput {
 12434  	s.AdminAccountId = &v
 12435  	return s
 12436  }
 12437  
 12438  type RegisterOrganizationAdminAccountOutput struct {
 12439  	_ struct{} `type:"structure"`
 12440  
 12441  	// The identifier for the specified delegated administrator account.
 12442  	AdminAccountId *string `locationName:"adminAccountId" min:"12" type:"string"`
 12443  
 12444  	// The identifier for the specified organization.
 12445  	OrganizationId *string `locationName:"organizationId" min:"12" type:"string"`
 12446  }
 12447  
 12448  // String returns the string representation.
 12449  //
 12450  // API parameter values that are decorated as "sensitive" in the API will not
 12451  // be included in the string output. The member name will be present, but the
 12452  // value will be replaced with "sensitive".
 12453  func (s RegisterOrganizationAdminAccountOutput) String() string {
 12454  	return awsutil.Prettify(s)
 12455  }
 12456  
 12457  // GoString returns the string representation.
 12458  //
 12459  // API parameter values that are decorated as "sensitive" in the API will not
 12460  // be included in the string output. The member name will be present, but the
 12461  // value will be replaced with "sensitive".
 12462  func (s RegisterOrganizationAdminAccountOutput) GoString() string {
 12463  	return s.String()
 12464  }
 12465  
 12466  // SetAdminAccountId sets the AdminAccountId field's value.
 12467  func (s *RegisterOrganizationAdminAccountOutput) SetAdminAccountId(v string) *RegisterOrganizationAdminAccountOutput {
 12468  	s.AdminAccountId = &v
 12469  	return s
 12470  }
 12471  
 12472  // SetOrganizationId sets the OrganizationId field's value.
 12473  func (s *RegisterOrganizationAdminAccountOutput) SetOrganizationId(v string) *RegisterOrganizationAdminAccountOutput {
 12474  	s.OrganizationId = &v
 12475  	return s
 12476  }
 12477  
 12478  // A system asset that is evaluated in an Audit Manager assessment.
 12479  type Resource struct {
 12480  	_ struct{} `type:"structure"`
 12481  
 12482  	// The Amazon Resource Name (ARN) for the specified resource.
 12483  	Arn *string `locationName:"arn" min:"20" type:"string"`
 12484  
 12485  	// The value of the specified resource.
 12486  	Value *string `locationName:"value" type:"string"`
 12487  }
 12488  
 12489  // String returns the string representation.
 12490  //
 12491  // API parameter values that are decorated as "sensitive" in the API will not
 12492  // be included in the string output. The member name will be present, but the
 12493  // value will be replaced with "sensitive".
 12494  func (s Resource) String() string {
 12495  	return awsutil.Prettify(s)
 12496  }
 12497  
 12498  // GoString returns the string representation.
 12499  //
 12500  // API parameter values that are decorated as "sensitive" in the API will not
 12501  // be included in the string output. The member name will be present, but the
 12502  // value will be replaced with "sensitive".
 12503  func (s Resource) GoString() string {
 12504  	return s.String()
 12505  }
 12506  
 12507  // SetArn sets the Arn field's value.
 12508  func (s *Resource) SetArn(v string) *Resource {
 12509  	s.Arn = &v
 12510  	return s
 12511  }
 12512  
 12513  // SetValue sets the Value field's value.
 12514  func (s *Resource) SetValue(v string) *Resource {
 12515  	s.Value = &v
 12516  	return s
 12517  }
 12518  
 12519  // The resource specified in the request cannot be found.
 12520  type ResourceNotFoundException struct {
 12521  	_            struct{}                  `type:"structure"`
 12522  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 12523  
 12524  	Message_ *string `locationName:"message" type:"string"`
 12525  
 12526  	// The unique identifier for the specified resource.
 12527  	//
 12528  	// ResourceId is a required field
 12529  	ResourceId *string `locationName:"resourceId" type:"string" required:"true"`
 12530  
 12531  	// The type of resource affected by the error.
 12532  	//
 12533  	// ResourceType is a required field
 12534  	ResourceType *string `locationName:"resourceType" type:"string" required:"true"`
 12535  }
 12536  
 12537  // String returns the string representation.
 12538  //
 12539  // API parameter values that are decorated as "sensitive" in the API will not
 12540  // be included in the string output. The member name will be present, but the
 12541  // value will be replaced with "sensitive".
 12542  func (s ResourceNotFoundException) String() string {
 12543  	return awsutil.Prettify(s)
 12544  }
 12545  
 12546  // GoString returns the string representation.
 12547  //
 12548  // API parameter values that are decorated as "sensitive" in the API will not
 12549  // be included in the string output. The member name will be present, but the
 12550  // value will be replaced with "sensitive".
 12551  func (s ResourceNotFoundException) GoString() string {
 12552  	return s.String()
 12553  }
 12554  
 12555  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
 12556  	return &ResourceNotFoundException{
 12557  		RespMetadata: v,
 12558  	}
 12559  }
 12560  
 12561  // Code returns the exception type name.
 12562  func (s *ResourceNotFoundException) Code() string {
 12563  	return "ResourceNotFoundException"
 12564  }
 12565  
 12566  // Message returns the exception's message.
 12567  func (s *ResourceNotFoundException) Message() string {
 12568  	if s.Message_ != nil {
 12569  		return *s.Message_
 12570  	}
 12571  	return ""
 12572  }
 12573  
 12574  // OrigErr always returns nil, satisfies awserr.Error interface.
 12575  func (s *ResourceNotFoundException) OrigErr() error {
 12576  	return nil
 12577  }
 12578  
 12579  func (s *ResourceNotFoundException) Error() string {
 12580  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 12581  }
 12582  
 12583  // Status code returns the HTTP status code for the request's response error.
 12584  func (s *ResourceNotFoundException) StatusCode() int {
 12585  	return s.RespMetadata.StatusCode
 12586  }
 12587  
 12588  // RequestID returns the service's response RequestID for request.
 12589  func (s *ResourceNotFoundException) RequestID() string {
 12590  	return s.RespMetadata.RequestID
 12591  }
 12592  
 12593  // The wrapper that contains the Audit Manager role information of the current
 12594  // user, such as the role type and IAM Amazon Resource Name (ARN).
 12595  type Role struct {
 12596  	_ struct{} `type:"structure"`
 12597  
 12598  	// The Amazon Resource Name (ARN) of the IAM role.
 12599  	RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
 12600  
 12601  	// The type of customer persona.
 12602  	//
 12603  	// In CreateAssessment, roleType can only be PROCESS_OWNER.
 12604  	//
 12605  	// In UpdateSettings, roleType can only be PROCESS_OWNER.
 12606  	//
 12607  	// In BatchCreateDelegationByAssessment, roleType can only be RESOURCE_OWNER.
 12608  	RoleType *string `locationName:"roleType" type:"string" enum:"RoleType"`
 12609  }
 12610  
 12611  // String returns the string representation.
 12612  //
 12613  // API parameter values that are decorated as "sensitive" in the API will not
 12614  // be included in the string output. The member name will be present, but the
 12615  // value will be replaced with "sensitive".
 12616  func (s Role) String() string {
 12617  	return awsutil.Prettify(s)
 12618  }
 12619  
 12620  // GoString returns the string representation.
 12621  //
 12622  // API parameter values that are decorated as "sensitive" in the API will not
 12623  // be included in the string output. The member name will be present, but the
 12624  // value will be replaced with "sensitive".
 12625  func (s Role) GoString() string {
 12626  	return s.String()
 12627  }
 12628  
 12629  // Validate inspects the fields of the type to determine if they are valid.
 12630  func (s *Role) Validate() error {
 12631  	invalidParams := request.ErrInvalidParams{Context: "Role"}
 12632  	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
 12633  		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
 12634  	}
 12635  
 12636  	if invalidParams.Len() > 0 {
 12637  		return invalidParams
 12638  	}
 12639  	return nil
 12640  }
 12641  
 12642  // SetRoleArn sets the RoleArn field's value.
 12643  func (s *Role) SetRoleArn(v string) *Role {
 12644  	s.RoleArn = &v
 12645  	return s
 12646  }
 12647  
 12648  // SetRoleType sets the RoleType field's value.
 12649  func (s *Role) SetRoleType(v string) *Role {
 12650  	s.RoleType = &v
 12651  	return s
 12652  }
 12653  
 12654  // The wrapper that contains the accounts and services in scope for the assessment.
 12655  type Scope struct {
 12656  	_ struct{} `type:"structure"`
 12657  
 12658  	// The accounts included in the scope of the assessment.
 12659  	AwsAccounts []*AWSAccount `locationName:"awsAccounts" type:"list"`
 12660  
 12661  	// The Amazon Web Services services included in the scope of the assessment.
 12662  	AwsServices []*AWSService `locationName:"awsServices" type:"list"`
 12663  }
 12664  
 12665  // String returns the string representation.
 12666  //
 12667  // API parameter values that are decorated as "sensitive" in the API will not
 12668  // be included in the string output. The member name will be present, but the
 12669  // value will be replaced with "sensitive".
 12670  func (s Scope) String() string {
 12671  	return awsutil.Prettify(s)
 12672  }
 12673  
 12674  // GoString returns the string representation.
 12675  //
 12676  // API parameter values that are decorated as "sensitive" in the API will not
 12677  // be included in the string output. The member name will be present, but the
 12678  // value will be replaced with "sensitive".
 12679  func (s Scope) GoString() string {
 12680  	return s.String()
 12681  }
 12682  
 12683  // Validate inspects the fields of the type to determine if they are valid.
 12684  func (s *Scope) Validate() error {
 12685  	invalidParams := request.ErrInvalidParams{Context: "Scope"}
 12686  	if s.AwsAccounts != nil {
 12687  		for i, v := range s.AwsAccounts {
 12688  			if v == nil {
 12689  				continue
 12690  			}
 12691  			if err := v.Validate(); err != nil {
 12692  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AwsAccounts", i), err.(request.ErrInvalidParams))
 12693  			}
 12694  		}
 12695  	}
 12696  	if s.AwsServices != nil {
 12697  		for i, v := range s.AwsServices {
 12698  			if v == nil {
 12699  				continue
 12700  			}
 12701  			if err := v.Validate(); err != nil {
 12702  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AwsServices", i), err.(request.ErrInvalidParams))
 12703  			}
 12704  		}
 12705  	}
 12706  
 12707  	if invalidParams.Len() > 0 {
 12708  		return invalidParams
 12709  	}
 12710  	return nil
 12711  }
 12712  
 12713  // SetAwsAccounts sets the AwsAccounts field's value.
 12714  func (s *Scope) SetAwsAccounts(v []*AWSAccount) *Scope {
 12715  	s.AwsAccounts = v
 12716  	return s
 12717  }
 12718  
 12719  // SetAwsServices sets the AwsServices field's value.
 12720  func (s *Scope) SetAwsServices(v []*AWSService) *Scope {
 12721  	s.AwsServices = v
 12722  	return s
 12723  }
 12724  
 12725  // The metadata associated with the specified Amazon Web Service.
 12726  type ServiceMetadata struct {
 12727  	_ struct{} `type:"structure"`
 12728  
 12729  	// The category in which the Amazon Web Service belongs, such as compute, storage,
 12730  	// database, and so on.
 12731  	Category *string `locationName:"category" min:"1" type:"string"`
 12732  
 12733  	// The description of the specified Amazon Web Service.
 12734  	Description *string `locationName:"description" min:"1" type:"string"`
 12735  
 12736  	// The display name of the Amazon Web Service.
 12737  	DisplayName *string `locationName:"displayName" min:"1" type:"string"`
 12738  
 12739  	// The name of the Amazon Web Service.
 12740  	Name *string `locationName:"name" min:"1" type:"string"`
 12741  }
 12742  
 12743  // String returns the string representation.
 12744  //
 12745  // API parameter values that are decorated as "sensitive" in the API will not
 12746  // be included in the string output. The member name will be present, but the
 12747  // value will be replaced with "sensitive".
 12748  func (s ServiceMetadata) String() string {
 12749  	return awsutil.Prettify(s)
 12750  }
 12751  
 12752  // GoString returns the string representation.
 12753  //
 12754  // API parameter values that are decorated as "sensitive" in the API will not
 12755  // be included in the string output. The member name will be present, but the
 12756  // value will be replaced with "sensitive".
 12757  func (s ServiceMetadata) GoString() string {
 12758  	return s.String()
 12759  }
 12760  
 12761  // SetCategory sets the Category field's value.
 12762  func (s *ServiceMetadata) SetCategory(v string) *ServiceMetadata {
 12763  	s.Category = &v
 12764  	return s
 12765  }
 12766  
 12767  // SetDescription sets the Description field's value.
 12768  func (s *ServiceMetadata) SetDescription(v string) *ServiceMetadata {
 12769  	s.Description = &v
 12770  	return s
 12771  }
 12772  
 12773  // SetDisplayName sets the DisplayName field's value.
 12774  func (s *ServiceMetadata) SetDisplayName(v string) *ServiceMetadata {
 12775  	s.DisplayName = &v
 12776  	return s
 12777  }
 12778  
 12779  // SetName sets the Name field's value.
 12780  func (s *ServiceMetadata) SetName(v string) *ServiceMetadata {
 12781  	s.Name = &v
 12782  	return s
 12783  }
 12784  
 12785  // The settings object that holds all supported Audit Manager settings.
 12786  type Settings struct {
 12787  	_ struct{} `type:"structure"`
 12788  
 12789  	// The default storage destination for assessment reports.
 12790  	DefaultAssessmentReportsDestination *AssessmentReportsDestination `locationName:"defaultAssessmentReportsDestination" type:"structure"`
 12791  
 12792  	// The designated default audit owners.
 12793  	DefaultProcessOwners []*Role `locationName:"defaultProcessOwners" type:"list"`
 12794  
 12795  	// Specifies whether Organizations is enabled.
 12796  	IsAwsOrgEnabled *bool `locationName:"isAwsOrgEnabled" type:"boolean"`
 12797  
 12798  	// The KMS key details.
 12799  	KmsKey *string `locationName:"kmsKey" min:"7" type:"string"`
 12800  
 12801  	// The designated Amazon Simple Notification Service (Amazon SNS) topic.
 12802  	SnsTopic *string `locationName:"snsTopic" min:"1" type:"string"`
 12803  }
 12804  
 12805  // String returns the string representation.
 12806  //
 12807  // API parameter values that are decorated as "sensitive" in the API will not
 12808  // be included in the string output. The member name will be present, but the
 12809  // value will be replaced with "sensitive".
 12810  func (s Settings) String() string {
 12811  	return awsutil.Prettify(s)
 12812  }
 12813  
 12814  // GoString returns the string representation.
 12815  //
 12816  // API parameter values that are decorated as "sensitive" in the API will not
 12817  // be included in the string output. The member name will be present, but the
 12818  // value will be replaced with "sensitive".
 12819  func (s Settings) GoString() string {
 12820  	return s.String()
 12821  }
 12822  
 12823  // SetDefaultAssessmentReportsDestination sets the DefaultAssessmentReportsDestination field's value.
 12824  func (s *Settings) SetDefaultAssessmentReportsDestination(v *AssessmentReportsDestination) *Settings {
 12825  	s.DefaultAssessmentReportsDestination = v
 12826  	return s
 12827  }
 12828  
 12829  // SetDefaultProcessOwners sets the DefaultProcessOwners field's value.
 12830  func (s *Settings) SetDefaultProcessOwners(v []*Role) *Settings {
 12831  	s.DefaultProcessOwners = v
 12832  	return s
 12833  }
 12834  
 12835  // SetIsAwsOrgEnabled sets the IsAwsOrgEnabled field's value.
 12836  func (s *Settings) SetIsAwsOrgEnabled(v bool) *Settings {
 12837  	s.IsAwsOrgEnabled = &v
 12838  	return s
 12839  }
 12840  
 12841  // SetKmsKey sets the KmsKey field's value.
 12842  func (s *Settings) SetKmsKey(v string) *Settings {
 12843  	s.KmsKey = &v
 12844  	return s
 12845  }
 12846  
 12847  // SetSnsTopic sets the SnsTopic field's value.
 12848  func (s *Settings) SetSnsTopic(v string) *Settings {
 12849  	s.SnsTopic = &v
 12850  	return s
 12851  }
 12852  
 12853  // The keyword to search for in CloudTrail logs, Config rules, Security Hub
 12854  // checks, and Amazon Web Services API names.
 12855  type SourceKeyword struct {
 12856  	_ struct{} `type:"structure"`
 12857  
 12858  	// The method of input for the specified keyword.
 12859  	KeywordInputType *string `locationName:"keywordInputType" type:"string" enum:"KeywordInputType"`
 12860  
 12861  	// The value of the keyword used to search CloudTrail logs, Config rules, Security
 12862  	// Hub checks, and Amazon Web Services API names when mapping a control data
 12863  	// source.
 12864  	KeywordValue *string `locationName:"keywordValue" min:"1" type:"string"`
 12865  }
 12866  
 12867  // String returns the string representation.
 12868  //
 12869  // API parameter values that are decorated as "sensitive" in the API will not
 12870  // be included in the string output. The member name will be present, but the
 12871  // value will be replaced with "sensitive".
 12872  func (s SourceKeyword) String() string {
 12873  	return awsutil.Prettify(s)
 12874  }
 12875  
 12876  // GoString returns the string representation.
 12877  //
 12878  // API parameter values that are decorated as "sensitive" in the API will not
 12879  // be included in the string output. The member name will be present, but the
 12880  // value will be replaced with "sensitive".
 12881  func (s SourceKeyword) GoString() string {
 12882  	return s.String()
 12883  }
 12884  
 12885  // Validate inspects the fields of the type to determine if they are valid.
 12886  func (s *SourceKeyword) Validate() error {
 12887  	invalidParams := request.ErrInvalidParams{Context: "SourceKeyword"}
 12888  	if s.KeywordValue != nil && len(*s.KeywordValue) < 1 {
 12889  		invalidParams.Add(request.NewErrParamMinLen("KeywordValue", 1))
 12890  	}
 12891  
 12892  	if invalidParams.Len() > 0 {
 12893  		return invalidParams
 12894  	}
 12895  	return nil
 12896  }
 12897  
 12898  // SetKeywordInputType sets the KeywordInputType field's value.
 12899  func (s *SourceKeyword) SetKeywordInputType(v string) *SourceKeyword {
 12900  	s.KeywordInputType = &v
 12901  	return s
 12902  }
 12903  
 12904  // SetKeywordValue sets the KeywordValue field's value.
 12905  func (s *SourceKeyword) SetKeywordValue(v string) *SourceKeyword {
 12906  	s.KeywordValue = &v
 12907  	return s
 12908  }
 12909  
 12910  type TagResourceInput struct {
 12911  	_ struct{} `type:"structure"`
 12912  
 12913  	// The Amazon Resource Name (ARN) of the specified resource.
 12914  	//
 12915  	// ResourceArn is a required field
 12916  	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"`
 12917  
 12918  	// The tags to be associated with the resource.
 12919  	//
 12920  	// Tags is a required field
 12921  	Tags map[string]*string `locationName:"tags" type:"map" required:"true"`
 12922  }
 12923  
 12924  // String returns the string representation.
 12925  //
 12926  // API parameter values that are decorated as "sensitive" in the API will not
 12927  // be included in the string output. The member name will be present, but the
 12928  // value will be replaced with "sensitive".
 12929  func (s TagResourceInput) String() string {
 12930  	return awsutil.Prettify(s)
 12931  }
 12932  
 12933  // GoString returns the string representation.
 12934  //
 12935  // API parameter values that are decorated as "sensitive" in the API will not
 12936  // be included in the string output. The member name will be present, but the
 12937  // value will be replaced with "sensitive".
 12938  func (s TagResourceInput) GoString() string {
 12939  	return s.String()
 12940  }
 12941  
 12942  // Validate inspects the fields of the type to determine if they are valid.
 12943  func (s *TagResourceInput) Validate() error {
 12944  	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
 12945  	if s.ResourceArn == nil {
 12946  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 12947  	}
 12948  	if s.ResourceArn != nil && len(*s.ResourceArn) < 20 {
 12949  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20))
 12950  	}
 12951  	if s.Tags == nil {
 12952  		invalidParams.Add(request.NewErrParamRequired("Tags"))
 12953  	}
 12954  
 12955  	if invalidParams.Len() > 0 {
 12956  		return invalidParams
 12957  	}
 12958  	return nil
 12959  }
 12960  
 12961  // SetResourceArn sets the ResourceArn field's value.
 12962  func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
 12963  	s.ResourceArn = &v
 12964  	return s
 12965  }
 12966  
 12967  // SetTags sets the Tags field's value.
 12968  func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
 12969  	s.Tags = v
 12970  	return s
 12971  }
 12972  
 12973  type TagResourceOutput struct {
 12974  	_ struct{} `type:"structure" nopayload:"true"`
 12975  }
 12976  
 12977  // String returns the string representation.
 12978  //
 12979  // API parameter values that are decorated as "sensitive" in the API will not
 12980  // be included in the string output. The member name will be present, but the
 12981  // value will be replaced with "sensitive".
 12982  func (s TagResourceOutput) String() string {
 12983  	return awsutil.Prettify(s)
 12984  }
 12985  
 12986  // GoString returns the string representation.
 12987  //
 12988  // API parameter values that are decorated as "sensitive" in the API will not
 12989  // be included in the string output. The member name will be present, but the
 12990  // value will be replaced with "sensitive".
 12991  func (s TagResourceOutput) GoString() string {
 12992  	return s.String()
 12993  }
 12994  
 12995  // A uniform resource locator, used as a unique identifier to locate a resource
 12996  // on the internet.
 12997  type URL struct {
 12998  	_ struct{} `type:"structure"`
 12999  
 13000  	// The name or word used as a hyperlink to the URL.
 13001  	HyperlinkName *string `locationName:"hyperlinkName" min:"1" type:"string"`
 13002  
 13003  	// The unique identifier for the internet resource.
 13004  	Link *string `locationName:"link" min:"1" type:"string"`
 13005  }
 13006  
 13007  // String returns the string representation.
 13008  //
 13009  // API parameter values that are decorated as "sensitive" in the API will not
 13010  // be included in the string output. The member name will be present, but the
 13011  // value will be replaced with "sensitive".
 13012  func (s URL) String() string {
 13013  	return awsutil.Prettify(s)
 13014  }
 13015  
 13016  // GoString returns the string representation.
 13017  //
 13018  // API parameter values that are decorated as "sensitive" in the API will not
 13019  // be included in the string output. The member name will be present, but the
 13020  // value will be replaced with "sensitive".
 13021  func (s URL) GoString() string {
 13022  	return s.String()
 13023  }
 13024  
 13025  // SetHyperlinkName sets the HyperlinkName field's value.
 13026  func (s *URL) SetHyperlinkName(v string) *URL {
 13027  	s.HyperlinkName = &v
 13028  	return s
 13029  }
 13030  
 13031  // SetLink sets the Link field's value.
 13032  func (s *URL) SetLink(v string) *URL {
 13033  	s.Link = &v
 13034  	return s
 13035  }
 13036  
 13037  type UntagResourceInput struct {
 13038  	_ struct{} `type:"structure" nopayload:"true"`
 13039  
 13040  	// The Amazon Resource Name (ARN) of the specified resource.
 13041  	//
 13042  	// ResourceArn is a required field
 13043  	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"`
 13044  
 13045  	// The name or key of the tag.
 13046  	//
 13047  	// TagKeys is a required field
 13048  	TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"`
 13049  }
 13050  
 13051  // String returns the string representation.
 13052  //
 13053  // API parameter values that are decorated as "sensitive" in the API will not
 13054  // be included in the string output. The member name will be present, but the
 13055  // value will be replaced with "sensitive".
 13056  func (s UntagResourceInput) String() string {
 13057  	return awsutil.Prettify(s)
 13058  }
 13059  
 13060  // GoString returns the string representation.
 13061  //
 13062  // API parameter values that are decorated as "sensitive" in the API will not
 13063  // be included in the string output. The member name will be present, but the
 13064  // value will be replaced with "sensitive".
 13065  func (s UntagResourceInput) GoString() string {
 13066  	return s.String()
 13067  }
 13068  
 13069  // Validate inspects the fields of the type to determine if they are valid.
 13070  func (s *UntagResourceInput) Validate() error {
 13071  	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
 13072  	if s.ResourceArn == nil {
 13073  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 13074  	}
 13075  	if s.ResourceArn != nil && len(*s.ResourceArn) < 20 {
 13076  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20))
 13077  	}
 13078  	if s.TagKeys == nil {
 13079  		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
 13080  	}
 13081  	if s.TagKeys != nil && len(s.TagKeys) < 1 {
 13082  		invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
 13083  	}
 13084  
 13085  	if invalidParams.Len() > 0 {
 13086  		return invalidParams
 13087  	}
 13088  	return nil
 13089  }
 13090  
 13091  // SetResourceArn sets the ResourceArn field's value.
 13092  func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
 13093  	s.ResourceArn = &v
 13094  	return s
 13095  }
 13096  
 13097  // SetTagKeys sets the TagKeys field's value.
 13098  func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
 13099  	s.TagKeys = v
 13100  	return s
 13101  }
 13102  
 13103  type UntagResourceOutput struct {
 13104  	_ struct{} `type:"structure" nopayload:"true"`
 13105  }
 13106  
 13107  // String returns the string representation.
 13108  //
 13109  // API parameter values that are decorated as "sensitive" in the API will not
 13110  // be included in the string output. The member name will be present, but the
 13111  // value will be replaced with "sensitive".
 13112  func (s UntagResourceOutput) String() string {
 13113  	return awsutil.Prettify(s)
 13114  }
 13115  
 13116  // GoString returns the string representation.
 13117  //
 13118  // API parameter values that are decorated as "sensitive" in the API will not
 13119  // be included in the string output. The member name will be present, but the
 13120  // value will be replaced with "sensitive".
 13121  func (s UntagResourceOutput) GoString() string {
 13122  	return s.String()
 13123  }
 13124  
 13125  type UpdateAssessmentControlInput struct {
 13126  	_ struct{} `type:"structure"`
 13127  
 13128  	// The identifier for the specified assessment.
 13129  	//
 13130  	// AssessmentId is a required field
 13131  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 13132  
 13133  	// The comment body text for the specified control.
 13134  	CommentBody *string `locationName:"commentBody" type:"string"`
 13135  
 13136  	// The identifier for the specified control.
 13137  	//
 13138  	// ControlId is a required field
 13139  	ControlId *string `location:"uri" locationName:"controlId" min:"36" type:"string" required:"true"`
 13140  
 13141  	// The identifier for the specified control set.
 13142  	//
 13143  	// ControlSetId is a required field
 13144  	ControlSetId *string `location:"uri" locationName:"controlSetId" min:"1" type:"string" required:"true"`
 13145  
 13146  	// The status of the specified control.
 13147  	ControlStatus *string `locationName:"controlStatus" type:"string" enum:"ControlStatus"`
 13148  }
 13149  
 13150  // String returns the string representation.
 13151  //
 13152  // API parameter values that are decorated as "sensitive" in the API will not
 13153  // be included in the string output. The member name will be present, but the
 13154  // value will be replaced with "sensitive".
 13155  func (s UpdateAssessmentControlInput) String() string {
 13156  	return awsutil.Prettify(s)
 13157  }
 13158  
 13159  // GoString returns the string representation.
 13160  //
 13161  // API parameter values that are decorated as "sensitive" in the API will not
 13162  // be included in the string output. The member name will be present, but the
 13163  // value will be replaced with "sensitive".
 13164  func (s UpdateAssessmentControlInput) GoString() string {
 13165  	return s.String()
 13166  }
 13167  
 13168  // Validate inspects the fields of the type to determine if they are valid.
 13169  func (s *UpdateAssessmentControlInput) Validate() error {
 13170  	invalidParams := request.ErrInvalidParams{Context: "UpdateAssessmentControlInput"}
 13171  	if s.AssessmentId == nil {
 13172  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 13173  	}
 13174  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 13175  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 13176  	}
 13177  	if s.ControlId == nil {
 13178  		invalidParams.Add(request.NewErrParamRequired("ControlId"))
 13179  	}
 13180  	if s.ControlId != nil && len(*s.ControlId) < 36 {
 13181  		invalidParams.Add(request.NewErrParamMinLen("ControlId", 36))
 13182  	}
 13183  	if s.ControlSetId == nil {
 13184  		invalidParams.Add(request.NewErrParamRequired("ControlSetId"))
 13185  	}
 13186  	if s.ControlSetId != nil && len(*s.ControlSetId) < 1 {
 13187  		invalidParams.Add(request.NewErrParamMinLen("ControlSetId", 1))
 13188  	}
 13189  
 13190  	if invalidParams.Len() > 0 {
 13191  		return invalidParams
 13192  	}
 13193  	return nil
 13194  }
 13195  
 13196  // SetAssessmentId sets the AssessmentId field's value.
 13197  func (s *UpdateAssessmentControlInput) SetAssessmentId(v string) *UpdateAssessmentControlInput {
 13198  	s.AssessmentId = &v
 13199  	return s
 13200  }
 13201  
 13202  // SetCommentBody sets the CommentBody field's value.
 13203  func (s *UpdateAssessmentControlInput) SetCommentBody(v string) *UpdateAssessmentControlInput {
 13204  	s.CommentBody = &v
 13205  	return s
 13206  }
 13207  
 13208  // SetControlId sets the ControlId field's value.
 13209  func (s *UpdateAssessmentControlInput) SetControlId(v string) *UpdateAssessmentControlInput {
 13210  	s.ControlId = &v
 13211  	return s
 13212  }
 13213  
 13214  // SetControlSetId sets the ControlSetId field's value.
 13215  func (s *UpdateAssessmentControlInput) SetControlSetId(v string) *UpdateAssessmentControlInput {
 13216  	s.ControlSetId = &v
 13217  	return s
 13218  }
 13219  
 13220  // SetControlStatus sets the ControlStatus field's value.
 13221  func (s *UpdateAssessmentControlInput) SetControlStatus(v string) *UpdateAssessmentControlInput {
 13222  	s.ControlStatus = &v
 13223  	return s
 13224  }
 13225  
 13226  type UpdateAssessmentControlOutput struct {
 13227  	_ struct{} `type:"structure"`
 13228  
 13229  	// The name of the updated control set returned by the UpdateAssessmentControl
 13230  	// API.
 13231  	Control *AssessmentControl `locationName:"control" type:"structure"`
 13232  }
 13233  
 13234  // String returns the string representation.
 13235  //
 13236  // API parameter values that are decorated as "sensitive" in the API will not
 13237  // be included in the string output. The member name will be present, but the
 13238  // value will be replaced with "sensitive".
 13239  func (s UpdateAssessmentControlOutput) String() string {
 13240  	return awsutil.Prettify(s)
 13241  }
 13242  
 13243  // GoString returns the string representation.
 13244  //
 13245  // API parameter values that are decorated as "sensitive" in the API will not
 13246  // be included in the string output. The member name will be present, but the
 13247  // value will be replaced with "sensitive".
 13248  func (s UpdateAssessmentControlOutput) GoString() string {
 13249  	return s.String()
 13250  }
 13251  
 13252  // SetControl sets the Control field's value.
 13253  func (s *UpdateAssessmentControlOutput) SetControl(v *AssessmentControl) *UpdateAssessmentControlOutput {
 13254  	s.Control = v
 13255  	return s
 13256  }
 13257  
 13258  type UpdateAssessmentControlSetStatusInput struct {
 13259  	_ struct{} `type:"structure"`
 13260  
 13261  	// The identifier for the specified assessment.
 13262  	//
 13263  	// AssessmentId is a required field
 13264  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 13265  
 13266  	// The comment related to the status update.
 13267  	//
 13268  	// Comment is a required field
 13269  	Comment *string `locationName:"comment" type:"string" required:"true"`
 13270  
 13271  	// The identifier for the specified control set.
 13272  	//
 13273  	// ControlSetId is a required field
 13274  	ControlSetId *string `location:"uri" locationName:"controlSetId" type:"string" required:"true"`
 13275  
 13276  	// The status of the control set that is being updated.
 13277  	//
 13278  	// Status is a required field
 13279  	Status *string `locationName:"status" type:"string" required:"true" enum:"ControlSetStatus"`
 13280  }
 13281  
 13282  // String returns the string representation.
 13283  //
 13284  // API parameter values that are decorated as "sensitive" in the API will not
 13285  // be included in the string output. The member name will be present, but the
 13286  // value will be replaced with "sensitive".
 13287  func (s UpdateAssessmentControlSetStatusInput) String() string {
 13288  	return awsutil.Prettify(s)
 13289  }
 13290  
 13291  // GoString returns the string representation.
 13292  //
 13293  // API parameter values that are decorated as "sensitive" in the API will not
 13294  // be included in the string output. The member name will be present, but the
 13295  // value will be replaced with "sensitive".
 13296  func (s UpdateAssessmentControlSetStatusInput) GoString() string {
 13297  	return s.String()
 13298  }
 13299  
 13300  // Validate inspects the fields of the type to determine if they are valid.
 13301  func (s *UpdateAssessmentControlSetStatusInput) Validate() error {
 13302  	invalidParams := request.ErrInvalidParams{Context: "UpdateAssessmentControlSetStatusInput"}
 13303  	if s.AssessmentId == nil {
 13304  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 13305  	}
 13306  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 13307  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 13308  	}
 13309  	if s.Comment == nil {
 13310  		invalidParams.Add(request.NewErrParamRequired("Comment"))
 13311  	}
 13312  	if s.ControlSetId == nil {
 13313  		invalidParams.Add(request.NewErrParamRequired("ControlSetId"))
 13314  	}
 13315  	if s.ControlSetId != nil && len(*s.ControlSetId) < 1 {
 13316  		invalidParams.Add(request.NewErrParamMinLen("ControlSetId", 1))
 13317  	}
 13318  	if s.Status == nil {
 13319  		invalidParams.Add(request.NewErrParamRequired("Status"))
 13320  	}
 13321  
 13322  	if invalidParams.Len() > 0 {
 13323  		return invalidParams
 13324  	}
 13325  	return nil
 13326  }
 13327  
 13328  // SetAssessmentId sets the AssessmentId field's value.
 13329  func (s *UpdateAssessmentControlSetStatusInput) SetAssessmentId(v string) *UpdateAssessmentControlSetStatusInput {
 13330  	s.AssessmentId = &v
 13331  	return s
 13332  }
 13333  
 13334  // SetComment sets the Comment field's value.
 13335  func (s *UpdateAssessmentControlSetStatusInput) SetComment(v string) *UpdateAssessmentControlSetStatusInput {
 13336  	s.Comment = &v
 13337  	return s
 13338  }
 13339  
 13340  // SetControlSetId sets the ControlSetId field's value.
 13341  func (s *UpdateAssessmentControlSetStatusInput) SetControlSetId(v string) *UpdateAssessmentControlSetStatusInput {
 13342  	s.ControlSetId = &v
 13343  	return s
 13344  }
 13345  
 13346  // SetStatus sets the Status field's value.
 13347  func (s *UpdateAssessmentControlSetStatusInput) SetStatus(v string) *UpdateAssessmentControlSetStatusInput {
 13348  	s.Status = &v
 13349  	return s
 13350  }
 13351  
 13352  type UpdateAssessmentControlSetStatusOutput struct {
 13353  	_ struct{} `type:"structure"`
 13354  
 13355  	// The name of the updated control set returned by the UpdateAssessmentControlSetStatus
 13356  	// API.
 13357  	ControlSet *AssessmentControlSet `locationName:"controlSet" type:"structure"`
 13358  }
 13359  
 13360  // String returns the string representation.
 13361  //
 13362  // API parameter values that are decorated as "sensitive" in the API will not
 13363  // be included in the string output. The member name will be present, but the
 13364  // value will be replaced with "sensitive".
 13365  func (s UpdateAssessmentControlSetStatusOutput) String() string {
 13366  	return awsutil.Prettify(s)
 13367  }
 13368  
 13369  // GoString returns the string representation.
 13370  //
 13371  // API parameter values that are decorated as "sensitive" in the API will not
 13372  // be included in the string output. The member name will be present, but the
 13373  // value will be replaced with "sensitive".
 13374  func (s UpdateAssessmentControlSetStatusOutput) GoString() string {
 13375  	return s.String()
 13376  }
 13377  
 13378  // SetControlSet sets the ControlSet field's value.
 13379  func (s *UpdateAssessmentControlSetStatusOutput) SetControlSet(v *AssessmentControlSet) *UpdateAssessmentControlSetStatusOutput {
 13380  	s.ControlSet = v
 13381  	return s
 13382  }
 13383  
 13384  // A controlSet entity that represents a collection of controls in Audit Manager.
 13385  // This does not contain the control set ID.
 13386  type UpdateAssessmentFrameworkControlSet struct {
 13387  	_ struct{} `type:"structure"`
 13388  
 13389  	// The list of controls contained within the control set.
 13390  	Controls []*CreateAssessmentFrameworkControl `locationName:"controls" min:"1" type:"list"`
 13391  
 13392  	// The unique identifier for the control set.
 13393  	Id *string `locationName:"id" min:"1" type:"string"`
 13394  
 13395  	// The name of the control set.
 13396  	//
 13397  	// Name is a required field
 13398  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
 13399  }
 13400  
 13401  // String returns the string representation.
 13402  //
 13403  // API parameter values that are decorated as "sensitive" in the API will not
 13404  // be included in the string output. The member name will be present, but the
 13405  // value will be replaced with "sensitive".
 13406  func (s UpdateAssessmentFrameworkControlSet) String() string {
 13407  	return awsutil.Prettify(s)
 13408  }
 13409  
 13410  // GoString returns the string representation.
 13411  //
 13412  // API parameter values that are decorated as "sensitive" in the API will not
 13413  // be included in the string output. The member name will be present, but the
 13414  // value will be replaced with "sensitive".
 13415  func (s UpdateAssessmentFrameworkControlSet) GoString() string {
 13416  	return s.String()
 13417  }
 13418  
 13419  // Validate inspects the fields of the type to determine if they are valid.
 13420  func (s *UpdateAssessmentFrameworkControlSet) Validate() error {
 13421  	invalidParams := request.ErrInvalidParams{Context: "UpdateAssessmentFrameworkControlSet"}
 13422  	if s.Controls != nil && len(s.Controls) < 1 {
 13423  		invalidParams.Add(request.NewErrParamMinLen("Controls", 1))
 13424  	}
 13425  	if s.Id != nil && len(*s.Id) < 1 {
 13426  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
 13427  	}
 13428  	if s.Name == nil {
 13429  		invalidParams.Add(request.NewErrParamRequired("Name"))
 13430  	}
 13431  	if s.Name != nil && len(*s.Name) < 1 {
 13432  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 13433  	}
 13434  	if s.Controls != nil {
 13435  		for i, v := range s.Controls {
 13436  			if v == nil {
 13437  				continue
 13438  			}
 13439  			if err := v.Validate(); err != nil {
 13440  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Controls", i), err.(request.ErrInvalidParams))
 13441  			}
 13442  		}
 13443  	}
 13444  
 13445  	if invalidParams.Len() > 0 {
 13446  		return invalidParams
 13447  	}
 13448  	return nil
 13449  }
 13450  
 13451  // SetControls sets the Controls field's value.
 13452  func (s *UpdateAssessmentFrameworkControlSet) SetControls(v []*CreateAssessmentFrameworkControl) *UpdateAssessmentFrameworkControlSet {
 13453  	s.Controls = v
 13454  	return s
 13455  }
 13456  
 13457  // SetId sets the Id field's value.
 13458  func (s *UpdateAssessmentFrameworkControlSet) SetId(v string) *UpdateAssessmentFrameworkControlSet {
 13459  	s.Id = &v
 13460  	return s
 13461  }
 13462  
 13463  // SetName sets the Name field's value.
 13464  func (s *UpdateAssessmentFrameworkControlSet) SetName(v string) *UpdateAssessmentFrameworkControlSet {
 13465  	s.Name = &v
 13466  	return s
 13467  }
 13468  
 13469  type UpdateAssessmentFrameworkInput struct {
 13470  	_ struct{} `type:"structure"`
 13471  
 13472  	// The compliance type that the new custom framework supports, such as CIS or
 13473  	// HIPAA.
 13474  	ComplianceType *string `locationName:"complianceType" type:"string"`
 13475  
 13476  	// The control sets associated with the framework.
 13477  	//
 13478  	// ControlSets is a required field
 13479  	ControlSets []*UpdateAssessmentFrameworkControlSet `locationName:"controlSets" type:"list" required:"true"`
 13480  
 13481  	// The description of the framework that is to be updated.
 13482  	Description *string `locationName:"description" min:"1" type:"string"`
 13483  
 13484  	// The identifier for the specified framework.
 13485  	//
 13486  	// FrameworkId is a required field
 13487  	FrameworkId *string `location:"uri" locationName:"frameworkId" min:"36" type:"string" required:"true"`
 13488  
 13489  	// The name of the framework to be updated.
 13490  	//
 13491  	// Name is a required field
 13492  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
 13493  }
 13494  
 13495  // String returns the string representation.
 13496  //
 13497  // API parameter values that are decorated as "sensitive" in the API will not
 13498  // be included in the string output. The member name will be present, but the
 13499  // value will be replaced with "sensitive".
 13500  func (s UpdateAssessmentFrameworkInput) String() string {
 13501  	return awsutil.Prettify(s)
 13502  }
 13503  
 13504  // GoString returns the string representation.
 13505  //
 13506  // API parameter values that are decorated as "sensitive" in the API will not
 13507  // be included in the string output. The member name will be present, but the
 13508  // value will be replaced with "sensitive".
 13509  func (s UpdateAssessmentFrameworkInput) GoString() string {
 13510  	return s.String()
 13511  }
 13512  
 13513  // Validate inspects the fields of the type to determine if they are valid.
 13514  func (s *UpdateAssessmentFrameworkInput) Validate() error {
 13515  	invalidParams := request.ErrInvalidParams{Context: "UpdateAssessmentFrameworkInput"}
 13516  	if s.ControlSets == nil {
 13517  		invalidParams.Add(request.NewErrParamRequired("ControlSets"))
 13518  	}
 13519  	if s.Description != nil && len(*s.Description) < 1 {
 13520  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 13521  	}
 13522  	if s.FrameworkId == nil {
 13523  		invalidParams.Add(request.NewErrParamRequired("FrameworkId"))
 13524  	}
 13525  	if s.FrameworkId != nil && len(*s.FrameworkId) < 36 {
 13526  		invalidParams.Add(request.NewErrParamMinLen("FrameworkId", 36))
 13527  	}
 13528  	if s.Name == nil {
 13529  		invalidParams.Add(request.NewErrParamRequired("Name"))
 13530  	}
 13531  	if s.Name != nil && len(*s.Name) < 1 {
 13532  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 13533  	}
 13534  	if s.ControlSets != nil {
 13535  		for i, v := range s.ControlSets {
 13536  			if v == nil {
 13537  				continue
 13538  			}
 13539  			if err := v.Validate(); err != nil {
 13540  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ControlSets", i), err.(request.ErrInvalidParams))
 13541  			}
 13542  		}
 13543  	}
 13544  
 13545  	if invalidParams.Len() > 0 {
 13546  		return invalidParams
 13547  	}
 13548  	return nil
 13549  }
 13550  
 13551  // SetComplianceType sets the ComplianceType field's value.
 13552  func (s *UpdateAssessmentFrameworkInput) SetComplianceType(v string) *UpdateAssessmentFrameworkInput {
 13553  	s.ComplianceType = &v
 13554  	return s
 13555  }
 13556  
 13557  // SetControlSets sets the ControlSets field's value.
 13558  func (s *UpdateAssessmentFrameworkInput) SetControlSets(v []*UpdateAssessmentFrameworkControlSet) *UpdateAssessmentFrameworkInput {
 13559  	s.ControlSets = v
 13560  	return s
 13561  }
 13562  
 13563  // SetDescription sets the Description field's value.
 13564  func (s *UpdateAssessmentFrameworkInput) SetDescription(v string) *UpdateAssessmentFrameworkInput {
 13565  	s.Description = &v
 13566  	return s
 13567  }
 13568  
 13569  // SetFrameworkId sets the FrameworkId field's value.
 13570  func (s *UpdateAssessmentFrameworkInput) SetFrameworkId(v string) *UpdateAssessmentFrameworkInput {
 13571  	s.FrameworkId = &v
 13572  	return s
 13573  }
 13574  
 13575  // SetName sets the Name field's value.
 13576  func (s *UpdateAssessmentFrameworkInput) SetName(v string) *UpdateAssessmentFrameworkInput {
 13577  	s.Name = &v
 13578  	return s
 13579  }
 13580  
 13581  type UpdateAssessmentFrameworkOutput struct {
 13582  	_ struct{} `type:"structure"`
 13583  
 13584  	// The name of the specified framework.
 13585  	Framework *Framework `locationName:"framework" type:"structure"`
 13586  }
 13587  
 13588  // String returns the string representation.
 13589  //
 13590  // API parameter values that are decorated as "sensitive" in the API will not
 13591  // be included in the string output. The member name will be present, but the
 13592  // value will be replaced with "sensitive".
 13593  func (s UpdateAssessmentFrameworkOutput) String() string {
 13594  	return awsutil.Prettify(s)
 13595  }
 13596  
 13597  // GoString returns the string representation.
 13598  //
 13599  // API parameter values that are decorated as "sensitive" in the API will not
 13600  // be included in the string output. The member name will be present, but the
 13601  // value will be replaced with "sensitive".
 13602  func (s UpdateAssessmentFrameworkOutput) GoString() string {
 13603  	return s.String()
 13604  }
 13605  
 13606  // SetFramework sets the Framework field's value.
 13607  func (s *UpdateAssessmentFrameworkOutput) SetFramework(v *Framework) *UpdateAssessmentFrameworkOutput {
 13608  	s.Framework = v
 13609  	return s
 13610  }
 13611  
 13612  type UpdateAssessmentInput struct {
 13613  	_ struct{} `type:"structure"`
 13614  
 13615  	// The description of the specified assessment.
 13616  	AssessmentDescription *string `locationName:"assessmentDescription" type:"string"`
 13617  
 13618  	// The identifier for the specified assessment.
 13619  	//
 13620  	// AssessmentId is a required field
 13621  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 13622  
 13623  	// The name of the specified assessment to be updated.
 13624  	AssessmentName *string `locationName:"assessmentName" min:"1" type:"string"`
 13625  
 13626  	// The assessment report storage destination for the specified assessment that
 13627  	// is being updated.
 13628  	AssessmentReportsDestination *AssessmentReportsDestination `locationName:"assessmentReportsDestination" type:"structure"`
 13629  
 13630  	// The list of roles for the specified assessment.
 13631  	Roles []*Role `locationName:"roles" type:"list"`
 13632  
 13633  	// The scope of the specified assessment.
 13634  	//
 13635  	// Scope is a required field
 13636  	Scope *Scope `locationName:"scope" type:"structure" required:"true"`
 13637  }
 13638  
 13639  // String returns the string representation.
 13640  //
 13641  // API parameter values that are decorated as "sensitive" in the API will not
 13642  // be included in the string output. The member name will be present, but the
 13643  // value will be replaced with "sensitive".
 13644  func (s UpdateAssessmentInput) String() string {
 13645  	return awsutil.Prettify(s)
 13646  }
 13647  
 13648  // GoString returns the string representation.
 13649  //
 13650  // API parameter values that are decorated as "sensitive" in the API will not
 13651  // be included in the string output. The member name will be present, but the
 13652  // value will be replaced with "sensitive".
 13653  func (s UpdateAssessmentInput) GoString() string {
 13654  	return s.String()
 13655  }
 13656  
 13657  // Validate inspects the fields of the type to determine if they are valid.
 13658  func (s *UpdateAssessmentInput) Validate() error {
 13659  	invalidParams := request.ErrInvalidParams{Context: "UpdateAssessmentInput"}
 13660  	if s.AssessmentId == nil {
 13661  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 13662  	}
 13663  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 13664  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 13665  	}
 13666  	if s.AssessmentName != nil && len(*s.AssessmentName) < 1 {
 13667  		invalidParams.Add(request.NewErrParamMinLen("AssessmentName", 1))
 13668  	}
 13669  	if s.Scope == nil {
 13670  		invalidParams.Add(request.NewErrParamRequired("Scope"))
 13671  	}
 13672  	if s.AssessmentReportsDestination != nil {
 13673  		if err := s.AssessmentReportsDestination.Validate(); err != nil {
 13674  			invalidParams.AddNested("AssessmentReportsDestination", err.(request.ErrInvalidParams))
 13675  		}
 13676  	}
 13677  	if s.Roles != nil {
 13678  		for i, v := range s.Roles {
 13679  			if v == nil {
 13680  				continue
 13681  			}
 13682  			if err := v.Validate(); err != nil {
 13683  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Roles", i), err.(request.ErrInvalidParams))
 13684  			}
 13685  		}
 13686  	}
 13687  	if s.Scope != nil {
 13688  		if err := s.Scope.Validate(); err != nil {
 13689  			invalidParams.AddNested("Scope", err.(request.ErrInvalidParams))
 13690  		}
 13691  	}
 13692  
 13693  	if invalidParams.Len() > 0 {
 13694  		return invalidParams
 13695  	}
 13696  	return nil
 13697  }
 13698  
 13699  // SetAssessmentDescription sets the AssessmentDescription field's value.
 13700  func (s *UpdateAssessmentInput) SetAssessmentDescription(v string) *UpdateAssessmentInput {
 13701  	s.AssessmentDescription = &v
 13702  	return s
 13703  }
 13704  
 13705  // SetAssessmentId sets the AssessmentId field's value.
 13706  func (s *UpdateAssessmentInput) SetAssessmentId(v string) *UpdateAssessmentInput {
 13707  	s.AssessmentId = &v
 13708  	return s
 13709  }
 13710  
 13711  // SetAssessmentName sets the AssessmentName field's value.
 13712  func (s *UpdateAssessmentInput) SetAssessmentName(v string) *UpdateAssessmentInput {
 13713  	s.AssessmentName = &v
 13714  	return s
 13715  }
 13716  
 13717  // SetAssessmentReportsDestination sets the AssessmentReportsDestination field's value.
 13718  func (s *UpdateAssessmentInput) SetAssessmentReportsDestination(v *AssessmentReportsDestination) *UpdateAssessmentInput {
 13719  	s.AssessmentReportsDestination = v
 13720  	return s
 13721  }
 13722  
 13723  // SetRoles sets the Roles field's value.
 13724  func (s *UpdateAssessmentInput) SetRoles(v []*Role) *UpdateAssessmentInput {
 13725  	s.Roles = v
 13726  	return s
 13727  }
 13728  
 13729  // SetScope sets the Scope field's value.
 13730  func (s *UpdateAssessmentInput) SetScope(v *Scope) *UpdateAssessmentInput {
 13731  	s.Scope = v
 13732  	return s
 13733  }
 13734  
 13735  type UpdateAssessmentOutput struct {
 13736  	_ struct{} `type:"structure"`
 13737  
 13738  	// The response object (name of the updated assessment) for the UpdateAssessmentRequest
 13739  	// API.
 13740  	Assessment *Assessment `locationName:"assessment" type:"structure"`
 13741  }
 13742  
 13743  // String returns the string representation.
 13744  //
 13745  // API parameter values that are decorated as "sensitive" in the API will not
 13746  // be included in the string output. The member name will be present, but the
 13747  // value will be replaced with "sensitive".
 13748  func (s UpdateAssessmentOutput) String() string {
 13749  	return awsutil.Prettify(s)
 13750  }
 13751  
 13752  // GoString returns the string representation.
 13753  //
 13754  // API parameter values that are decorated as "sensitive" in the API will not
 13755  // be included in the string output. The member name will be present, but the
 13756  // value will be replaced with "sensitive".
 13757  func (s UpdateAssessmentOutput) GoString() string {
 13758  	return s.String()
 13759  }
 13760  
 13761  // SetAssessment sets the Assessment field's value.
 13762  func (s *UpdateAssessmentOutput) SetAssessment(v *Assessment) *UpdateAssessmentOutput {
 13763  	s.Assessment = v
 13764  	return s
 13765  }
 13766  
 13767  type UpdateAssessmentStatusInput struct {
 13768  	_ struct{} `type:"structure"`
 13769  
 13770  	// The identifier for the specified assessment.
 13771  	//
 13772  	// AssessmentId is a required field
 13773  	AssessmentId *string `location:"uri" locationName:"assessmentId" min:"36" type:"string" required:"true"`
 13774  
 13775  	// The current status of the specified assessment.
 13776  	//
 13777  	// Status is a required field
 13778  	Status *string `locationName:"status" type:"string" required:"true" enum:"AssessmentStatus"`
 13779  }
 13780  
 13781  // String returns the string representation.
 13782  //
 13783  // API parameter values that are decorated as "sensitive" in the API will not
 13784  // be included in the string output. The member name will be present, but the
 13785  // value will be replaced with "sensitive".
 13786  func (s UpdateAssessmentStatusInput) String() string {
 13787  	return awsutil.Prettify(s)
 13788  }
 13789  
 13790  // GoString returns the string representation.
 13791  //
 13792  // API parameter values that are decorated as "sensitive" in the API will not
 13793  // be included in the string output. The member name will be present, but the
 13794  // value will be replaced with "sensitive".
 13795  func (s UpdateAssessmentStatusInput) GoString() string {
 13796  	return s.String()
 13797  }
 13798  
 13799  // Validate inspects the fields of the type to determine if they are valid.
 13800  func (s *UpdateAssessmentStatusInput) Validate() error {
 13801  	invalidParams := request.ErrInvalidParams{Context: "UpdateAssessmentStatusInput"}
 13802  	if s.AssessmentId == nil {
 13803  		invalidParams.Add(request.NewErrParamRequired("AssessmentId"))
 13804  	}
 13805  	if s.AssessmentId != nil && len(*s.AssessmentId) < 36 {
 13806  		invalidParams.Add(request.NewErrParamMinLen("AssessmentId", 36))
 13807  	}
 13808  	if s.Status == nil {
 13809  		invalidParams.Add(request.NewErrParamRequired("Status"))
 13810  	}
 13811  
 13812  	if invalidParams.Len() > 0 {
 13813  		return invalidParams
 13814  	}
 13815  	return nil
 13816  }
 13817  
 13818  // SetAssessmentId sets the AssessmentId field's value.
 13819  func (s *UpdateAssessmentStatusInput) SetAssessmentId(v string) *UpdateAssessmentStatusInput {
 13820  	s.AssessmentId = &v
 13821  	return s
 13822  }
 13823  
 13824  // SetStatus sets the Status field's value.
 13825  func (s *UpdateAssessmentStatusInput) SetStatus(v string) *UpdateAssessmentStatusInput {
 13826  	s.Status = &v
 13827  	return s
 13828  }
 13829  
 13830  type UpdateAssessmentStatusOutput struct {
 13831  	_ struct{} `type:"structure"`
 13832  
 13833  	// The name of the updated assessment returned by the UpdateAssessmentStatus
 13834  	// API.
 13835  	Assessment *Assessment `locationName:"assessment" type:"structure"`
 13836  }
 13837  
 13838  // String returns the string representation.
 13839  //
 13840  // API parameter values that are decorated as "sensitive" in the API will not
 13841  // be included in the string output. The member name will be present, but the
 13842  // value will be replaced with "sensitive".
 13843  func (s UpdateAssessmentStatusOutput) String() string {
 13844  	return awsutil.Prettify(s)
 13845  }
 13846  
 13847  // GoString returns the string representation.
 13848  //
 13849  // API parameter values that are decorated as "sensitive" in the API will not
 13850  // be included in the string output. The member name will be present, but the
 13851  // value will be replaced with "sensitive".
 13852  func (s UpdateAssessmentStatusOutput) GoString() string {
 13853  	return s.String()
 13854  }
 13855  
 13856  // SetAssessment sets the Assessment field's value.
 13857  func (s *UpdateAssessmentStatusOutput) SetAssessment(v *Assessment) *UpdateAssessmentStatusOutput {
 13858  	s.Assessment = v
 13859  	return s
 13860  }
 13861  
 13862  type UpdateControlInput struct {
 13863  	_ struct{} `type:"structure"`
 13864  
 13865  	// The recommended actions to carry out if the control is not fulfilled.
 13866  	ActionPlanInstructions *string `locationName:"actionPlanInstructions" type:"string"`
 13867  
 13868  	// The title of the action plan for remediating the control.
 13869  	ActionPlanTitle *string `locationName:"actionPlanTitle" type:"string"`
 13870  
 13871  	// The identifier for the specified control.
 13872  	//
 13873  	// ControlId is a required field
 13874  	ControlId *string `location:"uri" locationName:"controlId" min:"36" type:"string" required:"true"`
 13875  
 13876  	// The data mapping sources for the specified control.
 13877  	//
 13878  	// ControlMappingSources is a required field
 13879  	ControlMappingSources []*ControlMappingSource `locationName:"controlMappingSources" min:"1" type:"list" required:"true"`
 13880  
 13881  	// The optional description of the control.
 13882  	Description *string `locationName:"description" type:"string"`
 13883  
 13884  	// The name of the control to be updated.
 13885  	//
 13886  	// Name is a required field
 13887  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
 13888  
 13889  	// The steps that to follow to determine if the control has been satisfied.
 13890  	TestingInformation *string `locationName:"testingInformation" type:"string"`
 13891  }
 13892  
 13893  // String returns the string representation.
 13894  //
 13895  // API parameter values that are decorated as "sensitive" in the API will not
 13896  // be included in the string output. The member name will be present, but the
 13897  // value will be replaced with "sensitive".
 13898  func (s UpdateControlInput) String() string {
 13899  	return awsutil.Prettify(s)
 13900  }
 13901  
 13902  // GoString returns the string representation.
 13903  //
 13904  // API parameter values that are decorated as "sensitive" in the API will not
 13905  // be included in the string output. The member name will be present, but the
 13906  // value will be replaced with "sensitive".
 13907  func (s UpdateControlInput) GoString() string {
 13908  	return s.String()
 13909  }
 13910  
 13911  // Validate inspects the fields of the type to determine if they are valid.
 13912  func (s *UpdateControlInput) Validate() error {
 13913  	invalidParams := request.ErrInvalidParams{Context: "UpdateControlInput"}
 13914  	if s.ControlId == nil {
 13915  		invalidParams.Add(request.NewErrParamRequired("ControlId"))
 13916  	}
 13917  	if s.ControlId != nil && len(*s.ControlId) < 36 {
 13918  		invalidParams.Add(request.NewErrParamMinLen("ControlId", 36))
 13919  	}
 13920  	if s.ControlMappingSources == nil {
 13921  		invalidParams.Add(request.NewErrParamRequired("ControlMappingSources"))
 13922  	}
 13923  	if s.ControlMappingSources != nil && len(s.ControlMappingSources) < 1 {
 13924  		invalidParams.Add(request.NewErrParamMinLen("ControlMappingSources", 1))
 13925  	}
 13926  	if s.Name == nil {
 13927  		invalidParams.Add(request.NewErrParamRequired("Name"))
 13928  	}
 13929  	if s.Name != nil && len(*s.Name) < 1 {
 13930  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 13931  	}
 13932  	if s.ControlMappingSources != nil {
 13933  		for i, v := range s.ControlMappingSources {
 13934  			if v == nil {
 13935  				continue
 13936  			}
 13937  			if err := v.Validate(); err != nil {
 13938  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ControlMappingSources", i), err.(request.ErrInvalidParams))
 13939  			}
 13940  		}
 13941  	}
 13942  
 13943  	if invalidParams.Len() > 0 {
 13944  		return invalidParams
 13945  	}
 13946  	return nil
 13947  }
 13948  
 13949  // SetActionPlanInstructions sets the ActionPlanInstructions field's value.
 13950  func (s *UpdateControlInput) SetActionPlanInstructions(v string) *UpdateControlInput {
 13951  	s.ActionPlanInstructions = &v
 13952  	return s
 13953  }
 13954  
 13955  // SetActionPlanTitle sets the ActionPlanTitle field's value.
 13956  func (s *UpdateControlInput) SetActionPlanTitle(v string) *UpdateControlInput {
 13957  	s.ActionPlanTitle = &v
 13958  	return s
 13959  }
 13960  
 13961  // SetControlId sets the ControlId field's value.
 13962  func (s *UpdateControlInput) SetControlId(v string) *UpdateControlInput {
 13963  	s.ControlId = &v
 13964  	return s
 13965  }
 13966  
 13967  // SetControlMappingSources sets the ControlMappingSources field's value.
 13968  func (s *UpdateControlInput) SetControlMappingSources(v []*ControlMappingSource) *UpdateControlInput {
 13969  	s.ControlMappingSources = v
 13970  	return s
 13971  }
 13972  
 13973  // SetDescription sets the Description field's value.
 13974  func (s *UpdateControlInput) SetDescription(v string) *UpdateControlInput {
 13975  	s.Description = &v
 13976  	return s
 13977  }
 13978  
 13979  // SetName sets the Name field's value.
 13980  func (s *UpdateControlInput) SetName(v string) *UpdateControlInput {
 13981  	s.Name = &v
 13982  	return s
 13983  }
 13984  
 13985  // SetTestingInformation sets the TestingInformation field's value.
 13986  func (s *UpdateControlInput) SetTestingInformation(v string) *UpdateControlInput {
 13987  	s.TestingInformation = &v
 13988  	return s
 13989  }
 13990  
 13991  type UpdateControlOutput struct {
 13992  	_ struct{} `type:"structure"`
 13993  
 13994  	// The name of the updated control set returned by the UpdateControl API.
 13995  	Control *Control `locationName:"control" type:"structure"`
 13996  }
 13997  
 13998  // String returns the string representation.
 13999  //
 14000  // API parameter values that are decorated as "sensitive" in the API will not
 14001  // be included in the string output. The member name will be present, but the
 14002  // value will be replaced with "sensitive".
 14003  func (s UpdateControlOutput) String() string {
 14004  	return awsutil.Prettify(s)
 14005  }
 14006  
 14007  // GoString returns the string representation.
 14008  //
 14009  // API parameter values that are decorated as "sensitive" in the API will not
 14010  // be included in the string output. The member name will be present, but the
 14011  // value will be replaced with "sensitive".
 14012  func (s UpdateControlOutput) GoString() string {
 14013  	return s.String()
 14014  }
 14015  
 14016  // SetControl sets the Control field's value.
 14017  func (s *UpdateControlOutput) SetControl(v *Control) *UpdateControlOutput {
 14018  	s.Control = v
 14019  	return s
 14020  }
 14021  
 14022  type UpdateSettingsInput struct {
 14023  	_ struct{} `type:"structure"`
 14024  
 14025  	// The default storage destination for assessment reports.
 14026  	DefaultAssessmentReportsDestination *AssessmentReportsDestination `locationName:"defaultAssessmentReportsDestination" type:"structure"`
 14027  
 14028  	// A list of the default audit owners.
 14029  	DefaultProcessOwners []*Role `locationName:"defaultProcessOwners" type:"list"`
 14030  
 14031  	// The KMS key details.
 14032  	KmsKey *string `locationName:"kmsKey" min:"7" type:"string"`
 14033  
 14034  	// The Amazon Simple Notification Service (Amazon SNS) topic to which Audit
 14035  	// Manager sends notifications.
 14036  	SnsTopic *string `locationName:"snsTopic" min:"20" type:"string"`
 14037  }
 14038  
 14039  // String returns the string representation.
 14040  //
 14041  // API parameter values that are decorated as "sensitive" in the API will not
 14042  // be included in the string output. The member name will be present, but the
 14043  // value will be replaced with "sensitive".
 14044  func (s UpdateSettingsInput) String() string {
 14045  	return awsutil.Prettify(s)
 14046  }
 14047  
 14048  // GoString returns the string representation.
 14049  //
 14050  // API parameter values that are decorated as "sensitive" in the API will not
 14051  // be included in the string output. The member name will be present, but the
 14052  // value will be replaced with "sensitive".
 14053  func (s UpdateSettingsInput) GoString() string {
 14054  	return s.String()
 14055  }
 14056  
 14057  // Validate inspects the fields of the type to determine if they are valid.
 14058  func (s *UpdateSettingsInput) Validate() error {
 14059  	invalidParams := request.ErrInvalidParams{Context: "UpdateSettingsInput"}
 14060  	if s.KmsKey != nil && len(*s.KmsKey) < 7 {
 14061  		invalidParams.Add(request.NewErrParamMinLen("KmsKey", 7))
 14062  	}
 14063  	if s.SnsTopic != nil && len(*s.SnsTopic) < 20 {
 14064  		invalidParams.Add(request.NewErrParamMinLen("SnsTopic", 20))
 14065  	}
 14066  	if s.DefaultAssessmentReportsDestination != nil {
 14067  		if err := s.DefaultAssessmentReportsDestination.Validate(); err != nil {
 14068  			invalidParams.AddNested("DefaultAssessmentReportsDestination", err.(request.ErrInvalidParams))
 14069  		}
 14070  	}
 14071  	if s.DefaultProcessOwners != nil {
 14072  		for i, v := range s.DefaultProcessOwners {
 14073  			if v == nil {
 14074  				continue
 14075  			}
 14076  			if err := v.Validate(); err != nil {
 14077  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DefaultProcessOwners", i), err.(request.ErrInvalidParams))
 14078  			}
 14079  		}
 14080  	}
 14081  
 14082  	if invalidParams.Len() > 0 {
 14083  		return invalidParams
 14084  	}
 14085  	return nil
 14086  }
 14087  
 14088  // SetDefaultAssessmentReportsDestination sets the DefaultAssessmentReportsDestination field's value.
 14089  func (s *UpdateSettingsInput) SetDefaultAssessmentReportsDestination(v *AssessmentReportsDestination) *UpdateSettingsInput {
 14090  	s.DefaultAssessmentReportsDestination = v
 14091  	return s
 14092  }
 14093  
 14094  // SetDefaultProcessOwners sets the DefaultProcessOwners field's value.
 14095  func (s *UpdateSettingsInput) SetDefaultProcessOwners(v []*Role) *UpdateSettingsInput {
 14096  	s.DefaultProcessOwners = v
 14097  	return s
 14098  }
 14099  
 14100  // SetKmsKey sets the KmsKey field's value.
 14101  func (s *UpdateSettingsInput) SetKmsKey(v string) *UpdateSettingsInput {
 14102  	s.KmsKey = &v
 14103  	return s
 14104  }
 14105  
 14106  // SetSnsTopic sets the SnsTopic field's value.
 14107  func (s *UpdateSettingsInput) SetSnsTopic(v string) *UpdateSettingsInput {
 14108  	s.SnsTopic = &v
 14109  	return s
 14110  }
 14111  
 14112  type UpdateSettingsOutput struct {
 14113  	_ struct{} `type:"structure"`
 14114  
 14115  	// The current list of settings.
 14116  	Settings *Settings `locationName:"settings" type:"structure"`
 14117  }
 14118  
 14119  // String returns the string representation.
 14120  //
 14121  // API parameter values that are decorated as "sensitive" in the API will not
 14122  // be included in the string output. The member name will be present, but the
 14123  // value will be replaced with "sensitive".
 14124  func (s UpdateSettingsOutput) String() string {
 14125  	return awsutil.Prettify(s)
 14126  }
 14127  
 14128  // GoString returns the string representation.
 14129  //
 14130  // API parameter values that are decorated as "sensitive" in the API will not
 14131  // be included in the string output. The member name will be present, but the
 14132  // value will be replaced with "sensitive".
 14133  func (s UpdateSettingsOutput) GoString() string {
 14134  	return s.String()
 14135  }
 14136  
 14137  // SetSettings sets the Settings field's value.
 14138  func (s *UpdateSettingsOutput) SetSettings(v *Settings) *UpdateSettingsOutput {
 14139  	s.Settings = v
 14140  	return s
 14141  }
 14142  
 14143  type ValidateAssessmentReportIntegrityInput struct {
 14144  	_ struct{} `type:"structure"`
 14145  
 14146  	// The relative path of the specified Amazon S3 bucket in which the assessment
 14147  	// report is stored.
 14148  	//
 14149  	// S3RelativePath is a required field
 14150  	S3RelativePath *string `locationName:"s3RelativePath" min:"1" type:"string" required:"true"`
 14151  }
 14152  
 14153  // String returns the string representation.
 14154  //
 14155  // API parameter values that are decorated as "sensitive" in the API will not
 14156  // be included in the string output. The member name will be present, but the
 14157  // value will be replaced with "sensitive".
 14158  func (s ValidateAssessmentReportIntegrityInput) String() string {
 14159  	return awsutil.Prettify(s)
 14160  }
 14161  
 14162  // GoString returns the string representation.
 14163  //
 14164  // API parameter values that are decorated as "sensitive" in the API will not
 14165  // be included in the string output. The member name will be present, but the
 14166  // value will be replaced with "sensitive".
 14167  func (s ValidateAssessmentReportIntegrityInput) GoString() string {
 14168  	return s.String()
 14169  }
 14170  
 14171  // Validate inspects the fields of the type to determine if they are valid.
 14172  func (s *ValidateAssessmentReportIntegrityInput) Validate() error {
 14173  	invalidParams := request.ErrInvalidParams{Context: "ValidateAssessmentReportIntegrityInput"}
 14174  	if s.S3RelativePath == nil {
 14175  		invalidParams.Add(request.NewErrParamRequired("S3RelativePath"))
 14176  	}
 14177  	if s.S3RelativePath != nil && len(*s.S3RelativePath) < 1 {
 14178  		invalidParams.Add(request.NewErrParamMinLen("S3RelativePath", 1))
 14179  	}
 14180  
 14181  	if invalidParams.Len() > 0 {
 14182  		return invalidParams
 14183  	}
 14184  	return nil
 14185  }
 14186  
 14187  // SetS3RelativePath sets the S3RelativePath field's value.
 14188  func (s *ValidateAssessmentReportIntegrityInput) SetS3RelativePath(v string) *ValidateAssessmentReportIntegrityInput {
 14189  	s.S3RelativePath = &v
 14190  	return s
 14191  }
 14192  
 14193  type ValidateAssessmentReportIntegrityOutput struct {
 14194  	_ struct{} `type:"structure"`
 14195  
 14196  	// The signature algorithm used to code sign the assessment report file.
 14197  	SignatureAlgorithm *string `locationName:"signatureAlgorithm" type:"string"`
 14198  
 14199  	// The date and time signature that specifies when the assessment report was
 14200  	// created.
 14201  	SignatureDateTime *string `locationName:"signatureDateTime" type:"string"`
 14202  
 14203  	// The unique identifier for the validation signature key.
 14204  	SignatureKeyId *string `locationName:"signatureKeyId" type:"string"`
 14205  
 14206  	// Specifies whether the signature key is valid.
 14207  	SignatureValid *bool `locationName:"signatureValid" type:"boolean"`
 14208  
 14209  	// Represents any errors that occurred when validating the assessment report.
 14210  	ValidationErrors []*string `locationName:"validationErrors" type:"list"`
 14211  }
 14212  
 14213  // String returns the string representation.
 14214  //
 14215  // API parameter values that are decorated as "sensitive" in the API will not
 14216  // be included in the string output. The member name will be present, but the
 14217  // value will be replaced with "sensitive".
 14218  func (s ValidateAssessmentReportIntegrityOutput) String() string {
 14219  	return awsutil.Prettify(s)
 14220  }
 14221  
 14222  // GoString returns the string representation.
 14223  //
 14224  // API parameter values that are decorated as "sensitive" in the API will not
 14225  // be included in the string output. The member name will be present, but the
 14226  // value will be replaced with "sensitive".
 14227  func (s ValidateAssessmentReportIntegrityOutput) GoString() string {
 14228  	return s.String()
 14229  }
 14230  
 14231  // SetSignatureAlgorithm sets the SignatureAlgorithm field's value.
 14232  func (s *ValidateAssessmentReportIntegrityOutput) SetSignatureAlgorithm(v string) *ValidateAssessmentReportIntegrityOutput {
 14233  	s.SignatureAlgorithm = &v
 14234  	return s
 14235  }
 14236  
 14237  // SetSignatureDateTime sets the SignatureDateTime field's value.
 14238  func (s *ValidateAssessmentReportIntegrityOutput) SetSignatureDateTime(v string) *ValidateAssessmentReportIntegrityOutput {
 14239  	s.SignatureDateTime = &v
 14240  	return s
 14241  }
 14242  
 14243  // SetSignatureKeyId sets the SignatureKeyId field's value.
 14244  func (s *ValidateAssessmentReportIntegrityOutput) SetSignatureKeyId(v string) *ValidateAssessmentReportIntegrityOutput {
 14245  	s.SignatureKeyId = &v
 14246  	return s
 14247  }
 14248  
 14249  // SetSignatureValid sets the SignatureValid field's value.
 14250  func (s *ValidateAssessmentReportIntegrityOutput) SetSignatureValid(v bool) *ValidateAssessmentReportIntegrityOutput {
 14251  	s.SignatureValid = &v
 14252  	return s
 14253  }
 14254  
 14255  // SetValidationErrors sets the ValidationErrors field's value.
 14256  func (s *ValidateAssessmentReportIntegrityOutput) SetValidationErrors(v []*string) *ValidateAssessmentReportIntegrityOutput {
 14257  	s.ValidationErrors = v
 14258  	return s
 14259  }
 14260  
 14261  // The request has invalid or missing parameters.
 14262  type ValidationException struct {
 14263  	_            struct{}                  `type:"structure"`
 14264  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 14265  
 14266  	// The fields that caused the error, if applicable.
 14267  	Fields []*ValidationExceptionField `locationName:"fields" type:"list"`
 14268  
 14269  	Message_ *string `locationName:"message" type:"string"`
 14270  
 14271  	// The reason the request failed validation.
 14272  	Reason *string `locationName:"reason" type:"string" enum:"ValidationExceptionReason"`
 14273  }
 14274  
 14275  // String returns the string representation.
 14276  //
 14277  // API parameter values that are decorated as "sensitive" in the API will not
 14278  // be included in the string output. The member name will be present, but the
 14279  // value will be replaced with "sensitive".
 14280  func (s ValidationException) String() string {
 14281  	return awsutil.Prettify(s)
 14282  }
 14283  
 14284  // GoString returns the string representation.
 14285  //
 14286  // API parameter values that are decorated as "sensitive" in the API will not
 14287  // be included in the string output. The member name will be present, but the
 14288  // value will be replaced with "sensitive".
 14289  func (s ValidationException) GoString() string {
 14290  	return s.String()
 14291  }
 14292  
 14293  func newErrorValidationException(v protocol.ResponseMetadata) error {
 14294  	return &ValidationException{
 14295  		RespMetadata: v,
 14296  	}
 14297  }
 14298  
 14299  // Code returns the exception type name.
 14300  func (s *ValidationException) Code() string {
 14301  	return "ValidationException"
 14302  }
 14303  
 14304  // Message returns the exception's message.
 14305  func (s *ValidationException) Message() string {
 14306  	if s.Message_ != nil {
 14307  		return *s.Message_
 14308  	}
 14309  	return ""
 14310  }
 14311  
 14312  // OrigErr always returns nil, satisfies awserr.Error interface.
 14313  func (s *ValidationException) OrigErr() error {
 14314  	return nil
 14315  }
 14316  
 14317  func (s *ValidationException) Error() string {
 14318  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 14319  }
 14320  
 14321  // Status code returns the HTTP status code for the request's response error.
 14322  func (s *ValidationException) StatusCode() int {
 14323  	return s.RespMetadata.StatusCode
 14324  }
 14325  
 14326  // RequestID returns the service's response RequestID for request.
 14327  func (s *ValidationException) RequestID() string {
 14328  	return s.RespMetadata.RequestID
 14329  }
 14330  
 14331  // Indicates that the request has invalid or missing parameters for the specified
 14332  // field.
 14333  type ValidationExceptionField struct {
 14334  	_ struct{} `type:"structure"`
 14335  
 14336  	// The body of the error message.
 14337  	//
 14338  	// Message is a required field
 14339  	Message *string `locationName:"message" type:"string" required:"true"`
 14340  
 14341  	// The name of the validation error.
 14342  	//
 14343  	// Name is a required field
 14344  	Name *string `locationName:"name" type:"string" required:"true"`
 14345  }
 14346  
 14347  // String returns the string representation.
 14348  //
 14349  // API parameter values that are decorated as "sensitive" in the API will not
 14350  // be included in the string output. The member name will be present, but the
 14351  // value will be replaced with "sensitive".
 14352  func (s ValidationExceptionField) String() string {
 14353  	return awsutil.Prettify(s)
 14354  }
 14355  
 14356  // GoString returns the string representation.
 14357  //
 14358  // API parameter values that are decorated as "sensitive" in the API will not
 14359  // be included in the string output. The member name will be present, but the
 14360  // value will be replaced with "sensitive".
 14361  func (s ValidationExceptionField) GoString() string {
 14362  	return s.String()
 14363  }
 14364  
 14365  // SetMessage sets the Message field's value.
 14366  func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField {
 14367  	s.Message = &v
 14368  	return s
 14369  }
 14370  
 14371  // SetName sets the Name field's value.
 14372  func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField {
 14373  	s.Name = &v
 14374  	return s
 14375  }
 14376  
 14377  const (
 14378  	// AccountStatusActive is a AccountStatus enum value
 14379  	AccountStatusActive = "ACTIVE"
 14380  
 14381  	// AccountStatusInactive is a AccountStatus enum value
 14382  	AccountStatusInactive = "INACTIVE"
 14383  
 14384  	// AccountStatusPendingActivation is a AccountStatus enum value
 14385  	AccountStatusPendingActivation = "PENDING_ACTIVATION"
 14386  )
 14387  
 14388  // AccountStatus_Values returns all elements of the AccountStatus enum
 14389  func AccountStatus_Values() []string {
 14390  	return []string{
 14391  		AccountStatusActive,
 14392  		AccountStatusInactive,
 14393  		AccountStatusPendingActivation,
 14394  	}
 14395  }
 14396  
 14397  const (
 14398  	// ActionEnumCreate is a ActionEnum enum value
 14399  	ActionEnumCreate = "CREATE"
 14400  
 14401  	// ActionEnumUpdateMetadata is a ActionEnum enum value
 14402  	ActionEnumUpdateMetadata = "UPDATE_METADATA"
 14403  
 14404  	// ActionEnumActive is a ActionEnum enum value
 14405  	ActionEnumActive = "ACTIVE"
 14406  
 14407  	// ActionEnumInactive is a ActionEnum enum value
 14408  	ActionEnumInactive = "INACTIVE"
 14409  
 14410  	// ActionEnumDelete is a ActionEnum enum value
 14411  	ActionEnumDelete = "DELETE"
 14412  
 14413  	// ActionEnumUnderReview is a ActionEnum enum value
 14414  	ActionEnumUnderReview = "UNDER_REVIEW"
 14415  
 14416  	// ActionEnumReviewed is a ActionEnum enum value
 14417  	ActionEnumReviewed = "REVIEWED"
 14418  
 14419  	// ActionEnumImportEvidence is a ActionEnum enum value
 14420  	ActionEnumImportEvidence = "IMPORT_EVIDENCE"
 14421  )
 14422  
 14423  // ActionEnum_Values returns all elements of the ActionEnum enum
 14424  func ActionEnum_Values() []string {
 14425  	return []string{
 14426  		ActionEnumCreate,
 14427  		ActionEnumUpdateMetadata,
 14428  		ActionEnumActive,
 14429  		ActionEnumInactive,
 14430  		ActionEnumDelete,
 14431  		ActionEnumUnderReview,
 14432  		ActionEnumReviewed,
 14433  		ActionEnumImportEvidence,
 14434  	}
 14435  }
 14436  
 14437  const (
 14438  	// AssessmentReportDestinationTypeS3 is a AssessmentReportDestinationType enum value
 14439  	AssessmentReportDestinationTypeS3 = "S3"
 14440  )
 14441  
 14442  // AssessmentReportDestinationType_Values returns all elements of the AssessmentReportDestinationType enum
 14443  func AssessmentReportDestinationType_Values() []string {
 14444  	return []string{
 14445  		AssessmentReportDestinationTypeS3,
 14446  	}
 14447  }
 14448  
 14449  const (
 14450  	// AssessmentReportStatusComplete is a AssessmentReportStatus enum value
 14451  	AssessmentReportStatusComplete = "COMPLETE"
 14452  
 14453  	// AssessmentReportStatusInProgress is a AssessmentReportStatus enum value
 14454  	AssessmentReportStatusInProgress = "IN_PROGRESS"
 14455  
 14456  	// AssessmentReportStatusFailed is a AssessmentReportStatus enum value
 14457  	AssessmentReportStatusFailed = "FAILED"
 14458  )
 14459  
 14460  // AssessmentReportStatus_Values returns all elements of the AssessmentReportStatus enum
 14461  func AssessmentReportStatus_Values() []string {
 14462  	return []string{
 14463  		AssessmentReportStatusComplete,
 14464  		AssessmentReportStatusInProgress,
 14465  		AssessmentReportStatusFailed,
 14466  	}
 14467  }
 14468  
 14469  const (
 14470  	// AssessmentStatusActive is a AssessmentStatus enum value
 14471  	AssessmentStatusActive = "ACTIVE"
 14472  
 14473  	// AssessmentStatusInactive is a AssessmentStatus enum value
 14474  	AssessmentStatusInactive = "INACTIVE"
 14475  )
 14476  
 14477  // AssessmentStatus_Values returns all elements of the AssessmentStatus enum
 14478  func AssessmentStatus_Values() []string {
 14479  	return []string{
 14480  		AssessmentStatusActive,
 14481  		AssessmentStatusInactive,
 14482  	}
 14483  }
 14484  
 14485  const (
 14486  	// ControlResponseManual is a ControlResponse enum value
 14487  	ControlResponseManual = "MANUAL"
 14488  
 14489  	// ControlResponseAutomate is a ControlResponse enum value
 14490  	ControlResponseAutomate = "AUTOMATE"
 14491  
 14492  	// ControlResponseDefer is a ControlResponse enum value
 14493  	ControlResponseDefer = "DEFER"
 14494  
 14495  	// ControlResponseIgnore is a ControlResponse enum value
 14496  	ControlResponseIgnore = "IGNORE"
 14497  )
 14498  
 14499  // ControlResponse_Values returns all elements of the ControlResponse enum
 14500  func ControlResponse_Values() []string {
 14501  	return []string{
 14502  		ControlResponseManual,
 14503  		ControlResponseAutomate,
 14504  		ControlResponseDefer,
 14505  		ControlResponseIgnore,
 14506  	}
 14507  }
 14508  
 14509  const (
 14510  	// ControlSetStatusActive is a ControlSetStatus enum value
 14511  	ControlSetStatusActive = "ACTIVE"
 14512  
 14513  	// ControlSetStatusUnderReview is a ControlSetStatus enum value
 14514  	ControlSetStatusUnderReview = "UNDER_REVIEW"
 14515  
 14516  	// ControlSetStatusReviewed is a ControlSetStatus enum value
 14517  	ControlSetStatusReviewed = "REVIEWED"
 14518  )
 14519  
 14520  // ControlSetStatus_Values returns all elements of the ControlSetStatus enum
 14521  func ControlSetStatus_Values() []string {
 14522  	return []string{
 14523  		ControlSetStatusActive,
 14524  		ControlSetStatusUnderReview,
 14525  		ControlSetStatusReviewed,
 14526  	}
 14527  }
 14528  
 14529  const (
 14530  	// ControlStatusUnderReview is a ControlStatus enum value
 14531  	ControlStatusUnderReview = "UNDER_REVIEW"
 14532  
 14533  	// ControlStatusReviewed is a ControlStatus enum value
 14534  	ControlStatusReviewed = "REVIEWED"
 14535  
 14536  	// ControlStatusInactive is a ControlStatus enum value
 14537  	ControlStatusInactive = "INACTIVE"
 14538  )
 14539  
 14540  // ControlStatus_Values returns all elements of the ControlStatus enum
 14541  func ControlStatus_Values() []string {
 14542  	return []string{
 14543  		ControlStatusUnderReview,
 14544  		ControlStatusReviewed,
 14545  		ControlStatusInactive,
 14546  	}
 14547  }
 14548  
 14549  const (
 14550  	// ControlTypeStandard is a ControlType enum value
 14551  	ControlTypeStandard = "Standard"
 14552  
 14553  	// ControlTypeCustom is a ControlType enum value
 14554  	ControlTypeCustom = "Custom"
 14555  )
 14556  
 14557  // ControlType_Values returns all elements of the ControlType enum
 14558  func ControlType_Values() []string {
 14559  	return []string{
 14560  		ControlTypeStandard,
 14561  		ControlTypeCustom,
 14562  	}
 14563  }
 14564  
 14565  const (
 14566  	// DelegationStatusInProgress is a DelegationStatus enum value
 14567  	DelegationStatusInProgress = "IN_PROGRESS"
 14568  
 14569  	// DelegationStatusUnderReview is a DelegationStatus enum value
 14570  	DelegationStatusUnderReview = "UNDER_REVIEW"
 14571  
 14572  	// DelegationStatusComplete is a DelegationStatus enum value
 14573  	DelegationStatusComplete = "COMPLETE"
 14574  )
 14575  
 14576  // DelegationStatus_Values returns all elements of the DelegationStatus enum
 14577  func DelegationStatus_Values() []string {
 14578  	return []string{
 14579  		DelegationStatusInProgress,
 14580  		DelegationStatusUnderReview,
 14581  		DelegationStatusComplete,
 14582  	}
 14583  }
 14584  
 14585  const (
 14586  	// FrameworkTypeStandard is a FrameworkType enum value
 14587  	FrameworkTypeStandard = "Standard"
 14588  
 14589  	// FrameworkTypeCustom is a FrameworkType enum value
 14590  	FrameworkTypeCustom = "Custom"
 14591  )
 14592  
 14593  // FrameworkType_Values returns all elements of the FrameworkType enum
 14594  func FrameworkType_Values() []string {
 14595  	return []string{
 14596  		FrameworkTypeStandard,
 14597  		FrameworkTypeCustom,
 14598  	}
 14599  }
 14600  
 14601  const (
 14602  	// KeywordInputTypeSelectFromList is a KeywordInputType enum value
 14603  	KeywordInputTypeSelectFromList = "SELECT_FROM_LIST"
 14604  )
 14605  
 14606  // KeywordInputType_Values returns all elements of the KeywordInputType enum
 14607  func KeywordInputType_Values() []string {
 14608  	return []string{
 14609  		KeywordInputTypeSelectFromList,
 14610  	}
 14611  }
 14612  
 14613  const (
 14614  	// ObjectTypeEnumAssessment is a ObjectTypeEnum enum value
 14615  	ObjectTypeEnumAssessment = "ASSESSMENT"
 14616  
 14617  	// ObjectTypeEnumControlSet is a ObjectTypeEnum enum value
 14618  	ObjectTypeEnumControlSet = "CONTROL_SET"
 14619  
 14620  	// ObjectTypeEnumControl is a ObjectTypeEnum enum value
 14621  	ObjectTypeEnumControl = "CONTROL"
 14622  
 14623  	// ObjectTypeEnumDelegation is a ObjectTypeEnum enum value
 14624  	ObjectTypeEnumDelegation = "DELEGATION"
 14625  
 14626  	// ObjectTypeEnumAssessmentReport is a ObjectTypeEnum enum value
 14627  	ObjectTypeEnumAssessmentReport = "ASSESSMENT_REPORT"
 14628  )
 14629  
 14630  // ObjectTypeEnum_Values returns all elements of the ObjectTypeEnum enum
 14631  func ObjectTypeEnum_Values() []string {
 14632  	return []string{
 14633  		ObjectTypeEnumAssessment,
 14634  		ObjectTypeEnumControlSet,
 14635  		ObjectTypeEnumControl,
 14636  		ObjectTypeEnumDelegation,
 14637  		ObjectTypeEnumAssessmentReport,
 14638  	}
 14639  }
 14640  
 14641  const (
 14642  	// RoleTypeProcessOwner is a RoleType enum value
 14643  	RoleTypeProcessOwner = "PROCESS_OWNER"
 14644  
 14645  	// RoleTypeResourceOwner is a RoleType enum value
 14646  	RoleTypeResourceOwner = "RESOURCE_OWNER"
 14647  )
 14648  
 14649  // RoleType_Values returns all elements of the RoleType enum
 14650  func RoleType_Values() []string {
 14651  	return []string{
 14652  		RoleTypeProcessOwner,
 14653  		RoleTypeResourceOwner,
 14654  	}
 14655  }
 14656  
 14657  const (
 14658  	// SettingAttributeAll is a SettingAttribute enum value
 14659  	SettingAttributeAll = "ALL"
 14660  
 14661  	// SettingAttributeIsAwsOrgEnabled is a SettingAttribute enum value
 14662  	SettingAttributeIsAwsOrgEnabled = "IS_AWS_ORG_ENABLED"
 14663  
 14664  	// SettingAttributeSnsTopic is a SettingAttribute enum value
 14665  	SettingAttributeSnsTopic = "SNS_TOPIC"
 14666  
 14667  	// SettingAttributeDefaultAssessmentReportsDestination is a SettingAttribute enum value
 14668  	SettingAttributeDefaultAssessmentReportsDestination = "DEFAULT_ASSESSMENT_REPORTS_DESTINATION"
 14669  
 14670  	// SettingAttributeDefaultProcessOwners is a SettingAttribute enum value
 14671  	SettingAttributeDefaultProcessOwners = "DEFAULT_PROCESS_OWNERS"
 14672  )
 14673  
 14674  // SettingAttribute_Values returns all elements of the SettingAttribute enum
 14675  func SettingAttribute_Values() []string {
 14676  	return []string{
 14677  		SettingAttributeAll,
 14678  		SettingAttributeIsAwsOrgEnabled,
 14679  		SettingAttributeSnsTopic,
 14680  		SettingAttributeDefaultAssessmentReportsDestination,
 14681  		SettingAttributeDefaultProcessOwners,
 14682  	}
 14683  }
 14684  
 14685  const (
 14686  	// SourceFrequencyDaily is a SourceFrequency enum value
 14687  	SourceFrequencyDaily = "DAILY"
 14688  
 14689  	// SourceFrequencyWeekly is a SourceFrequency enum value
 14690  	SourceFrequencyWeekly = "WEEKLY"
 14691  
 14692  	// SourceFrequencyMonthly is a SourceFrequency enum value
 14693  	SourceFrequencyMonthly = "MONTHLY"
 14694  )
 14695  
 14696  // SourceFrequency_Values returns all elements of the SourceFrequency enum
 14697  func SourceFrequency_Values() []string {
 14698  	return []string{
 14699  		SourceFrequencyDaily,
 14700  		SourceFrequencyWeekly,
 14701  		SourceFrequencyMonthly,
 14702  	}
 14703  }
 14704  
 14705  const (
 14706  	// SourceSetUpOptionSystemControlsMapping is a SourceSetUpOption enum value
 14707  	SourceSetUpOptionSystemControlsMapping = "System_Controls_Mapping"
 14708  
 14709  	// SourceSetUpOptionProceduralControlsMapping is a SourceSetUpOption enum value
 14710  	SourceSetUpOptionProceduralControlsMapping = "Procedural_Controls_Mapping"
 14711  )
 14712  
 14713  // SourceSetUpOption_Values returns all elements of the SourceSetUpOption enum
 14714  func SourceSetUpOption_Values() []string {
 14715  	return []string{
 14716  		SourceSetUpOptionSystemControlsMapping,
 14717  		SourceSetUpOptionProceduralControlsMapping,
 14718  	}
 14719  }
 14720  
 14721  const (
 14722  	// SourceTypeAwsCloudtrail is a SourceType enum value
 14723  	SourceTypeAwsCloudtrail = "AWS_Cloudtrail"
 14724  
 14725  	// SourceTypeAwsConfig is a SourceType enum value
 14726  	SourceTypeAwsConfig = "AWS_Config"
 14727  
 14728  	// SourceTypeAwsSecurityHub is a SourceType enum value
 14729  	SourceTypeAwsSecurityHub = "AWS_Security_Hub"
 14730  
 14731  	// SourceTypeAwsApiCall is a SourceType enum value
 14732  	SourceTypeAwsApiCall = "AWS_API_Call"
 14733  
 14734  	// SourceTypeManual is a SourceType enum value
 14735  	SourceTypeManual = "MANUAL"
 14736  )
 14737  
 14738  // SourceType_Values returns all elements of the SourceType enum
 14739  func SourceType_Values() []string {
 14740  	return []string{
 14741  		SourceTypeAwsCloudtrail,
 14742  		SourceTypeAwsConfig,
 14743  		SourceTypeAwsSecurityHub,
 14744  		SourceTypeAwsApiCall,
 14745  		SourceTypeManual,
 14746  	}
 14747  }
 14748  
 14749  const (
 14750  	// ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value
 14751  	ValidationExceptionReasonUnknownOperation = "unknownOperation"
 14752  
 14753  	// ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value
 14754  	ValidationExceptionReasonCannotParse = "cannotParse"
 14755  
 14756  	// ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value
 14757  	ValidationExceptionReasonFieldValidationFailed = "fieldValidationFailed"
 14758  
 14759  	// ValidationExceptionReasonOther is a ValidationExceptionReason enum value
 14760  	ValidationExceptionReasonOther = "other"
 14761  )
 14762  
 14763  // ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum
 14764  func ValidationExceptionReason_Values() []string {
 14765  	return []string{
 14766  		ValidationExceptionReasonUnknownOperation,
 14767  		ValidationExceptionReasonCannotParse,
 14768  		ValidationExceptionReasonFieldValidationFailed,
 14769  		ValidationExceptionReasonOther,
 14770  	}
 14771  }