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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package dataexchange
     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 opCancelJob = "CancelJob"
    17  
    18  // CancelJobRequest generates a "aws/request.Request" representing the
    19  // client's request for the CancelJob 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 CancelJob for more information on using the CancelJob
    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 CancelJobRequest method.
    34  //    req, resp := client.CancelJobRequest(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/dataexchange-2017-07-25/CancelJob
    42  func (c *DataExchange) CancelJobRequest(input *CancelJobInput) (req *request.Request, output *CancelJobOutput) {
    43  	op := &request.Operation{
    44  		Name:       opCancelJob,
    45  		HTTPMethod: "DELETE",
    46  		HTTPPath:   "/v1/jobs/{JobId}",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &CancelJobInput{}
    51  	}
    52  
    53  	output = &CancelJobOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
    56  	return
    57  }
    58  
    59  // CancelJob API operation for AWS Data Exchange.
    60  //
    61  // This operation cancels a job. Jobs can be cancelled only when they are in
    62  // the WAITING state.
    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 Data Exchange's
    69  // API operation CancelJob for usage and error information.
    70  //
    71  // Returned Error Types:
    72  //   * ResourceNotFoundException
    73  //   The resource couldn't be found.
    74  //
    75  //   * ThrottlingException
    76  //   The limit on the number of requests per second was exceeded.
    77  //
    78  //   * ValidationException
    79  //   The request was invalid.
    80  //
    81  //   * InternalServerException
    82  //   An exception occurred with the service.
    83  //
    84  //   * ConflictException
    85  //   The request couldn't be completed because it conflicted with the current
    86  //   state of the resource.
    87  //
    88  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CancelJob
    89  func (c *DataExchange) CancelJob(input *CancelJobInput) (*CancelJobOutput, error) {
    90  	req, out := c.CancelJobRequest(input)
    91  	return out, req.Send()
    92  }
    93  
    94  // CancelJobWithContext is the same as CancelJob with the addition of
    95  // the ability to pass a context and additional request options.
    96  //
    97  // See CancelJob for details on how to use this API operation.
    98  //
    99  // The context must be non-nil and will be used for request cancellation. If
   100  // the context is nil a panic will occur. In the future the SDK may create
   101  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   102  // for more information on using Contexts.
   103  func (c *DataExchange) CancelJobWithContext(ctx aws.Context, input *CancelJobInput, opts ...request.Option) (*CancelJobOutput, error) {
   104  	req, out := c.CancelJobRequest(input)
   105  	req.SetContext(ctx)
   106  	req.ApplyOptions(opts...)
   107  	return out, req.Send()
   108  }
   109  
   110  const opCreateDataSet = "CreateDataSet"
   111  
   112  // CreateDataSetRequest generates a "aws/request.Request" representing the
   113  // client's request for the CreateDataSet operation. The "output" return
   114  // value will be populated with the request's response once the request completes
   115  // successfully.
   116  //
   117  // Use "Send" method on the returned Request to send the API call to the service.
   118  // the "output" return value is not valid until after Send returns without error.
   119  //
   120  // See CreateDataSet for more information on using the CreateDataSet
   121  // API call, and error handling.
   122  //
   123  // This method is useful when you want to inject custom logic or configuration
   124  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   125  //
   126  //
   127  //    // Example sending a request using the CreateDataSetRequest method.
   128  //    req, resp := client.CreateDataSetRequest(params)
   129  //
   130  //    err := req.Send()
   131  //    if err == nil { // resp is now filled
   132  //        fmt.Println(resp)
   133  //    }
   134  //
   135  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateDataSet
   136  func (c *DataExchange) CreateDataSetRequest(input *CreateDataSetInput) (req *request.Request, output *CreateDataSetOutput) {
   137  	op := &request.Operation{
   138  		Name:       opCreateDataSet,
   139  		HTTPMethod: "POST",
   140  		HTTPPath:   "/v1/data-sets",
   141  	}
   142  
   143  	if input == nil {
   144  		input = &CreateDataSetInput{}
   145  	}
   146  
   147  	output = &CreateDataSetOutput{}
   148  	req = c.newRequest(op, input, output)
   149  	return
   150  }
   151  
   152  // CreateDataSet API operation for AWS Data Exchange.
   153  //
   154  // This operation creates a data set.
   155  //
   156  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   157  // with awserr.Error's Code and Message methods to get detailed information about
   158  // the error.
   159  //
   160  // See the AWS API reference guide for AWS Data Exchange's
   161  // API operation CreateDataSet for usage and error information.
   162  //
   163  // Returned Error Types:
   164  //   * ThrottlingException
   165  //   The limit on the number of requests per second was exceeded.
   166  //
   167  //   * ValidationException
   168  //   The request was invalid.
   169  //
   170  //   * InternalServerException
   171  //   An exception occurred with the service.
   172  //
   173  //   * ServiceLimitExceededException
   174  //   The request has exceeded the quotas imposed by the service.
   175  //
   176  //   * AccessDeniedException
   177  //   Access to the resource is denied.
   178  //
   179  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateDataSet
   180  func (c *DataExchange) CreateDataSet(input *CreateDataSetInput) (*CreateDataSetOutput, error) {
   181  	req, out := c.CreateDataSetRequest(input)
   182  	return out, req.Send()
   183  }
   184  
   185  // CreateDataSetWithContext is the same as CreateDataSet with the addition of
   186  // the ability to pass a context and additional request options.
   187  //
   188  // See CreateDataSet for details on how to use this API operation.
   189  //
   190  // The context must be non-nil and will be used for request cancellation. If
   191  // the context is nil a panic will occur. In the future the SDK may create
   192  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   193  // for more information on using Contexts.
   194  func (c *DataExchange) CreateDataSetWithContext(ctx aws.Context, input *CreateDataSetInput, opts ...request.Option) (*CreateDataSetOutput, error) {
   195  	req, out := c.CreateDataSetRequest(input)
   196  	req.SetContext(ctx)
   197  	req.ApplyOptions(opts...)
   198  	return out, req.Send()
   199  }
   200  
   201  const opCreateEventAction = "CreateEventAction"
   202  
   203  // CreateEventActionRequest generates a "aws/request.Request" representing the
   204  // client's request for the CreateEventAction operation. The "output" return
   205  // value will be populated with the request's response once the request completes
   206  // successfully.
   207  //
   208  // Use "Send" method on the returned Request to send the API call to the service.
   209  // the "output" return value is not valid until after Send returns without error.
   210  //
   211  // See CreateEventAction for more information on using the CreateEventAction
   212  // API call, and error handling.
   213  //
   214  // This method is useful when you want to inject custom logic or configuration
   215  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   216  //
   217  //
   218  //    // Example sending a request using the CreateEventActionRequest method.
   219  //    req, resp := client.CreateEventActionRequest(params)
   220  //
   221  //    err := req.Send()
   222  //    if err == nil { // resp is now filled
   223  //        fmt.Println(resp)
   224  //    }
   225  //
   226  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateEventAction
   227  func (c *DataExchange) CreateEventActionRequest(input *CreateEventActionInput) (req *request.Request, output *CreateEventActionOutput) {
   228  	op := &request.Operation{
   229  		Name:       opCreateEventAction,
   230  		HTTPMethod: "POST",
   231  		HTTPPath:   "/v1/event-actions",
   232  	}
   233  
   234  	if input == nil {
   235  		input = &CreateEventActionInput{}
   236  	}
   237  
   238  	output = &CreateEventActionOutput{}
   239  	req = c.newRequest(op, input, output)
   240  	return
   241  }
   242  
   243  // CreateEventAction API operation for AWS Data Exchange.
   244  //
   245  // This operation creates an event action.
   246  //
   247  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   248  // with awserr.Error's Code and Message methods to get detailed information about
   249  // the error.
   250  //
   251  // See the AWS API reference guide for AWS Data Exchange's
   252  // API operation CreateEventAction for usage and error information.
   253  //
   254  // Returned Error Types:
   255  //   * ThrottlingException
   256  //   The limit on the number of requests per second was exceeded.
   257  //
   258  //   * ValidationException
   259  //   The request was invalid.
   260  //
   261  //   * InternalServerException
   262  //   An exception occurred with the service.
   263  //
   264  //   * ServiceLimitExceededException
   265  //   The request has exceeded the quotas imposed by the service.
   266  //
   267  //   * AccessDeniedException
   268  //   Access to the resource is denied.
   269  //
   270  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateEventAction
   271  func (c *DataExchange) CreateEventAction(input *CreateEventActionInput) (*CreateEventActionOutput, error) {
   272  	req, out := c.CreateEventActionRequest(input)
   273  	return out, req.Send()
   274  }
   275  
   276  // CreateEventActionWithContext is the same as CreateEventAction with the addition of
   277  // the ability to pass a context and additional request options.
   278  //
   279  // See CreateEventAction for details on how to use this API operation.
   280  //
   281  // The context must be non-nil and will be used for request cancellation. If
   282  // the context is nil a panic will occur. In the future the SDK may create
   283  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   284  // for more information on using Contexts.
   285  func (c *DataExchange) CreateEventActionWithContext(ctx aws.Context, input *CreateEventActionInput, opts ...request.Option) (*CreateEventActionOutput, error) {
   286  	req, out := c.CreateEventActionRequest(input)
   287  	req.SetContext(ctx)
   288  	req.ApplyOptions(opts...)
   289  	return out, req.Send()
   290  }
   291  
   292  const opCreateJob = "CreateJob"
   293  
   294  // CreateJobRequest generates a "aws/request.Request" representing the
   295  // client's request for the CreateJob operation. The "output" return
   296  // value will be populated with the request's response once the request completes
   297  // successfully.
   298  //
   299  // Use "Send" method on the returned Request to send the API call to the service.
   300  // the "output" return value is not valid until after Send returns without error.
   301  //
   302  // See CreateJob for more information on using the CreateJob
   303  // API call, and error handling.
   304  //
   305  // This method is useful when you want to inject custom logic or configuration
   306  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   307  //
   308  //
   309  //    // Example sending a request using the CreateJobRequest method.
   310  //    req, resp := client.CreateJobRequest(params)
   311  //
   312  //    err := req.Send()
   313  //    if err == nil { // resp is now filled
   314  //        fmt.Println(resp)
   315  //    }
   316  //
   317  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateJob
   318  func (c *DataExchange) CreateJobRequest(input *CreateJobInput) (req *request.Request, output *CreateJobOutput) {
   319  	op := &request.Operation{
   320  		Name:       opCreateJob,
   321  		HTTPMethod: "POST",
   322  		HTTPPath:   "/v1/jobs",
   323  	}
   324  
   325  	if input == nil {
   326  		input = &CreateJobInput{}
   327  	}
   328  
   329  	output = &CreateJobOutput{}
   330  	req = c.newRequest(op, input, output)
   331  	return
   332  }
   333  
   334  // CreateJob API operation for AWS Data Exchange.
   335  //
   336  // This operation creates a job.
   337  //
   338  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   339  // with awserr.Error's Code and Message methods to get detailed information about
   340  // the error.
   341  //
   342  // See the AWS API reference guide for AWS Data Exchange's
   343  // API operation CreateJob for usage and error information.
   344  //
   345  // Returned Error Types:
   346  //   * ValidationException
   347  //   The request was invalid.
   348  //
   349  //   * InternalServerException
   350  //   An exception occurred with the service.
   351  //
   352  //   * AccessDeniedException
   353  //   Access to the resource is denied.
   354  //
   355  //   * ResourceNotFoundException
   356  //   The resource couldn't be found.
   357  //
   358  //   * ThrottlingException
   359  //   The limit on the number of requests per second was exceeded.
   360  //
   361  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateJob
   362  func (c *DataExchange) CreateJob(input *CreateJobInput) (*CreateJobOutput, error) {
   363  	req, out := c.CreateJobRequest(input)
   364  	return out, req.Send()
   365  }
   366  
   367  // CreateJobWithContext is the same as CreateJob with the addition of
   368  // the ability to pass a context and additional request options.
   369  //
   370  // See CreateJob for details on how to use this API operation.
   371  //
   372  // The context must be non-nil and will be used for request cancellation. If
   373  // the context is nil a panic will occur. In the future the SDK may create
   374  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   375  // for more information on using Contexts.
   376  func (c *DataExchange) CreateJobWithContext(ctx aws.Context, input *CreateJobInput, opts ...request.Option) (*CreateJobOutput, error) {
   377  	req, out := c.CreateJobRequest(input)
   378  	req.SetContext(ctx)
   379  	req.ApplyOptions(opts...)
   380  	return out, req.Send()
   381  }
   382  
   383  const opCreateRevision = "CreateRevision"
   384  
   385  // CreateRevisionRequest generates a "aws/request.Request" representing the
   386  // client's request for the CreateRevision operation. The "output" return
   387  // value will be populated with the request's response once the request completes
   388  // successfully.
   389  //
   390  // Use "Send" method on the returned Request to send the API call to the service.
   391  // the "output" return value is not valid until after Send returns without error.
   392  //
   393  // See CreateRevision for more information on using the CreateRevision
   394  // API call, and error handling.
   395  //
   396  // This method is useful when you want to inject custom logic or configuration
   397  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   398  //
   399  //
   400  //    // Example sending a request using the CreateRevisionRequest method.
   401  //    req, resp := client.CreateRevisionRequest(params)
   402  //
   403  //    err := req.Send()
   404  //    if err == nil { // resp is now filled
   405  //        fmt.Println(resp)
   406  //    }
   407  //
   408  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateRevision
   409  func (c *DataExchange) CreateRevisionRequest(input *CreateRevisionInput) (req *request.Request, output *CreateRevisionOutput) {
   410  	op := &request.Operation{
   411  		Name:       opCreateRevision,
   412  		HTTPMethod: "POST",
   413  		HTTPPath:   "/v1/data-sets/{DataSetId}/revisions",
   414  	}
   415  
   416  	if input == nil {
   417  		input = &CreateRevisionInput{}
   418  	}
   419  
   420  	output = &CreateRevisionOutput{}
   421  	req = c.newRequest(op, input, output)
   422  	return
   423  }
   424  
   425  // CreateRevision API operation for AWS Data Exchange.
   426  //
   427  // This operation creates a revision for a data set.
   428  //
   429  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   430  // with awserr.Error's Code and Message methods to get detailed information about
   431  // the error.
   432  //
   433  // See the AWS API reference guide for AWS Data Exchange's
   434  // API operation CreateRevision for usage and error information.
   435  //
   436  // Returned Error Types:
   437  //   * ResourceNotFoundException
   438  //   The resource couldn't be found.
   439  //
   440  //   * ThrottlingException
   441  //   The limit on the number of requests per second was exceeded.
   442  //
   443  //   * ValidationException
   444  //   The request was invalid.
   445  //
   446  //   * InternalServerException
   447  //   An exception occurred with the service.
   448  //
   449  //   * AccessDeniedException
   450  //   Access to the resource is denied.
   451  //
   452  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateRevision
   453  func (c *DataExchange) CreateRevision(input *CreateRevisionInput) (*CreateRevisionOutput, error) {
   454  	req, out := c.CreateRevisionRequest(input)
   455  	return out, req.Send()
   456  }
   457  
   458  // CreateRevisionWithContext is the same as CreateRevision with the addition of
   459  // the ability to pass a context and additional request options.
   460  //
   461  // See CreateRevision for details on how to use this API operation.
   462  //
   463  // The context must be non-nil and will be used for request cancellation. If
   464  // the context is nil a panic will occur. In the future the SDK may create
   465  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   466  // for more information on using Contexts.
   467  func (c *DataExchange) CreateRevisionWithContext(ctx aws.Context, input *CreateRevisionInput, opts ...request.Option) (*CreateRevisionOutput, error) {
   468  	req, out := c.CreateRevisionRequest(input)
   469  	req.SetContext(ctx)
   470  	req.ApplyOptions(opts...)
   471  	return out, req.Send()
   472  }
   473  
   474  const opDeleteAsset = "DeleteAsset"
   475  
   476  // DeleteAssetRequest generates a "aws/request.Request" representing the
   477  // client's request for the DeleteAsset operation. The "output" return
   478  // value will be populated with the request's response once the request completes
   479  // successfully.
   480  //
   481  // Use "Send" method on the returned Request to send the API call to the service.
   482  // the "output" return value is not valid until after Send returns without error.
   483  //
   484  // See DeleteAsset for more information on using the DeleteAsset
   485  // API call, and error handling.
   486  //
   487  // This method is useful when you want to inject custom logic or configuration
   488  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   489  //
   490  //
   491  //    // Example sending a request using the DeleteAssetRequest method.
   492  //    req, resp := client.DeleteAssetRequest(params)
   493  //
   494  //    err := req.Send()
   495  //    if err == nil { // resp is now filled
   496  //        fmt.Println(resp)
   497  //    }
   498  //
   499  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteAsset
   500  func (c *DataExchange) DeleteAssetRequest(input *DeleteAssetInput) (req *request.Request, output *DeleteAssetOutput) {
   501  	op := &request.Operation{
   502  		Name:       opDeleteAsset,
   503  		HTTPMethod: "DELETE",
   504  		HTTPPath:   "/v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets/{AssetId}",
   505  	}
   506  
   507  	if input == nil {
   508  		input = &DeleteAssetInput{}
   509  	}
   510  
   511  	output = &DeleteAssetOutput{}
   512  	req = c.newRequest(op, input, output)
   513  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   514  	return
   515  }
   516  
   517  // DeleteAsset API operation for AWS Data Exchange.
   518  //
   519  // This operation deletes an asset.
   520  //
   521  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   522  // with awserr.Error's Code and Message methods to get detailed information about
   523  // the error.
   524  //
   525  // See the AWS API reference guide for AWS Data Exchange's
   526  // API operation DeleteAsset for usage and error information.
   527  //
   528  // Returned Error Types:
   529  //   * ValidationException
   530  //   The request was invalid.
   531  //
   532  //   * InternalServerException
   533  //   An exception occurred with the service.
   534  //
   535  //   * AccessDeniedException
   536  //   Access to the resource is denied.
   537  //
   538  //   * ResourceNotFoundException
   539  //   The resource couldn't be found.
   540  //
   541  //   * ThrottlingException
   542  //   The limit on the number of requests per second was exceeded.
   543  //
   544  //   * ConflictException
   545  //   The request couldn't be completed because it conflicted with the current
   546  //   state of the resource.
   547  //
   548  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteAsset
   549  func (c *DataExchange) DeleteAsset(input *DeleteAssetInput) (*DeleteAssetOutput, error) {
   550  	req, out := c.DeleteAssetRequest(input)
   551  	return out, req.Send()
   552  }
   553  
   554  // DeleteAssetWithContext is the same as DeleteAsset with the addition of
   555  // the ability to pass a context and additional request options.
   556  //
   557  // See DeleteAsset for details on how to use this API operation.
   558  //
   559  // The context must be non-nil and will be used for request cancellation. If
   560  // the context is nil a panic will occur. In the future the SDK may create
   561  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   562  // for more information on using Contexts.
   563  func (c *DataExchange) DeleteAssetWithContext(ctx aws.Context, input *DeleteAssetInput, opts ...request.Option) (*DeleteAssetOutput, error) {
   564  	req, out := c.DeleteAssetRequest(input)
   565  	req.SetContext(ctx)
   566  	req.ApplyOptions(opts...)
   567  	return out, req.Send()
   568  }
   569  
   570  const opDeleteDataSet = "DeleteDataSet"
   571  
   572  // DeleteDataSetRequest generates a "aws/request.Request" representing the
   573  // client's request for the DeleteDataSet operation. The "output" return
   574  // value will be populated with the request's response once the request completes
   575  // successfully.
   576  //
   577  // Use "Send" method on the returned Request to send the API call to the service.
   578  // the "output" return value is not valid until after Send returns without error.
   579  //
   580  // See DeleteDataSet for more information on using the DeleteDataSet
   581  // API call, and error handling.
   582  //
   583  // This method is useful when you want to inject custom logic or configuration
   584  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   585  //
   586  //
   587  //    // Example sending a request using the DeleteDataSetRequest method.
   588  //    req, resp := client.DeleteDataSetRequest(params)
   589  //
   590  //    err := req.Send()
   591  //    if err == nil { // resp is now filled
   592  //        fmt.Println(resp)
   593  //    }
   594  //
   595  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteDataSet
   596  func (c *DataExchange) DeleteDataSetRequest(input *DeleteDataSetInput) (req *request.Request, output *DeleteDataSetOutput) {
   597  	op := &request.Operation{
   598  		Name:       opDeleteDataSet,
   599  		HTTPMethod: "DELETE",
   600  		HTTPPath:   "/v1/data-sets/{DataSetId}",
   601  	}
   602  
   603  	if input == nil {
   604  		input = &DeleteDataSetInput{}
   605  	}
   606  
   607  	output = &DeleteDataSetOutput{}
   608  	req = c.newRequest(op, input, output)
   609  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   610  	return
   611  }
   612  
   613  // DeleteDataSet API operation for AWS Data Exchange.
   614  //
   615  // This operation deletes a data set.
   616  //
   617  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   618  // with awserr.Error's Code and Message methods to get detailed information about
   619  // the error.
   620  //
   621  // See the AWS API reference guide for AWS Data Exchange's
   622  // API operation DeleteDataSet for usage and error information.
   623  //
   624  // Returned Error Types:
   625  //   * ValidationException
   626  //   The request was invalid.
   627  //
   628  //   * InternalServerException
   629  //   An exception occurred with the service.
   630  //
   631  //   * AccessDeniedException
   632  //   Access to the resource is denied.
   633  //
   634  //   * ResourceNotFoundException
   635  //   The resource couldn't be found.
   636  //
   637  //   * ThrottlingException
   638  //   The limit on the number of requests per second was exceeded.
   639  //
   640  //   * ConflictException
   641  //   The request couldn't be completed because it conflicted with the current
   642  //   state of the resource.
   643  //
   644  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteDataSet
   645  func (c *DataExchange) DeleteDataSet(input *DeleteDataSetInput) (*DeleteDataSetOutput, error) {
   646  	req, out := c.DeleteDataSetRequest(input)
   647  	return out, req.Send()
   648  }
   649  
   650  // DeleteDataSetWithContext is the same as DeleteDataSet with the addition of
   651  // the ability to pass a context and additional request options.
   652  //
   653  // See DeleteDataSet for details on how to use this API operation.
   654  //
   655  // The context must be non-nil and will be used for request cancellation. If
   656  // the context is nil a panic will occur. In the future the SDK may create
   657  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   658  // for more information on using Contexts.
   659  func (c *DataExchange) DeleteDataSetWithContext(ctx aws.Context, input *DeleteDataSetInput, opts ...request.Option) (*DeleteDataSetOutput, error) {
   660  	req, out := c.DeleteDataSetRequest(input)
   661  	req.SetContext(ctx)
   662  	req.ApplyOptions(opts...)
   663  	return out, req.Send()
   664  }
   665  
   666  const opDeleteEventAction = "DeleteEventAction"
   667  
   668  // DeleteEventActionRequest generates a "aws/request.Request" representing the
   669  // client's request for the DeleteEventAction operation. The "output" return
   670  // value will be populated with the request's response once the request completes
   671  // successfully.
   672  //
   673  // Use "Send" method on the returned Request to send the API call to the service.
   674  // the "output" return value is not valid until after Send returns without error.
   675  //
   676  // See DeleteEventAction for more information on using the DeleteEventAction
   677  // API call, and error handling.
   678  //
   679  // This method is useful when you want to inject custom logic or configuration
   680  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   681  //
   682  //
   683  //    // Example sending a request using the DeleteEventActionRequest method.
   684  //    req, resp := client.DeleteEventActionRequest(params)
   685  //
   686  //    err := req.Send()
   687  //    if err == nil { // resp is now filled
   688  //        fmt.Println(resp)
   689  //    }
   690  //
   691  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteEventAction
   692  func (c *DataExchange) DeleteEventActionRequest(input *DeleteEventActionInput) (req *request.Request, output *DeleteEventActionOutput) {
   693  	op := &request.Operation{
   694  		Name:       opDeleteEventAction,
   695  		HTTPMethod: "DELETE",
   696  		HTTPPath:   "/v1/event-actions/{EventActionId}",
   697  	}
   698  
   699  	if input == nil {
   700  		input = &DeleteEventActionInput{}
   701  	}
   702  
   703  	output = &DeleteEventActionOutput{}
   704  	req = c.newRequest(op, input, output)
   705  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   706  	return
   707  }
   708  
   709  // DeleteEventAction API operation for AWS Data Exchange.
   710  //
   711  // This operation deletes the event action.
   712  //
   713  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   714  // with awserr.Error's Code and Message methods to get detailed information about
   715  // the error.
   716  //
   717  // See the AWS API reference guide for AWS Data Exchange's
   718  // API operation DeleteEventAction for usage and error information.
   719  //
   720  // Returned Error Types:
   721  //   * ResourceNotFoundException
   722  //   The resource couldn't be found.
   723  //
   724  //   * ThrottlingException
   725  //   The limit on the number of requests per second was exceeded.
   726  //
   727  //   * ValidationException
   728  //   The request was invalid.
   729  //
   730  //   * InternalServerException
   731  //   An exception occurred with the service.
   732  //
   733  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteEventAction
   734  func (c *DataExchange) DeleteEventAction(input *DeleteEventActionInput) (*DeleteEventActionOutput, error) {
   735  	req, out := c.DeleteEventActionRequest(input)
   736  	return out, req.Send()
   737  }
   738  
   739  // DeleteEventActionWithContext is the same as DeleteEventAction with the addition of
   740  // the ability to pass a context and additional request options.
   741  //
   742  // See DeleteEventAction for details on how to use this API operation.
   743  //
   744  // The context must be non-nil and will be used for request cancellation. If
   745  // the context is nil a panic will occur. In the future the SDK may create
   746  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   747  // for more information on using Contexts.
   748  func (c *DataExchange) DeleteEventActionWithContext(ctx aws.Context, input *DeleteEventActionInput, opts ...request.Option) (*DeleteEventActionOutput, error) {
   749  	req, out := c.DeleteEventActionRequest(input)
   750  	req.SetContext(ctx)
   751  	req.ApplyOptions(opts...)
   752  	return out, req.Send()
   753  }
   754  
   755  const opDeleteRevision = "DeleteRevision"
   756  
   757  // DeleteRevisionRequest generates a "aws/request.Request" representing the
   758  // client's request for the DeleteRevision operation. The "output" return
   759  // value will be populated with the request's response once the request completes
   760  // successfully.
   761  //
   762  // Use "Send" method on the returned Request to send the API call to the service.
   763  // the "output" return value is not valid until after Send returns without error.
   764  //
   765  // See DeleteRevision for more information on using the DeleteRevision
   766  // API call, and error handling.
   767  //
   768  // This method is useful when you want to inject custom logic or configuration
   769  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   770  //
   771  //
   772  //    // Example sending a request using the DeleteRevisionRequest method.
   773  //    req, resp := client.DeleteRevisionRequest(params)
   774  //
   775  //    err := req.Send()
   776  //    if err == nil { // resp is now filled
   777  //        fmt.Println(resp)
   778  //    }
   779  //
   780  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteRevision
   781  func (c *DataExchange) DeleteRevisionRequest(input *DeleteRevisionInput) (req *request.Request, output *DeleteRevisionOutput) {
   782  	op := &request.Operation{
   783  		Name:       opDeleteRevision,
   784  		HTTPMethod: "DELETE",
   785  		HTTPPath:   "/v1/data-sets/{DataSetId}/revisions/{RevisionId}",
   786  	}
   787  
   788  	if input == nil {
   789  		input = &DeleteRevisionInput{}
   790  	}
   791  
   792  	output = &DeleteRevisionOutput{}
   793  	req = c.newRequest(op, input, output)
   794  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   795  	return
   796  }
   797  
   798  // DeleteRevision API operation for AWS Data Exchange.
   799  //
   800  // This operation deletes a revision.
   801  //
   802  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   803  // with awserr.Error's Code and Message methods to get detailed information about
   804  // the error.
   805  //
   806  // See the AWS API reference guide for AWS Data Exchange's
   807  // API operation DeleteRevision for usage and error information.
   808  //
   809  // Returned Error Types:
   810  //   * ValidationException
   811  //   The request was invalid.
   812  //
   813  //   * InternalServerException
   814  //   An exception occurred with the service.
   815  //
   816  //   * AccessDeniedException
   817  //   Access to the resource is denied.
   818  //
   819  //   * ResourceNotFoundException
   820  //   The resource couldn't be found.
   821  //
   822  //   * ThrottlingException
   823  //   The limit on the number of requests per second was exceeded.
   824  //
   825  //   * ConflictException
   826  //   The request couldn't be completed because it conflicted with the current
   827  //   state of the resource.
   828  //
   829  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteRevision
   830  func (c *DataExchange) DeleteRevision(input *DeleteRevisionInput) (*DeleteRevisionOutput, error) {
   831  	req, out := c.DeleteRevisionRequest(input)
   832  	return out, req.Send()
   833  }
   834  
   835  // DeleteRevisionWithContext is the same as DeleteRevision with the addition of
   836  // the ability to pass a context and additional request options.
   837  //
   838  // See DeleteRevision for details on how to use this API operation.
   839  //
   840  // The context must be non-nil and will be used for request cancellation. If
   841  // the context is nil a panic will occur. In the future the SDK may create
   842  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   843  // for more information on using Contexts.
   844  func (c *DataExchange) DeleteRevisionWithContext(ctx aws.Context, input *DeleteRevisionInput, opts ...request.Option) (*DeleteRevisionOutput, error) {
   845  	req, out := c.DeleteRevisionRequest(input)
   846  	req.SetContext(ctx)
   847  	req.ApplyOptions(opts...)
   848  	return out, req.Send()
   849  }
   850  
   851  const opGetAsset = "GetAsset"
   852  
   853  // GetAssetRequest generates a "aws/request.Request" representing the
   854  // client's request for the GetAsset operation. The "output" return
   855  // value will be populated with the request's response once the request completes
   856  // successfully.
   857  //
   858  // Use "Send" method on the returned Request to send the API call to the service.
   859  // the "output" return value is not valid until after Send returns without error.
   860  //
   861  // See GetAsset for more information on using the GetAsset
   862  // API call, and error handling.
   863  //
   864  // This method is useful when you want to inject custom logic or configuration
   865  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   866  //
   867  //
   868  //    // Example sending a request using the GetAssetRequest method.
   869  //    req, resp := client.GetAssetRequest(params)
   870  //
   871  //    err := req.Send()
   872  //    if err == nil { // resp is now filled
   873  //        fmt.Println(resp)
   874  //    }
   875  //
   876  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetAsset
   877  func (c *DataExchange) GetAssetRequest(input *GetAssetInput) (req *request.Request, output *GetAssetOutput) {
   878  	op := &request.Operation{
   879  		Name:       opGetAsset,
   880  		HTTPMethod: "GET",
   881  		HTTPPath:   "/v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets/{AssetId}",
   882  	}
   883  
   884  	if input == nil {
   885  		input = &GetAssetInput{}
   886  	}
   887  
   888  	output = &GetAssetOutput{}
   889  	req = c.newRequest(op, input, output)
   890  	return
   891  }
   892  
   893  // GetAsset API operation for AWS Data Exchange.
   894  //
   895  // This operation returns information about an asset.
   896  //
   897  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   898  // with awserr.Error's Code and Message methods to get detailed information about
   899  // the error.
   900  //
   901  // See the AWS API reference guide for AWS Data Exchange's
   902  // API operation GetAsset for usage and error information.
   903  //
   904  // Returned Error Types:
   905  //   * ResourceNotFoundException
   906  //   The resource couldn't be found.
   907  //
   908  //   * ThrottlingException
   909  //   The limit on the number of requests per second was exceeded.
   910  //
   911  //   * ValidationException
   912  //   The request was invalid.
   913  //
   914  //   * InternalServerException
   915  //   An exception occurred with the service.
   916  //
   917  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetAsset
   918  func (c *DataExchange) GetAsset(input *GetAssetInput) (*GetAssetOutput, error) {
   919  	req, out := c.GetAssetRequest(input)
   920  	return out, req.Send()
   921  }
   922  
   923  // GetAssetWithContext is the same as GetAsset with the addition of
   924  // the ability to pass a context and additional request options.
   925  //
   926  // See GetAsset for details on how to use this API operation.
   927  //
   928  // The context must be non-nil and will be used for request cancellation. If
   929  // the context is nil a panic will occur. In the future the SDK may create
   930  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   931  // for more information on using Contexts.
   932  func (c *DataExchange) GetAssetWithContext(ctx aws.Context, input *GetAssetInput, opts ...request.Option) (*GetAssetOutput, error) {
   933  	req, out := c.GetAssetRequest(input)
   934  	req.SetContext(ctx)
   935  	req.ApplyOptions(opts...)
   936  	return out, req.Send()
   937  }
   938  
   939  const opGetDataSet = "GetDataSet"
   940  
   941  // GetDataSetRequest generates a "aws/request.Request" representing the
   942  // client's request for the GetDataSet operation. The "output" return
   943  // value will be populated with the request's response once the request completes
   944  // successfully.
   945  //
   946  // Use "Send" method on the returned Request to send the API call to the service.
   947  // the "output" return value is not valid until after Send returns without error.
   948  //
   949  // See GetDataSet for more information on using the GetDataSet
   950  // API call, and error handling.
   951  //
   952  // This method is useful when you want to inject custom logic or configuration
   953  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   954  //
   955  //
   956  //    // Example sending a request using the GetDataSetRequest method.
   957  //    req, resp := client.GetDataSetRequest(params)
   958  //
   959  //    err := req.Send()
   960  //    if err == nil { // resp is now filled
   961  //        fmt.Println(resp)
   962  //    }
   963  //
   964  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetDataSet
   965  func (c *DataExchange) GetDataSetRequest(input *GetDataSetInput) (req *request.Request, output *GetDataSetOutput) {
   966  	op := &request.Operation{
   967  		Name:       opGetDataSet,
   968  		HTTPMethod: "GET",
   969  		HTTPPath:   "/v1/data-sets/{DataSetId}",
   970  	}
   971  
   972  	if input == nil {
   973  		input = &GetDataSetInput{}
   974  	}
   975  
   976  	output = &GetDataSetOutput{}
   977  	req = c.newRequest(op, input, output)
   978  	return
   979  }
   980  
   981  // GetDataSet API operation for AWS Data Exchange.
   982  //
   983  // This operation returns information about a data set.
   984  //
   985  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   986  // with awserr.Error's Code and Message methods to get detailed information about
   987  // the error.
   988  //
   989  // See the AWS API reference guide for AWS Data Exchange's
   990  // API operation GetDataSet for usage and error information.
   991  //
   992  // Returned Error Types:
   993  //   * ResourceNotFoundException
   994  //   The resource couldn't be found.
   995  //
   996  //   * ThrottlingException
   997  //   The limit on the number of requests per second was exceeded.
   998  //
   999  //   * ValidationException
  1000  //   The request was invalid.
  1001  //
  1002  //   * InternalServerException
  1003  //   An exception occurred with the service.
  1004  //
  1005  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetDataSet
  1006  func (c *DataExchange) GetDataSet(input *GetDataSetInput) (*GetDataSetOutput, error) {
  1007  	req, out := c.GetDataSetRequest(input)
  1008  	return out, req.Send()
  1009  }
  1010  
  1011  // GetDataSetWithContext is the same as GetDataSet with the addition of
  1012  // the ability to pass a context and additional request options.
  1013  //
  1014  // See GetDataSet for details on how to use this API operation.
  1015  //
  1016  // The context must be non-nil and will be used for request cancellation. If
  1017  // the context is nil a panic will occur. In the future the SDK may create
  1018  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1019  // for more information on using Contexts.
  1020  func (c *DataExchange) GetDataSetWithContext(ctx aws.Context, input *GetDataSetInput, opts ...request.Option) (*GetDataSetOutput, error) {
  1021  	req, out := c.GetDataSetRequest(input)
  1022  	req.SetContext(ctx)
  1023  	req.ApplyOptions(opts...)
  1024  	return out, req.Send()
  1025  }
  1026  
  1027  const opGetEventAction = "GetEventAction"
  1028  
  1029  // GetEventActionRequest generates a "aws/request.Request" representing the
  1030  // client's request for the GetEventAction operation. The "output" return
  1031  // value will be populated with the request's response once the request completes
  1032  // successfully.
  1033  //
  1034  // Use "Send" method on the returned Request to send the API call to the service.
  1035  // the "output" return value is not valid until after Send returns without error.
  1036  //
  1037  // See GetEventAction for more information on using the GetEventAction
  1038  // API call, and error handling.
  1039  //
  1040  // This method is useful when you want to inject custom logic or configuration
  1041  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1042  //
  1043  //
  1044  //    // Example sending a request using the GetEventActionRequest method.
  1045  //    req, resp := client.GetEventActionRequest(params)
  1046  //
  1047  //    err := req.Send()
  1048  //    if err == nil { // resp is now filled
  1049  //        fmt.Println(resp)
  1050  //    }
  1051  //
  1052  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetEventAction
  1053  func (c *DataExchange) GetEventActionRequest(input *GetEventActionInput) (req *request.Request, output *GetEventActionOutput) {
  1054  	op := &request.Operation{
  1055  		Name:       opGetEventAction,
  1056  		HTTPMethod: "GET",
  1057  		HTTPPath:   "/v1/event-actions/{EventActionId}",
  1058  	}
  1059  
  1060  	if input == nil {
  1061  		input = &GetEventActionInput{}
  1062  	}
  1063  
  1064  	output = &GetEventActionOutput{}
  1065  	req = c.newRequest(op, input, output)
  1066  	return
  1067  }
  1068  
  1069  // GetEventAction API operation for AWS Data Exchange.
  1070  //
  1071  // This operation retrieves information about an event action.
  1072  //
  1073  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1074  // with awserr.Error's Code and Message methods to get detailed information about
  1075  // the error.
  1076  //
  1077  // See the AWS API reference guide for AWS Data Exchange's
  1078  // API operation GetEventAction for usage and error information.
  1079  //
  1080  // Returned Error Types:
  1081  //   * ResourceNotFoundException
  1082  //   The resource couldn't be found.
  1083  //
  1084  //   * ThrottlingException
  1085  //   The limit on the number of requests per second was exceeded.
  1086  //
  1087  //   * ValidationException
  1088  //   The request was invalid.
  1089  //
  1090  //   * InternalServerException
  1091  //   An exception occurred with the service.
  1092  //
  1093  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetEventAction
  1094  func (c *DataExchange) GetEventAction(input *GetEventActionInput) (*GetEventActionOutput, error) {
  1095  	req, out := c.GetEventActionRequest(input)
  1096  	return out, req.Send()
  1097  }
  1098  
  1099  // GetEventActionWithContext is the same as GetEventAction with the addition of
  1100  // the ability to pass a context and additional request options.
  1101  //
  1102  // See GetEventAction for details on how to use this API operation.
  1103  //
  1104  // The context must be non-nil and will be used for request cancellation. If
  1105  // the context is nil a panic will occur. In the future the SDK may create
  1106  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1107  // for more information on using Contexts.
  1108  func (c *DataExchange) GetEventActionWithContext(ctx aws.Context, input *GetEventActionInput, opts ...request.Option) (*GetEventActionOutput, error) {
  1109  	req, out := c.GetEventActionRequest(input)
  1110  	req.SetContext(ctx)
  1111  	req.ApplyOptions(opts...)
  1112  	return out, req.Send()
  1113  }
  1114  
  1115  const opGetJob = "GetJob"
  1116  
  1117  // GetJobRequest generates a "aws/request.Request" representing the
  1118  // client's request for the GetJob operation. The "output" return
  1119  // value will be populated with the request's response once the request completes
  1120  // successfully.
  1121  //
  1122  // Use "Send" method on the returned Request to send the API call to the service.
  1123  // the "output" return value is not valid until after Send returns without error.
  1124  //
  1125  // See GetJob for more information on using the GetJob
  1126  // API call, and error handling.
  1127  //
  1128  // This method is useful when you want to inject custom logic or configuration
  1129  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1130  //
  1131  //
  1132  //    // Example sending a request using the GetJobRequest method.
  1133  //    req, resp := client.GetJobRequest(params)
  1134  //
  1135  //    err := req.Send()
  1136  //    if err == nil { // resp is now filled
  1137  //        fmt.Println(resp)
  1138  //    }
  1139  //
  1140  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetJob
  1141  func (c *DataExchange) GetJobRequest(input *GetJobInput) (req *request.Request, output *GetJobOutput) {
  1142  	op := &request.Operation{
  1143  		Name:       opGetJob,
  1144  		HTTPMethod: "GET",
  1145  		HTTPPath:   "/v1/jobs/{JobId}",
  1146  	}
  1147  
  1148  	if input == nil {
  1149  		input = &GetJobInput{}
  1150  	}
  1151  
  1152  	output = &GetJobOutput{}
  1153  	req = c.newRequest(op, input, output)
  1154  	return
  1155  }
  1156  
  1157  // GetJob API operation for AWS Data Exchange.
  1158  //
  1159  // This operation returns information about a job.
  1160  //
  1161  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1162  // with awserr.Error's Code and Message methods to get detailed information about
  1163  // the error.
  1164  //
  1165  // See the AWS API reference guide for AWS Data Exchange's
  1166  // API operation GetJob for usage and error information.
  1167  //
  1168  // Returned Error Types:
  1169  //   * ResourceNotFoundException
  1170  //   The resource couldn't be found.
  1171  //
  1172  //   * ThrottlingException
  1173  //   The limit on the number of requests per second was exceeded.
  1174  //
  1175  //   * ValidationException
  1176  //   The request was invalid.
  1177  //
  1178  //   * InternalServerException
  1179  //   An exception occurred with the service.
  1180  //
  1181  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetJob
  1182  func (c *DataExchange) GetJob(input *GetJobInput) (*GetJobOutput, error) {
  1183  	req, out := c.GetJobRequest(input)
  1184  	return out, req.Send()
  1185  }
  1186  
  1187  // GetJobWithContext is the same as GetJob with the addition of
  1188  // the ability to pass a context and additional request options.
  1189  //
  1190  // See GetJob for details on how to use this API operation.
  1191  //
  1192  // The context must be non-nil and will be used for request cancellation. If
  1193  // the context is nil a panic will occur. In the future the SDK may create
  1194  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1195  // for more information on using Contexts.
  1196  func (c *DataExchange) GetJobWithContext(ctx aws.Context, input *GetJobInput, opts ...request.Option) (*GetJobOutput, error) {
  1197  	req, out := c.GetJobRequest(input)
  1198  	req.SetContext(ctx)
  1199  	req.ApplyOptions(opts...)
  1200  	return out, req.Send()
  1201  }
  1202  
  1203  const opGetRevision = "GetRevision"
  1204  
  1205  // GetRevisionRequest generates a "aws/request.Request" representing the
  1206  // client's request for the GetRevision operation. The "output" return
  1207  // value will be populated with the request's response once the request completes
  1208  // successfully.
  1209  //
  1210  // Use "Send" method on the returned Request to send the API call to the service.
  1211  // the "output" return value is not valid until after Send returns without error.
  1212  //
  1213  // See GetRevision for more information on using the GetRevision
  1214  // API call, and error handling.
  1215  //
  1216  // This method is useful when you want to inject custom logic or configuration
  1217  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1218  //
  1219  //
  1220  //    // Example sending a request using the GetRevisionRequest method.
  1221  //    req, resp := client.GetRevisionRequest(params)
  1222  //
  1223  //    err := req.Send()
  1224  //    if err == nil { // resp is now filled
  1225  //        fmt.Println(resp)
  1226  //    }
  1227  //
  1228  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetRevision
  1229  func (c *DataExchange) GetRevisionRequest(input *GetRevisionInput) (req *request.Request, output *GetRevisionOutput) {
  1230  	op := &request.Operation{
  1231  		Name:       opGetRevision,
  1232  		HTTPMethod: "GET",
  1233  		HTTPPath:   "/v1/data-sets/{DataSetId}/revisions/{RevisionId}",
  1234  	}
  1235  
  1236  	if input == nil {
  1237  		input = &GetRevisionInput{}
  1238  	}
  1239  
  1240  	output = &GetRevisionOutput{}
  1241  	req = c.newRequest(op, input, output)
  1242  	return
  1243  }
  1244  
  1245  // GetRevision API operation for AWS Data Exchange.
  1246  //
  1247  // This operation returns information about a revision.
  1248  //
  1249  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1250  // with awserr.Error's Code and Message methods to get detailed information about
  1251  // the error.
  1252  //
  1253  // See the AWS API reference guide for AWS Data Exchange's
  1254  // API operation GetRevision for usage and error information.
  1255  //
  1256  // Returned Error Types:
  1257  //   * ResourceNotFoundException
  1258  //   The resource couldn't be found.
  1259  //
  1260  //   * ThrottlingException
  1261  //   The limit on the number of requests per second was exceeded.
  1262  //
  1263  //   * ValidationException
  1264  //   The request was invalid.
  1265  //
  1266  //   * InternalServerException
  1267  //   An exception occurred with the service.
  1268  //
  1269  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetRevision
  1270  func (c *DataExchange) GetRevision(input *GetRevisionInput) (*GetRevisionOutput, error) {
  1271  	req, out := c.GetRevisionRequest(input)
  1272  	return out, req.Send()
  1273  }
  1274  
  1275  // GetRevisionWithContext is the same as GetRevision with the addition of
  1276  // the ability to pass a context and additional request options.
  1277  //
  1278  // See GetRevision for details on how to use this API operation.
  1279  //
  1280  // The context must be non-nil and will be used for request cancellation. If
  1281  // the context is nil a panic will occur. In the future the SDK may create
  1282  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1283  // for more information on using Contexts.
  1284  func (c *DataExchange) GetRevisionWithContext(ctx aws.Context, input *GetRevisionInput, opts ...request.Option) (*GetRevisionOutput, error) {
  1285  	req, out := c.GetRevisionRequest(input)
  1286  	req.SetContext(ctx)
  1287  	req.ApplyOptions(opts...)
  1288  	return out, req.Send()
  1289  }
  1290  
  1291  const opListDataSetRevisions = "ListDataSetRevisions"
  1292  
  1293  // ListDataSetRevisionsRequest generates a "aws/request.Request" representing the
  1294  // client's request for the ListDataSetRevisions operation. The "output" return
  1295  // value will be populated with the request's response once the request completes
  1296  // successfully.
  1297  //
  1298  // Use "Send" method on the returned Request to send the API call to the service.
  1299  // the "output" return value is not valid until after Send returns without error.
  1300  //
  1301  // See ListDataSetRevisions for more information on using the ListDataSetRevisions
  1302  // API call, and error handling.
  1303  //
  1304  // This method is useful when you want to inject custom logic or configuration
  1305  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1306  //
  1307  //
  1308  //    // Example sending a request using the ListDataSetRevisionsRequest method.
  1309  //    req, resp := client.ListDataSetRevisionsRequest(params)
  1310  //
  1311  //    err := req.Send()
  1312  //    if err == nil { // resp is now filled
  1313  //        fmt.Println(resp)
  1314  //    }
  1315  //
  1316  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListDataSetRevisions
  1317  func (c *DataExchange) ListDataSetRevisionsRequest(input *ListDataSetRevisionsInput) (req *request.Request, output *ListDataSetRevisionsOutput) {
  1318  	op := &request.Operation{
  1319  		Name:       opListDataSetRevisions,
  1320  		HTTPMethod: "GET",
  1321  		HTTPPath:   "/v1/data-sets/{DataSetId}/revisions",
  1322  		Paginator: &request.Paginator{
  1323  			InputTokens:     []string{"NextToken"},
  1324  			OutputTokens:    []string{"NextToken"},
  1325  			LimitToken:      "MaxResults",
  1326  			TruncationToken: "",
  1327  		},
  1328  	}
  1329  
  1330  	if input == nil {
  1331  		input = &ListDataSetRevisionsInput{}
  1332  	}
  1333  
  1334  	output = &ListDataSetRevisionsOutput{}
  1335  	req = c.newRequest(op, input, output)
  1336  	return
  1337  }
  1338  
  1339  // ListDataSetRevisions API operation for AWS Data Exchange.
  1340  //
  1341  // This operation lists a data set's revisions sorted by CreatedAt in descending
  1342  // order.
  1343  //
  1344  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1345  // with awserr.Error's Code and Message methods to get detailed information about
  1346  // the error.
  1347  //
  1348  // See the AWS API reference guide for AWS Data Exchange's
  1349  // API operation ListDataSetRevisions for usage and error information.
  1350  //
  1351  // Returned Error Types:
  1352  //   * ResourceNotFoundException
  1353  //   The resource couldn't be found.
  1354  //
  1355  //   * ThrottlingException
  1356  //   The limit on the number of requests per second was exceeded.
  1357  //
  1358  //   * ValidationException
  1359  //   The request was invalid.
  1360  //
  1361  //   * InternalServerException
  1362  //   An exception occurred with the service.
  1363  //
  1364  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListDataSetRevisions
  1365  func (c *DataExchange) ListDataSetRevisions(input *ListDataSetRevisionsInput) (*ListDataSetRevisionsOutput, error) {
  1366  	req, out := c.ListDataSetRevisionsRequest(input)
  1367  	return out, req.Send()
  1368  }
  1369  
  1370  // ListDataSetRevisionsWithContext is the same as ListDataSetRevisions with the addition of
  1371  // the ability to pass a context and additional request options.
  1372  //
  1373  // See ListDataSetRevisions for details on how to use this API operation.
  1374  //
  1375  // The context must be non-nil and will be used for request cancellation. If
  1376  // the context is nil a panic will occur. In the future the SDK may create
  1377  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1378  // for more information on using Contexts.
  1379  func (c *DataExchange) ListDataSetRevisionsWithContext(ctx aws.Context, input *ListDataSetRevisionsInput, opts ...request.Option) (*ListDataSetRevisionsOutput, error) {
  1380  	req, out := c.ListDataSetRevisionsRequest(input)
  1381  	req.SetContext(ctx)
  1382  	req.ApplyOptions(opts...)
  1383  	return out, req.Send()
  1384  }
  1385  
  1386  // ListDataSetRevisionsPages iterates over the pages of a ListDataSetRevisions operation,
  1387  // calling the "fn" function with the response data for each page. To stop
  1388  // iterating, return false from the fn function.
  1389  //
  1390  // See ListDataSetRevisions method for more information on how to use this operation.
  1391  //
  1392  // Note: This operation can generate multiple requests to a service.
  1393  //
  1394  //    // Example iterating over at most 3 pages of a ListDataSetRevisions operation.
  1395  //    pageNum := 0
  1396  //    err := client.ListDataSetRevisionsPages(params,
  1397  //        func(page *dataexchange.ListDataSetRevisionsOutput, lastPage bool) bool {
  1398  //            pageNum++
  1399  //            fmt.Println(page)
  1400  //            return pageNum <= 3
  1401  //        })
  1402  //
  1403  func (c *DataExchange) ListDataSetRevisionsPages(input *ListDataSetRevisionsInput, fn func(*ListDataSetRevisionsOutput, bool) bool) error {
  1404  	return c.ListDataSetRevisionsPagesWithContext(aws.BackgroundContext(), input, fn)
  1405  }
  1406  
  1407  // ListDataSetRevisionsPagesWithContext same as ListDataSetRevisionsPages except
  1408  // it takes a Context and allows setting request options on the pages.
  1409  //
  1410  // The context must be non-nil and will be used for request cancellation. If
  1411  // the context is nil a panic will occur. In the future the SDK may create
  1412  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1413  // for more information on using Contexts.
  1414  func (c *DataExchange) ListDataSetRevisionsPagesWithContext(ctx aws.Context, input *ListDataSetRevisionsInput, fn func(*ListDataSetRevisionsOutput, bool) bool, opts ...request.Option) error {
  1415  	p := request.Pagination{
  1416  		NewRequest: func() (*request.Request, error) {
  1417  			var inCpy *ListDataSetRevisionsInput
  1418  			if input != nil {
  1419  				tmp := *input
  1420  				inCpy = &tmp
  1421  			}
  1422  			req, _ := c.ListDataSetRevisionsRequest(inCpy)
  1423  			req.SetContext(ctx)
  1424  			req.ApplyOptions(opts...)
  1425  			return req, nil
  1426  		},
  1427  	}
  1428  
  1429  	for p.Next() {
  1430  		if !fn(p.Page().(*ListDataSetRevisionsOutput), !p.HasNextPage()) {
  1431  			break
  1432  		}
  1433  	}
  1434  
  1435  	return p.Err()
  1436  }
  1437  
  1438  const opListDataSets = "ListDataSets"
  1439  
  1440  // ListDataSetsRequest generates a "aws/request.Request" representing the
  1441  // client's request for the ListDataSets operation. The "output" return
  1442  // value will be populated with the request's response once the request completes
  1443  // successfully.
  1444  //
  1445  // Use "Send" method on the returned Request to send the API call to the service.
  1446  // the "output" return value is not valid until after Send returns without error.
  1447  //
  1448  // See ListDataSets for more information on using the ListDataSets
  1449  // API call, and error handling.
  1450  //
  1451  // This method is useful when you want to inject custom logic or configuration
  1452  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1453  //
  1454  //
  1455  //    // Example sending a request using the ListDataSetsRequest method.
  1456  //    req, resp := client.ListDataSetsRequest(params)
  1457  //
  1458  //    err := req.Send()
  1459  //    if err == nil { // resp is now filled
  1460  //        fmt.Println(resp)
  1461  //    }
  1462  //
  1463  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListDataSets
  1464  func (c *DataExchange) ListDataSetsRequest(input *ListDataSetsInput) (req *request.Request, output *ListDataSetsOutput) {
  1465  	op := &request.Operation{
  1466  		Name:       opListDataSets,
  1467  		HTTPMethod: "GET",
  1468  		HTTPPath:   "/v1/data-sets",
  1469  		Paginator: &request.Paginator{
  1470  			InputTokens:     []string{"NextToken"},
  1471  			OutputTokens:    []string{"NextToken"},
  1472  			LimitToken:      "MaxResults",
  1473  			TruncationToken: "",
  1474  		},
  1475  	}
  1476  
  1477  	if input == nil {
  1478  		input = &ListDataSetsInput{}
  1479  	}
  1480  
  1481  	output = &ListDataSetsOutput{}
  1482  	req = c.newRequest(op, input, output)
  1483  	return
  1484  }
  1485  
  1486  // ListDataSets API operation for AWS Data Exchange.
  1487  //
  1488  // This operation lists your data sets. When listing by origin OWNED, results
  1489  // are sorted by CreatedAt in descending order. When listing by origin ENTITLED,
  1490  // there is no order and the maxResults parameter is ignored.
  1491  //
  1492  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1493  // with awserr.Error's Code and Message methods to get detailed information about
  1494  // the error.
  1495  //
  1496  // See the AWS API reference guide for AWS Data Exchange's
  1497  // API operation ListDataSets for usage and error information.
  1498  //
  1499  // Returned Error Types:
  1500  //   * ResourceNotFoundException
  1501  //   The resource couldn't be found.
  1502  //
  1503  //   * ThrottlingException
  1504  //   The limit on the number of requests per second was exceeded.
  1505  //
  1506  //   * ValidationException
  1507  //   The request was invalid.
  1508  //
  1509  //   * InternalServerException
  1510  //   An exception occurred with the service.
  1511  //
  1512  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListDataSets
  1513  func (c *DataExchange) ListDataSets(input *ListDataSetsInput) (*ListDataSetsOutput, error) {
  1514  	req, out := c.ListDataSetsRequest(input)
  1515  	return out, req.Send()
  1516  }
  1517  
  1518  // ListDataSetsWithContext is the same as ListDataSets with the addition of
  1519  // the ability to pass a context and additional request options.
  1520  //
  1521  // See ListDataSets for details on how to use this API operation.
  1522  //
  1523  // The context must be non-nil and will be used for request cancellation. If
  1524  // the context is nil a panic will occur. In the future the SDK may create
  1525  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1526  // for more information on using Contexts.
  1527  func (c *DataExchange) ListDataSetsWithContext(ctx aws.Context, input *ListDataSetsInput, opts ...request.Option) (*ListDataSetsOutput, error) {
  1528  	req, out := c.ListDataSetsRequest(input)
  1529  	req.SetContext(ctx)
  1530  	req.ApplyOptions(opts...)
  1531  	return out, req.Send()
  1532  }
  1533  
  1534  // ListDataSetsPages iterates over the pages of a ListDataSets operation,
  1535  // calling the "fn" function with the response data for each page. To stop
  1536  // iterating, return false from the fn function.
  1537  //
  1538  // See ListDataSets method for more information on how to use this operation.
  1539  //
  1540  // Note: This operation can generate multiple requests to a service.
  1541  //
  1542  //    // Example iterating over at most 3 pages of a ListDataSets operation.
  1543  //    pageNum := 0
  1544  //    err := client.ListDataSetsPages(params,
  1545  //        func(page *dataexchange.ListDataSetsOutput, lastPage bool) bool {
  1546  //            pageNum++
  1547  //            fmt.Println(page)
  1548  //            return pageNum <= 3
  1549  //        })
  1550  //
  1551  func (c *DataExchange) ListDataSetsPages(input *ListDataSetsInput, fn func(*ListDataSetsOutput, bool) bool) error {
  1552  	return c.ListDataSetsPagesWithContext(aws.BackgroundContext(), input, fn)
  1553  }
  1554  
  1555  // ListDataSetsPagesWithContext same as ListDataSetsPages except
  1556  // it takes a Context and allows setting request options on the pages.
  1557  //
  1558  // The context must be non-nil and will be used for request cancellation. If
  1559  // the context is nil a panic will occur. In the future the SDK may create
  1560  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1561  // for more information on using Contexts.
  1562  func (c *DataExchange) ListDataSetsPagesWithContext(ctx aws.Context, input *ListDataSetsInput, fn func(*ListDataSetsOutput, bool) bool, opts ...request.Option) error {
  1563  	p := request.Pagination{
  1564  		NewRequest: func() (*request.Request, error) {
  1565  			var inCpy *ListDataSetsInput
  1566  			if input != nil {
  1567  				tmp := *input
  1568  				inCpy = &tmp
  1569  			}
  1570  			req, _ := c.ListDataSetsRequest(inCpy)
  1571  			req.SetContext(ctx)
  1572  			req.ApplyOptions(opts...)
  1573  			return req, nil
  1574  		},
  1575  	}
  1576  
  1577  	for p.Next() {
  1578  		if !fn(p.Page().(*ListDataSetsOutput), !p.HasNextPage()) {
  1579  			break
  1580  		}
  1581  	}
  1582  
  1583  	return p.Err()
  1584  }
  1585  
  1586  const opListEventActions = "ListEventActions"
  1587  
  1588  // ListEventActionsRequest generates a "aws/request.Request" representing the
  1589  // client's request for the ListEventActions operation. The "output" return
  1590  // value will be populated with the request's response once the request completes
  1591  // successfully.
  1592  //
  1593  // Use "Send" method on the returned Request to send the API call to the service.
  1594  // the "output" return value is not valid until after Send returns without error.
  1595  //
  1596  // See ListEventActions for more information on using the ListEventActions
  1597  // API call, and error handling.
  1598  //
  1599  // This method is useful when you want to inject custom logic or configuration
  1600  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1601  //
  1602  //
  1603  //    // Example sending a request using the ListEventActionsRequest method.
  1604  //    req, resp := client.ListEventActionsRequest(params)
  1605  //
  1606  //    err := req.Send()
  1607  //    if err == nil { // resp is now filled
  1608  //        fmt.Println(resp)
  1609  //    }
  1610  //
  1611  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListEventActions
  1612  func (c *DataExchange) ListEventActionsRequest(input *ListEventActionsInput) (req *request.Request, output *ListEventActionsOutput) {
  1613  	op := &request.Operation{
  1614  		Name:       opListEventActions,
  1615  		HTTPMethod: "GET",
  1616  		HTTPPath:   "/v1/event-actions",
  1617  		Paginator: &request.Paginator{
  1618  			InputTokens:     []string{"NextToken"},
  1619  			OutputTokens:    []string{"NextToken"},
  1620  			LimitToken:      "MaxResults",
  1621  			TruncationToken: "",
  1622  		},
  1623  	}
  1624  
  1625  	if input == nil {
  1626  		input = &ListEventActionsInput{}
  1627  	}
  1628  
  1629  	output = &ListEventActionsOutput{}
  1630  	req = c.newRequest(op, input, output)
  1631  	return
  1632  }
  1633  
  1634  // ListEventActions API operation for AWS Data Exchange.
  1635  //
  1636  // This operation lists your event actions.
  1637  //
  1638  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1639  // with awserr.Error's Code and Message methods to get detailed information about
  1640  // the error.
  1641  //
  1642  // See the AWS API reference guide for AWS Data Exchange's
  1643  // API operation ListEventActions for usage and error information.
  1644  //
  1645  // Returned Error Types:
  1646  //   * ResourceNotFoundException
  1647  //   The resource couldn't be found.
  1648  //
  1649  //   * ThrottlingException
  1650  //   The limit on the number of requests per second was exceeded.
  1651  //
  1652  //   * ValidationException
  1653  //   The request was invalid.
  1654  //
  1655  //   * InternalServerException
  1656  //   An exception occurred with the service.
  1657  //
  1658  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListEventActions
  1659  func (c *DataExchange) ListEventActions(input *ListEventActionsInput) (*ListEventActionsOutput, error) {
  1660  	req, out := c.ListEventActionsRequest(input)
  1661  	return out, req.Send()
  1662  }
  1663  
  1664  // ListEventActionsWithContext is the same as ListEventActions with the addition of
  1665  // the ability to pass a context and additional request options.
  1666  //
  1667  // See ListEventActions for details on how to use this API operation.
  1668  //
  1669  // The context must be non-nil and will be used for request cancellation. If
  1670  // the context is nil a panic will occur. In the future the SDK may create
  1671  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1672  // for more information on using Contexts.
  1673  func (c *DataExchange) ListEventActionsWithContext(ctx aws.Context, input *ListEventActionsInput, opts ...request.Option) (*ListEventActionsOutput, error) {
  1674  	req, out := c.ListEventActionsRequest(input)
  1675  	req.SetContext(ctx)
  1676  	req.ApplyOptions(opts...)
  1677  	return out, req.Send()
  1678  }
  1679  
  1680  // ListEventActionsPages iterates over the pages of a ListEventActions operation,
  1681  // calling the "fn" function with the response data for each page. To stop
  1682  // iterating, return false from the fn function.
  1683  //
  1684  // See ListEventActions method for more information on how to use this operation.
  1685  //
  1686  // Note: This operation can generate multiple requests to a service.
  1687  //
  1688  //    // Example iterating over at most 3 pages of a ListEventActions operation.
  1689  //    pageNum := 0
  1690  //    err := client.ListEventActionsPages(params,
  1691  //        func(page *dataexchange.ListEventActionsOutput, lastPage bool) bool {
  1692  //            pageNum++
  1693  //            fmt.Println(page)
  1694  //            return pageNum <= 3
  1695  //        })
  1696  //
  1697  func (c *DataExchange) ListEventActionsPages(input *ListEventActionsInput, fn func(*ListEventActionsOutput, bool) bool) error {
  1698  	return c.ListEventActionsPagesWithContext(aws.BackgroundContext(), input, fn)
  1699  }
  1700  
  1701  // ListEventActionsPagesWithContext same as ListEventActionsPages except
  1702  // it takes a Context and allows setting request options on the pages.
  1703  //
  1704  // The context must be non-nil and will be used for request cancellation. If
  1705  // the context is nil a panic will occur. In the future the SDK may create
  1706  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1707  // for more information on using Contexts.
  1708  func (c *DataExchange) ListEventActionsPagesWithContext(ctx aws.Context, input *ListEventActionsInput, fn func(*ListEventActionsOutput, bool) bool, opts ...request.Option) error {
  1709  	p := request.Pagination{
  1710  		NewRequest: func() (*request.Request, error) {
  1711  			var inCpy *ListEventActionsInput
  1712  			if input != nil {
  1713  				tmp := *input
  1714  				inCpy = &tmp
  1715  			}
  1716  			req, _ := c.ListEventActionsRequest(inCpy)
  1717  			req.SetContext(ctx)
  1718  			req.ApplyOptions(opts...)
  1719  			return req, nil
  1720  		},
  1721  	}
  1722  
  1723  	for p.Next() {
  1724  		if !fn(p.Page().(*ListEventActionsOutput), !p.HasNextPage()) {
  1725  			break
  1726  		}
  1727  	}
  1728  
  1729  	return p.Err()
  1730  }
  1731  
  1732  const opListJobs = "ListJobs"
  1733  
  1734  // ListJobsRequest generates a "aws/request.Request" representing the
  1735  // client's request for the ListJobs operation. The "output" return
  1736  // value will be populated with the request's response once the request completes
  1737  // successfully.
  1738  //
  1739  // Use "Send" method on the returned Request to send the API call to the service.
  1740  // the "output" return value is not valid until after Send returns without error.
  1741  //
  1742  // See ListJobs for more information on using the ListJobs
  1743  // API call, and error handling.
  1744  //
  1745  // This method is useful when you want to inject custom logic or configuration
  1746  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1747  //
  1748  //
  1749  //    // Example sending a request using the ListJobsRequest method.
  1750  //    req, resp := client.ListJobsRequest(params)
  1751  //
  1752  //    err := req.Send()
  1753  //    if err == nil { // resp is now filled
  1754  //        fmt.Println(resp)
  1755  //    }
  1756  //
  1757  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListJobs
  1758  func (c *DataExchange) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) {
  1759  	op := &request.Operation{
  1760  		Name:       opListJobs,
  1761  		HTTPMethod: "GET",
  1762  		HTTPPath:   "/v1/jobs",
  1763  		Paginator: &request.Paginator{
  1764  			InputTokens:     []string{"NextToken"},
  1765  			OutputTokens:    []string{"NextToken"},
  1766  			LimitToken:      "MaxResults",
  1767  			TruncationToken: "",
  1768  		},
  1769  	}
  1770  
  1771  	if input == nil {
  1772  		input = &ListJobsInput{}
  1773  	}
  1774  
  1775  	output = &ListJobsOutput{}
  1776  	req = c.newRequest(op, input, output)
  1777  	return
  1778  }
  1779  
  1780  // ListJobs API operation for AWS Data Exchange.
  1781  //
  1782  // This operation lists your jobs sorted by CreatedAt in descending order.
  1783  //
  1784  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1785  // with awserr.Error's Code and Message methods to get detailed information about
  1786  // the error.
  1787  //
  1788  // See the AWS API reference guide for AWS Data Exchange's
  1789  // API operation ListJobs for usage and error information.
  1790  //
  1791  // Returned Error Types:
  1792  //   * ResourceNotFoundException
  1793  //   The resource couldn't be found.
  1794  //
  1795  //   * ThrottlingException
  1796  //   The limit on the number of requests per second was exceeded.
  1797  //
  1798  //   * ValidationException
  1799  //   The request was invalid.
  1800  //
  1801  //   * InternalServerException
  1802  //   An exception occurred with the service.
  1803  //
  1804  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListJobs
  1805  func (c *DataExchange) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) {
  1806  	req, out := c.ListJobsRequest(input)
  1807  	return out, req.Send()
  1808  }
  1809  
  1810  // ListJobsWithContext is the same as ListJobs with the addition of
  1811  // the ability to pass a context and additional request options.
  1812  //
  1813  // See ListJobs for details on how to use this API operation.
  1814  //
  1815  // The context must be non-nil and will be used for request cancellation. If
  1816  // the context is nil a panic will occur. In the future the SDK may create
  1817  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1818  // for more information on using Contexts.
  1819  func (c *DataExchange) ListJobsWithContext(ctx aws.Context, input *ListJobsInput, opts ...request.Option) (*ListJobsOutput, error) {
  1820  	req, out := c.ListJobsRequest(input)
  1821  	req.SetContext(ctx)
  1822  	req.ApplyOptions(opts...)
  1823  	return out, req.Send()
  1824  }
  1825  
  1826  // ListJobsPages iterates over the pages of a ListJobs operation,
  1827  // calling the "fn" function with the response data for each page. To stop
  1828  // iterating, return false from the fn function.
  1829  //
  1830  // See ListJobs method for more information on how to use this operation.
  1831  //
  1832  // Note: This operation can generate multiple requests to a service.
  1833  //
  1834  //    // Example iterating over at most 3 pages of a ListJobs operation.
  1835  //    pageNum := 0
  1836  //    err := client.ListJobsPages(params,
  1837  //        func(page *dataexchange.ListJobsOutput, lastPage bool) bool {
  1838  //            pageNum++
  1839  //            fmt.Println(page)
  1840  //            return pageNum <= 3
  1841  //        })
  1842  //
  1843  func (c *DataExchange) ListJobsPages(input *ListJobsInput, fn func(*ListJobsOutput, bool) bool) error {
  1844  	return c.ListJobsPagesWithContext(aws.BackgroundContext(), input, fn)
  1845  }
  1846  
  1847  // ListJobsPagesWithContext same as ListJobsPages except
  1848  // it takes a Context and allows setting request options on the pages.
  1849  //
  1850  // The context must be non-nil and will be used for request cancellation. If
  1851  // the context is nil a panic will occur. In the future the SDK may create
  1852  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1853  // for more information on using Contexts.
  1854  func (c *DataExchange) ListJobsPagesWithContext(ctx aws.Context, input *ListJobsInput, fn func(*ListJobsOutput, bool) bool, opts ...request.Option) error {
  1855  	p := request.Pagination{
  1856  		NewRequest: func() (*request.Request, error) {
  1857  			var inCpy *ListJobsInput
  1858  			if input != nil {
  1859  				tmp := *input
  1860  				inCpy = &tmp
  1861  			}
  1862  			req, _ := c.ListJobsRequest(inCpy)
  1863  			req.SetContext(ctx)
  1864  			req.ApplyOptions(opts...)
  1865  			return req, nil
  1866  		},
  1867  	}
  1868  
  1869  	for p.Next() {
  1870  		if !fn(p.Page().(*ListJobsOutput), !p.HasNextPage()) {
  1871  			break
  1872  		}
  1873  	}
  1874  
  1875  	return p.Err()
  1876  }
  1877  
  1878  const opListRevisionAssets = "ListRevisionAssets"
  1879  
  1880  // ListRevisionAssetsRequest generates a "aws/request.Request" representing the
  1881  // client's request for the ListRevisionAssets operation. The "output" return
  1882  // value will be populated with the request's response once the request completes
  1883  // successfully.
  1884  //
  1885  // Use "Send" method on the returned Request to send the API call to the service.
  1886  // the "output" return value is not valid until after Send returns without error.
  1887  //
  1888  // See ListRevisionAssets for more information on using the ListRevisionAssets
  1889  // API call, and error handling.
  1890  //
  1891  // This method is useful when you want to inject custom logic or configuration
  1892  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1893  //
  1894  //
  1895  //    // Example sending a request using the ListRevisionAssetsRequest method.
  1896  //    req, resp := client.ListRevisionAssetsRequest(params)
  1897  //
  1898  //    err := req.Send()
  1899  //    if err == nil { // resp is now filled
  1900  //        fmt.Println(resp)
  1901  //    }
  1902  //
  1903  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListRevisionAssets
  1904  func (c *DataExchange) ListRevisionAssetsRequest(input *ListRevisionAssetsInput) (req *request.Request, output *ListRevisionAssetsOutput) {
  1905  	op := &request.Operation{
  1906  		Name:       opListRevisionAssets,
  1907  		HTTPMethod: "GET",
  1908  		HTTPPath:   "/v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets",
  1909  		Paginator: &request.Paginator{
  1910  			InputTokens:     []string{"NextToken"},
  1911  			OutputTokens:    []string{"NextToken"},
  1912  			LimitToken:      "MaxResults",
  1913  			TruncationToken: "",
  1914  		},
  1915  	}
  1916  
  1917  	if input == nil {
  1918  		input = &ListRevisionAssetsInput{}
  1919  	}
  1920  
  1921  	output = &ListRevisionAssetsOutput{}
  1922  	req = c.newRequest(op, input, output)
  1923  	return
  1924  }
  1925  
  1926  // ListRevisionAssets API operation for AWS Data Exchange.
  1927  //
  1928  // This operation lists a revision's assets sorted alphabetically in descending
  1929  // order.
  1930  //
  1931  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1932  // with awserr.Error's Code and Message methods to get detailed information about
  1933  // the error.
  1934  //
  1935  // See the AWS API reference guide for AWS Data Exchange's
  1936  // API operation ListRevisionAssets for usage and error information.
  1937  //
  1938  // Returned Error Types:
  1939  //   * ResourceNotFoundException
  1940  //   The resource couldn't be found.
  1941  //
  1942  //   * ThrottlingException
  1943  //   The limit on the number of requests per second was exceeded.
  1944  //
  1945  //   * ValidationException
  1946  //   The request was invalid.
  1947  //
  1948  //   * InternalServerException
  1949  //   An exception occurred with the service.
  1950  //
  1951  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListRevisionAssets
  1952  func (c *DataExchange) ListRevisionAssets(input *ListRevisionAssetsInput) (*ListRevisionAssetsOutput, error) {
  1953  	req, out := c.ListRevisionAssetsRequest(input)
  1954  	return out, req.Send()
  1955  }
  1956  
  1957  // ListRevisionAssetsWithContext is the same as ListRevisionAssets with the addition of
  1958  // the ability to pass a context and additional request options.
  1959  //
  1960  // See ListRevisionAssets for details on how to use this API operation.
  1961  //
  1962  // The context must be non-nil and will be used for request cancellation. If
  1963  // the context is nil a panic will occur. In the future the SDK may create
  1964  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1965  // for more information on using Contexts.
  1966  func (c *DataExchange) ListRevisionAssetsWithContext(ctx aws.Context, input *ListRevisionAssetsInput, opts ...request.Option) (*ListRevisionAssetsOutput, error) {
  1967  	req, out := c.ListRevisionAssetsRequest(input)
  1968  	req.SetContext(ctx)
  1969  	req.ApplyOptions(opts...)
  1970  	return out, req.Send()
  1971  }
  1972  
  1973  // ListRevisionAssetsPages iterates over the pages of a ListRevisionAssets operation,
  1974  // calling the "fn" function with the response data for each page. To stop
  1975  // iterating, return false from the fn function.
  1976  //
  1977  // See ListRevisionAssets method for more information on how to use this operation.
  1978  //
  1979  // Note: This operation can generate multiple requests to a service.
  1980  //
  1981  //    // Example iterating over at most 3 pages of a ListRevisionAssets operation.
  1982  //    pageNum := 0
  1983  //    err := client.ListRevisionAssetsPages(params,
  1984  //        func(page *dataexchange.ListRevisionAssetsOutput, lastPage bool) bool {
  1985  //            pageNum++
  1986  //            fmt.Println(page)
  1987  //            return pageNum <= 3
  1988  //        })
  1989  //
  1990  func (c *DataExchange) ListRevisionAssetsPages(input *ListRevisionAssetsInput, fn func(*ListRevisionAssetsOutput, bool) bool) error {
  1991  	return c.ListRevisionAssetsPagesWithContext(aws.BackgroundContext(), input, fn)
  1992  }
  1993  
  1994  // ListRevisionAssetsPagesWithContext same as ListRevisionAssetsPages except
  1995  // it takes a Context and allows setting request options on the pages.
  1996  //
  1997  // The context must be non-nil and will be used for request cancellation. If
  1998  // the context is nil a panic will occur. In the future the SDK may create
  1999  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2000  // for more information on using Contexts.
  2001  func (c *DataExchange) ListRevisionAssetsPagesWithContext(ctx aws.Context, input *ListRevisionAssetsInput, fn func(*ListRevisionAssetsOutput, bool) bool, opts ...request.Option) error {
  2002  	p := request.Pagination{
  2003  		NewRequest: func() (*request.Request, error) {
  2004  			var inCpy *ListRevisionAssetsInput
  2005  			if input != nil {
  2006  				tmp := *input
  2007  				inCpy = &tmp
  2008  			}
  2009  			req, _ := c.ListRevisionAssetsRequest(inCpy)
  2010  			req.SetContext(ctx)
  2011  			req.ApplyOptions(opts...)
  2012  			return req, nil
  2013  		},
  2014  	}
  2015  
  2016  	for p.Next() {
  2017  		if !fn(p.Page().(*ListRevisionAssetsOutput), !p.HasNextPage()) {
  2018  			break
  2019  		}
  2020  	}
  2021  
  2022  	return p.Err()
  2023  }
  2024  
  2025  const opListTagsForResource = "ListTagsForResource"
  2026  
  2027  // ListTagsForResourceRequest generates a "aws/request.Request" representing the
  2028  // client's request for the ListTagsForResource operation. The "output" return
  2029  // value will be populated with the request's response once the request completes
  2030  // successfully.
  2031  //
  2032  // Use "Send" method on the returned Request to send the API call to the service.
  2033  // the "output" return value is not valid until after Send returns without error.
  2034  //
  2035  // See ListTagsForResource for more information on using the ListTagsForResource
  2036  // API call, and error handling.
  2037  //
  2038  // This method is useful when you want to inject custom logic or configuration
  2039  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2040  //
  2041  //
  2042  //    // Example sending a request using the ListTagsForResourceRequest method.
  2043  //    req, resp := client.ListTagsForResourceRequest(params)
  2044  //
  2045  //    err := req.Send()
  2046  //    if err == nil { // resp is now filled
  2047  //        fmt.Println(resp)
  2048  //    }
  2049  //
  2050  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListTagsForResource
  2051  func (c *DataExchange) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
  2052  	op := &request.Operation{
  2053  		Name:       opListTagsForResource,
  2054  		HTTPMethod: "GET",
  2055  		HTTPPath:   "/tags/{resource-arn}",
  2056  	}
  2057  
  2058  	if input == nil {
  2059  		input = &ListTagsForResourceInput{}
  2060  	}
  2061  
  2062  	output = &ListTagsForResourceOutput{}
  2063  	req = c.newRequest(op, input, output)
  2064  	return
  2065  }
  2066  
  2067  // ListTagsForResource API operation for AWS Data Exchange.
  2068  //
  2069  // This operation lists the tags on the resource.
  2070  //
  2071  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2072  // with awserr.Error's Code and Message methods to get detailed information about
  2073  // the error.
  2074  //
  2075  // See the AWS API reference guide for AWS Data Exchange's
  2076  // API operation ListTagsForResource for usage and error information.
  2077  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListTagsForResource
  2078  func (c *DataExchange) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
  2079  	req, out := c.ListTagsForResourceRequest(input)
  2080  	return out, req.Send()
  2081  }
  2082  
  2083  // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
  2084  // the ability to pass a context and additional request options.
  2085  //
  2086  // See ListTagsForResource for details on how to use this API operation.
  2087  //
  2088  // The context must be non-nil and will be used for request cancellation. If
  2089  // the context is nil a panic will occur. In the future the SDK may create
  2090  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2091  // for more information on using Contexts.
  2092  func (c *DataExchange) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
  2093  	req, out := c.ListTagsForResourceRequest(input)
  2094  	req.SetContext(ctx)
  2095  	req.ApplyOptions(opts...)
  2096  	return out, req.Send()
  2097  }
  2098  
  2099  const opStartJob = "StartJob"
  2100  
  2101  // StartJobRequest generates a "aws/request.Request" representing the
  2102  // client's request for the StartJob operation. The "output" return
  2103  // value will be populated with the request's response once the request completes
  2104  // successfully.
  2105  //
  2106  // Use "Send" method on the returned Request to send the API call to the service.
  2107  // the "output" return value is not valid until after Send returns without error.
  2108  //
  2109  // See StartJob for more information on using the StartJob
  2110  // API call, and error handling.
  2111  //
  2112  // This method is useful when you want to inject custom logic or configuration
  2113  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2114  //
  2115  //
  2116  //    // Example sending a request using the StartJobRequest method.
  2117  //    req, resp := client.StartJobRequest(params)
  2118  //
  2119  //    err := req.Send()
  2120  //    if err == nil { // resp is now filled
  2121  //        fmt.Println(resp)
  2122  //    }
  2123  //
  2124  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/StartJob
  2125  func (c *DataExchange) StartJobRequest(input *StartJobInput) (req *request.Request, output *StartJobOutput) {
  2126  	op := &request.Operation{
  2127  		Name:       opStartJob,
  2128  		HTTPMethod: "PATCH",
  2129  		HTTPPath:   "/v1/jobs/{JobId}",
  2130  	}
  2131  
  2132  	if input == nil {
  2133  		input = &StartJobInput{}
  2134  	}
  2135  
  2136  	output = &StartJobOutput{}
  2137  	req = c.newRequest(op, input, output)
  2138  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2139  	return
  2140  }
  2141  
  2142  // StartJob API operation for AWS Data Exchange.
  2143  //
  2144  // This operation starts a job.
  2145  //
  2146  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2147  // with awserr.Error's Code and Message methods to get detailed information about
  2148  // the error.
  2149  //
  2150  // See the AWS API reference guide for AWS Data Exchange's
  2151  // API operation StartJob for usage and error information.
  2152  //
  2153  // Returned Error Types:
  2154  //   * ValidationException
  2155  //   The request was invalid.
  2156  //
  2157  //   * InternalServerException
  2158  //   An exception occurred with the service.
  2159  //
  2160  //   * AccessDeniedException
  2161  //   Access to the resource is denied.
  2162  //
  2163  //   * ResourceNotFoundException
  2164  //   The resource couldn't be found.
  2165  //
  2166  //   * ThrottlingException
  2167  //   The limit on the number of requests per second was exceeded.
  2168  //
  2169  //   * ConflictException
  2170  //   The request couldn't be completed because it conflicted with the current
  2171  //   state of the resource.
  2172  //
  2173  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/StartJob
  2174  func (c *DataExchange) StartJob(input *StartJobInput) (*StartJobOutput, error) {
  2175  	req, out := c.StartJobRequest(input)
  2176  	return out, req.Send()
  2177  }
  2178  
  2179  // StartJobWithContext is the same as StartJob with the addition of
  2180  // the ability to pass a context and additional request options.
  2181  //
  2182  // See StartJob for details on how to use this API operation.
  2183  //
  2184  // The context must be non-nil and will be used for request cancellation. If
  2185  // the context is nil a panic will occur. In the future the SDK may create
  2186  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2187  // for more information on using Contexts.
  2188  func (c *DataExchange) StartJobWithContext(ctx aws.Context, input *StartJobInput, opts ...request.Option) (*StartJobOutput, error) {
  2189  	req, out := c.StartJobRequest(input)
  2190  	req.SetContext(ctx)
  2191  	req.ApplyOptions(opts...)
  2192  	return out, req.Send()
  2193  }
  2194  
  2195  const opTagResource = "TagResource"
  2196  
  2197  // TagResourceRequest generates a "aws/request.Request" representing the
  2198  // client's request for the TagResource operation. The "output" return
  2199  // value will be populated with the request's response once the request completes
  2200  // successfully.
  2201  //
  2202  // Use "Send" method on the returned Request to send the API call to the service.
  2203  // the "output" return value is not valid until after Send returns without error.
  2204  //
  2205  // See TagResource for more information on using the TagResource
  2206  // API call, and error handling.
  2207  //
  2208  // This method is useful when you want to inject custom logic or configuration
  2209  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2210  //
  2211  //
  2212  //    // Example sending a request using the TagResourceRequest method.
  2213  //    req, resp := client.TagResourceRequest(params)
  2214  //
  2215  //    err := req.Send()
  2216  //    if err == nil { // resp is now filled
  2217  //        fmt.Println(resp)
  2218  //    }
  2219  //
  2220  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/TagResource
  2221  func (c *DataExchange) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
  2222  	op := &request.Operation{
  2223  		Name:       opTagResource,
  2224  		HTTPMethod: "POST",
  2225  		HTTPPath:   "/tags/{resource-arn}",
  2226  	}
  2227  
  2228  	if input == nil {
  2229  		input = &TagResourceInput{}
  2230  	}
  2231  
  2232  	output = &TagResourceOutput{}
  2233  	req = c.newRequest(op, input, output)
  2234  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2235  	return
  2236  }
  2237  
  2238  // TagResource API operation for AWS Data Exchange.
  2239  //
  2240  // This operation tags a resource.
  2241  //
  2242  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2243  // with awserr.Error's Code and Message methods to get detailed information about
  2244  // the error.
  2245  //
  2246  // See the AWS API reference guide for AWS Data Exchange's
  2247  // API operation TagResource for usage and error information.
  2248  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/TagResource
  2249  func (c *DataExchange) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
  2250  	req, out := c.TagResourceRequest(input)
  2251  	return out, req.Send()
  2252  }
  2253  
  2254  // TagResourceWithContext is the same as TagResource with the addition of
  2255  // the ability to pass a context and additional request options.
  2256  //
  2257  // See TagResource for details on how to use this API operation.
  2258  //
  2259  // The context must be non-nil and will be used for request cancellation. If
  2260  // the context is nil a panic will occur. In the future the SDK may create
  2261  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2262  // for more information on using Contexts.
  2263  func (c *DataExchange) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
  2264  	req, out := c.TagResourceRequest(input)
  2265  	req.SetContext(ctx)
  2266  	req.ApplyOptions(opts...)
  2267  	return out, req.Send()
  2268  }
  2269  
  2270  const opUntagResource = "UntagResource"
  2271  
  2272  // UntagResourceRequest generates a "aws/request.Request" representing the
  2273  // client's request for the UntagResource operation. The "output" return
  2274  // value will be populated with the request's response once the request completes
  2275  // successfully.
  2276  //
  2277  // Use "Send" method on the returned Request to send the API call to the service.
  2278  // the "output" return value is not valid until after Send returns without error.
  2279  //
  2280  // See UntagResource for more information on using the UntagResource
  2281  // API call, and error handling.
  2282  //
  2283  // This method is useful when you want to inject custom logic or configuration
  2284  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2285  //
  2286  //
  2287  //    // Example sending a request using the UntagResourceRequest method.
  2288  //    req, resp := client.UntagResourceRequest(params)
  2289  //
  2290  //    err := req.Send()
  2291  //    if err == nil { // resp is now filled
  2292  //        fmt.Println(resp)
  2293  //    }
  2294  //
  2295  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UntagResource
  2296  func (c *DataExchange) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
  2297  	op := &request.Operation{
  2298  		Name:       opUntagResource,
  2299  		HTTPMethod: "DELETE",
  2300  		HTTPPath:   "/tags/{resource-arn}",
  2301  	}
  2302  
  2303  	if input == nil {
  2304  		input = &UntagResourceInput{}
  2305  	}
  2306  
  2307  	output = &UntagResourceOutput{}
  2308  	req = c.newRequest(op, input, output)
  2309  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2310  	return
  2311  }
  2312  
  2313  // UntagResource API operation for AWS Data Exchange.
  2314  //
  2315  // This operation removes one or more tags from a resource.
  2316  //
  2317  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2318  // with awserr.Error's Code and Message methods to get detailed information about
  2319  // the error.
  2320  //
  2321  // See the AWS API reference guide for AWS Data Exchange's
  2322  // API operation UntagResource for usage and error information.
  2323  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UntagResource
  2324  func (c *DataExchange) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
  2325  	req, out := c.UntagResourceRequest(input)
  2326  	return out, req.Send()
  2327  }
  2328  
  2329  // UntagResourceWithContext is the same as UntagResource with the addition of
  2330  // the ability to pass a context and additional request options.
  2331  //
  2332  // See UntagResource for details on how to use this API operation.
  2333  //
  2334  // The context must be non-nil and will be used for request cancellation. If
  2335  // the context is nil a panic will occur. In the future the SDK may create
  2336  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2337  // for more information on using Contexts.
  2338  func (c *DataExchange) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
  2339  	req, out := c.UntagResourceRequest(input)
  2340  	req.SetContext(ctx)
  2341  	req.ApplyOptions(opts...)
  2342  	return out, req.Send()
  2343  }
  2344  
  2345  const opUpdateAsset = "UpdateAsset"
  2346  
  2347  // UpdateAssetRequest generates a "aws/request.Request" representing the
  2348  // client's request for the UpdateAsset operation. The "output" return
  2349  // value will be populated with the request's response once the request completes
  2350  // successfully.
  2351  //
  2352  // Use "Send" method on the returned Request to send the API call to the service.
  2353  // the "output" return value is not valid until after Send returns without error.
  2354  //
  2355  // See UpdateAsset for more information on using the UpdateAsset
  2356  // API call, and error handling.
  2357  //
  2358  // This method is useful when you want to inject custom logic or configuration
  2359  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2360  //
  2361  //
  2362  //    // Example sending a request using the UpdateAssetRequest method.
  2363  //    req, resp := client.UpdateAssetRequest(params)
  2364  //
  2365  //    err := req.Send()
  2366  //    if err == nil { // resp is now filled
  2367  //        fmt.Println(resp)
  2368  //    }
  2369  //
  2370  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateAsset
  2371  func (c *DataExchange) UpdateAssetRequest(input *UpdateAssetInput) (req *request.Request, output *UpdateAssetOutput) {
  2372  	op := &request.Operation{
  2373  		Name:       opUpdateAsset,
  2374  		HTTPMethod: "PATCH",
  2375  		HTTPPath:   "/v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets/{AssetId}",
  2376  	}
  2377  
  2378  	if input == nil {
  2379  		input = &UpdateAssetInput{}
  2380  	}
  2381  
  2382  	output = &UpdateAssetOutput{}
  2383  	req = c.newRequest(op, input, output)
  2384  	return
  2385  }
  2386  
  2387  // UpdateAsset API operation for AWS Data Exchange.
  2388  //
  2389  // This operation updates an asset.
  2390  //
  2391  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2392  // with awserr.Error's Code and Message methods to get detailed information about
  2393  // the error.
  2394  //
  2395  // See the AWS API reference guide for AWS Data Exchange's
  2396  // API operation UpdateAsset for usage and error information.
  2397  //
  2398  // Returned Error Types:
  2399  //   * ValidationException
  2400  //   The request was invalid.
  2401  //
  2402  //   * InternalServerException
  2403  //   An exception occurred with the service.
  2404  //
  2405  //   * AccessDeniedException
  2406  //   Access to the resource is denied.
  2407  //
  2408  //   * ResourceNotFoundException
  2409  //   The resource couldn't be found.
  2410  //
  2411  //   * ThrottlingException
  2412  //   The limit on the number of requests per second was exceeded.
  2413  //
  2414  //   * ConflictException
  2415  //   The request couldn't be completed because it conflicted with the current
  2416  //   state of the resource.
  2417  //
  2418  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateAsset
  2419  func (c *DataExchange) UpdateAsset(input *UpdateAssetInput) (*UpdateAssetOutput, error) {
  2420  	req, out := c.UpdateAssetRequest(input)
  2421  	return out, req.Send()
  2422  }
  2423  
  2424  // UpdateAssetWithContext is the same as UpdateAsset with the addition of
  2425  // the ability to pass a context and additional request options.
  2426  //
  2427  // See UpdateAsset for details on how to use this API operation.
  2428  //
  2429  // The context must be non-nil and will be used for request cancellation. If
  2430  // the context is nil a panic will occur. In the future the SDK may create
  2431  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2432  // for more information on using Contexts.
  2433  func (c *DataExchange) UpdateAssetWithContext(ctx aws.Context, input *UpdateAssetInput, opts ...request.Option) (*UpdateAssetOutput, error) {
  2434  	req, out := c.UpdateAssetRequest(input)
  2435  	req.SetContext(ctx)
  2436  	req.ApplyOptions(opts...)
  2437  	return out, req.Send()
  2438  }
  2439  
  2440  const opUpdateDataSet = "UpdateDataSet"
  2441  
  2442  // UpdateDataSetRequest generates a "aws/request.Request" representing the
  2443  // client's request for the UpdateDataSet operation. The "output" return
  2444  // value will be populated with the request's response once the request completes
  2445  // successfully.
  2446  //
  2447  // Use "Send" method on the returned Request to send the API call to the service.
  2448  // the "output" return value is not valid until after Send returns without error.
  2449  //
  2450  // See UpdateDataSet for more information on using the UpdateDataSet
  2451  // API call, and error handling.
  2452  //
  2453  // This method is useful when you want to inject custom logic or configuration
  2454  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2455  //
  2456  //
  2457  //    // Example sending a request using the UpdateDataSetRequest method.
  2458  //    req, resp := client.UpdateDataSetRequest(params)
  2459  //
  2460  //    err := req.Send()
  2461  //    if err == nil { // resp is now filled
  2462  //        fmt.Println(resp)
  2463  //    }
  2464  //
  2465  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateDataSet
  2466  func (c *DataExchange) UpdateDataSetRequest(input *UpdateDataSetInput) (req *request.Request, output *UpdateDataSetOutput) {
  2467  	op := &request.Operation{
  2468  		Name:       opUpdateDataSet,
  2469  		HTTPMethod: "PATCH",
  2470  		HTTPPath:   "/v1/data-sets/{DataSetId}",
  2471  	}
  2472  
  2473  	if input == nil {
  2474  		input = &UpdateDataSetInput{}
  2475  	}
  2476  
  2477  	output = &UpdateDataSetOutput{}
  2478  	req = c.newRequest(op, input, output)
  2479  	return
  2480  }
  2481  
  2482  // UpdateDataSet API operation for AWS Data Exchange.
  2483  //
  2484  // This operation updates a data set.
  2485  //
  2486  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2487  // with awserr.Error's Code and Message methods to get detailed information about
  2488  // the error.
  2489  //
  2490  // See the AWS API reference guide for AWS Data Exchange's
  2491  // API operation UpdateDataSet for usage and error information.
  2492  //
  2493  // Returned Error Types:
  2494  //   * ResourceNotFoundException
  2495  //   The resource couldn't be found.
  2496  //
  2497  //   * ThrottlingException
  2498  //   The limit on the number of requests per second was exceeded.
  2499  //
  2500  //   * ValidationException
  2501  //   The request was invalid.
  2502  //
  2503  //   * InternalServerException
  2504  //   An exception occurred with the service.
  2505  //
  2506  //   * AccessDeniedException
  2507  //   Access to the resource is denied.
  2508  //
  2509  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateDataSet
  2510  func (c *DataExchange) UpdateDataSet(input *UpdateDataSetInput) (*UpdateDataSetOutput, error) {
  2511  	req, out := c.UpdateDataSetRequest(input)
  2512  	return out, req.Send()
  2513  }
  2514  
  2515  // UpdateDataSetWithContext is the same as UpdateDataSet with the addition of
  2516  // the ability to pass a context and additional request options.
  2517  //
  2518  // See UpdateDataSet for details on how to use this API operation.
  2519  //
  2520  // The context must be non-nil and will be used for request cancellation. If
  2521  // the context is nil a panic will occur. In the future the SDK may create
  2522  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2523  // for more information on using Contexts.
  2524  func (c *DataExchange) UpdateDataSetWithContext(ctx aws.Context, input *UpdateDataSetInput, opts ...request.Option) (*UpdateDataSetOutput, error) {
  2525  	req, out := c.UpdateDataSetRequest(input)
  2526  	req.SetContext(ctx)
  2527  	req.ApplyOptions(opts...)
  2528  	return out, req.Send()
  2529  }
  2530  
  2531  const opUpdateEventAction = "UpdateEventAction"
  2532  
  2533  // UpdateEventActionRequest generates a "aws/request.Request" representing the
  2534  // client's request for the UpdateEventAction operation. The "output" return
  2535  // value will be populated with the request's response once the request completes
  2536  // successfully.
  2537  //
  2538  // Use "Send" method on the returned Request to send the API call to the service.
  2539  // the "output" return value is not valid until after Send returns without error.
  2540  //
  2541  // See UpdateEventAction for more information on using the UpdateEventAction
  2542  // API call, and error handling.
  2543  //
  2544  // This method is useful when you want to inject custom logic or configuration
  2545  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2546  //
  2547  //
  2548  //    // Example sending a request using the UpdateEventActionRequest method.
  2549  //    req, resp := client.UpdateEventActionRequest(params)
  2550  //
  2551  //    err := req.Send()
  2552  //    if err == nil { // resp is now filled
  2553  //        fmt.Println(resp)
  2554  //    }
  2555  //
  2556  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateEventAction
  2557  func (c *DataExchange) UpdateEventActionRequest(input *UpdateEventActionInput) (req *request.Request, output *UpdateEventActionOutput) {
  2558  	op := &request.Operation{
  2559  		Name:       opUpdateEventAction,
  2560  		HTTPMethod: "PATCH",
  2561  		HTTPPath:   "/v1/event-actions/{EventActionId}",
  2562  	}
  2563  
  2564  	if input == nil {
  2565  		input = &UpdateEventActionInput{}
  2566  	}
  2567  
  2568  	output = &UpdateEventActionOutput{}
  2569  	req = c.newRequest(op, input, output)
  2570  	return
  2571  }
  2572  
  2573  // UpdateEventAction API operation for AWS Data Exchange.
  2574  //
  2575  // This operation updates the event action.
  2576  //
  2577  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2578  // with awserr.Error's Code and Message methods to get detailed information about
  2579  // the error.
  2580  //
  2581  // See the AWS API reference guide for AWS Data Exchange's
  2582  // API operation UpdateEventAction for usage and error information.
  2583  //
  2584  // Returned Error Types:
  2585  //   * ResourceNotFoundException
  2586  //   The resource couldn't be found.
  2587  //
  2588  //   * ThrottlingException
  2589  //   The limit on the number of requests per second was exceeded.
  2590  //
  2591  //   * ValidationException
  2592  //   The request was invalid.
  2593  //
  2594  //   * InternalServerException
  2595  //   An exception occurred with the service.
  2596  //
  2597  //   * AccessDeniedException
  2598  //   Access to the resource is denied.
  2599  //
  2600  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateEventAction
  2601  func (c *DataExchange) UpdateEventAction(input *UpdateEventActionInput) (*UpdateEventActionOutput, error) {
  2602  	req, out := c.UpdateEventActionRequest(input)
  2603  	return out, req.Send()
  2604  }
  2605  
  2606  // UpdateEventActionWithContext is the same as UpdateEventAction with the addition of
  2607  // the ability to pass a context and additional request options.
  2608  //
  2609  // See UpdateEventAction for details on how to use this API operation.
  2610  //
  2611  // The context must be non-nil and will be used for request cancellation. If
  2612  // the context is nil a panic will occur. In the future the SDK may create
  2613  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2614  // for more information on using Contexts.
  2615  func (c *DataExchange) UpdateEventActionWithContext(ctx aws.Context, input *UpdateEventActionInput, opts ...request.Option) (*UpdateEventActionOutput, error) {
  2616  	req, out := c.UpdateEventActionRequest(input)
  2617  	req.SetContext(ctx)
  2618  	req.ApplyOptions(opts...)
  2619  	return out, req.Send()
  2620  }
  2621  
  2622  const opUpdateRevision = "UpdateRevision"
  2623  
  2624  // UpdateRevisionRequest generates a "aws/request.Request" representing the
  2625  // client's request for the UpdateRevision operation. The "output" return
  2626  // value will be populated with the request's response once the request completes
  2627  // successfully.
  2628  //
  2629  // Use "Send" method on the returned Request to send the API call to the service.
  2630  // the "output" return value is not valid until after Send returns without error.
  2631  //
  2632  // See UpdateRevision for more information on using the UpdateRevision
  2633  // API call, and error handling.
  2634  //
  2635  // This method is useful when you want to inject custom logic or configuration
  2636  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2637  //
  2638  //
  2639  //    // Example sending a request using the UpdateRevisionRequest method.
  2640  //    req, resp := client.UpdateRevisionRequest(params)
  2641  //
  2642  //    err := req.Send()
  2643  //    if err == nil { // resp is now filled
  2644  //        fmt.Println(resp)
  2645  //    }
  2646  //
  2647  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateRevision
  2648  func (c *DataExchange) UpdateRevisionRequest(input *UpdateRevisionInput) (req *request.Request, output *UpdateRevisionOutput) {
  2649  	op := &request.Operation{
  2650  		Name:       opUpdateRevision,
  2651  		HTTPMethod: "PATCH",
  2652  		HTTPPath:   "/v1/data-sets/{DataSetId}/revisions/{RevisionId}",
  2653  	}
  2654  
  2655  	if input == nil {
  2656  		input = &UpdateRevisionInput{}
  2657  	}
  2658  
  2659  	output = &UpdateRevisionOutput{}
  2660  	req = c.newRequest(op, input, output)
  2661  	return
  2662  }
  2663  
  2664  // UpdateRevision API operation for AWS Data Exchange.
  2665  //
  2666  // This operation updates a revision.
  2667  //
  2668  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2669  // with awserr.Error's Code and Message methods to get detailed information about
  2670  // the error.
  2671  //
  2672  // See the AWS API reference guide for AWS Data Exchange's
  2673  // API operation UpdateRevision for usage and error information.
  2674  //
  2675  // Returned Error Types:
  2676  //   * ValidationException
  2677  //   The request was invalid.
  2678  //
  2679  //   * InternalServerException
  2680  //   An exception occurred with the service.
  2681  //
  2682  //   * AccessDeniedException
  2683  //   Access to the resource is denied.
  2684  //
  2685  //   * ResourceNotFoundException
  2686  //   The resource couldn't be found.
  2687  //
  2688  //   * ThrottlingException
  2689  //   The limit on the number of requests per second was exceeded.
  2690  //
  2691  //   * ConflictException
  2692  //   The request couldn't be completed because it conflicted with the current
  2693  //   state of the resource.
  2694  //
  2695  // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateRevision
  2696  func (c *DataExchange) UpdateRevision(input *UpdateRevisionInput) (*UpdateRevisionOutput, error) {
  2697  	req, out := c.UpdateRevisionRequest(input)
  2698  	return out, req.Send()
  2699  }
  2700  
  2701  // UpdateRevisionWithContext is the same as UpdateRevision with the addition of
  2702  // the ability to pass a context and additional request options.
  2703  //
  2704  // See UpdateRevision for details on how to use this API operation.
  2705  //
  2706  // The context must be non-nil and will be used for request cancellation. If
  2707  // the context is nil a panic will occur. In the future the SDK may create
  2708  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2709  // for more information on using Contexts.
  2710  func (c *DataExchange) UpdateRevisionWithContext(ctx aws.Context, input *UpdateRevisionInput, opts ...request.Option) (*UpdateRevisionOutput, error) {
  2711  	req, out := c.UpdateRevisionRequest(input)
  2712  	req.SetContext(ctx)
  2713  	req.ApplyOptions(opts...)
  2714  	return out, req.Send()
  2715  }
  2716  
  2717  // Access to the resource is denied.
  2718  type AccessDeniedException struct {
  2719  	_            struct{}                  `type:"structure"`
  2720  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  2721  
  2722  	// Access to the resource is denied.
  2723  	Message_ *string `locationName:"Message" type:"string"`
  2724  }
  2725  
  2726  // String returns the string representation.
  2727  //
  2728  // API parameter values that are decorated as "sensitive" in the API will not
  2729  // be included in the string output. The member name will be present, but the
  2730  // value will be replaced with "sensitive".
  2731  func (s AccessDeniedException) String() string {
  2732  	return awsutil.Prettify(s)
  2733  }
  2734  
  2735  // GoString returns the string representation.
  2736  //
  2737  // API parameter values that are decorated as "sensitive" in the API will not
  2738  // be included in the string output. The member name will be present, but the
  2739  // value will be replaced with "sensitive".
  2740  func (s AccessDeniedException) GoString() string {
  2741  	return s.String()
  2742  }
  2743  
  2744  func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
  2745  	return &AccessDeniedException{
  2746  		RespMetadata: v,
  2747  	}
  2748  }
  2749  
  2750  // Code returns the exception type name.
  2751  func (s *AccessDeniedException) Code() string {
  2752  	return "AccessDeniedException"
  2753  }
  2754  
  2755  // Message returns the exception's message.
  2756  func (s *AccessDeniedException) Message() string {
  2757  	if s.Message_ != nil {
  2758  		return *s.Message_
  2759  	}
  2760  	return ""
  2761  }
  2762  
  2763  // OrigErr always returns nil, satisfies awserr.Error interface.
  2764  func (s *AccessDeniedException) OrigErr() error {
  2765  	return nil
  2766  }
  2767  
  2768  func (s *AccessDeniedException) Error() string {
  2769  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  2770  }
  2771  
  2772  // Status code returns the HTTP status code for the request's response error.
  2773  func (s *AccessDeniedException) StatusCode() int {
  2774  	return s.RespMetadata.StatusCode
  2775  }
  2776  
  2777  // RequestID returns the service's response RequestID for request.
  2778  func (s *AccessDeniedException) RequestID() string {
  2779  	return s.RespMetadata.RequestID
  2780  }
  2781  
  2782  type Action struct {
  2783  	_ struct{} `type:"structure"`
  2784  
  2785  	// Details of the operation to be performed by the job.
  2786  	ExportRevisionToS3 *AutoExportRevisionToS3RequestDetails `type:"structure"`
  2787  }
  2788  
  2789  // String returns the string representation.
  2790  //
  2791  // API parameter values that are decorated as "sensitive" in the API will not
  2792  // be included in the string output. The member name will be present, but the
  2793  // value will be replaced with "sensitive".
  2794  func (s Action) String() string {
  2795  	return awsutil.Prettify(s)
  2796  }
  2797  
  2798  // GoString returns the string representation.
  2799  //
  2800  // API parameter values that are decorated as "sensitive" in the API will not
  2801  // be included in the string output. The member name will be present, but the
  2802  // value will be replaced with "sensitive".
  2803  func (s Action) GoString() string {
  2804  	return s.String()
  2805  }
  2806  
  2807  // Validate inspects the fields of the type to determine if they are valid.
  2808  func (s *Action) Validate() error {
  2809  	invalidParams := request.ErrInvalidParams{Context: "Action"}
  2810  	if s.ExportRevisionToS3 != nil {
  2811  		if err := s.ExportRevisionToS3.Validate(); err != nil {
  2812  			invalidParams.AddNested("ExportRevisionToS3", err.(request.ErrInvalidParams))
  2813  		}
  2814  	}
  2815  
  2816  	if invalidParams.Len() > 0 {
  2817  		return invalidParams
  2818  	}
  2819  	return nil
  2820  }
  2821  
  2822  // SetExportRevisionToS3 sets the ExportRevisionToS3 field's value.
  2823  func (s *Action) SetExportRevisionToS3(v *AutoExportRevisionToS3RequestDetails) *Action {
  2824  	s.ExportRevisionToS3 = v
  2825  	return s
  2826  }
  2827  
  2828  // The destination for the asset.
  2829  type AssetDestinationEntry struct {
  2830  	_ struct{} `type:"structure"`
  2831  
  2832  	// The unique identifier for the asset.
  2833  	//
  2834  	// AssetId is a required field
  2835  	AssetId *string `type:"string" required:"true"`
  2836  
  2837  	// The S3 bucket that is the destination for the asset.
  2838  	//
  2839  	// Bucket is a required field
  2840  	Bucket *string `type:"string" required:"true"`
  2841  
  2842  	// The name of the object in Amazon S3 for the asset.
  2843  	Key *string `type:"string"`
  2844  }
  2845  
  2846  // String returns the string representation.
  2847  //
  2848  // API parameter values that are decorated as "sensitive" in the API will not
  2849  // be included in the string output. The member name will be present, but the
  2850  // value will be replaced with "sensitive".
  2851  func (s AssetDestinationEntry) String() string {
  2852  	return awsutil.Prettify(s)
  2853  }
  2854  
  2855  // GoString returns the string representation.
  2856  //
  2857  // API parameter values that are decorated as "sensitive" in the API will not
  2858  // be included in the string output. The member name will be present, but the
  2859  // value will be replaced with "sensitive".
  2860  func (s AssetDestinationEntry) GoString() string {
  2861  	return s.String()
  2862  }
  2863  
  2864  // Validate inspects the fields of the type to determine if they are valid.
  2865  func (s *AssetDestinationEntry) Validate() error {
  2866  	invalidParams := request.ErrInvalidParams{Context: "AssetDestinationEntry"}
  2867  	if s.AssetId == nil {
  2868  		invalidParams.Add(request.NewErrParamRequired("AssetId"))
  2869  	}
  2870  	if s.Bucket == nil {
  2871  		invalidParams.Add(request.NewErrParamRequired("Bucket"))
  2872  	}
  2873  
  2874  	if invalidParams.Len() > 0 {
  2875  		return invalidParams
  2876  	}
  2877  	return nil
  2878  }
  2879  
  2880  // SetAssetId sets the AssetId field's value.
  2881  func (s *AssetDestinationEntry) SetAssetId(v string) *AssetDestinationEntry {
  2882  	s.AssetId = &v
  2883  	return s
  2884  }
  2885  
  2886  // SetBucket sets the Bucket field's value.
  2887  func (s *AssetDestinationEntry) SetBucket(v string) *AssetDestinationEntry {
  2888  	s.Bucket = &v
  2889  	return s
  2890  }
  2891  
  2892  // SetKey sets the Key field's value.
  2893  func (s *AssetDestinationEntry) SetKey(v string) *AssetDestinationEntry {
  2894  	s.Key = &v
  2895  	return s
  2896  }
  2897  
  2898  type AssetDetails struct {
  2899  	_ struct{} `type:"structure"`
  2900  
  2901  	// The S3 object that is the asset.
  2902  	S3SnapshotAsset *S3SnapshotAsset `type:"structure"`
  2903  }
  2904  
  2905  // String returns the string representation.
  2906  //
  2907  // API parameter values that are decorated as "sensitive" in the API will not
  2908  // be included in the string output. The member name will be present, but the
  2909  // value will be replaced with "sensitive".
  2910  func (s AssetDetails) String() string {
  2911  	return awsutil.Prettify(s)
  2912  }
  2913  
  2914  // GoString returns the string representation.
  2915  //
  2916  // API parameter values that are decorated as "sensitive" in the API will not
  2917  // be included in the string output. The member name will be present, but the
  2918  // value will be replaced with "sensitive".
  2919  func (s AssetDetails) GoString() string {
  2920  	return s.String()
  2921  }
  2922  
  2923  // SetS3SnapshotAsset sets the S3SnapshotAsset field's value.
  2924  func (s *AssetDetails) SetS3SnapshotAsset(v *S3SnapshotAsset) *AssetDetails {
  2925  	s.S3SnapshotAsset = v
  2926  	return s
  2927  }
  2928  
  2929  // An asset in AWS Data Exchange is a piece of data that can be stored as an
  2930  // S3 object. The asset can be a structured data file, an image file, or some
  2931  // other data file. When you create an import job for your files, you create
  2932  // an asset in AWS Data Exchange for each of those files.
  2933  type AssetEntry struct {
  2934  	_ struct{} `type:"structure"`
  2935  
  2936  	// The ARN for the asset.
  2937  	//
  2938  	// Arn is a required field
  2939  	Arn *string `type:"string" required:"true"`
  2940  
  2941  	// Information about the asset, including its size.
  2942  	//
  2943  	// AssetDetails is a required field
  2944  	AssetDetails *AssetDetails `type:"structure" required:"true"`
  2945  
  2946  	// The type of file your data is stored in. Currently, the supported asset type
  2947  	// is S3_SNAPSHOT.
  2948  	//
  2949  	// AssetType is a required field
  2950  	AssetType *string `type:"string" required:"true" enum:"AssetType"`
  2951  
  2952  	// The date and time that the asset was created, in ISO 8601 format.
  2953  	//
  2954  	// CreatedAt is a required field
  2955  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  2956  
  2957  	// The unique identifier for the data set associated with this asset.
  2958  	//
  2959  	// DataSetId is a required field
  2960  	DataSetId *string `type:"string" required:"true"`
  2961  
  2962  	// The unique identifier for the asset.
  2963  	//
  2964  	// Id is a required field
  2965  	Id *string `type:"string" required:"true"`
  2966  
  2967  	// The name of the asset. When importing from Amazon S3, the S3 object key is
  2968  	// used as the asset name. When exporting to Amazon S3, the asset name is used
  2969  	// as default target S3 object key.
  2970  	//
  2971  	// Name is a required field
  2972  	Name *string `type:"string" required:"true"`
  2973  
  2974  	// The unique identifier for the revision associated with this asset.
  2975  	//
  2976  	// RevisionId is a required field
  2977  	RevisionId *string `type:"string" required:"true"`
  2978  
  2979  	// The asset ID of the owned asset corresponding to the entitled asset being
  2980  	// viewed. This parameter is returned when an asset owner is viewing the entitled
  2981  	// copy of its owned asset.
  2982  	SourceId *string `type:"string"`
  2983  
  2984  	// The date and time that the asset was last updated, in ISO 8601 format.
  2985  	//
  2986  	// UpdatedAt is a required field
  2987  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  2988  }
  2989  
  2990  // String returns the string representation.
  2991  //
  2992  // API parameter values that are decorated as "sensitive" in the API will not
  2993  // be included in the string output. The member name will be present, but the
  2994  // value will be replaced with "sensitive".
  2995  func (s AssetEntry) String() string {
  2996  	return awsutil.Prettify(s)
  2997  }
  2998  
  2999  // GoString returns the string representation.
  3000  //
  3001  // API parameter values that are decorated as "sensitive" in the API will not
  3002  // be included in the string output. The member name will be present, but the
  3003  // value will be replaced with "sensitive".
  3004  func (s AssetEntry) GoString() string {
  3005  	return s.String()
  3006  }
  3007  
  3008  // SetArn sets the Arn field's value.
  3009  func (s *AssetEntry) SetArn(v string) *AssetEntry {
  3010  	s.Arn = &v
  3011  	return s
  3012  }
  3013  
  3014  // SetAssetDetails sets the AssetDetails field's value.
  3015  func (s *AssetEntry) SetAssetDetails(v *AssetDetails) *AssetEntry {
  3016  	s.AssetDetails = v
  3017  	return s
  3018  }
  3019  
  3020  // SetAssetType sets the AssetType field's value.
  3021  func (s *AssetEntry) SetAssetType(v string) *AssetEntry {
  3022  	s.AssetType = &v
  3023  	return s
  3024  }
  3025  
  3026  // SetCreatedAt sets the CreatedAt field's value.
  3027  func (s *AssetEntry) SetCreatedAt(v time.Time) *AssetEntry {
  3028  	s.CreatedAt = &v
  3029  	return s
  3030  }
  3031  
  3032  // SetDataSetId sets the DataSetId field's value.
  3033  func (s *AssetEntry) SetDataSetId(v string) *AssetEntry {
  3034  	s.DataSetId = &v
  3035  	return s
  3036  }
  3037  
  3038  // SetId sets the Id field's value.
  3039  func (s *AssetEntry) SetId(v string) *AssetEntry {
  3040  	s.Id = &v
  3041  	return s
  3042  }
  3043  
  3044  // SetName sets the Name field's value.
  3045  func (s *AssetEntry) SetName(v string) *AssetEntry {
  3046  	s.Name = &v
  3047  	return s
  3048  }
  3049  
  3050  // SetRevisionId sets the RevisionId field's value.
  3051  func (s *AssetEntry) SetRevisionId(v string) *AssetEntry {
  3052  	s.RevisionId = &v
  3053  	return s
  3054  }
  3055  
  3056  // SetSourceId sets the SourceId field's value.
  3057  func (s *AssetEntry) SetSourceId(v string) *AssetEntry {
  3058  	s.SourceId = &v
  3059  	return s
  3060  }
  3061  
  3062  // SetUpdatedAt sets the UpdatedAt field's value.
  3063  func (s *AssetEntry) SetUpdatedAt(v time.Time) *AssetEntry {
  3064  	s.UpdatedAt = &v
  3065  	return s
  3066  }
  3067  
  3068  // The source of the assets.
  3069  type AssetSourceEntry struct {
  3070  	_ struct{} `type:"structure"`
  3071  
  3072  	// The S3 bucket that's part of the source of the asset.
  3073  	//
  3074  	// Bucket is a required field
  3075  	Bucket *string `type:"string" required:"true"`
  3076  
  3077  	// The name of the object in Amazon S3 for the asset.
  3078  	//
  3079  	// Key is a required field
  3080  	Key *string `type:"string" required:"true"`
  3081  }
  3082  
  3083  // String returns the string representation.
  3084  //
  3085  // API parameter values that are decorated as "sensitive" in the API will not
  3086  // be included in the string output. The member name will be present, but the
  3087  // value will be replaced with "sensitive".
  3088  func (s AssetSourceEntry) String() string {
  3089  	return awsutil.Prettify(s)
  3090  }
  3091  
  3092  // GoString returns the string representation.
  3093  //
  3094  // API parameter values that are decorated as "sensitive" in the API will not
  3095  // be included in the string output. The member name will be present, but the
  3096  // value will be replaced with "sensitive".
  3097  func (s AssetSourceEntry) GoString() string {
  3098  	return s.String()
  3099  }
  3100  
  3101  // Validate inspects the fields of the type to determine if they are valid.
  3102  func (s *AssetSourceEntry) Validate() error {
  3103  	invalidParams := request.ErrInvalidParams{Context: "AssetSourceEntry"}
  3104  	if s.Bucket == nil {
  3105  		invalidParams.Add(request.NewErrParamRequired("Bucket"))
  3106  	}
  3107  	if s.Key == nil {
  3108  		invalidParams.Add(request.NewErrParamRequired("Key"))
  3109  	}
  3110  
  3111  	if invalidParams.Len() > 0 {
  3112  		return invalidParams
  3113  	}
  3114  	return nil
  3115  }
  3116  
  3117  // SetBucket sets the Bucket field's value.
  3118  func (s *AssetSourceEntry) SetBucket(v string) *AssetSourceEntry {
  3119  	s.Bucket = &v
  3120  	return s
  3121  }
  3122  
  3123  // SetKey sets the Key field's value.
  3124  func (s *AssetSourceEntry) SetKey(v string) *AssetSourceEntry {
  3125  	s.Key = &v
  3126  	return s
  3127  }
  3128  
  3129  // A revision destination is the Amazon S3 bucket folder destination to where
  3130  // the export will be sent.
  3131  type AutoExportRevisionDestinationEntry struct {
  3132  	_ struct{} `type:"structure"`
  3133  
  3134  	// The S3 bucket that is the destination for the event action.
  3135  	//
  3136  	// Bucket is a required field
  3137  	Bucket *string `type:"string" required:"true"`
  3138  
  3139  	// A string representing the pattern for generated names of the individual assets
  3140  	// in the revision. For more information about key patterns, see Key patterns
  3141  	// when exporting revisions (https://docs.aws.amazon.com/data-exchange/latest/userguide/jobs.html#revision-export-keypatterns).
  3142  	KeyPattern *string `type:"string"`
  3143  }
  3144  
  3145  // String returns the string representation.
  3146  //
  3147  // API parameter values that are decorated as "sensitive" in the API will not
  3148  // be included in the string output. The member name will be present, but the
  3149  // value will be replaced with "sensitive".
  3150  func (s AutoExportRevisionDestinationEntry) String() string {
  3151  	return awsutil.Prettify(s)
  3152  }
  3153  
  3154  // GoString returns the string representation.
  3155  //
  3156  // API parameter values that are decorated as "sensitive" in the API will not
  3157  // be included in the string output. The member name will be present, but the
  3158  // value will be replaced with "sensitive".
  3159  func (s AutoExportRevisionDestinationEntry) GoString() string {
  3160  	return s.String()
  3161  }
  3162  
  3163  // Validate inspects the fields of the type to determine if they are valid.
  3164  func (s *AutoExportRevisionDestinationEntry) Validate() error {
  3165  	invalidParams := request.ErrInvalidParams{Context: "AutoExportRevisionDestinationEntry"}
  3166  	if s.Bucket == nil {
  3167  		invalidParams.Add(request.NewErrParamRequired("Bucket"))
  3168  	}
  3169  
  3170  	if invalidParams.Len() > 0 {
  3171  		return invalidParams
  3172  	}
  3173  	return nil
  3174  }
  3175  
  3176  // SetBucket sets the Bucket field's value.
  3177  func (s *AutoExportRevisionDestinationEntry) SetBucket(v string) *AutoExportRevisionDestinationEntry {
  3178  	s.Bucket = &v
  3179  	return s
  3180  }
  3181  
  3182  // SetKeyPattern sets the KeyPattern field's value.
  3183  func (s *AutoExportRevisionDestinationEntry) SetKeyPattern(v string) *AutoExportRevisionDestinationEntry {
  3184  	s.KeyPattern = &v
  3185  	return s
  3186  }
  3187  
  3188  // Details of the operation to be performed by the job.
  3189  type AutoExportRevisionToS3RequestDetails struct {
  3190  	_ struct{} `type:"structure"`
  3191  
  3192  	// Encryption configuration of the export job. Includes the encryption type
  3193  	// in addition to the AWS KMS key. The KMS key is only necessary if you chose
  3194  	// the KMS encryption. type.
  3195  	Encryption *ExportServerSideEncryption `type:"structure"`
  3196  
  3197  	// A revision destination is the Amazon S3 bucket folder destination to where
  3198  	// the export will be sent.
  3199  	//
  3200  	// RevisionDestination is a required field
  3201  	RevisionDestination *AutoExportRevisionDestinationEntry `type:"structure" required:"true"`
  3202  }
  3203  
  3204  // String returns the string representation.
  3205  //
  3206  // API parameter values that are decorated as "sensitive" in the API will not
  3207  // be included in the string output. The member name will be present, but the
  3208  // value will be replaced with "sensitive".
  3209  func (s AutoExportRevisionToS3RequestDetails) String() string {
  3210  	return awsutil.Prettify(s)
  3211  }
  3212  
  3213  // GoString returns the string representation.
  3214  //
  3215  // API parameter values that are decorated as "sensitive" in the API will not
  3216  // be included in the string output. The member name will be present, but the
  3217  // value will be replaced with "sensitive".
  3218  func (s AutoExportRevisionToS3RequestDetails) GoString() string {
  3219  	return s.String()
  3220  }
  3221  
  3222  // Validate inspects the fields of the type to determine if they are valid.
  3223  func (s *AutoExportRevisionToS3RequestDetails) Validate() error {
  3224  	invalidParams := request.ErrInvalidParams{Context: "AutoExportRevisionToS3RequestDetails"}
  3225  	if s.RevisionDestination == nil {
  3226  		invalidParams.Add(request.NewErrParamRequired("RevisionDestination"))
  3227  	}
  3228  	if s.Encryption != nil {
  3229  		if err := s.Encryption.Validate(); err != nil {
  3230  			invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams))
  3231  		}
  3232  	}
  3233  	if s.RevisionDestination != nil {
  3234  		if err := s.RevisionDestination.Validate(); err != nil {
  3235  			invalidParams.AddNested("RevisionDestination", err.(request.ErrInvalidParams))
  3236  		}
  3237  	}
  3238  
  3239  	if invalidParams.Len() > 0 {
  3240  		return invalidParams
  3241  	}
  3242  	return nil
  3243  }
  3244  
  3245  // SetEncryption sets the Encryption field's value.
  3246  func (s *AutoExportRevisionToS3RequestDetails) SetEncryption(v *ExportServerSideEncryption) *AutoExportRevisionToS3RequestDetails {
  3247  	s.Encryption = v
  3248  	return s
  3249  }
  3250  
  3251  // SetRevisionDestination sets the RevisionDestination field's value.
  3252  func (s *AutoExportRevisionToS3RequestDetails) SetRevisionDestination(v *AutoExportRevisionDestinationEntry) *AutoExportRevisionToS3RequestDetails {
  3253  	s.RevisionDestination = v
  3254  	return s
  3255  }
  3256  
  3257  type CancelJobInput struct {
  3258  	_ struct{} `type:"structure" nopayload:"true"`
  3259  
  3260  	// JobId is a required field
  3261  	JobId *string `location:"uri" locationName:"JobId" type:"string" required:"true"`
  3262  }
  3263  
  3264  // String returns the string representation.
  3265  //
  3266  // API parameter values that are decorated as "sensitive" in the API will not
  3267  // be included in the string output. The member name will be present, but the
  3268  // value will be replaced with "sensitive".
  3269  func (s CancelJobInput) String() string {
  3270  	return awsutil.Prettify(s)
  3271  }
  3272  
  3273  // GoString returns the string representation.
  3274  //
  3275  // API parameter values that are decorated as "sensitive" in the API will not
  3276  // be included in the string output. The member name will be present, but the
  3277  // value will be replaced with "sensitive".
  3278  func (s CancelJobInput) GoString() string {
  3279  	return s.String()
  3280  }
  3281  
  3282  // Validate inspects the fields of the type to determine if they are valid.
  3283  func (s *CancelJobInput) Validate() error {
  3284  	invalidParams := request.ErrInvalidParams{Context: "CancelJobInput"}
  3285  	if s.JobId == nil {
  3286  		invalidParams.Add(request.NewErrParamRequired("JobId"))
  3287  	}
  3288  	if s.JobId != nil && len(*s.JobId) < 1 {
  3289  		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  3290  	}
  3291  
  3292  	if invalidParams.Len() > 0 {
  3293  		return invalidParams
  3294  	}
  3295  	return nil
  3296  }
  3297  
  3298  // SetJobId sets the JobId field's value.
  3299  func (s *CancelJobInput) SetJobId(v string) *CancelJobInput {
  3300  	s.JobId = &v
  3301  	return s
  3302  }
  3303  
  3304  type CancelJobOutput struct {
  3305  	_ struct{} `type:"structure" nopayload:"true"`
  3306  }
  3307  
  3308  // String returns the string representation.
  3309  //
  3310  // API parameter values that are decorated as "sensitive" in the API will not
  3311  // be included in the string output. The member name will be present, but the
  3312  // value will be replaced with "sensitive".
  3313  func (s CancelJobOutput) String() string {
  3314  	return awsutil.Prettify(s)
  3315  }
  3316  
  3317  // GoString returns the string representation.
  3318  //
  3319  // API parameter values that are decorated as "sensitive" in the API will not
  3320  // be included in the string output. The member name will be present, but the
  3321  // value will be replaced with "sensitive".
  3322  func (s CancelJobOutput) GoString() string {
  3323  	return s.String()
  3324  }
  3325  
  3326  // The request couldn't be completed because it conflicted with the current
  3327  // state of the resource.
  3328  type ConflictException struct {
  3329  	_            struct{}                  `type:"structure"`
  3330  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  3331  
  3332  	// The request couldn't be completed because it conflicted with the current
  3333  	// state of the resource.
  3334  	Message_ *string `locationName:"Message" type:"string"`
  3335  
  3336  	// The unique identifier for the resource with the conflict.
  3337  	ResourceId *string `type:"string"`
  3338  
  3339  	// The type of the resource with the conflict.
  3340  	ResourceType *string `type:"string" enum:"ResourceType"`
  3341  }
  3342  
  3343  // String returns the string representation.
  3344  //
  3345  // API parameter values that are decorated as "sensitive" in the API will not
  3346  // be included in the string output. The member name will be present, but the
  3347  // value will be replaced with "sensitive".
  3348  func (s ConflictException) String() string {
  3349  	return awsutil.Prettify(s)
  3350  }
  3351  
  3352  // GoString returns the string representation.
  3353  //
  3354  // API parameter values that are decorated as "sensitive" in the API will not
  3355  // be included in the string output. The member name will be present, but the
  3356  // value will be replaced with "sensitive".
  3357  func (s ConflictException) GoString() string {
  3358  	return s.String()
  3359  }
  3360  
  3361  func newErrorConflictException(v protocol.ResponseMetadata) error {
  3362  	return &ConflictException{
  3363  		RespMetadata: v,
  3364  	}
  3365  }
  3366  
  3367  // Code returns the exception type name.
  3368  func (s *ConflictException) Code() string {
  3369  	return "ConflictException"
  3370  }
  3371  
  3372  // Message returns the exception's message.
  3373  func (s *ConflictException) Message() string {
  3374  	if s.Message_ != nil {
  3375  		return *s.Message_
  3376  	}
  3377  	return ""
  3378  }
  3379  
  3380  // OrigErr always returns nil, satisfies awserr.Error interface.
  3381  func (s *ConflictException) OrigErr() error {
  3382  	return nil
  3383  }
  3384  
  3385  func (s *ConflictException) Error() string {
  3386  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  3387  }
  3388  
  3389  // Status code returns the HTTP status code for the request's response error.
  3390  func (s *ConflictException) StatusCode() int {
  3391  	return s.RespMetadata.StatusCode
  3392  }
  3393  
  3394  // RequestID returns the service's response RequestID for request.
  3395  func (s *ConflictException) RequestID() string {
  3396  	return s.RespMetadata.RequestID
  3397  }
  3398  
  3399  // A request to create a data set that contains one or more revisions.
  3400  type CreateDataSetInput struct {
  3401  	_ struct{} `type:"structure"`
  3402  
  3403  	// The type of file your data is stored in. Currently, the supported asset type
  3404  	// is S3_SNAPSHOT.
  3405  	//
  3406  	// AssetType is a required field
  3407  	AssetType *string `type:"string" required:"true" enum:"AssetType"`
  3408  
  3409  	// A description for the data set. This value can be up to 16,348 characters
  3410  	// long.
  3411  	//
  3412  	// Description is a required field
  3413  	Description *string `type:"string" required:"true"`
  3414  
  3415  	// The name of the data set.
  3416  	//
  3417  	// Name is a required field
  3418  	Name *string `type:"string" required:"true"`
  3419  
  3420  	// A data set tag is an optional label that you can assign to a data set when
  3421  	// you create it. Each tag consists of a key and an optional value, both of
  3422  	// which you define. When you use tagging, you can also use tag-based access
  3423  	// control in IAM policies to control access to these data sets and revisions.
  3424  	Tags map[string]*string `type:"map"`
  3425  }
  3426  
  3427  // String returns the string representation.
  3428  //
  3429  // API parameter values that are decorated as "sensitive" in the API will not
  3430  // be included in the string output. The member name will be present, but the
  3431  // value will be replaced with "sensitive".
  3432  func (s CreateDataSetInput) String() string {
  3433  	return awsutil.Prettify(s)
  3434  }
  3435  
  3436  // GoString returns the string representation.
  3437  //
  3438  // API parameter values that are decorated as "sensitive" in the API will not
  3439  // be included in the string output. The member name will be present, but the
  3440  // value will be replaced with "sensitive".
  3441  func (s CreateDataSetInput) GoString() string {
  3442  	return s.String()
  3443  }
  3444  
  3445  // Validate inspects the fields of the type to determine if they are valid.
  3446  func (s *CreateDataSetInput) Validate() error {
  3447  	invalidParams := request.ErrInvalidParams{Context: "CreateDataSetInput"}
  3448  	if s.AssetType == nil {
  3449  		invalidParams.Add(request.NewErrParamRequired("AssetType"))
  3450  	}
  3451  	if s.Description == nil {
  3452  		invalidParams.Add(request.NewErrParamRequired("Description"))
  3453  	}
  3454  	if s.Name == nil {
  3455  		invalidParams.Add(request.NewErrParamRequired("Name"))
  3456  	}
  3457  
  3458  	if invalidParams.Len() > 0 {
  3459  		return invalidParams
  3460  	}
  3461  	return nil
  3462  }
  3463  
  3464  // SetAssetType sets the AssetType field's value.
  3465  func (s *CreateDataSetInput) SetAssetType(v string) *CreateDataSetInput {
  3466  	s.AssetType = &v
  3467  	return s
  3468  }
  3469  
  3470  // SetDescription sets the Description field's value.
  3471  func (s *CreateDataSetInput) SetDescription(v string) *CreateDataSetInput {
  3472  	s.Description = &v
  3473  	return s
  3474  }
  3475  
  3476  // SetName sets the Name field's value.
  3477  func (s *CreateDataSetInput) SetName(v string) *CreateDataSetInput {
  3478  	s.Name = &v
  3479  	return s
  3480  }
  3481  
  3482  // SetTags sets the Tags field's value.
  3483  func (s *CreateDataSetInput) SetTags(v map[string]*string) *CreateDataSetInput {
  3484  	s.Tags = v
  3485  	return s
  3486  }
  3487  
  3488  type CreateDataSetOutput struct {
  3489  	_ struct{} `type:"structure"`
  3490  
  3491  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  3492  	Arn *string `type:"string"`
  3493  
  3494  	// The type of file your data is stored in. Currently, the supported asset type
  3495  	// is S3_SNAPSHOT.
  3496  	AssetType *string `type:"string" enum:"AssetType"`
  3497  
  3498  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  3499  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3500  
  3501  	// A description of a resource.
  3502  	Description *string `type:"string"`
  3503  
  3504  	// A unique identifier.
  3505  	Id *string `type:"string"`
  3506  
  3507  	// The name of the model.
  3508  	Name *string `type:"string"`
  3509  
  3510  	// A property that defines the data set as OWNED by the account (for providers)
  3511  	// or ENTITLED to the account (for subscribers). When an owned data set is published
  3512  	// in a product, AWS Data Exchange creates a copy of the data set. Subscribers
  3513  	// can access that copy of the data set as an entitled data set.
  3514  	Origin *string `type:"string" enum:"Origin"`
  3515  
  3516  	OriginDetails *OriginDetails `type:"structure"`
  3517  
  3518  	// A unique identifier.
  3519  	SourceId *string `type:"string"`
  3520  
  3521  	Tags map[string]*string `type:"map"`
  3522  
  3523  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  3524  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3525  }
  3526  
  3527  // String returns the string representation.
  3528  //
  3529  // API parameter values that are decorated as "sensitive" in the API will not
  3530  // be included in the string output. The member name will be present, but the
  3531  // value will be replaced with "sensitive".
  3532  func (s CreateDataSetOutput) String() string {
  3533  	return awsutil.Prettify(s)
  3534  }
  3535  
  3536  // GoString returns the string representation.
  3537  //
  3538  // API parameter values that are decorated as "sensitive" in the API will not
  3539  // be included in the string output. The member name will be present, but the
  3540  // value will be replaced with "sensitive".
  3541  func (s CreateDataSetOutput) GoString() string {
  3542  	return s.String()
  3543  }
  3544  
  3545  // SetArn sets the Arn field's value.
  3546  func (s *CreateDataSetOutput) SetArn(v string) *CreateDataSetOutput {
  3547  	s.Arn = &v
  3548  	return s
  3549  }
  3550  
  3551  // SetAssetType sets the AssetType field's value.
  3552  func (s *CreateDataSetOutput) SetAssetType(v string) *CreateDataSetOutput {
  3553  	s.AssetType = &v
  3554  	return s
  3555  }
  3556  
  3557  // SetCreatedAt sets the CreatedAt field's value.
  3558  func (s *CreateDataSetOutput) SetCreatedAt(v time.Time) *CreateDataSetOutput {
  3559  	s.CreatedAt = &v
  3560  	return s
  3561  }
  3562  
  3563  // SetDescription sets the Description field's value.
  3564  func (s *CreateDataSetOutput) SetDescription(v string) *CreateDataSetOutput {
  3565  	s.Description = &v
  3566  	return s
  3567  }
  3568  
  3569  // SetId sets the Id field's value.
  3570  func (s *CreateDataSetOutput) SetId(v string) *CreateDataSetOutput {
  3571  	s.Id = &v
  3572  	return s
  3573  }
  3574  
  3575  // SetName sets the Name field's value.
  3576  func (s *CreateDataSetOutput) SetName(v string) *CreateDataSetOutput {
  3577  	s.Name = &v
  3578  	return s
  3579  }
  3580  
  3581  // SetOrigin sets the Origin field's value.
  3582  func (s *CreateDataSetOutput) SetOrigin(v string) *CreateDataSetOutput {
  3583  	s.Origin = &v
  3584  	return s
  3585  }
  3586  
  3587  // SetOriginDetails sets the OriginDetails field's value.
  3588  func (s *CreateDataSetOutput) SetOriginDetails(v *OriginDetails) *CreateDataSetOutput {
  3589  	s.OriginDetails = v
  3590  	return s
  3591  }
  3592  
  3593  // SetSourceId sets the SourceId field's value.
  3594  func (s *CreateDataSetOutput) SetSourceId(v string) *CreateDataSetOutput {
  3595  	s.SourceId = &v
  3596  	return s
  3597  }
  3598  
  3599  // SetTags sets the Tags field's value.
  3600  func (s *CreateDataSetOutput) SetTags(v map[string]*string) *CreateDataSetOutput {
  3601  	s.Tags = v
  3602  	return s
  3603  }
  3604  
  3605  // SetUpdatedAt sets the UpdatedAt field's value.
  3606  func (s *CreateDataSetOutput) SetUpdatedAt(v time.Time) *CreateDataSetOutput {
  3607  	s.UpdatedAt = &v
  3608  	return s
  3609  }
  3610  
  3611  // A request to create an event action.
  3612  type CreateEventActionInput struct {
  3613  	_ struct{} `type:"structure"`
  3614  
  3615  	// What occurs after a certain event.
  3616  	//
  3617  	// Action is a required field
  3618  	Action *Action `type:"structure" required:"true"`
  3619  
  3620  	// What occurs to start an action.
  3621  	//
  3622  	// Event is a required field
  3623  	Event *Event `type:"structure" required:"true"`
  3624  }
  3625  
  3626  // String returns the string representation.
  3627  //
  3628  // API parameter values that are decorated as "sensitive" in the API will not
  3629  // be included in the string output. The member name will be present, but the
  3630  // value will be replaced with "sensitive".
  3631  func (s CreateEventActionInput) String() string {
  3632  	return awsutil.Prettify(s)
  3633  }
  3634  
  3635  // GoString returns the string representation.
  3636  //
  3637  // API parameter values that are decorated as "sensitive" in the API will not
  3638  // be included in the string output. The member name will be present, but the
  3639  // value will be replaced with "sensitive".
  3640  func (s CreateEventActionInput) GoString() string {
  3641  	return s.String()
  3642  }
  3643  
  3644  // Validate inspects the fields of the type to determine if they are valid.
  3645  func (s *CreateEventActionInput) Validate() error {
  3646  	invalidParams := request.ErrInvalidParams{Context: "CreateEventActionInput"}
  3647  	if s.Action == nil {
  3648  		invalidParams.Add(request.NewErrParamRequired("Action"))
  3649  	}
  3650  	if s.Event == nil {
  3651  		invalidParams.Add(request.NewErrParamRequired("Event"))
  3652  	}
  3653  	if s.Action != nil {
  3654  		if err := s.Action.Validate(); err != nil {
  3655  			invalidParams.AddNested("Action", err.(request.ErrInvalidParams))
  3656  		}
  3657  	}
  3658  	if s.Event != nil {
  3659  		if err := s.Event.Validate(); err != nil {
  3660  			invalidParams.AddNested("Event", err.(request.ErrInvalidParams))
  3661  		}
  3662  	}
  3663  
  3664  	if invalidParams.Len() > 0 {
  3665  		return invalidParams
  3666  	}
  3667  	return nil
  3668  }
  3669  
  3670  // SetAction sets the Action field's value.
  3671  func (s *CreateEventActionInput) SetAction(v *Action) *CreateEventActionInput {
  3672  	s.Action = v
  3673  	return s
  3674  }
  3675  
  3676  // SetEvent sets the Event field's value.
  3677  func (s *CreateEventActionInput) SetEvent(v *Event) *CreateEventActionInput {
  3678  	s.Event = v
  3679  	return s
  3680  }
  3681  
  3682  type CreateEventActionOutput struct {
  3683  	_ struct{} `type:"structure"`
  3684  
  3685  	Action *Action `type:"structure"`
  3686  
  3687  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  3688  	Arn *string `type:"string"`
  3689  
  3690  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  3691  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3692  
  3693  	Event *Event `type:"structure"`
  3694  
  3695  	// A unique identifier.
  3696  	Id *string `type:"string"`
  3697  
  3698  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  3699  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3700  }
  3701  
  3702  // String returns the string representation.
  3703  //
  3704  // API parameter values that are decorated as "sensitive" in the API will not
  3705  // be included in the string output. The member name will be present, but the
  3706  // value will be replaced with "sensitive".
  3707  func (s CreateEventActionOutput) String() string {
  3708  	return awsutil.Prettify(s)
  3709  }
  3710  
  3711  // GoString returns the string representation.
  3712  //
  3713  // API parameter values that are decorated as "sensitive" in the API will not
  3714  // be included in the string output. The member name will be present, but the
  3715  // value will be replaced with "sensitive".
  3716  func (s CreateEventActionOutput) GoString() string {
  3717  	return s.String()
  3718  }
  3719  
  3720  // SetAction sets the Action field's value.
  3721  func (s *CreateEventActionOutput) SetAction(v *Action) *CreateEventActionOutput {
  3722  	s.Action = v
  3723  	return s
  3724  }
  3725  
  3726  // SetArn sets the Arn field's value.
  3727  func (s *CreateEventActionOutput) SetArn(v string) *CreateEventActionOutput {
  3728  	s.Arn = &v
  3729  	return s
  3730  }
  3731  
  3732  // SetCreatedAt sets the CreatedAt field's value.
  3733  func (s *CreateEventActionOutput) SetCreatedAt(v time.Time) *CreateEventActionOutput {
  3734  	s.CreatedAt = &v
  3735  	return s
  3736  }
  3737  
  3738  // SetEvent sets the Event field's value.
  3739  func (s *CreateEventActionOutput) SetEvent(v *Event) *CreateEventActionOutput {
  3740  	s.Event = v
  3741  	return s
  3742  }
  3743  
  3744  // SetId sets the Id field's value.
  3745  func (s *CreateEventActionOutput) SetId(v string) *CreateEventActionOutput {
  3746  	s.Id = &v
  3747  	return s
  3748  }
  3749  
  3750  // SetUpdatedAt sets the UpdatedAt field's value.
  3751  func (s *CreateEventActionOutput) SetUpdatedAt(v time.Time) *CreateEventActionOutput {
  3752  	s.UpdatedAt = &v
  3753  	return s
  3754  }
  3755  
  3756  // The CreateJob request. AWS Data Exchange Jobs are asynchronous import or
  3757  // export operations used to create or copy assets. A data set owner can both
  3758  // import and export assets. A subscriber with an entitlement to a data set
  3759  // can only export. Jobs are deleted 90 days after they are created. Created
  3760  // jobs must be started with the StartJob operation.
  3761  type CreateJobInput struct {
  3762  	_ struct{} `type:"structure"`
  3763  
  3764  	// The details for the CreateJob request.
  3765  	//
  3766  	// Details is a required field
  3767  	Details *RequestDetails `type:"structure" required:"true"`
  3768  
  3769  	// The type of job to be created.
  3770  	//
  3771  	// Type is a required field
  3772  	Type *string `type:"string" required:"true" enum:"Type"`
  3773  }
  3774  
  3775  // String returns the string representation.
  3776  //
  3777  // API parameter values that are decorated as "sensitive" in the API will not
  3778  // be included in the string output. The member name will be present, but the
  3779  // value will be replaced with "sensitive".
  3780  func (s CreateJobInput) String() string {
  3781  	return awsutil.Prettify(s)
  3782  }
  3783  
  3784  // GoString returns the string representation.
  3785  //
  3786  // API parameter values that are decorated as "sensitive" in the API will not
  3787  // be included in the string output. The member name will be present, but the
  3788  // value will be replaced with "sensitive".
  3789  func (s CreateJobInput) GoString() string {
  3790  	return s.String()
  3791  }
  3792  
  3793  // Validate inspects the fields of the type to determine if they are valid.
  3794  func (s *CreateJobInput) Validate() error {
  3795  	invalidParams := request.ErrInvalidParams{Context: "CreateJobInput"}
  3796  	if s.Details == nil {
  3797  		invalidParams.Add(request.NewErrParamRequired("Details"))
  3798  	}
  3799  	if s.Type == nil {
  3800  		invalidParams.Add(request.NewErrParamRequired("Type"))
  3801  	}
  3802  	if s.Details != nil {
  3803  		if err := s.Details.Validate(); err != nil {
  3804  			invalidParams.AddNested("Details", err.(request.ErrInvalidParams))
  3805  		}
  3806  	}
  3807  
  3808  	if invalidParams.Len() > 0 {
  3809  		return invalidParams
  3810  	}
  3811  	return nil
  3812  }
  3813  
  3814  // SetDetails sets the Details field's value.
  3815  func (s *CreateJobInput) SetDetails(v *RequestDetails) *CreateJobInput {
  3816  	s.Details = v
  3817  	return s
  3818  }
  3819  
  3820  // SetType sets the Type field's value.
  3821  func (s *CreateJobInput) SetType(v string) *CreateJobInput {
  3822  	s.Type = &v
  3823  	return s
  3824  }
  3825  
  3826  type CreateJobOutput struct {
  3827  	_ struct{} `type:"structure"`
  3828  
  3829  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  3830  	Arn *string `type:"string"`
  3831  
  3832  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  3833  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3834  
  3835  	// Details for the response.
  3836  	Details *ResponseDetails `type:"structure"`
  3837  
  3838  	Errors []*JobError `type:"list"`
  3839  
  3840  	// A unique identifier.
  3841  	Id *string `type:"string"`
  3842  
  3843  	State *string `type:"string" enum:"State"`
  3844  
  3845  	Type *string `type:"string" enum:"Type"`
  3846  
  3847  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  3848  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3849  }
  3850  
  3851  // String returns the string representation.
  3852  //
  3853  // API parameter values that are decorated as "sensitive" in the API will not
  3854  // be included in the string output. The member name will be present, but the
  3855  // value will be replaced with "sensitive".
  3856  func (s CreateJobOutput) String() string {
  3857  	return awsutil.Prettify(s)
  3858  }
  3859  
  3860  // GoString returns the string representation.
  3861  //
  3862  // API parameter values that are decorated as "sensitive" in the API will not
  3863  // be included in the string output. The member name will be present, but the
  3864  // value will be replaced with "sensitive".
  3865  func (s CreateJobOutput) GoString() string {
  3866  	return s.String()
  3867  }
  3868  
  3869  // SetArn sets the Arn field's value.
  3870  func (s *CreateJobOutput) SetArn(v string) *CreateJobOutput {
  3871  	s.Arn = &v
  3872  	return s
  3873  }
  3874  
  3875  // SetCreatedAt sets the CreatedAt field's value.
  3876  func (s *CreateJobOutput) SetCreatedAt(v time.Time) *CreateJobOutput {
  3877  	s.CreatedAt = &v
  3878  	return s
  3879  }
  3880  
  3881  // SetDetails sets the Details field's value.
  3882  func (s *CreateJobOutput) SetDetails(v *ResponseDetails) *CreateJobOutput {
  3883  	s.Details = v
  3884  	return s
  3885  }
  3886  
  3887  // SetErrors sets the Errors field's value.
  3888  func (s *CreateJobOutput) SetErrors(v []*JobError) *CreateJobOutput {
  3889  	s.Errors = v
  3890  	return s
  3891  }
  3892  
  3893  // SetId sets the Id field's value.
  3894  func (s *CreateJobOutput) SetId(v string) *CreateJobOutput {
  3895  	s.Id = &v
  3896  	return s
  3897  }
  3898  
  3899  // SetState sets the State field's value.
  3900  func (s *CreateJobOutput) SetState(v string) *CreateJobOutput {
  3901  	s.State = &v
  3902  	return s
  3903  }
  3904  
  3905  // SetType sets the Type field's value.
  3906  func (s *CreateJobOutput) SetType(v string) *CreateJobOutput {
  3907  	s.Type = &v
  3908  	return s
  3909  }
  3910  
  3911  // SetUpdatedAt sets the UpdatedAt field's value.
  3912  func (s *CreateJobOutput) SetUpdatedAt(v time.Time) *CreateJobOutput {
  3913  	s.UpdatedAt = &v
  3914  	return s
  3915  }
  3916  
  3917  // Creates a revision for a data set. When they're created, revisions are not
  3918  // published to products, and therefore are not available to subscribers. To
  3919  // publish a revision to a data set in a product, the revision must first be
  3920  // finalized.
  3921  type CreateRevisionInput struct {
  3922  	_ struct{} `type:"structure"`
  3923  
  3924  	// An optional comment about the revision.
  3925  	Comment *string `type:"string"`
  3926  
  3927  	// DataSetId is a required field
  3928  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  3929  
  3930  	// A revision tag is an optional label that you can assign to a revision when
  3931  	// you create it. Each tag consists of a key and an optional value, both of
  3932  	// which you define. When you use tagging, you can also use tag-based access
  3933  	// control in IAM policies to control access to these data sets and revisions.
  3934  	Tags map[string]*string `type:"map"`
  3935  }
  3936  
  3937  // String returns the string representation.
  3938  //
  3939  // API parameter values that are decorated as "sensitive" in the API will not
  3940  // be included in the string output. The member name will be present, but the
  3941  // value will be replaced with "sensitive".
  3942  func (s CreateRevisionInput) String() string {
  3943  	return awsutil.Prettify(s)
  3944  }
  3945  
  3946  // GoString returns the string representation.
  3947  //
  3948  // API parameter values that are decorated as "sensitive" in the API will not
  3949  // be included in the string output. The member name will be present, but the
  3950  // value will be replaced with "sensitive".
  3951  func (s CreateRevisionInput) GoString() string {
  3952  	return s.String()
  3953  }
  3954  
  3955  // Validate inspects the fields of the type to determine if they are valid.
  3956  func (s *CreateRevisionInput) Validate() error {
  3957  	invalidParams := request.ErrInvalidParams{Context: "CreateRevisionInput"}
  3958  	if s.DataSetId == nil {
  3959  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  3960  	}
  3961  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  3962  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  3963  	}
  3964  
  3965  	if invalidParams.Len() > 0 {
  3966  		return invalidParams
  3967  	}
  3968  	return nil
  3969  }
  3970  
  3971  // SetComment sets the Comment field's value.
  3972  func (s *CreateRevisionInput) SetComment(v string) *CreateRevisionInput {
  3973  	s.Comment = &v
  3974  	return s
  3975  }
  3976  
  3977  // SetDataSetId sets the DataSetId field's value.
  3978  func (s *CreateRevisionInput) SetDataSetId(v string) *CreateRevisionInput {
  3979  	s.DataSetId = &v
  3980  	return s
  3981  }
  3982  
  3983  // SetTags sets the Tags field's value.
  3984  func (s *CreateRevisionInput) SetTags(v map[string]*string) *CreateRevisionInput {
  3985  	s.Tags = v
  3986  	return s
  3987  }
  3988  
  3989  type CreateRevisionOutput struct {
  3990  	_ struct{} `type:"structure"`
  3991  
  3992  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  3993  	Arn *string `type:"string"`
  3994  
  3995  	Comment *string `type:"string"`
  3996  
  3997  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  3998  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3999  
  4000  	// A unique identifier.
  4001  	DataSetId *string `type:"string"`
  4002  
  4003  	Finalized *bool `type:"boolean"`
  4004  
  4005  	// A unique identifier.
  4006  	Id *string `type:"string"`
  4007  
  4008  	// A unique identifier.
  4009  	SourceId *string `type:"string"`
  4010  
  4011  	Tags map[string]*string `type:"map"`
  4012  
  4013  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  4014  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  4015  }
  4016  
  4017  // String returns the string representation.
  4018  //
  4019  // API parameter values that are decorated as "sensitive" in the API will not
  4020  // be included in the string output. The member name will be present, but the
  4021  // value will be replaced with "sensitive".
  4022  func (s CreateRevisionOutput) String() string {
  4023  	return awsutil.Prettify(s)
  4024  }
  4025  
  4026  // GoString returns the string representation.
  4027  //
  4028  // API parameter values that are decorated as "sensitive" in the API will not
  4029  // be included in the string output. The member name will be present, but the
  4030  // value will be replaced with "sensitive".
  4031  func (s CreateRevisionOutput) GoString() string {
  4032  	return s.String()
  4033  }
  4034  
  4035  // SetArn sets the Arn field's value.
  4036  func (s *CreateRevisionOutput) SetArn(v string) *CreateRevisionOutput {
  4037  	s.Arn = &v
  4038  	return s
  4039  }
  4040  
  4041  // SetComment sets the Comment field's value.
  4042  func (s *CreateRevisionOutput) SetComment(v string) *CreateRevisionOutput {
  4043  	s.Comment = &v
  4044  	return s
  4045  }
  4046  
  4047  // SetCreatedAt sets the CreatedAt field's value.
  4048  func (s *CreateRevisionOutput) SetCreatedAt(v time.Time) *CreateRevisionOutput {
  4049  	s.CreatedAt = &v
  4050  	return s
  4051  }
  4052  
  4053  // SetDataSetId sets the DataSetId field's value.
  4054  func (s *CreateRevisionOutput) SetDataSetId(v string) *CreateRevisionOutput {
  4055  	s.DataSetId = &v
  4056  	return s
  4057  }
  4058  
  4059  // SetFinalized sets the Finalized field's value.
  4060  func (s *CreateRevisionOutput) SetFinalized(v bool) *CreateRevisionOutput {
  4061  	s.Finalized = &v
  4062  	return s
  4063  }
  4064  
  4065  // SetId sets the Id field's value.
  4066  func (s *CreateRevisionOutput) SetId(v string) *CreateRevisionOutput {
  4067  	s.Id = &v
  4068  	return s
  4069  }
  4070  
  4071  // SetSourceId sets the SourceId field's value.
  4072  func (s *CreateRevisionOutput) SetSourceId(v string) *CreateRevisionOutput {
  4073  	s.SourceId = &v
  4074  	return s
  4075  }
  4076  
  4077  // SetTags sets the Tags field's value.
  4078  func (s *CreateRevisionOutput) SetTags(v map[string]*string) *CreateRevisionOutput {
  4079  	s.Tags = v
  4080  	return s
  4081  }
  4082  
  4083  // SetUpdatedAt sets the UpdatedAt field's value.
  4084  func (s *CreateRevisionOutput) SetUpdatedAt(v time.Time) *CreateRevisionOutput {
  4085  	s.UpdatedAt = &v
  4086  	return s
  4087  }
  4088  
  4089  // A data set is an AWS resource with one or more revisions.
  4090  type DataSetEntry struct {
  4091  	_ struct{} `type:"structure"`
  4092  
  4093  	// The ARN for the data set.
  4094  	//
  4095  	// Arn is a required field
  4096  	Arn *string `type:"string" required:"true"`
  4097  
  4098  	// The type of file your data is stored in. Currently, the supported asset type
  4099  	// is S3_SNAPSHOT.
  4100  	//
  4101  	// AssetType is a required field
  4102  	AssetType *string `type:"string" required:"true" enum:"AssetType"`
  4103  
  4104  	// The date and time that the data set was created, in ISO 8601 format.
  4105  	//
  4106  	// CreatedAt is a required field
  4107  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  4108  
  4109  	// The description for the data set.
  4110  	//
  4111  	// Description is a required field
  4112  	Description *string `type:"string" required:"true"`
  4113  
  4114  	// The unique identifier for the data set.
  4115  	//
  4116  	// Id is a required field
  4117  	Id *string `type:"string" required:"true"`
  4118  
  4119  	// The name of the data set.
  4120  	//
  4121  	// Name is a required field
  4122  	Name *string `type:"string" required:"true"`
  4123  
  4124  	// A property that defines the data set as OWNED by the account (for providers)
  4125  	// or ENTITLED to the account (for subscribers).
  4126  	//
  4127  	// Origin is a required field
  4128  	Origin *string `type:"string" required:"true" enum:"Origin"`
  4129  
  4130  	// If the origin of this data set is ENTITLED, includes the details for the
  4131  	// product on AWS Marketplace.
  4132  	OriginDetails *OriginDetails `type:"structure"`
  4133  
  4134  	// The data set ID of the owned data set corresponding to the entitled data
  4135  	// set being viewed. This parameter is returned when a data set owner is viewing
  4136  	// the entitled copy of its owned data set.
  4137  	SourceId *string `type:"string"`
  4138  
  4139  	// The date and time that the data set was last updated, in ISO 8601 format.
  4140  	//
  4141  	// UpdatedAt is a required field
  4142  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  4143  }
  4144  
  4145  // String returns the string representation.
  4146  //
  4147  // API parameter values that are decorated as "sensitive" in the API will not
  4148  // be included in the string output. The member name will be present, but the
  4149  // value will be replaced with "sensitive".
  4150  func (s DataSetEntry) String() string {
  4151  	return awsutil.Prettify(s)
  4152  }
  4153  
  4154  // GoString returns the string representation.
  4155  //
  4156  // API parameter values that are decorated as "sensitive" in the API will not
  4157  // be included in the string output. The member name will be present, but the
  4158  // value will be replaced with "sensitive".
  4159  func (s DataSetEntry) GoString() string {
  4160  	return s.String()
  4161  }
  4162  
  4163  // SetArn sets the Arn field's value.
  4164  func (s *DataSetEntry) SetArn(v string) *DataSetEntry {
  4165  	s.Arn = &v
  4166  	return s
  4167  }
  4168  
  4169  // SetAssetType sets the AssetType field's value.
  4170  func (s *DataSetEntry) SetAssetType(v string) *DataSetEntry {
  4171  	s.AssetType = &v
  4172  	return s
  4173  }
  4174  
  4175  // SetCreatedAt sets the CreatedAt field's value.
  4176  func (s *DataSetEntry) SetCreatedAt(v time.Time) *DataSetEntry {
  4177  	s.CreatedAt = &v
  4178  	return s
  4179  }
  4180  
  4181  // SetDescription sets the Description field's value.
  4182  func (s *DataSetEntry) SetDescription(v string) *DataSetEntry {
  4183  	s.Description = &v
  4184  	return s
  4185  }
  4186  
  4187  // SetId sets the Id field's value.
  4188  func (s *DataSetEntry) SetId(v string) *DataSetEntry {
  4189  	s.Id = &v
  4190  	return s
  4191  }
  4192  
  4193  // SetName sets the Name field's value.
  4194  func (s *DataSetEntry) SetName(v string) *DataSetEntry {
  4195  	s.Name = &v
  4196  	return s
  4197  }
  4198  
  4199  // SetOrigin sets the Origin field's value.
  4200  func (s *DataSetEntry) SetOrigin(v string) *DataSetEntry {
  4201  	s.Origin = &v
  4202  	return s
  4203  }
  4204  
  4205  // SetOriginDetails sets the OriginDetails field's value.
  4206  func (s *DataSetEntry) SetOriginDetails(v *OriginDetails) *DataSetEntry {
  4207  	s.OriginDetails = v
  4208  	return s
  4209  }
  4210  
  4211  // SetSourceId sets the SourceId field's value.
  4212  func (s *DataSetEntry) SetSourceId(v string) *DataSetEntry {
  4213  	s.SourceId = &v
  4214  	return s
  4215  }
  4216  
  4217  // SetUpdatedAt sets the UpdatedAt field's value.
  4218  func (s *DataSetEntry) SetUpdatedAt(v time.Time) *DataSetEntry {
  4219  	s.UpdatedAt = &v
  4220  	return s
  4221  }
  4222  
  4223  type DeleteAssetInput struct {
  4224  	_ struct{} `type:"structure" nopayload:"true"`
  4225  
  4226  	// AssetId is a required field
  4227  	AssetId *string `location:"uri" locationName:"AssetId" type:"string" required:"true"`
  4228  
  4229  	// DataSetId is a required field
  4230  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  4231  
  4232  	// RevisionId is a required field
  4233  	RevisionId *string `location:"uri" locationName:"RevisionId" type:"string" required:"true"`
  4234  }
  4235  
  4236  // String returns the string representation.
  4237  //
  4238  // API parameter values that are decorated as "sensitive" in the API will not
  4239  // be included in the string output. The member name will be present, but the
  4240  // value will be replaced with "sensitive".
  4241  func (s DeleteAssetInput) String() string {
  4242  	return awsutil.Prettify(s)
  4243  }
  4244  
  4245  // GoString returns the string representation.
  4246  //
  4247  // API parameter values that are decorated as "sensitive" in the API will not
  4248  // be included in the string output. The member name will be present, but the
  4249  // value will be replaced with "sensitive".
  4250  func (s DeleteAssetInput) GoString() string {
  4251  	return s.String()
  4252  }
  4253  
  4254  // Validate inspects the fields of the type to determine if they are valid.
  4255  func (s *DeleteAssetInput) Validate() error {
  4256  	invalidParams := request.ErrInvalidParams{Context: "DeleteAssetInput"}
  4257  	if s.AssetId == nil {
  4258  		invalidParams.Add(request.NewErrParamRequired("AssetId"))
  4259  	}
  4260  	if s.AssetId != nil && len(*s.AssetId) < 1 {
  4261  		invalidParams.Add(request.NewErrParamMinLen("AssetId", 1))
  4262  	}
  4263  	if s.DataSetId == nil {
  4264  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  4265  	}
  4266  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  4267  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  4268  	}
  4269  	if s.RevisionId == nil {
  4270  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  4271  	}
  4272  	if s.RevisionId != nil && len(*s.RevisionId) < 1 {
  4273  		invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1))
  4274  	}
  4275  
  4276  	if invalidParams.Len() > 0 {
  4277  		return invalidParams
  4278  	}
  4279  	return nil
  4280  }
  4281  
  4282  // SetAssetId sets the AssetId field's value.
  4283  func (s *DeleteAssetInput) SetAssetId(v string) *DeleteAssetInput {
  4284  	s.AssetId = &v
  4285  	return s
  4286  }
  4287  
  4288  // SetDataSetId sets the DataSetId field's value.
  4289  func (s *DeleteAssetInput) SetDataSetId(v string) *DeleteAssetInput {
  4290  	s.DataSetId = &v
  4291  	return s
  4292  }
  4293  
  4294  // SetRevisionId sets the RevisionId field's value.
  4295  func (s *DeleteAssetInput) SetRevisionId(v string) *DeleteAssetInput {
  4296  	s.RevisionId = &v
  4297  	return s
  4298  }
  4299  
  4300  type DeleteAssetOutput struct {
  4301  	_ struct{} `type:"structure" nopayload:"true"`
  4302  }
  4303  
  4304  // String returns the string representation.
  4305  //
  4306  // API parameter values that are decorated as "sensitive" in the API will not
  4307  // be included in the string output. The member name will be present, but the
  4308  // value will be replaced with "sensitive".
  4309  func (s DeleteAssetOutput) String() string {
  4310  	return awsutil.Prettify(s)
  4311  }
  4312  
  4313  // GoString returns the string representation.
  4314  //
  4315  // API parameter values that are decorated as "sensitive" in the API will not
  4316  // be included in the string output. The member name will be present, but the
  4317  // value will be replaced with "sensitive".
  4318  func (s DeleteAssetOutput) GoString() string {
  4319  	return s.String()
  4320  }
  4321  
  4322  type DeleteDataSetInput struct {
  4323  	_ struct{} `type:"structure" nopayload:"true"`
  4324  
  4325  	// DataSetId is a required field
  4326  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  4327  }
  4328  
  4329  // String returns the string representation.
  4330  //
  4331  // API parameter values that are decorated as "sensitive" in the API will not
  4332  // be included in the string output. The member name will be present, but the
  4333  // value will be replaced with "sensitive".
  4334  func (s DeleteDataSetInput) String() string {
  4335  	return awsutil.Prettify(s)
  4336  }
  4337  
  4338  // GoString returns the string representation.
  4339  //
  4340  // API parameter values that are decorated as "sensitive" in the API will not
  4341  // be included in the string output. The member name will be present, but the
  4342  // value will be replaced with "sensitive".
  4343  func (s DeleteDataSetInput) GoString() string {
  4344  	return s.String()
  4345  }
  4346  
  4347  // Validate inspects the fields of the type to determine if they are valid.
  4348  func (s *DeleteDataSetInput) Validate() error {
  4349  	invalidParams := request.ErrInvalidParams{Context: "DeleteDataSetInput"}
  4350  	if s.DataSetId == nil {
  4351  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  4352  	}
  4353  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  4354  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  4355  	}
  4356  
  4357  	if invalidParams.Len() > 0 {
  4358  		return invalidParams
  4359  	}
  4360  	return nil
  4361  }
  4362  
  4363  // SetDataSetId sets the DataSetId field's value.
  4364  func (s *DeleteDataSetInput) SetDataSetId(v string) *DeleteDataSetInput {
  4365  	s.DataSetId = &v
  4366  	return s
  4367  }
  4368  
  4369  type DeleteDataSetOutput struct {
  4370  	_ struct{} `type:"structure" nopayload:"true"`
  4371  }
  4372  
  4373  // String returns the string representation.
  4374  //
  4375  // API parameter values that are decorated as "sensitive" in the API will not
  4376  // be included in the string output. The member name will be present, but the
  4377  // value will be replaced with "sensitive".
  4378  func (s DeleteDataSetOutput) String() string {
  4379  	return awsutil.Prettify(s)
  4380  }
  4381  
  4382  // GoString returns the string representation.
  4383  //
  4384  // API parameter values that are decorated as "sensitive" in the API will not
  4385  // be included in the string output. The member name will be present, but the
  4386  // value will be replaced with "sensitive".
  4387  func (s DeleteDataSetOutput) GoString() string {
  4388  	return s.String()
  4389  }
  4390  
  4391  type DeleteEventActionInput struct {
  4392  	_ struct{} `type:"structure" nopayload:"true"`
  4393  
  4394  	// EventActionId is a required field
  4395  	EventActionId *string `location:"uri" locationName:"EventActionId" type:"string" required:"true"`
  4396  }
  4397  
  4398  // String returns the string representation.
  4399  //
  4400  // API parameter values that are decorated as "sensitive" in the API will not
  4401  // be included in the string output. The member name will be present, but the
  4402  // value will be replaced with "sensitive".
  4403  func (s DeleteEventActionInput) String() string {
  4404  	return awsutil.Prettify(s)
  4405  }
  4406  
  4407  // GoString returns the string representation.
  4408  //
  4409  // API parameter values that are decorated as "sensitive" in the API will not
  4410  // be included in the string output. The member name will be present, but the
  4411  // value will be replaced with "sensitive".
  4412  func (s DeleteEventActionInput) GoString() string {
  4413  	return s.String()
  4414  }
  4415  
  4416  // Validate inspects the fields of the type to determine if they are valid.
  4417  func (s *DeleteEventActionInput) Validate() error {
  4418  	invalidParams := request.ErrInvalidParams{Context: "DeleteEventActionInput"}
  4419  	if s.EventActionId == nil {
  4420  		invalidParams.Add(request.NewErrParamRequired("EventActionId"))
  4421  	}
  4422  	if s.EventActionId != nil && len(*s.EventActionId) < 1 {
  4423  		invalidParams.Add(request.NewErrParamMinLen("EventActionId", 1))
  4424  	}
  4425  
  4426  	if invalidParams.Len() > 0 {
  4427  		return invalidParams
  4428  	}
  4429  	return nil
  4430  }
  4431  
  4432  // SetEventActionId sets the EventActionId field's value.
  4433  func (s *DeleteEventActionInput) SetEventActionId(v string) *DeleteEventActionInput {
  4434  	s.EventActionId = &v
  4435  	return s
  4436  }
  4437  
  4438  type DeleteEventActionOutput struct {
  4439  	_ struct{} `type:"structure" nopayload:"true"`
  4440  }
  4441  
  4442  // String returns the string representation.
  4443  //
  4444  // API parameter values that are decorated as "sensitive" in the API will not
  4445  // be included in the string output. The member name will be present, but the
  4446  // value will be replaced with "sensitive".
  4447  func (s DeleteEventActionOutput) String() string {
  4448  	return awsutil.Prettify(s)
  4449  }
  4450  
  4451  // GoString returns the string representation.
  4452  //
  4453  // API parameter values that are decorated as "sensitive" in the API will not
  4454  // be included in the string output. The member name will be present, but the
  4455  // value will be replaced with "sensitive".
  4456  func (s DeleteEventActionOutput) GoString() string {
  4457  	return s.String()
  4458  }
  4459  
  4460  type DeleteRevisionInput struct {
  4461  	_ struct{} `type:"structure" nopayload:"true"`
  4462  
  4463  	// DataSetId is a required field
  4464  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  4465  
  4466  	// RevisionId is a required field
  4467  	RevisionId *string `location:"uri" locationName:"RevisionId" type:"string" required:"true"`
  4468  }
  4469  
  4470  // String returns the string representation.
  4471  //
  4472  // API parameter values that are decorated as "sensitive" in the API will not
  4473  // be included in the string output. The member name will be present, but the
  4474  // value will be replaced with "sensitive".
  4475  func (s DeleteRevisionInput) String() string {
  4476  	return awsutil.Prettify(s)
  4477  }
  4478  
  4479  // GoString returns the string representation.
  4480  //
  4481  // API parameter values that are decorated as "sensitive" in the API will not
  4482  // be included in the string output. The member name will be present, but the
  4483  // value will be replaced with "sensitive".
  4484  func (s DeleteRevisionInput) GoString() string {
  4485  	return s.String()
  4486  }
  4487  
  4488  // Validate inspects the fields of the type to determine if they are valid.
  4489  func (s *DeleteRevisionInput) Validate() error {
  4490  	invalidParams := request.ErrInvalidParams{Context: "DeleteRevisionInput"}
  4491  	if s.DataSetId == nil {
  4492  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  4493  	}
  4494  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  4495  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  4496  	}
  4497  	if s.RevisionId == nil {
  4498  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  4499  	}
  4500  	if s.RevisionId != nil && len(*s.RevisionId) < 1 {
  4501  		invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1))
  4502  	}
  4503  
  4504  	if invalidParams.Len() > 0 {
  4505  		return invalidParams
  4506  	}
  4507  	return nil
  4508  }
  4509  
  4510  // SetDataSetId sets the DataSetId field's value.
  4511  func (s *DeleteRevisionInput) SetDataSetId(v string) *DeleteRevisionInput {
  4512  	s.DataSetId = &v
  4513  	return s
  4514  }
  4515  
  4516  // SetRevisionId sets the RevisionId field's value.
  4517  func (s *DeleteRevisionInput) SetRevisionId(v string) *DeleteRevisionInput {
  4518  	s.RevisionId = &v
  4519  	return s
  4520  }
  4521  
  4522  type DeleteRevisionOutput struct {
  4523  	_ struct{} `type:"structure" nopayload:"true"`
  4524  }
  4525  
  4526  // String returns the string representation.
  4527  //
  4528  // API parameter values that are decorated as "sensitive" in the API will not
  4529  // be included in the string output. The member name will be present, but the
  4530  // value will be replaced with "sensitive".
  4531  func (s DeleteRevisionOutput) String() string {
  4532  	return awsutil.Prettify(s)
  4533  }
  4534  
  4535  // GoString returns the string representation.
  4536  //
  4537  // API parameter values that are decorated as "sensitive" in the API will not
  4538  // be included in the string output. The member name will be present, but the
  4539  // value will be replaced with "sensitive".
  4540  func (s DeleteRevisionOutput) GoString() string {
  4541  	return s.String()
  4542  }
  4543  
  4544  type Details struct {
  4545  	_ struct{} `type:"structure"`
  4546  
  4547  	ImportAssetFromSignedUrlJobErrorDetails *ImportAssetFromSignedUrlJobErrorDetails `type:"structure"`
  4548  
  4549  	// The list of sources for the assets.
  4550  	ImportAssetsFromS3JobErrorDetails []*AssetSourceEntry `type:"list"`
  4551  }
  4552  
  4553  // String returns the string representation.
  4554  //
  4555  // API parameter values that are decorated as "sensitive" in the API will not
  4556  // be included in the string output. The member name will be present, but the
  4557  // value will be replaced with "sensitive".
  4558  func (s Details) String() string {
  4559  	return awsutil.Prettify(s)
  4560  }
  4561  
  4562  // GoString returns the string representation.
  4563  //
  4564  // API parameter values that are decorated as "sensitive" in the API will not
  4565  // be included in the string output. The member name will be present, but the
  4566  // value will be replaced with "sensitive".
  4567  func (s Details) GoString() string {
  4568  	return s.String()
  4569  }
  4570  
  4571  // SetImportAssetFromSignedUrlJobErrorDetails sets the ImportAssetFromSignedUrlJobErrorDetails field's value.
  4572  func (s *Details) SetImportAssetFromSignedUrlJobErrorDetails(v *ImportAssetFromSignedUrlJobErrorDetails) *Details {
  4573  	s.ImportAssetFromSignedUrlJobErrorDetails = v
  4574  	return s
  4575  }
  4576  
  4577  // SetImportAssetsFromS3JobErrorDetails sets the ImportAssetsFromS3JobErrorDetails field's value.
  4578  func (s *Details) SetImportAssetsFromS3JobErrorDetails(v []*AssetSourceEntry) *Details {
  4579  	s.ImportAssetsFromS3JobErrorDetails = v
  4580  	return s
  4581  }
  4582  
  4583  type Event struct {
  4584  	_ struct{} `type:"structure"`
  4585  
  4586  	RevisionPublished *RevisionPublished `type:"structure"`
  4587  }
  4588  
  4589  // String returns the string representation.
  4590  //
  4591  // API parameter values that are decorated as "sensitive" in the API will not
  4592  // be included in the string output. The member name will be present, but the
  4593  // value will be replaced with "sensitive".
  4594  func (s Event) String() string {
  4595  	return awsutil.Prettify(s)
  4596  }
  4597  
  4598  // GoString returns the string representation.
  4599  //
  4600  // API parameter values that are decorated as "sensitive" in the API will not
  4601  // be included in the string output. The member name will be present, but the
  4602  // value will be replaced with "sensitive".
  4603  func (s Event) GoString() string {
  4604  	return s.String()
  4605  }
  4606  
  4607  // Validate inspects the fields of the type to determine if they are valid.
  4608  func (s *Event) Validate() error {
  4609  	invalidParams := request.ErrInvalidParams{Context: "Event"}
  4610  	if s.RevisionPublished != nil {
  4611  		if err := s.RevisionPublished.Validate(); err != nil {
  4612  			invalidParams.AddNested("RevisionPublished", err.(request.ErrInvalidParams))
  4613  		}
  4614  	}
  4615  
  4616  	if invalidParams.Len() > 0 {
  4617  		return invalidParams
  4618  	}
  4619  	return nil
  4620  }
  4621  
  4622  // SetRevisionPublished sets the RevisionPublished field's value.
  4623  func (s *Event) SetRevisionPublished(v *RevisionPublished) *Event {
  4624  	s.RevisionPublished = v
  4625  	return s
  4626  }
  4627  
  4628  // An event action is an object that defines the relationship between a specific
  4629  // event and an automated action that will be taken on behalf of the customer.
  4630  type EventActionEntry struct {
  4631  	_ struct{} `type:"structure"`
  4632  
  4633  	// What occurs after a certain event.
  4634  	//
  4635  	// Action is a required field
  4636  	Action *Action `type:"structure" required:"true"`
  4637  
  4638  	// The ARN for the event action.
  4639  	//
  4640  	// Arn is a required field
  4641  	Arn *string `type:"string" required:"true"`
  4642  
  4643  	// The date and time that the event action was created, in ISO 8601 format.
  4644  	//
  4645  	// CreatedAt is a required field
  4646  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  4647  
  4648  	// What occurs to start an action.
  4649  	//
  4650  	// Event is a required field
  4651  	Event *Event `type:"structure" required:"true"`
  4652  
  4653  	// The unique identifier for the event action.
  4654  	//
  4655  	// Id is a required field
  4656  	Id *string `type:"string" required:"true"`
  4657  
  4658  	// The date and time that the event action was last updated, in ISO 8601 format.
  4659  	//
  4660  	// UpdatedAt is a required field
  4661  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  4662  }
  4663  
  4664  // String returns the string representation.
  4665  //
  4666  // API parameter values that are decorated as "sensitive" in the API will not
  4667  // be included in the string output. The member name will be present, but the
  4668  // value will be replaced with "sensitive".
  4669  func (s EventActionEntry) String() string {
  4670  	return awsutil.Prettify(s)
  4671  }
  4672  
  4673  // GoString returns the string representation.
  4674  //
  4675  // API parameter values that are decorated as "sensitive" in the API will not
  4676  // be included in the string output. The member name will be present, but the
  4677  // value will be replaced with "sensitive".
  4678  func (s EventActionEntry) GoString() string {
  4679  	return s.String()
  4680  }
  4681  
  4682  // SetAction sets the Action field's value.
  4683  func (s *EventActionEntry) SetAction(v *Action) *EventActionEntry {
  4684  	s.Action = v
  4685  	return s
  4686  }
  4687  
  4688  // SetArn sets the Arn field's value.
  4689  func (s *EventActionEntry) SetArn(v string) *EventActionEntry {
  4690  	s.Arn = &v
  4691  	return s
  4692  }
  4693  
  4694  // SetCreatedAt sets the CreatedAt field's value.
  4695  func (s *EventActionEntry) SetCreatedAt(v time.Time) *EventActionEntry {
  4696  	s.CreatedAt = &v
  4697  	return s
  4698  }
  4699  
  4700  // SetEvent sets the Event field's value.
  4701  func (s *EventActionEntry) SetEvent(v *Event) *EventActionEntry {
  4702  	s.Event = v
  4703  	return s
  4704  }
  4705  
  4706  // SetId sets the Id field's value.
  4707  func (s *EventActionEntry) SetId(v string) *EventActionEntry {
  4708  	s.Id = &v
  4709  	return s
  4710  }
  4711  
  4712  // SetUpdatedAt sets the UpdatedAt field's value.
  4713  func (s *EventActionEntry) SetUpdatedAt(v time.Time) *EventActionEntry {
  4714  	s.UpdatedAt = &v
  4715  	return s
  4716  }
  4717  
  4718  // Details of the operation to be performed by the job.
  4719  type ExportAssetToSignedUrlRequestDetails struct {
  4720  	_ struct{} `type:"structure"`
  4721  
  4722  	// The unique identifier for the asset that is exported to a signed URL.
  4723  	//
  4724  	// AssetId is a required field
  4725  	AssetId *string `type:"string" required:"true"`
  4726  
  4727  	// The unique identifier for the data set associated with this export job.
  4728  	//
  4729  	// DataSetId is a required field
  4730  	DataSetId *string `type:"string" required:"true"`
  4731  
  4732  	// The unique identifier for the revision associated with this export request.
  4733  	//
  4734  	// RevisionId is a required field
  4735  	RevisionId *string `type:"string" required:"true"`
  4736  }
  4737  
  4738  // String returns the string representation.
  4739  //
  4740  // API parameter values that are decorated as "sensitive" in the API will not
  4741  // be included in the string output. The member name will be present, but the
  4742  // value will be replaced with "sensitive".
  4743  func (s ExportAssetToSignedUrlRequestDetails) String() string {
  4744  	return awsutil.Prettify(s)
  4745  }
  4746  
  4747  // GoString returns the string representation.
  4748  //
  4749  // API parameter values that are decorated as "sensitive" in the API will not
  4750  // be included in the string output. The member name will be present, but the
  4751  // value will be replaced with "sensitive".
  4752  func (s ExportAssetToSignedUrlRequestDetails) GoString() string {
  4753  	return s.String()
  4754  }
  4755  
  4756  // Validate inspects the fields of the type to determine if they are valid.
  4757  func (s *ExportAssetToSignedUrlRequestDetails) Validate() error {
  4758  	invalidParams := request.ErrInvalidParams{Context: "ExportAssetToSignedUrlRequestDetails"}
  4759  	if s.AssetId == nil {
  4760  		invalidParams.Add(request.NewErrParamRequired("AssetId"))
  4761  	}
  4762  	if s.DataSetId == nil {
  4763  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  4764  	}
  4765  	if s.RevisionId == nil {
  4766  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  4767  	}
  4768  
  4769  	if invalidParams.Len() > 0 {
  4770  		return invalidParams
  4771  	}
  4772  	return nil
  4773  }
  4774  
  4775  // SetAssetId sets the AssetId field's value.
  4776  func (s *ExportAssetToSignedUrlRequestDetails) SetAssetId(v string) *ExportAssetToSignedUrlRequestDetails {
  4777  	s.AssetId = &v
  4778  	return s
  4779  }
  4780  
  4781  // SetDataSetId sets the DataSetId field's value.
  4782  func (s *ExportAssetToSignedUrlRequestDetails) SetDataSetId(v string) *ExportAssetToSignedUrlRequestDetails {
  4783  	s.DataSetId = &v
  4784  	return s
  4785  }
  4786  
  4787  // SetRevisionId sets the RevisionId field's value.
  4788  func (s *ExportAssetToSignedUrlRequestDetails) SetRevisionId(v string) *ExportAssetToSignedUrlRequestDetails {
  4789  	s.RevisionId = &v
  4790  	return s
  4791  }
  4792  
  4793  // The details of the export to signed URL response.
  4794  type ExportAssetToSignedUrlResponseDetails struct {
  4795  	_ struct{} `type:"structure"`
  4796  
  4797  	// The unique identifier for the asset associated with this export job.
  4798  	//
  4799  	// AssetId is a required field
  4800  	AssetId *string `type:"string" required:"true"`
  4801  
  4802  	// The unique identifier for the data set associated with this export job.
  4803  	//
  4804  	// DataSetId is a required field
  4805  	DataSetId *string `type:"string" required:"true"`
  4806  
  4807  	// The unique identifier for the revision associated with this export response.
  4808  	//
  4809  	// RevisionId is a required field
  4810  	RevisionId *string `type:"string" required:"true"`
  4811  
  4812  	// The signed URL for the export request.
  4813  	SignedUrl *string `type:"string"`
  4814  
  4815  	// The date and time that the signed URL expires, in ISO 8601 format.
  4816  	SignedUrlExpiresAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  4817  }
  4818  
  4819  // String returns the string representation.
  4820  //
  4821  // API parameter values that are decorated as "sensitive" in the API will not
  4822  // be included in the string output. The member name will be present, but the
  4823  // value will be replaced with "sensitive".
  4824  func (s ExportAssetToSignedUrlResponseDetails) String() string {
  4825  	return awsutil.Prettify(s)
  4826  }
  4827  
  4828  // GoString returns the string representation.
  4829  //
  4830  // API parameter values that are decorated as "sensitive" in the API will not
  4831  // be included in the string output. The member name will be present, but the
  4832  // value will be replaced with "sensitive".
  4833  func (s ExportAssetToSignedUrlResponseDetails) GoString() string {
  4834  	return s.String()
  4835  }
  4836  
  4837  // SetAssetId sets the AssetId field's value.
  4838  func (s *ExportAssetToSignedUrlResponseDetails) SetAssetId(v string) *ExportAssetToSignedUrlResponseDetails {
  4839  	s.AssetId = &v
  4840  	return s
  4841  }
  4842  
  4843  // SetDataSetId sets the DataSetId field's value.
  4844  func (s *ExportAssetToSignedUrlResponseDetails) SetDataSetId(v string) *ExportAssetToSignedUrlResponseDetails {
  4845  	s.DataSetId = &v
  4846  	return s
  4847  }
  4848  
  4849  // SetRevisionId sets the RevisionId field's value.
  4850  func (s *ExportAssetToSignedUrlResponseDetails) SetRevisionId(v string) *ExportAssetToSignedUrlResponseDetails {
  4851  	s.RevisionId = &v
  4852  	return s
  4853  }
  4854  
  4855  // SetSignedUrl sets the SignedUrl field's value.
  4856  func (s *ExportAssetToSignedUrlResponseDetails) SetSignedUrl(v string) *ExportAssetToSignedUrlResponseDetails {
  4857  	s.SignedUrl = &v
  4858  	return s
  4859  }
  4860  
  4861  // SetSignedUrlExpiresAt sets the SignedUrlExpiresAt field's value.
  4862  func (s *ExportAssetToSignedUrlResponseDetails) SetSignedUrlExpiresAt(v time.Time) *ExportAssetToSignedUrlResponseDetails {
  4863  	s.SignedUrlExpiresAt = &v
  4864  	return s
  4865  }
  4866  
  4867  // Details of the operation to be performed by the job.
  4868  type ExportAssetsToS3RequestDetails struct {
  4869  	_ struct{} `type:"structure"`
  4870  
  4871  	// The destination for the asset.
  4872  	//
  4873  	// AssetDestinations is a required field
  4874  	AssetDestinations []*AssetDestinationEntry `type:"list" required:"true"`
  4875  
  4876  	// The unique identifier for the data set associated with this export job.
  4877  	//
  4878  	// DataSetId is a required field
  4879  	DataSetId *string `type:"string" required:"true"`
  4880  
  4881  	// Encryption configuration for the export job.
  4882  	Encryption *ExportServerSideEncryption `type:"structure"`
  4883  
  4884  	// The unique identifier for the revision associated with this export request.
  4885  	//
  4886  	// RevisionId is a required field
  4887  	RevisionId *string `type:"string" required:"true"`
  4888  }
  4889  
  4890  // String returns the string representation.
  4891  //
  4892  // API parameter values that are decorated as "sensitive" in the API will not
  4893  // be included in the string output. The member name will be present, but the
  4894  // value will be replaced with "sensitive".
  4895  func (s ExportAssetsToS3RequestDetails) String() string {
  4896  	return awsutil.Prettify(s)
  4897  }
  4898  
  4899  // GoString returns the string representation.
  4900  //
  4901  // API parameter values that are decorated as "sensitive" in the API will not
  4902  // be included in the string output. The member name will be present, but the
  4903  // value will be replaced with "sensitive".
  4904  func (s ExportAssetsToS3RequestDetails) GoString() string {
  4905  	return s.String()
  4906  }
  4907  
  4908  // Validate inspects the fields of the type to determine if they are valid.
  4909  func (s *ExportAssetsToS3RequestDetails) Validate() error {
  4910  	invalidParams := request.ErrInvalidParams{Context: "ExportAssetsToS3RequestDetails"}
  4911  	if s.AssetDestinations == nil {
  4912  		invalidParams.Add(request.NewErrParamRequired("AssetDestinations"))
  4913  	}
  4914  	if s.DataSetId == nil {
  4915  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  4916  	}
  4917  	if s.RevisionId == nil {
  4918  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  4919  	}
  4920  	if s.AssetDestinations != nil {
  4921  		for i, v := range s.AssetDestinations {
  4922  			if v == nil {
  4923  				continue
  4924  			}
  4925  			if err := v.Validate(); err != nil {
  4926  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssetDestinations", i), err.(request.ErrInvalidParams))
  4927  			}
  4928  		}
  4929  	}
  4930  	if s.Encryption != nil {
  4931  		if err := s.Encryption.Validate(); err != nil {
  4932  			invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams))
  4933  		}
  4934  	}
  4935  
  4936  	if invalidParams.Len() > 0 {
  4937  		return invalidParams
  4938  	}
  4939  	return nil
  4940  }
  4941  
  4942  // SetAssetDestinations sets the AssetDestinations field's value.
  4943  func (s *ExportAssetsToS3RequestDetails) SetAssetDestinations(v []*AssetDestinationEntry) *ExportAssetsToS3RequestDetails {
  4944  	s.AssetDestinations = v
  4945  	return s
  4946  }
  4947  
  4948  // SetDataSetId sets the DataSetId field's value.
  4949  func (s *ExportAssetsToS3RequestDetails) SetDataSetId(v string) *ExportAssetsToS3RequestDetails {
  4950  	s.DataSetId = &v
  4951  	return s
  4952  }
  4953  
  4954  // SetEncryption sets the Encryption field's value.
  4955  func (s *ExportAssetsToS3RequestDetails) SetEncryption(v *ExportServerSideEncryption) *ExportAssetsToS3RequestDetails {
  4956  	s.Encryption = v
  4957  	return s
  4958  }
  4959  
  4960  // SetRevisionId sets the RevisionId field's value.
  4961  func (s *ExportAssetsToS3RequestDetails) SetRevisionId(v string) *ExportAssetsToS3RequestDetails {
  4962  	s.RevisionId = &v
  4963  	return s
  4964  }
  4965  
  4966  // Details about the export to Amazon S3 response.
  4967  type ExportAssetsToS3ResponseDetails struct {
  4968  	_ struct{} `type:"structure"`
  4969  
  4970  	// The destination in Amazon S3 where the asset is exported.
  4971  	//
  4972  	// AssetDestinations is a required field
  4973  	AssetDestinations []*AssetDestinationEntry `type:"list" required:"true"`
  4974  
  4975  	// The unique identifier for the data set associated with this export job.
  4976  	//
  4977  	// DataSetId is a required field
  4978  	DataSetId *string `type:"string" required:"true"`
  4979  
  4980  	// Encryption configuration of the export job.
  4981  	Encryption *ExportServerSideEncryption `type:"structure"`
  4982  
  4983  	// The unique identifier for the revision associated with this export response.
  4984  	//
  4985  	// RevisionId is a required field
  4986  	RevisionId *string `type:"string" required:"true"`
  4987  }
  4988  
  4989  // String returns the string representation.
  4990  //
  4991  // API parameter values that are decorated as "sensitive" in the API will not
  4992  // be included in the string output. The member name will be present, but the
  4993  // value will be replaced with "sensitive".
  4994  func (s ExportAssetsToS3ResponseDetails) String() string {
  4995  	return awsutil.Prettify(s)
  4996  }
  4997  
  4998  // GoString returns the string representation.
  4999  //
  5000  // API parameter values that are decorated as "sensitive" in the API will not
  5001  // be included in the string output. The member name will be present, but the
  5002  // value will be replaced with "sensitive".
  5003  func (s ExportAssetsToS3ResponseDetails) GoString() string {
  5004  	return s.String()
  5005  }
  5006  
  5007  // SetAssetDestinations sets the AssetDestinations field's value.
  5008  func (s *ExportAssetsToS3ResponseDetails) SetAssetDestinations(v []*AssetDestinationEntry) *ExportAssetsToS3ResponseDetails {
  5009  	s.AssetDestinations = v
  5010  	return s
  5011  }
  5012  
  5013  // SetDataSetId sets the DataSetId field's value.
  5014  func (s *ExportAssetsToS3ResponseDetails) SetDataSetId(v string) *ExportAssetsToS3ResponseDetails {
  5015  	s.DataSetId = &v
  5016  	return s
  5017  }
  5018  
  5019  // SetEncryption sets the Encryption field's value.
  5020  func (s *ExportAssetsToS3ResponseDetails) SetEncryption(v *ExportServerSideEncryption) *ExportAssetsToS3ResponseDetails {
  5021  	s.Encryption = v
  5022  	return s
  5023  }
  5024  
  5025  // SetRevisionId sets the RevisionId field's value.
  5026  func (s *ExportAssetsToS3ResponseDetails) SetRevisionId(v string) *ExportAssetsToS3ResponseDetails {
  5027  	s.RevisionId = &v
  5028  	return s
  5029  }
  5030  
  5031  // Details of the operation to be performed by the job.
  5032  type ExportRevisionsToS3RequestDetails struct {
  5033  	_ struct{} `type:"structure"`
  5034  
  5035  	// The unique identifier for the data set associated with this export job.
  5036  	//
  5037  	// DataSetId is a required field
  5038  	DataSetId *string `type:"string" required:"true"`
  5039  
  5040  	// Encryption configuration for the export job.
  5041  	Encryption *ExportServerSideEncryption `type:"structure"`
  5042  
  5043  	// The destination for the revision.
  5044  	//
  5045  	// RevisionDestinations is a required field
  5046  	RevisionDestinations []*RevisionDestinationEntry `type:"list" required:"true"`
  5047  }
  5048  
  5049  // String returns the string representation.
  5050  //
  5051  // API parameter values that are decorated as "sensitive" in the API will not
  5052  // be included in the string output. The member name will be present, but the
  5053  // value will be replaced with "sensitive".
  5054  func (s ExportRevisionsToS3RequestDetails) String() string {
  5055  	return awsutil.Prettify(s)
  5056  }
  5057  
  5058  // GoString returns the string representation.
  5059  //
  5060  // API parameter values that are decorated as "sensitive" in the API will not
  5061  // be included in the string output. The member name will be present, but the
  5062  // value will be replaced with "sensitive".
  5063  func (s ExportRevisionsToS3RequestDetails) GoString() string {
  5064  	return s.String()
  5065  }
  5066  
  5067  // Validate inspects the fields of the type to determine if they are valid.
  5068  func (s *ExportRevisionsToS3RequestDetails) Validate() error {
  5069  	invalidParams := request.ErrInvalidParams{Context: "ExportRevisionsToS3RequestDetails"}
  5070  	if s.DataSetId == nil {
  5071  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  5072  	}
  5073  	if s.RevisionDestinations == nil {
  5074  		invalidParams.Add(request.NewErrParamRequired("RevisionDestinations"))
  5075  	}
  5076  	if s.Encryption != nil {
  5077  		if err := s.Encryption.Validate(); err != nil {
  5078  			invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams))
  5079  		}
  5080  	}
  5081  	if s.RevisionDestinations != nil {
  5082  		for i, v := range s.RevisionDestinations {
  5083  			if v == nil {
  5084  				continue
  5085  			}
  5086  			if err := v.Validate(); err != nil {
  5087  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RevisionDestinations", i), err.(request.ErrInvalidParams))
  5088  			}
  5089  		}
  5090  	}
  5091  
  5092  	if invalidParams.Len() > 0 {
  5093  		return invalidParams
  5094  	}
  5095  	return nil
  5096  }
  5097  
  5098  // SetDataSetId sets the DataSetId field's value.
  5099  func (s *ExportRevisionsToS3RequestDetails) SetDataSetId(v string) *ExportRevisionsToS3RequestDetails {
  5100  	s.DataSetId = &v
  5101  	return s
  5102  }
  5103  
  5104  // SetEncryption sets the Encryption field's value.
  5105  func (s *ExportRevisionsToS3RequestDetails) SetEncryption(v *ExportServerSideEncryption) *ExportRevisionsToS3RequestDetails {
  5106  	s.Encryption = v
  5107  	return s
  5108  }
  5109  
  5110  // SetRevisionDestinations sets the RevisionDestinations field's value.
  5111  func (s *ExportRevisionsToS3RequestDetails) SetRevisionDestinations(v []*RevisionDestinationEntry) *ExportRevisionsToS3RequestDetails {
  5112  	s.RevisionDestinations = v
  5113  	return s
  5114  }
  5115  
  5116  // Details about the export revisions to Amazon S3 response.
  5117  type ExportRevisionsToS3ResponseDetails struct {
  5118  	_ struct{} `type:"structure"`
  5119  
  5120  	// The unique identifier for the data set associated with this export job.
  5121  	//
  5122  	// DataSetId is a required field
  5123  	DataSetId *string `type:"string" required:"true"`
  5124  
  5125  	// Encryption configuration of the export job.
  5126  	Encryption *ExportServerSideEncryption `type:"structure"`
  5127  
  5128  	// The ARN for the event action.
  5129  	EventActionArn *string `type:"string"`
  5130  
  5131  	// The destination in Amazon S3 where the revision is exported.
  5132  	//
  5133  	// RevisionDestinations is a required field
  5134  	RevisionDestinations []*RevisionDestinationEntry `type:"list" required:"true"`
  5135  }
  5136  
  5137  // String returns the string representation.
  5138  //
  5139  // API parameter values that are decorated as "sensitive" in the API will not
  5140  // be included in the string output. The member name will be present, but the
  5141  // value will be replaced with "sensitive".
  5142  func (s ExportRevisionsToS3ResponseDetails) String() string {
  5143  	return awsutil.Prettify(s)
  5144  }
  5145  
  5146  // GoString returns the string representation.
  5147  //
  5148  // API parameter values that are decorated as "sensitive" in the API will not
  5149  // be included in the string output. The member name will be present, but the
  5150  // value will be replaced with "sensitive".
  5151  func (s ExportRevisionsToS3ResponseDetails) GoString() string {
  5152  	return s.String()
  5153  }
  5154  
  5155  // SetDataSetId sets the DataSetId field's value.
  5156  func (s *ExportRevisionsToS3ResponseDetails) SetDataSetId(v string) *ExportRevisionsToS3ResponseDetails {
  5157  	s.DataSetId = &v
  5158  	return s
  5159  }
  5160  
  5161  // SetEncryption sets the Encryption field's value.
  5162  func (s *ExportRevisionsToS3ResponseDetails) SetEncryption(v *ExportServerSideEncryption) *ExportRevisionsToS3ResponseDetails {
  5163  	s.Encryption = v
  5164  	return s
  5165  }
  5166  
  5167  // SetEventActionArn sets the EventActionArn field's value.
  5168  func (s *ExportRevisionsToS3ResponseDetails) SetEventActionArn(v string) *ExportRevisionsToS3ResponseDetails {
  5169  	s.EventActionArn = &v
  5170  	return s
  5171  }
  5172  
  5173  // SetRevisionDestinations sets the RevisionDestinations field's value.
  5174  func (s *ExportRevisionsToS3ResponseDetails) SetRevisionDestinations(v []*RevisionDestinationEntry) *ExportRevisionsToS3ResponseDetails {
  5175  	s.RevisionDestinations = v
  5176  	return s
  5177  }
  5178  
  5179  // Encryption configuration of the export job. Includes the encryption type
  5180  // in addition to the AWS KMS key. The KMS key is only necessary if you chose
  5181  // the KMS encryption. type.
  5182  type ExportServerSideEncryption struct {
  5183  	_ struct{} `type:"structure"`
  5184  
  5185  	// The Amazon Resource Name (ARN) of the AWS KMS key you want to use to encrypt
  5186  	// the Amazon S3 objects. This parameter is required if you choose aws:kms as
  5187  	// an encryption type.
  5188  	KmsKeyArn *string `type:"string"`
  5189  
  5190  	// The type of server side encryption used for encrypting the objects in Amazon
  5191  	// S3.
  5192  	//
  5193  	// Type is a required field
  5194  	Type *string `type:"string" required:"true" enum:"ServerSideEncryptionTypes"`
  5195  }
  5196  
  5197  // String returns the string representation.
  5198  //
  5199  // API parameter values that are decorated as "sensitive" in the API will not
  5200  // be included in the string output. The member name will be present, but the
  5201  // value will be replaced with "sensitive".
  5202  func (s ExportServerSideEncryption) String() string {
  5203  	return awsutil.Prettify(s)
  5204  }
  5205  
  5206  // GoString returns the string representation.
  5207  //
  5208  // API parameter values that are decorated as "sensitive" in the API will not
  5209  // be included in the string output. The member name will be present, but the
  5210  // value will be replaced with "sensitive".
  5211  func (s ExportServerSideEncryption) GoString() string {
  5212  	return s.String()
  5213  }
  5214  
  5215  // Validate inspects the fields of the type to determine if they are valid.
  5216  func (s *ExportServerSideEncryption) Validate() error {
  5217  	invalidParams := request.ErrInvalidParams{Context: "ExportServerSideEncryption"}
  5218  	if s.Type == nil {
  5219  		invalidParams.Add(request.NewErrParamRequired("Type"))
  5220  	}
  5221  
  5222  	if invalidParams.Len() > 0 {
  5223  		return invalidParams
  5224  	}
  5225  	return nil
  5226  }
  5227  
  5228  // SetKmsKeyArn sets the KmsKeyArn field's value.
  5229  func (s *ExportServerSideEncryption) SetKmsKeyArn(v string) *ExportServerSideEncryption {
  5230  	s.KmsKeyArn = &v
  5231  	return s
  5232  }
  5233  
  5234  // SetType sets the Type field's value.
  5235  func (s *ExportServerSideEncryption) SetType(v string) *ExportServerSideEncryption {
  5236  	s.Type = &v
  5237  	return s
  5238  }
  5239  
  5240  type GetAssetInput struct {
  5241  	_ struct{} `type:"structure" nopayload:"true"`
  5242  
  5243  	// AssetId is a required field
  5244  	AssetId *string `location:"uri" locationName:"AssetId" type:"string" required:"true"`
  5245  
  5246  	// DataSetId is a required field
  5247  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  5248  
  5249  	// RevisionId is a required field
  5250  	RevisionId *string `location:"uri" locationName:"RevisionId" type:"string" required:"true"`
  5251  }
  5252  
  5253  // String returns the string representation.
  5254  //
  5255  // API parameter values that are decorated as "sensitive" in the API will not
  5256  // be included in the string output. The member name will be present, but the
  5257  // value will be replaced with "sensitive".
  5258  func (s GetAssetInput) String() string {
  5259  	return awsutil.Prettify(s)
  5260  }
  5261  
  5262  // GoString returns the string representation.
  5263  //
  5264  // API parameter values that are decorated as "sensitive" in the API will not
  5265  // be included in the string output. The member name will be present, but the
  5266  // value will be replaced with "sensitive".
  5267  func (s GetAssetInput) GoString() string {
  5268  	return s.String()
  5269  }
  5270  
  5271  // Validate inspects the fields of the type to determine if they are valid.
  5272  func (s *GetAssetInput) Validate() error {
  5273  	invalidParams := request.ErrInvalidParams{Context: "GetAssetInput"}
  5274  	if s.AssetId == nil {
  5275  		invalidParams.Add(request.NewErrParamRequired("AssetId"))
  5276  	}
  5277  	if s.AssetId != nil && len(*s.AssetId) < 1 {
  5278  		invalidParams.Add(request.NewErrParamMinLen("AssetId", 1))
  5279  	}
  5280  	if s.DataSetId == nil {
  5281  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  5282  	}
  5283  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  5284  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  5285  	}
  5286  	if s.RevisionId == nil {
  5287  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  5288  	}
  5289  	if s.RevisionId != nil && len(*s.RevisionId) < 1 {
  5290  		invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1))
  5291  	}
  5292  
  5293  	if invalidParams.Len() > 0 {
  5294  		return invalidParams
  5295  	}
  5296  	return nil
  5297  }
  5298  
  5299  // SetAssetId sets the AssetId field's value.
  5300  func (s *GetAssetInput) SetAssetId(v string) *GetAssetInput {
  5301  	s.AssetId = &v
  5302  	return s
  5303  }
  5304  
  5305  // SetDataSetId sets the DataSetId field's value.
  5306  func (s *GetAssetInput) SetDataSetId(v string) *GetAssetInput {
  5307  	s.DataSetId = &v
  5308  	return s
  5309  }
  5310  
  5311  // SetRevisionId sets the RevisionId field's value.
  5312  func (s *GetAssetInput) SetRevisionId(v string) *GetAssetInput {
  5313  	s.RevisionId = &v
  5314  	return s
  5315  }
  5316  
  5317  type GetAssetOutput struct {
  5318  	_ struct{} `type:"structure"`
  5319  
  5320  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  5321  	Arn *string `type:"string"`
  5322  
  5323  	AssetDetails *AssetDetails `type:"structure"`
  5324  
  5325  	// The type of file your data is stored in. Currently, the supported asset type
  5326  	// is S3_SNAPSHOT.
  5327  	AssetType *string `type:"string" enum:"AssetType"`
  5328  
  5329  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  5330  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5331  
  5332  	// A unique identifier.
  5333  	DataSetId *string `type:"string"`
  5334  
  5335  	// A unique identifier.
  5336  	Id *string `type:"string"`
  5337  
  5338  	// The name of the asset. When importing from Amazon S3, the S3 object key is
  5339  	// used as the asset name. When exporting to Amazon S3, the asset name is used
  5340  	// as default target S3 object key.
  5341  	Name *string `type:"string"`
  5342  
  5343  	// A unique identifier.
  5344  	RevisionId *string `type:"string"`
  5345  
  5346  	// A unique identifier.
  5347  	SourceId *string `type:"string"`
  5348  
  5349  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  5350  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5351  }
  5352  
  5353  // String returns the string representation.
  5354  //
  5355  // API parameter values that are decorated as "sensitive" in the API will not
  5356  // be included in the string output. The member name will be present, but the
  5357  // value will be replaced with "sensitive".
  5358  func (s GetAssetOutput) String() string {
  5359  	return awsutil.Prettify(s)
  5360  }
  5361  
  5362  // GoString returns the string representation.
  5363  //
  5364  // API parameter values that are decorated as "sensitive" in the API will not
  5365  // be included in the string output. The member name will be present, but the
  5366  // value will be replaced with "sensitive".
  5367  func (s GetAssetOutput) GoString() string {
  5368  	return s.String()
  5369  }
  5370  
  5371  // SetArn sets the Arn field's value.
  5372  func (s *GetAssetOutput) SetArn(v string) *GetAssetOutput {
  5373  	s.Arn = &v
  5374  	return s
  5375  }
  5376  
  5377  // SetAssetDetails sets the AssetDetails field's value.
  5378  func (s *GetAssetOutput) SetAssetDetails(v *AssetDetails) *GetAssetOutput {
  5379  	s.AssetDetails = v
  5380  	return s
  5381  }
  5382  
  5383  // SetAssetType sets the AssetType field's value.
  5384  func (s *GetAssetOutput) SetAssetType(v string) *GetAssetOutput {
  5385  	s.AssetType = &v
  5386  	return s
  5387  }
  5388  
  5389  // SetCreatedAt sets the CreatedAt field's value.
  5390  func (s *GetAssetOutput) SetCreatedAt(v time.Time) *GetAssetOutput {
  5391  	s.CreatedAt = &v
  5392  	return s
  5393  }
  5394  
  5395  // SetDataSetId sets the DataSetId field's value.
  5396  func (s *GetAssetOutput) SetDataSetId(v string) *GetAssetOutput {
  5397  	s.DataSetId = &v
  5398  	return s
  5399  }
  5400  
  5401  // SetId sets the Id field's value.
  5402  func (s *GetAssetOutput) SetId(v string) *GetAssetOutput {
  5403  	s.Id = &v
  5404  	return s
  5405  }
  5406  
  5407  // SetName sets the Name field's value.
  5408  func (s *GetAssetOutput) SetName(v string) *GetAssetOutput {
  5409  	s.Name = &v
  5410  	return s
  5411  }
  5412  
  5413  // SetRevisionId sets the RevisionId field's value.
  5414  func (s *GetAssetOutput) SetRevisionId(v string) *GetAssetOutput {
  5415  	s.RevisionId = &v
  5416  	return s
  5417  }
  5418  
  5419  // SetSourceId sets the SourceId field's value.
  5420  func (s *GetAssetOutput) SetSourceId(v string) *GetAssetOutput {
  5421  	s.SourceId = &v
  5422  	return s
  5423  }
  5424  
  5425  // SetUpdatedAt sets the UpdatedAt field's value.
  5426  func (s *GetAssetOutput) SetUpdatedAt(v time.Time) *GetAssetOutput {
  5427  	s.UpdatedAt = &v
  5428  	return s
  5429  }
  5430  
  5431  type GetDataSetInput struct {
  5432  	_ struct{} `type:"structure" nopayload:"true"`
  5433  
  5434  	// DataSetId is a required field
  5435  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  5436  }
  5437  
  5438  // String returns the string representation.
  5439  //
  5440  // API parameter values that are decorated as "sensitive" in the API will not
  5441  // be included in the string output. The member name will be present, but the
  5442  // value will be replaced with "sensitive".
  5443  func (s GetDataSetInput) String() string {
  5444  	return awsutil.Prettify(s)
  5445  }
  5446  
  5447  // GoString returns the string representation.
  5448  //
  5449  // API parameter values that are decorated as "sensitive" in the API will not
  5450  // be included in the string output. The member name will be present, but the
  5451  // value will be replaced with "sensitive".
  5452  func (s GetDataSetInput) GoString() string {
  5453  	return s.String()
  5454  }
  5455  
  5456  // Validate inspects the fields of the type to determine if they are valid.
  5457  func (s *GetDataSetInput) Validate() error {
  5458  	invalidParams := request.ErrInvalidParams{Context: "GetDataSetInput"}
  5459  	if s.DataSetId == nil {
  5460  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  5461  	}
  5462  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  5463  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  5464  	}
  5465  
  5466  	if invalidParams.Len() > 0 {
  5467  		return invalidParams
  5468  	}
  5469  	return nil
  5470  }
  5471  
  5472  // SetDataSetId sets the DataSetId field's value.
  5473  func (s *GetDataSetInput) SetDataSetId(v string) *GetDataSetInput {
  5474  	s.DataSetId = &v
  5475  	return s
  5476  }
  5477  
  5478  type GetDataSetOutput struct {
  5479  	_ struct{} `type:"structure"`
  5480  
  5481  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  5482  	Arn *string `type:"string"`
  5483  
  5484  	// The type of file your data is stored in. Currently, the supported asset type
  5485  	// is S3_SNAPSHOT.
  5486  	AssetType *string `type:"string" enum:"AssetType"`
  5487  
  5488  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  5489  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5490  
  5491  	// A description of a resource.
  5492  	Description *string `type:"string"`
  5493  
  5494  	// A unique identifier.
  5495  	Id *string `type:"string"`
  5496  
  5497  	// The name of the model.
  5498  	Name *string `type:"string"`
  5499  
  5500  	// A property that defines the data set as OWNED by the account (for providers)
  5501  	// or ENTITLED to the account (for subscribers). When an owned data set is published
  5502  	// in a product, AWS Data Exchange creates a copy of the data set. Subscribers
  5503  	// can access that copy of the data set as an entitled data set.
  5504  	Origin *string `type:"string" enum:"Origin"`
  5505  
  5506  	OriginDetails *OriginDetails `type:"structure"`
  5507  
  5508  	// A unique identifier.
  5509  	SourceId *string `type:"string"`
  5510  
  5511  	Tags map[string]*string `type:"map"`
  5512  
  5513  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  5514  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5515  }
  5516  
  5517  // String returns the string representation.
  5518  //
  5519  // API parameter values that are decorated as "sensitive" in the API will not
  5520  // be included in the string output. The member name will be present, but the
  5521  // value will be replaced with "sensitive".
  5522  func (s GetDataSetOutput) String() string {
  5523  	return awsutil.Prettify(s)
  5524  }
  5525  
  5526  // GoString returns the string representation.
  5527  //
  5528  // API parameter values that are decorated as "sensitive" in the API will not
  5529  // be included in the string output. The member name will be present, but the
  5530  // value will be replaced with "sensitive".
  5531  func (s GetDataSetOutput) GoString() string {
  5532  	return s.String()
  5533  }
  5534  
  5535  // SetArn sets the Arn field's value.
  5536  func (s *GetDataSetOutput) SetArn(v string) *GetDataSetOutput {
  5537  	s.Arn = &v
  5538  	return s
  5539  }
  5540  
  5541  // SetAssetType sets the AssetType field's value.
  5542  func (s *GetDataSetOutput) SetAssetType(v string) *GetDataSetOutput {
  5543  	s.AssetType = &v
  5544  	return s
  5545  }
  5546  
  5547  // SetCreatedAt sets the CreatedAt field's value.
  5548  func (s *GetDataSetOutput) SetCreatedAt(v time.Time) *GetDataSetOutput {
  5549  	s.CreatedAt = &v
  5550  	return s
  5551  }
  5552  
  5553  // SetDescription sets the Description field's value.
  5554  func (s *GetDataSetOutput) SetDescription(v string) *GetDataSetOutput {
  5555  	s.Description = &v
  5556  	return s
  5557  }
  5558  
  5559  // SetId sets the Id field's value.
  5560  func (s *GetDataSetOutput) SetId(v string) *GetDataSetOutput {
  5561  	s.Id = &v
  5562  	return s
  5563  }
  5564  
  5565  // SetName sets the Name field's value.
  5566  func (s *GetDataSetOutput) SetName(v string) *GetDataSetOutput {
  5567  	s.Name = &v
  5568  	return s
  5569  }
  5570  
  5571  // SetOrigin sets the Origin field's value.
  5572  func (s *GetDataSetOutput) SetOrigin(v string) *GetDataSetOutput {
  5573  	s.Origin = &v
  5574  	return s
  5575  }
  5576  
  5577  // SetOriginDetails sets the OriginDetails field's value.
  5578  func (s *GetDataSetOutput) SetOriginDetails(v *OriginDetails) *GetDataSetOutput {
  5579  	s.OriginDetails = v
  5580  	return s
  5581  }
  5582  
  5583  // SetSourceId sets the SourceId field's value.
  5584  func (s *GetDataSetOutput) SetSourceId(v string) *GetDataSetOutput {
  5585  	s.SourceId = &v
  5586  	return s
  5587  }
  5588  
  5589  // SetTags sets the Tags field's value.
  5590  func (s *GetDataSetOutput) SetTags(v map[string]*string) *GetDataSetOutput {
  5591  	s.Tags = v
  5592  	return s
  5593  }
  5594  
  5595  // SetUpdatedAt sets the UpdatedAt field's value.
  5596  func (s *GetDataSetOutput) SetUpdatedAt(v time.Time) *GetDataSetOutput {
  5597  	s.UpdatedAt = &v
  5598  	return s
  5599  }
  5600  
  5601  type GetEventActionInput struct {
  5602  	_ struct{} `type:"structure" nopayload:"true"`
  5603  
  5604  	// EventActionId is a required field
  5605  	EventActionId *string `location:"uri" locationName:"EventActionId" type:"string" required:"true"`
  5606  }
  5607  
  5608  // String returns the string representation.
  5609  //
  5610  // API parameter values that are decorated as "sensitive" in the API will not
  5611  // be included in the string output. The member name will be present, but the
  5612  // value will be replaced with "sensitive".
  5613  func (s GetEventActionInput) String() string {
  5614  	return awsutil.Prettify(s)
  5615  }
  5616  
  5617  // GoString returns the string representation.
  5618  //
  5619  // API parameter values that are decorated as "sensitive" in the API will not
  5620  // be included in the string output. The member name will be present, but the
  5621  // value will be replaced with "sensitive".
  5622  func (s GetEventActionInput) GoString() string {
  5623  	return s.String()
  5624  }
  5625  
  5626  // Validate inspects the fields of the type to determine if they are valid.
  5627  func (s *GetEventActionInput) Validate() error {
  5628  	invalidParams := request.ErrInvalidParams{Context: "GetEventActionInput"}
  5629  	if s.EventActionId == nil {
  5630  		invalidParams.Add(request.NewErrParamRequired("EventActionId"))
  5631  	}
  5632  	if s.EventActionId != nil && len(*s.EventActionId) < 1 {
  5633  		invalidParams.Add(request.NewErrParamMinLen("EventActionId", 1))
  5634  	}
  5635  
  5636  	if invalidParams.Len() > 0 {
  5637  		return invalidParams
  5638  	}
  5639  	return nil
  5640  }
  5641  
  5642  // SetEventActionId sets the EventActionId field's value.
  5643  func (s *GetEventActionInput) SetEventActionId(v string) *GetEventActionInput {
  5644  	s.EventActionId = &v
  5645  	return s
  5646  }
  5647  
  5648  type GetEventActionOutput struct {
  5649  	_ struct{} `type:"structure"`
  5650  
  5651  	Action *Action `type:"structure"`
  5652  
  5653  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  5654  	Arn *string `type:"string"`
  5655  
  5656  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  5657  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5658  
  5659  	Event *Event `type:"structure"`
  5660  
  5661  	// A unique identifier.
  5662  	Id *string `type:"string"`
  5663  
  5664  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  5665  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5666  }
  5667  
  5668  // String returns the string representation.
  5669  //
  5670  // API parameter values that are decorated as "sensitive" in the API will not
  5671  // be included in the string output. The member name will be present, but the
  5672  // value will be replaced with "sensitive".
  5673  func (s GetEventActionOutput) String() string {
  5674  	return awsutil.Prettify(s)
  5675  }
  5676  
  5677  // GoString returns the string representation.
  5678  //
  5679  // API parameter values that are decorated as "sensitive" in the API will not
  5680  // be included in the string output. The member name will be present, but the
  5681  // value will be replaced with "sensitive".
  5682  func (s GetEventActionOutput) GoString() string {
  5683  	return s.String()
  5684  }
  5685  
  5686  // SetAction sets the Action field's value.
  5687  func (s *GetEventActionOutput) SetAction(v *Action) *GetEventActionOutput {
  5688  	s.Action = v
  5689  	return s
  5690  }
  5691  
  5692  // SetArn sets the Arn field's value.
  5693  func (s *GetEventActionOutput) SetArn(v string) *GetEventActionOutput {
  5694  	s.Arn = &v
  5695  	return s
  5696  }
  5697  
  5698  // SetCreatedAt sets the CreatedAt field's value.
  5699  func (s *GetEventActionOutput) SetCreatedAt(v time.Time) *GetEventActionOutput {
  5700  	s.CreatedAt = &v
  5701  	return s
  5702  }
  5703  
  5704  // SetEvent sets the Event field's value.
  5705  func (s *GetEventActionOutput) SetEvent(v *Event) *GetEventActionOutput {
  5706  	s.Event = v
  5707  	return s
  5708  }
  5709  
  5710  // SetId sets the Id field's value.
  5711  func (s *GetEventActionOutput) SetId(v string) *GetEventActionOutput {
  5712  	s.Id = &v
  5713  	return s
  5714  }
  5715  
  5716  // SetUpdatedAt sets the UpdatedAt field's value.
  5717  func (s *GetEventActionOutput) SetUpdatedAt(v time.Time) *GetEventActionOutput {
  5718  	s.UpdatedAt = &v
  5719  	return s
  5720  }
  5721  
  5722  type GetJobInput struct {
  5723  	_ struct{} `type:"structure" nopayload:"true"`
  5724  
  5725  	// JobId is a required field
  5726  	JobId *string `location:"uri" locationName:"JobId" type:"string" required:"true"`
  5727  }
  5728  
  5729  // String returns the string representation.
  5730  //
  5731  // API parameter values that are decorated as "sensitive" in the API will not
  5732  // be included in the string output. The member name will be present, but the
  5733  // value will be replaced with "sensitive".
  5734  func (s GetJobInput) String() string {
  5735  	return awsutil.Prettify(s)
  5736  }
  5737  
  5738  // GoString returns the string representation.
  5739  //
  5740  // API parameter values that are decorated as "sensitive" in the API will not
  5741  // be included in the string output. The member name will be present, but the
  5742  // value will be replaced with "sensitive".
  5743  func (s GetJobInput) GoString() string {
  5744  	return s.String()
  5745  }
  5746  
  5747  // Validate inspects the fields of the type to determine if they are valid.
  5748  func (s *GetJobInput) Validate() error {
  5749  	invalidParams := request.ErrInvalidParams{Context: "GetJobInput"}
  5750  	if s.JobId == nil {
  5751  		invalidParams.Add(request.NewErrParamRequired("JobId"))
  5752  	}
  5753  	if s.JobId != nil && len(*s.JobId) < 1 {
  5754  		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  5755  	}
  5756  
  5757  	if invalidParams.Len() > 0 {
  5758  		return invalidParams
  5759  	}
  5760  	return nil
  5761  }
  5762  
  5763  // SetJobId sets the JobId field's value.
  5764  func (s *GetJobInput) SetJobId(v string) *GetJobInput {
  5765  	s.JobId = &v
  5766  	return s
  5767  }
  5768  
  5769  type GetJobOutput struct {
  5770  	_ struct{} `type:"structure"`
  5771  
  5772  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  5773  	Arn *string `type:"string"`
  5774  
  5775  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  5776  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5777  
  5778  	// Details for the response.
  5779  	Details *ResponseDetails `type:"structure"`
  5780  
  5781  	Errors []*JobError `type:"list"`
  5782  
  5783  	// A unique identifier.
  5784  	Id *string `type:"string"`
  5785  
  5786  	State *string `type:"string" enum:"State"`
  5787  
  5788  	Type *string `type:"string" enum:"Type"`
  5789  
  5790  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  5791  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5792  }
  5793  
  5794  // String returns the string representation.
  5795  //
  5796  // API parameter values that are decorated as "sensitive" in the API will not
  5797  // be included in the string output. The member name will be present, but the
  5798  // value will be replaced with "sensitive".
  5799  func (s GetJobOutput) String() string {
  5800  	return awsutil.Prettify(s)
  5801  }
  5802  
  5803  // GoString returns the string representation.
  5804  //
  5805  // API parameter values that are decorated as "sensitive" in the API will not
  5806  // be included in the string output. The member name will be present, but the
  5807  // value will be replaced with "sensitive".
  5808  func (s GetJobOutput) GoString() string {
  5809  	return s.String()
  5810  }
  5811  
  5812  // SetArn sets the Arn field's value.
  5813  func (s *GetJobOutput) SetArn(v string) *GetJobOutput {
  5814  	s.Arn = &v
  5815  	return s
  5816  }
  5817  
  5818  // SetCreatedAt sets the CreatedAt field's value.
  5819  func (s *GetJobOutput) SetCreatedAt(v time.Time) *GetJobOutput {
  5820  	s.CreatedAt = &v
  5821  	return s
  5822  }
  5823  
  5824  // SetDetails sets the Details field's value.
  5825  func (s *GetJobOutput) SetDetails(v *ResponseDetails) *GetJobOutput {
  5826  	s.Details = v
  5827  	return s
  5828  }
  5829  
  5830  // SetErrors sets the Errors field's value.
  5831  func (s *GetJobOutput) SetErrors(v []*JobError) *GetJobOutput {
  5832  	s.Errors = v
  5833  	return s
  5834  }
  5835  
  5836  // SetId sets the Id field's value.
  5837  func (s *GetJobOutput) SetId(v string) *GetJobOutput {
  5838  	s.Id = &v
  5839  	return s
  5840  }
  5841  
  5842  // SetState sets the State field's value.
  5843  func (s *GetJobOutput) SetState(v string) *GetJobOutput {
  5844  	s.State = &v
  5845  	return s
  5846  }
  5847  
  5848  // SetType sets the Type field's value.
  5849  func (s *GetJobOutput) SetType(v string) *GetJobOutput {
  5850  	s.Type = &v
  5851  	return s
  5852  }
  5853  
  5854  // SetUpdatedAt sets the UpdatedAt field's value.
  5855  func (s *GetJobOutput) SetUpdatedAt(v time.Time) *GetJobOutput {
  5856  	s.UpdatedAt = &v
  5857  	return s
  5858  }
  5859  
  5860  type GetRevisionInput struct {
  5861  	_ struct{} `type:"structure" nopayload:"true"`
  5862  
  5863  	// DataSetId is a required field
  5864  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  5865  
  5866  	// RevisionId is a required field
  5867  	RevisionId *string `location:"uri" locationName:"RevisionId" type:"string" required:"true"`
  5868  }
  5869  
  5870  // String returns the string representation.
  5871  //
  5872  // API parameter values that are decorated as "sensitive" in the API will not
  5873  // be included in the string output. The member name will be present, but the
  5874  // value will be replaced with "sensitive".
  5875  func (s GetRevisionInput) String() string {
  5876  	return awsutil.Prettify(s)
  5877  }
  5878  
  5879  // GoString returns the string representation.
  5880  //
  5881  // API parameter values that are decorated as "sensitive" in the API will not
  5882  // be included in the string output. The member name will be present, but the
  5883  // value will be replaced with "sensitive".
  5884  func (s GetRevisionInput) GoString() string {
  5885  	return s.String()
  5886  }
  5887  
  5888  // Validate inspects the fields of the type to determine if they are valid.
  5889  func (s *GetRevisionInput) Validate() error {
  5890  	invalidParams := request.ErrInvalidParams{Context: "GetRevisionInput"}
  5891  	if s.DataSetId == nil {
  5892  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  5893  	}
  5894  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  5895  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  5896  	}
  5897  	if s.RevisionId == nil {
  5898  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  5899  	}
  5900  	if s.RevisionId != nil && len(*s.RevisionId) < 1 {
  5901  		invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1))
  5902  	}
  5903  
  5904  	if invalidParams.Len() > 0 {
  5905  		return invalidParams
  5906  	}
  5907  	return nil
  5908  }
  5909  
  5910  // SetDataSetId sets the DataSetId field's value.
  5911  func (s *GetRevisionInput) SetDataSetId(v string) *GetRevisionInput {
  5912  	s.DataSetId = &v
  5913  	return s
  5914  }
  5915  
  5916  // SetRevisionId sets the RevisionId field's value.
  5917  func (s *GetRevisionInput) SetRevisionId(v string) *GetRevisionInput {
  5918  	s.RevisionId = &v
  5919  	return s
  5920  }
  5921  
  5922  type GetRevisionOutput struct {
  5923  	_ struct{} `type:"structure"`
  5924  
  5925  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  5926  	Arn *string `type:"string"`
  5927  
  5928  	Comment *string `type:"string"`
  5929  
  5930  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  5931  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5932  
  5933  	// A unique identifier.
  5934  	DataSetId *string `type:"string"`
  5935  
  5936  	Finalized *bool `type:"boolean"`
  5937  
  5938  	// A unique identifier.
  5939  	Id *string `type:"string"`
  5940  
  5941  	// A unique identifier.
  5942  	SourceId *string `type:"string"`
  5943  
  5944  	Tags map[string]*string `type:"map"`
  5945  
  5946  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  5947  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5948  }
  5949  
  5950  // String returns the string representation.
  5951  //
  5952  // API parameter values that are decorated as "sensitive" in the API will not
  5953  // be included in the string output. The member name will be present, but the
  5954  // value will be replaced with "sensitive".
  5955  func (s GetRevisionOutput) String() string {
  5956  	return awsutil.Prettify(s)
  5957  }
  5958  
  5959  // GoString returns the string representation.
  5960  //
  5961  // API parameter values that are decorated as "sensitive" in the API will not
  5962  // be included in the string output. The member name will be present, but the
  5963  // value will be replaced with "sensitive".
  5964  func (s GetRevisionOutput) GoString() string {
  5965  	return s.String()
  5966  }
  5967  
  5968  // SetArn sets the Arn field's value.
  5969  func (s *GetRevisionOutput) SetArn(v string) *GetRevisionOutput {
  5970  	s.Arn = &v
  5971  	return s
  5972  }
  5973  
  5974  // SetComment sets the Comment field's value.
  5975  func (s *GetRevisionOutput) SetComment(v string) *GetRevisionOutput {
  5976  	s.Comment = &v
  5977  	return s
  5978  }
  5979  
  5980  // SetCreatedAt sets the CreatedAt field's value.
  5981  func (s *GetRevisionOutput) SetCreatedAt(v time.Time) *GetRevisionOutput {
  5982  	s.CreatedAt = &v
  5983  	return s
  5984  }
  5985  
  5986  // SetDataSetId sets the DataSetId field's value.
  5987  func (s *GetRevisionOutput) SetDataSetId(v string) *GetRevisionOutput {
  5988  	s.DataSetId = &v
  5989  	return s
  5990  }
  5991  
  5992  // SetFinalized sets the Finalized field's value.
  5993  func (s *GetRevisionOutput) SetFinalized(v bool) *GetRevisionOutput {
  5994  	s.Finalized = &v
  5995  	return s
  5996  }
  5997  
  5998  // SetId sets the Id field's value.
  5999  func (s *GetRevisionOutput) SetId(v string) *GetRevisionOutput {
  6000  	s.Id = &v
  6001  	return s
  6002  }
  6003  
  6004  // SetSourceId sets the SourceId field's value.
  6005  func (s *GetRevisionOutput) SetSourceId(v string) *GetRevisionOutput {
  6006  	s.SourceId = &v
  6007  	return s
  6008  }
  6009  
  6010  // SetTags sets the Tags field's value.
  6011  func (s *GetRevisionOutput) SetTags(v map[string]*string) *GetRevisionOutput {
  6012  	s.Tags = v
  6013  	return s
  6014  }
  6015  
  6016  // SetUpdatedAt sets the UpdatedAt field's value.
  6017  func (s *GetRevisionOutput) SetUpdatedAt(v time.Time) *GetRevisionOutput {
  6018  	s.UpdatedAt = &v
  6019  	return s
  6020  }
  6021  
  6022  type ImportAssetFromSignedUrlJobErrorDetails struct {
  6023  	_ struct{} `type:"structure"`
  6024  
  6025  	// The name of the asset. When importing from Amazon S3, the S3 object key is
  6026  	// used as the asset name. When exporting to Amazon S3, the asset name is used
  6027  	// as default target S3 object key.
  6028  	//
  6029  	// AssetName is a required field
  6030  	AssetName *string `type:"string" required:"true"`
  6031  }
  6032  
  6033  // String returns the string representation.
  6034  //
  6035  // API parameter values that are decorated as "sensitive" in the API will not
  6036  // be included in the string output. The member name will be present, but the
  6037  // value will be replaced with "sensitive".
  6038  func (s ImportAssetFromSignedUrlJobErrorDetails) String() string {
  6039  	return awsutil.Prettify(s)
  6040  }
  6041  
  6042  // GoString returns the string representation.
  6043  //
  6044  // API parameter values that are decorated as "sensitive" in the API will not
  6045  // be included in the string output. The member name will be present, but the
  6046  // value will be replaced with "sensitive".
  6047  func (s ImportAssetFromSignedUrlJobErrorDetails) GoString() string {
  6048  	return s.String()
  6049  }
  6050  
  6051  // SetAssetName sets the AssetName field's value.
  6052  func (s *ImportAssetFromSignedUrlJobErrorDetails) SetAssetName(v string) *ImportAssetFromSignedUrlJobErrorDetails {
  6053  	s.AssetName = &v
  6054  	return s
  6055  }
  6056  
  6057  // Details of the operation to be performed by the job.
  6058  type ImportAssetFromSignedUrlRequestDetails struct {
  6059  	_ struct{} `type:"structure"`
  6060  
  6061  	// The name of the asset. When importing from Amazon S3, the S3 object key is
  6062  	// used as the asset name.
  6063  	//
  6064  	// AssetName is a required field
  6065  	AssetName *string `type:"string" required:"true"`
  6066  
  6067  	// The unique identifier for the data set associated with this import job.
  6068  	//
  6069  	// DataSetId is a required field
  6070  	DataSetId *string `type:"string" required:"true"`
  6071  
  6072  	// The Base64-encoded Md5 hash for the asset, used to ensure the integrity of
  6073  	// the file at that location.
  6074  	//
  6075  	// Md5Hash is a required field
  6076  	Md5Hash *string `min:"24" type:"string" required:"true"`
  6077  
  6078  	// The unique identifier for the revision associated with this import request.
  6079  	//
  6080  	// RevisionId is a required field
  6081  	RevisionId *string `type:"string" required:"true"`
  6082  }
  6083  
  6084  // String returns the string representation.
  6085  //
  6086  // API parameter values that are decorated as "sensitive" in the API will not
  6087  // be included in the string output. The member name will be present, but the
  6088  // value will be replaced with "sensitive".
  6089  func (s ImportAssetFromSignedUrlRequestDetails) String() string {
  6090  	return awsutil.Prettify(s)
  6091  }
  6092  
  6093  // GoString returns the string representation.
  6094  //
  6095  // API parameter values that are decorated as "sensitive" in the API will not
  6096  // be included in the string output. The member name will be present, but the
  6097  // value will be replaced with "sensitive".
  6098  func (s ImportAssetFromSignedUrlRequestDetails) GoString() string {
  6099  	return s.String()
  6100  }
  6101  
  6102  // Validate inspects the fields of the type to determine if they are valid.
  6103  func (s *ImportAssetFromSignedUrlRequestDetails) Validate() error {
  6104  	invalidParams := request.ErrInvalidParams{Context: "ImportAssetFromSignedUrlRequestDetails"}
  6105  	if s.AssetName == nil {
  6106  		invalidParams.Add(request.NewErrParamRequired("AssetName"))
  6107  	}
  6108  	if s.DataSetId == nil {
  6109  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  6110  	}
  6111  	if s.Md5Hash == nil {
  6112  		invalidParams.Add(request.NewErrParamRequired("Md5Hash"))
  6113  	}
  6114  	if s.Md5Hash != nil && len(*s.Md5Hash) < 24 {
  6115  		invalidParams.Add(request.NewErrParamMinLen("Md5Hash", 24))
  6116  	}
  6117  	if s.RevisionId == nil {
  6118  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  6119  	}
  6120  
  6121  	if invalidParams.Len() > 0 {
  6122  		return invalidParams
  6123  	}
  6124  	return nil
  6125  }
  6126  
  6127  // SetAssetName sets the AssetName field's value.
  6128  func (s *ImportAssetFromSignedUrlRequestDetails) SetAssetName(v string) *ImportAssetFromSignedUrlRequestDetails {
  6129  	s.AssetName = &v
  6130  	return s
  6131  }
  6132  
  6133  // SetDataSetId sets the DataSetId field's value.
  6134  func (s *ImportAssetFromSignedUrlRequestDetails) SetDataSetId(v string) *ImportAssetFromSignedUrlRequestDetails {
  6135  	s.DataSetId = &v
  6136  	return s
  6137  }
  6138  
  6139  // SetMd5Hash sets the Md5Hash field's value.
  6140  func (s *ImportAssetFromSignedUrlRequestDetails) SetMd5Hash(v string) *ImportAssetFromSignedUrlRequestDetails {
  6141  	s.Md5Hash = &v
  6142  	return s
  6143  }
  6144  
  6145  // SetRevisionId sets the RevisionId field's value.
  6146  func (s *ImportAssetFromSignedUrlRequestDetails) SetRevisionId(v string) *ImportAssetFromSignedUrlRequestDetails {
  6147  	s.RevisionId = &v
  6148  	return s
  6149  }
  6150  
  6151  // The details in the response for an import request, including the signed URL
  6152  // and other information.
  6153  type ImportAssetFromSignedUrlResponseDetails struct {
  6154  	_ struct{} `type:"structure"`
  6155  
  6156  	// The name for the asset associated with this import response.
  6157  	//
  6158  	// AssetName is a required field
  6159  	AssetName *string `type:"string" required:"true"`
  6160  
  6161  	// The unique identifier for the data set associated with this import job.
  6162  	//
  6163  	// DataSetId is a required field
  6164  	DataSetId *string `type:"string" required:"true"`
  6165  
  6166  	// The Base64-encoded Md5 hash for the asset, used to ensure the integrity of
  6167  	// the file at that location.
  6168  	Md5Hash *string `min:"24" type:"string"`
  6169  
  6170  	// The unique identifier for the revision associated with this import response.
  6171  	//
  6172  	// RevisionId is a required field
  6173  	RevisionId *string `type:"string" required:"true"`
  6174  
  6175  	// The signed URL.
  6176  	SignedUrl *string `type:"string"`
  6177  
  6178  	// The time and date at which the signed URL expires, in ISO 8601 format.
  6179  	SignedUrlExpiresAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  6180  }
  6181  
  6182  // String returns the string representation.
  6183  //
  6184  // API parameter values that are decorated as "sensitive" in the API will not
  6185  // be included in the string output. The member name will be present, but the
  6186  // value will be replaced with "sensitive".
  6187  func (s ImportAssetFromSignedUrlResponseDetails) String() string {
  6188  	return awsutil.Prettify(s)
  6189  }
  6190  
  6191  // GoString returns the string representation.
  6192  //
  6193  // API parameter values that are decorated as "sensitive" in the API will not
  6194  // be included in the string output. The member name will be present, but the
  6195  // value will be replaced with "sensitive".
  6196  func (s ImportAssetFromSignedUrlResponseDetails) GoString() string {
  6197  	return s.String()
  6198  }
  6199  
  6200  // SetAssetName sets the AssetName field's value.
  6201  func (s *ImportAssetFromSignedUrlResponseDetails) SetAssetName(v string) *ImportAssetFromSignedUrlResponseDetails {
  6202  	s.AssetName = &v
  6203  	return s
  6204  }
  6205  
  6206  // SetDataSetId sets the DataSetId field's value.
  6207  func (s *ImportAssetFromSignedUrlResponseDetails) SetDataSetId(v string) *ImportAssetFromSignedUrlResponseDetails {
  6208  	s.DataSetId = &v
  6209  	return s
  6210  }
  6211  
  6212  // SetMd5Hash sets the Md5Hash field's value.
  6213  func (s *ImportAssetFromSignedUrlResponseDetails) SetMd5Hash(v string) *ImportAssetFromSignedUrlResponseDetails {
  6214  	s.Md5Hash = &v
  6215  	return s
  6216  }
  6217  
  6218  // SetRevisionId sets the RevisionId field's value.
  6219  func (s *ImportAssetFromSignedUrlResponseDetails) SetRevisionId(v string) *ImportAssetFromSignedUrlResponseDetails {
  6220  	s.RevisionId = &v
  6221  	return s
  6222  }
  6223  
  6224  // SetSignedUrl sets the SignedUrl field's value.
  6225  func (s *ImportAssetFromSignedUrlResponseDetails) SetSignedUrl(v string) *ImportAssetFromSignedUrlResponseDetails {
  6226  	s.SignedUrl = &v
  6227  	return s
  6228  }
  6229  
  6230  // SetSignedUrlExpiresAt sets the SignedUrlExpiresAt field's value.
  6231  func (s *ImportAssetFromSignedUrlResponseDetails) SetSignedUrlExpiresAt(v time.Time) *ImportAssetFromSignedUrlResponseDetails {
  6232  	s.SignedUrlExpiresAt = &v
  6233  	return s
  6234  }
  6235  
  6236  // Details of the operation to be performed by the job.
  6237  type ImportAssetsFromS3RequestDetails struct {
  6238  	_ struct{} `type:"structure"`
  6239  
  6240  	// Is a list of S3 bucket and object key pairs.
  6241  	//
  6242  	// AssetSources is a required field
  6243  	AssetSources []*AssetSourceEntry `type:"list" required:"true"`
  6244  
  6245  	// The unique identifier for the data set associated with this import job.
  6246  	//
  6247  	// DataSetId is a required field
  6248  	DataSetId *string `type:"string" required:"true"`
  6249  
  6250  	// The unique identifier for the revision associated with this import request.
  6251  	//
  6252  	// RevisionId is a required field
  6253  	RevisionId *string `type:"string" required:"true"`
  6254  }
  6255  
  6256  // String returns the string representation.
  6257  //
  6258  // API parameter values that are decorated as "sensitive" in the API will not
  6259  // be included in the string output. The member name will be present, but the
  6260  // value will be replaced with "sensitive".
  6261  func (s ImportAssetsFromS3RequestDetails) String() string {
  6262  	return awsutil.Prettify(s)
  6263  }
  6264  
  6265  // GoString returns the string representation.
  6266  //
  6267  // API parameter values that are decorated as "sensitive" in the API will not
  6268  // be included in the string output. The member name will be present, but the
  6269  // value will be replaced with "sensitive".
  6270  func (s ImportAssetsFromS3RequestDetails) GoString() string {
  6271  	return s.String()
  6272  }
  6273  
  6274  // Validate inspects the fields of the type to determine if they are valid.
  6275  func (s *ImportAssetsFromS3RequestDetails) Validate() error {
  6276  	invalidParams := request.ErrInvalidParams{Context: "ImportAssetsFromS3RequestDetails"}
  6277  	if s.AssetSources == nil {
  6278  		invalidParams.Add(request.NewErrParamRequired("AssetSources"))
  6279  	}
  6280  	if s.DataSetId == nil {
  6281  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  6282  	}
  6283  	if s.RevisionId == nil {
  6284  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  6285  	}
  6286  	if s.AssetSources != nil {
  6287  		for i, v := range s.AssetSources {
  6288  			if v == nil {
  6289  				continue
  6290  			}
  6291  			if err := v.Validate(); err != nil {
  6292  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssetSources", i), err.(request.ErrInvalidParams))
  6293  			}
  6294  		}
  6295  	}
  6296  
  6297  	if invalidParams.Len() > 0 {
  6298  		return invalidParams
  6299  	}
  6300  	return nil
  6301  }
  6302  
  6303  // SetAssetSources sets the AssetSources field's value.
  6304  func (s *ImportAssetsFromS3RequestDetails) SetAssetSources(v []*AssetSourceEntry) *ImportAssetsFromS3RequestDetails {
  6305  	s.AssetSources = v
  6306  	return s
  6307  }
  6308  
  6309  // SetDataSetId sets the DataSetId field's value.
  6310  func (s *ImportAssetsFromS3RequestDetails) SetDataSetId(v string) *ImportAssetsFromS3RequestDetails {
  6311  	s.DataSetId = &v
  6312  	return s
  6313  }
  6314  
  6315  // SetRevisionId sets the RevisionId field's value.
  6316  func (s *ImportAssetsFromS3RequestDetails) SetRevisionId(v string) *ImportAssetsFromS3RequestDetails {
  6317  	s.RevisionId = &v
  6318  	return s
  6319  }
  6320  
  6321  // Details from an import from Amazon S3 response.
  6322  type ImportAssetsFromS3ResponseDetails struct {
  6323  	_ struct{} `type:"structure"`
  6324  
  6325  	// Is a list of Amazon S3 bucket and object key pairs.
  6326  	//
  6327  	// AssetSources is a required field
  6328  	AssetSources []*AssetSourceEntry `type:"list" required:"true"`
  6329  
  6330  	// The unique identifier for the data set associated with this import job.
  6331  	//
  6332  	// DataSetId is a required field
  6333  	DataSetId *string `type:"string" required:"true"`
  6334  
  6335  	// The unique identifier for the revision associated with this import response.
  6336  	//
  6337  	// RevisionId is a required field
  6338  	RevisionId *string `type:"string" required:"true"`
  6339  }
  6340  
  6341  // String returns the string representation.
  6342  //
  6343  // API parameter values that are decorated as "sensitive" in the API will not
  6344  // be included in the string output. The member name will be present, but the
  6345  // value will be replaced with "sensitive".
  6346  func (s ImportAssetsFromS3ResponseDetails) String() string {
  6347  	return awsutil.Prettify(s)
  6348  }
  6349  
  6350  // GoString returns the string representation.
  6351  //
  6352  // API parameter values that are decorated as "sensitive" in the API will not
  6353  // be included in the string output. The member name will be present, but the
  6354  // value will be replaced with "sensitive".
  6355  func (s ImportAssetsFromS3ResponseDetails) GoString() string {
  6356  	return s.String()
  6357  }
  6358  
  6359  // SetAssetSources sets the AssetSources field's value.
  6360  func (s *ImportAssetsFromS3ResponseDetails) SetAssetSources(v []*AssetSourceEntry) *ImportAssetsFromS3ResponseDetails {
  6361  	s.AssetSources = v
  6362  	return s
  6363  }
  6364  
  6365  // SetDataSetId sets the DataSetId field's value.
  6366  func (s *ImportAssetsFromS3ResponseDetails) SetDataSetId(v string) *ImportAssetsFromS3ResponseDetails {
  6367  	s.DataSetId = &v
  6368  	return s
  6369  }
  6370  
  6371  // SetRevisionId sets the RevisionId field's value.
  6372  func (s *ImportAssetsFromS3ResponseDetails) SetRevisionId(v string) *ImportAssetsFromS3ResponseDetails {
  6373  	s.RevisionId = &v
  6374  	return s
  6375  }
  6376  
  6377  // An exception occurred with the service.
  6378  type InternalServerException struct {
  6379  	_            struct{}                  `type:"structure"`
  6380  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6381  
  6382  	// The message identifying the service exception that occurred.
  6383  	Message_ *string `locationName:"Message" type:"string"`
  6384  }
  6385  
  6386  // String returns the string representation.
  6387  //
  6388  // API parameter values that are decorated as "sensitive" in the API will not
  6389  // be included in the string output. The member name will be present, but the
  6390  // value will be replaced with "sensitive".
  6391  func (s InternalServerException) String() string {
  6392  	return awsutil.Prettify(s)
  6393  }
  6394  
  6395  // GoString returns the string representation.
  6396  //
  6397  // API parameter values that are decorated as "sensitive" in the API will not
  6398  // be included in the string output. The member name will be present, but the
  6399  // value will be replaced with "sensitive".
  6400  func (s InternalServerException) GoString() string {
  6401  	return s.String()
  6402  }
  6403  
  6404  func newErrorInternalServerException(v protocol.ResponseMetadata) error {
  6405  	return &InternalServerException{
  6406  		RespMetadata: v,
  6407  	}
  6408  }
  6409  
  6410  // Code returns the exception type name.
  6411  func (s *InternalServerException) Code() string {
  6412  	return "InternalServerException"
  6413  }
  6414  
  6415  // Message returns the exception's message.
  6416  func (s *InternalServerException) Message() string {
  6417  	if s.Message_ != nil {
  6418  		return *s.Message_
  6419  	}
  6420  	return ""
  6421  }
  6422  
  6423  // OrigErr always returns nil, satisfies awserr.Error interface.
  6424  func (s *InternalServerException) OrigErr() error {
  6425  	return nil
  6426  }
  6427  
  6428  func (s *InternalServerException) Error() string {
  6429  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  6430  }
  6431  
  6432  // Status code returns the HTTP status code for the request's response error.
  6433  func (s *InternalServerException) StatusCode() int {
  6434  	return s.RespMetadata.StatusCode
  6435  }
  6436  
  6437  // RequestID returns the service's response RequestID for request.
  6438  func (s *InternalServerException) RequestID() string {
  6439  	return s.RespMetadata.RequestID
  6440  }
  6441  
  6442  // AWS Data Exchange Jobs are asynchronous import or export operations used
  6443  // to create or copy assets. A data set owner can both import and export as
  6444  // they see fit. Someone with an entitlement to a data set can only export.
  6445  // Jobs are deleted 90 days after they are created.
  6446  type JobEntry struct {
  6447  	_ struct{} `type:"structure"`
  6448  
  6449  	// The ARN for the job.
  6450  	//
  6451  	// Arn is a required field
  6452  	Arn *string `type:"string" required:"true"`
  6453  
  6454  	// The date and time that the job was created, in ISO 8601 format.
  6455  	//
  6456  	// CreatedAt is a required field
  6457  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  6458  
  6459  	// Details of the operation to be performed by the job, such as export destination
  6460  	// details or import source details.
  6461  	//
  6462  	// Details is a required field
  6463  	Details *ResponseDetails `type:"structure" required:"true"`
  6464  
  6465  	// Errors for jobs.
  6466  	Errors []*JobError `type:"list"`
  6467  
  6468  	// The unique identifier for the job.
  6469  	//
  6470  	// Id is a required field
  6471  	Id *string `type:"string" required:"true"`
  6472  
  6473  	// The state of the job.
  6474  	//
  6475  	// State is a required field
  6476  	State *string `type:"string" required:"true" enum:"State"`
  6477  
  6478  	// The job type.
  6479  	//
  6480  	// Type is a required field
  6481  	Type *string `type:"string" required:"true" enum:"Type"`
  6482  
  6483  	// The date and time that the job was last updated, in ISO 8601 format.
  6484  	//
  6485  	// UpdatedAt is a required field
  6486  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  6487  }
  6488  
  6489  // String returns the string representation.
  6490  //
  6491  // API parameter values that are decorated as "sensitive" in the API will not
  6492  // be included in the string output. The member name will be present, but the
  6493  // value will be replaced with "sensitive".
  6494  func (s JobEntry) String() string {
  6495  	return awsutil.Prettify(s)
  6496  }
  6497  
  6498  // GoString returns the string representation.
  6499  //
  6500  // API parameter values that are decorated as "sensitive" in the API will not
  6501  // be included in the string output. The member name will be present, but the
  6502  // value will be replaced with "sensitive".
  6503  func (s JobEntry) GoString() string {
  6504  	return s.String()
  6505  }
  6506  
  6507  // SetArn sets the Arn field's value.
  6508  func (s *JobEntry) SetArn(v string) *JobEntry {
  6509  	s.Arn = &v
  6510  	return s
  6511  }
  6512  
  6513  // SetCreatedAt sets the CreatedAt field's value.
  6514  func (s *JobEntry) SetCreatedAt(v time.Time) *JobEntry {
  6515  	s.CreatedAt = &v
  6516  	return s
  6517  }
  6518  
  6519  // SetDetails sets the Details field's value.
  6520  func (s *JobEntry) SetDetails(v *ResponseDetails) *JobEntry {
  6521  	s.Details = v
  6522  	return s
  6523  }
  6524  
  6525  // SetErrors sets the Errors field's value.
  6526  func (s *JobEntry) SetErrors(v []*JobError) *JobEntry {
  6527  	s.Errors = v
  6528  	return s
  6529  }
  6530  
  6531  // SetId sets the Id field's value.
  6532  func (s *JobEntry) SetId(v string) *JobEntry {
  6533  	s.Id = &v
  6534  	return s
  6535  }
  6536  
  6537  // SetState sets the State field's value.
  6538  func (s *JobEntry) SetState(v string) *JobEntry {
  6539  	s.State = &v
  6540  	return s
  6541  }
  6542  
  6543  // SetType sets the Type field's value.
  6544  func (s *JobEntry) SetType(v string) *JobEntry {
  6545  	s.Type = &v
  6546  	return s
  6547  }
  6548  
  6549  // SetUpdatedAt sets the UpdatedAt field's value.
  6550  func (s *JobEntry) SetUpdatedAt(v time.Time) *JobEntry {
  6551  	s.UpdatedAt = &v
  6552  	return s
  6553  }
  6554  
  6555  // An error that occurred with the job request.
  6556  type JobError struct {
  6557  	_ struct{} `type:"structure"`
  6558  
  6559  	// The code for the job error.
  6560  	//
  6561  	// Code is a required field
  6562  	Code *string `type:"string" required:"true" enum:"Code"`
  6563  
  6564  	Details *Details `type:"structure"`
  6565  
  6566  	// The name of the limit that was reached.
  6567  	LimitName *string `type:"string" enum:"JobErrorLimitName"`
  6568  
  6569  	// The value of the exceeded limit.
  6570  	LimitValue *float64 `type:"double"`
  6571  
  6572  	// The message related to the job error.
  6573  	//
  6574  	// Message is a required field
  6575  	Message *string `type:"string" required:"true"`
  6576  
  6577  	// The unique identifier for the resource related to the error.
  6578  	ResourceId *string `type:"string"`
  6579  
  6580  	// The type of resource related to the error.
  6581  	ResourceType *string `type:"string" enum:"JobErrorResourceTypes"`
  6582  }
  6583  
  6584  // String returns the string representation.
  6585  //
  6586  // API parameter values that are decorated as "sensitive" in the API will not
  6587  // be included in the string output. The member name will be present, but the
  6588  // value will be replaced with "sensitive".
  6589  func (s JobError) String() string {
  6590  	return awsutil.Prettify(s)
  6591  }
  6592  
  6593  // GoString returns the string representation.
  6594  //
  6595  // API parameter values that are decorated as "sensitive" in the API will not
  6596  // be included in the string output. The member name will be present, but the
  6597  // value will be replaced with "sensitive".
  6598  func (s JobError) GoString() string {
  6599  	return s.String()
  6600  }
  6601  
  6602  // SetCode sets the Code field's value.
  6603  func (s *JobError) SetCode(v string) *JobError {
  6604  	s.Code = &v
  6605  	return s
  6606  }
  6607  
  6608  // SetDetails sets the Details field's value.
  6609  func (s *JobError) SetDetails(v *Details) *JobError {
  6610  	s.Details = v
  6611  	return s
  6612  }
  6613  
  6614  // SetLimitName sets the LimitName field's value.
  6615  func (s *JobError) SetLimitName(v string) *JobError {
  6616  	s.LimitName = &v
  6617  	return s
  6618  }
  6619  
  6620  // SetLimitValue sets the LimitValue field's value.
  6621  func (s *JobError) SetLimitValue(v float64) *JobError {
  6622  	s.LimitValue = &v
  6623  	return s
  6624  }
  6625  
  6626  // SetMessage sets the Message field's value.
  6627  func (s *JobError) SetMessage(v string) *JobError {
  6628  	s.Message = &v
  6629  	return s
  6630  }
  6631  
  6632  // SetResourceId sets the ResourceId field's value.
  6633  func (s *JobError) SetResourceId(v string) *JobError {
  6634  	s.ResourceId = &v
  6635  	return s
  6636  }
  6637  
  6638  // SetResourceType sets the ResourceType field's value.
  6639  func (s *JobError) SetResourceType(v string) *JobError {
  6640  	s.ResourceType = &v
  6641  	return s
  6642  }
  6643  
  6644  type ListDataSetRevisionsInput struct {
  6645  	_ struct{} `type:"structure" nopayload:"true"`
  6646  
  6647  	// DataSetId is a required field
  6648  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  6649  
  6650  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  6651  
  6652  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  6653  }
  6654  
  6655  // String returns the string representation.
  6656  //
  6657  // API parameter values that are decorated as "sensitive" in the API will not
  6658  // be included in the string output. The member name will be present, but the
  6659  // value will be replaced with "sensitive".
  6660  func (s ListDataSetRevisionsInput) String() string {
  6661  	return awsutil.Prettify(s)
  6662  }
  6663  
  6664  // GoString returns the string representation.
  6665  //
  6666  // API parameter values that are decorated as "sensitive" in the API will not
  6667  // be included in the string output. The member name will be present, but the
  6668  // value will be replaced with "sensitive".
  6669  func (s ListDataSetRevisionsInput) GoString() string {
  6670  	return s.String()
  6671  }
  6672  
  6673  // Validate inspects the fields of the type to determine if they are valid.
  6674  func (s *ListDataSetRevisionsInput) Validate() error {
  6675  	invalidParams := request.ErrInvalidParams{Context: "ListDataSetRevisionsInput"}
  6676  	if s.DataSetId == nil {
  6677  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  6678  	}
  6679  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  6680  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  6681  	}
  6682  	if s.MaxResults != nil && *s.MaxResults < 1 {
  6683  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  6684  	}
  6685  
  6686  	if invalidParams.Len() > 0 {
  6687  		return invalidParams
  6688  	}
  6689  	return nil
  6690  }
  6691  
  6692  // SetDataSetId sets the DataSetId field's value.
  6693  func (s *ListDataSetRevisionsInput) SetDataSetId(v string) *ListDataSetRevisionsInput {
  6694  	s.DataSetId = &v
  6695  	return s
  6696  }
  6697  
  6698  // SetMaxResults sets the MaxResults field's value.
  6699  func (s *ListDataSetRevisionsInput) SetMaxResults(v int64) *ListDataSetRevisionsInput {
  6700  	s.MaxResults = &v
  6701  	return s
  6702  }
  6703  
  6704  // SetNextToken sets the NextToken field's value.
  6705  func (s *ListDataSetRevisionsInput) SetNextToken(v string) *ListDataSetRevisionsInput {
  6706  	s.NextToken = &v
  6707  	return s
  6708  }
  6709  
  6710  type ListDataSetRevisionsOutput struct {
  6711  	_ struct{} `type:"structure"`
  6712  
  6713  	// The token value retrieved from a previous call to access the next page of
  6714  	// results.
  6715  	NextToken *string `type:"string"`
  6716  
  6717  	Revisions []*RevisionEntry `type:"list"`
  6718  }
  6719  
  6720  // String returns the string representation.
  6721  //
  6722  // API parameter values that are decorated as "sensitive" in the API will not
  6723  // be included in the string output. The member name will be present, but the
  6724  // value will be replaced with "sensitive".
  6725  func (s ListDataSetRevisionsOutput) String() string {
  6726  	return awsutil.Prettify(s)
  6727  }
  6728  
  6729  // GoString returns the string representation.
  6730  //
  6731  // API parameter values that are decorated as "sensitive" in the API will not
  6732  // be included in the string output. The member name will be present, but the
  6733  // value will be replaced with "sensitive".
  6734  func (s ListDataSetRevisionsOutput) GoString() string {
  6735  	return s.String()
  6736  }
  6737  
  6738  // SetNextToken sets the NextToken field's value.
  6739  func (s *ListDataSetRevisionsOutput) SetNextToken(v string) *ListDataSetRevisionsOutput {
  6740  	s.NextToken = &v
  6741  	return s
  6742  }
  6743  
  6744  // SetRevisions sets the Revisions field's value.
  6745  func (s *ListDataSetRevisionsOutput) SetRevisions(v []*RevisionEntry) *ListDataSetRevisionsOutput {
  6746  	s.Revisions = v
  6747  	return s
  6748  }
  6749  
  6750  type ListDataSetsInput struct {
  6751  	_ struct{} `type:"structure" nopayload:"true"`
  6752  
  6753  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  6754  
  6755  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  6756  
  6757  	Origin *string `location:"querystring" locationName:"origin" type:"string"`
  6758  }
  6759  
  6760  // String returns the string representation.
  6761  //
  6762  // API parameter values that are decorated as "sensitive" in the API will not
  6763  // be included in the string output. The member name will be present, but the
  6764  // value will be replaced with "sensitive".
  6765  func (s ListDataSetsInput) String() string {
  6766  	return awsutil.Prettify(s)
  6767  }
  6768  
  6769  // GoString returns the string representation.
  6770  //
  6771  // API parameter values that are decorated as "sensitive" in the API will not
  6772  // be included in the string output. The member name will be present, but the
  6773  // value will be replaced with "sensitive".
  6774  func (s ListDataSetsInput) GoString() string {
  6775  	return s.String()
  6776  }
  6777  
  6778  // Validate inspects the fields of the type to determine if they are valid.
  6779  func (s *ListDataSetsInput) Validate() error {
  6780  	invalidParams := request.ErrInvalidParams{Context: "ListDataSetsInput"}
  6781  	if s.MaxResults != nil && *s.MaxResults < 1 {
  6782  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  6783  	}
  6784  
  6785  	if invalidParams.Len() > 0 {
  6786  		return invalidParams
  6787  	}
  6788  	return nil
  6789  }
  6790  
  6791  // SetMaxResults sets the MaxResults field's value.
  6792  func (s *ListDataSetsInput) SetMaxResults(v int64) *ListDataSetsInput {
  6793  	s.MaxResults = &v
  6794  	return s
  6795  }
  6796  
  6797  // SetNextToken sets the NextToken field's value.
  6798  func (s *ListDataSetsInput) SetNextToken(v string) *ListDataSetsInput {
  6799  	s.NextToken = &v
  6800  	return s
  6801  }
  6802  
  6803  // SetOrigin sets the Origin field's value.
  6804  func (s *ListDataSetsInput) SetOrigin(v string) *ListDataSetsInput {
  6805  	s.Origin = &v
  6806  	return s
  6807  }
  6808  
  6809  type ListDataSetsOutput struct {
  6810  	_ struct{} `type:"structure"`
  6811  
  6812  	DataSets []*DataSetEntry `type:"list"`
  6813  
  6814  	// The token value retrieved from a previous call to access the next page of
  6815  	// results.
  6816  	NextToken *string `type:"string"`
  6817  }
  6818  
  6819  // String returns the string representation.
  6820  //
  6821  // API parameter values that are decorated as "sensitive" in the API will not
  6822  // be included in the string output. The member name will be present, but the
  6823  // value will be replaced with "sensitive".
  6824  func (s ListDataSetsOutput) String() string {
  6825  	return awsutil.Prettify(s)
  6826  }
  6827  
  6828  // GoString returns the string representation.
  6829  //
  6830  // API parameter values that are decorated as "sensitive" in the API will not
  6831  // be included in the string output. The member name will be present, but the
  6832  // value will be replaced with "sensitive".
  6833  func (s ListDataSetsOutput) GoString() string {
  6834  	return s.String()
  6835  }
  6836  
  6837  // SetDataSets sets the DataSets field's value.
  6838  func (s *ListDataSetsOutput) SetDataSets(v []*DataSetEntry) *ListDataSetsOutput {
  6839  	s.DataSets = v
  6840  	return s
  6841  }
  6842  
  6843  // SetNextToken sets the NextToken field's value.
  6844  func (s *ListDataSetsOutput) SetNextToken(v string) *ListDataSetsOutput {
  6845  	s.NextToken = &v
  6846  	return s
  6847  }
  6848  
  6849  type ListEventActionsInput struct {
  6850  	_ struct{} `type:"structure" nopayload:"true"`
  6851  
  6852  	EventSourceId *string `location:"querystring" locationName:"eventSourceId" type:"string"`
  6853  
  6854  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  6855  
  6856  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  6857  }
  6858  
  6859  // String returns the string representation.
  6860  //
  6861  // API parameter values that are decorated as "sensitive" in the API will not
  6862  // be included in the string output. The member name will be present, but the
  6863  // value will be replaced with "sensitive".
  6864  func (s ListEventActionsInput) String() string {
  6865  	return awsutil.Prettify(s)
  6866  }
  6867  
  6868  // GoString returns the string representation.
  6869  //
  6870  // API parameter values that are decorated as "sensitive" in the API will not
  6871  // be included in the string output. The member name will be present, but the
  6872  // value will be replaced with "sensitive".
  6873  func (s ListEventActionsInput) GoString() string {
  6874  	return s.String()
  6875  }
  6876  
  6877  // Validate inspects the fields of the type to determine if they are valid.
  6878  func (s *ListEventActionsInput) Validate() error {
  6879  	invalidParams := request.ErrInvalidParams{Context: "ListEventActionsInput"}
  6880  	if s.MaxResults != nil && *s.MaxResults < 1 {
  6881  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  6882  	}
  6883  
  6884  	if invalidParams.Len() > 0 {
  6885  		return invalidParams
  6886  	}
  6887  	return nil
  6888  }
  6889  
  6890  // SetEventSourceId sets the EventSourceId field's value.
  6891  func (s *ListEventActionsInput) SetEventSourceId(v string) *ListEventActionsInput {
  6892  	s.EventSourceId = &v
  6893  	return s
  6894  }
  6895  
  6896  // SetMaxResults sets the MaxResults field's value.
  6897  func (s *ListEventActionsInput) SetMaxResults(v int64) *ListEventActionsInput {
  6898  	s.MaxResults = &v
  6899  	return s
  6900  }
  6901  
  6902  // SetNextToken sets the NextToken field's value.
  6903  func (s *ListEventActionsInput) SetNextToken(v string) *ListEventActionsInput {
  6904  	s.NextToken = &v
  6905  	return s
  6906  }
  6907  
  6908  type ListEventActionsOutput struct {
  6909  	_ struct{} `type:"structure"`
  6910  
  6911  	EventActions []*EventActionEntry `type:"list"`
  6912  
  6913  	// The token value retrieved from a previous call to access the next page of
  6914  	// results.
  6915  	NextToken *string `type:"string"`
  6916  }
  6917  
  6918  // String returns the string representation.
  6919  //
  6920  // API parameter values that are decorated as "sensitive" in the API will not
  6921  // be included in the string output. The member name will be present, but the
  6922  // value will be replaced with "sensitive".
  6923  func (s ListEventActionsOutput) String() string {
  6924  	return awsutil.Prettify(s)
  6925  }
  6926  
  6927  // GoString returns the string representation.
  6928  //
  6929  // API parameter values that are decorated as "sensitive" in the API will not
  6930  // be included in the string output. The member name will be present, but the
  6931  // value will be replaced with "sensitive".
  6932  func (s ListEventActionsOutput) GoString() string {
  6933  	return s.String()
  6934  }
  6935  
  6936  // SetEventActions sets the EventActions field's value.
  6937  func (s *ListEventActionsOutput) SetEventActions(v []*EventActionEntry) *ListEventActionsOutput {
  6938  	s.EventActions = v
  6939  	return s
  6940  }
  6941  
  6942  // SetNextToken sets the NextToken field's value.
  6943  func (s *ListEventActionsOutput) SetNextToken(v string) *ListEventActionsOutput {
  6944  	s.NextToken = &v
  6945  	return s
  6946  }
  6947  
  6948  type ListJobsInput struct {
  6949  	_ struct{} `type:"structure" nopayload:"true"`
  6950  
  6951  	DataSetId *string `location:"querystring" locationName:"dataSetId" type:"string"`
  6952  
  6953  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  6954  
  6955  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  6956  
  6957  	RevisionId *string `location:"querystring" locationName:"revisionId" type:"string"`
  6958  }
  6959  
  6960  // String returns the string representation.
  6961  //
  6962  // API parameter values that are decorated as "sensitive" in the API will not
  6963  // be included in the string output. The member name will be present, but the
  6964  // value will be replaced with "sensitive".
  6965  func (s ListJobsInput) String() string {
  6966  	return awsutil.Prettify(s)
  6967  }
  6968  
  6969  // GoString returns the string representation.
  6970  //
  6971  // API parameter values that are decorated as "sensitive" in the API will not
  6972  // be included in the string output. The member name will be present, but the
  6973  // value will be replaced with "sensitive".
  6974  func (s ListJobsInput) GoString() string {
  6975  	return s.String()
  6976  }
  6977  
  6978  // Validate inspects the fields of the type to determine if they are valid.
  6979  func (s *ListJobsInput) Validate() error {
  6980  	invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"}
  6981  	if s.MaxResults != nil && *s.MaxResults < 1 {
  6982  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  6983  	}
  6984  
  6985  	if invalidParams.Len() > 0 {
  6986  		return invalidParams
  6987  	}
  6988  	return nil
  6989  }
  6990  
  6991  // SetDataSetId sets the DataSetId field's value.
  6992  func (s *ListJobsInput) SetDataSetId(v string) *ListJobsInput {
  6993  	s.DataSetId = &v
  6994  	return s
  6995  }
  6996  
  6997  // SetMaxResults sets the MaxResults field's value.
  6998  func (s *ListJobsInput) SetMaxResults(v int64) *ListJobsInput {
  6999  	s.MaxResults = &v
  7000  	return s
  7001  }
  7002  
  7003  // SetNextToken sets the NextToken field's value.
  7004  func (s *ListJobsInput) SetNextToken(v string) *ListJobsInput {
  7005  	s.NextToken = &v
  7006  	return s
  7007  }
  7008  
  7009  // SetRevisionId sets the RevisionId field's value.
  7010  func (s *ListJobsInput) SetRevisionId(v string) *ListJobsInput {
  7011  	s.RevisionId = &v
  7012  	return s
  7013  }
  7014  
  7015  type ListJobsOutput struct {
  7016  	_ struct{} `type:"structure"`
  7017  
  7018  	Jobs []*JobEntry `type:"list"`
  7019  
  7020  	// The token value retrieved from a previous call to access the next page of
  7021  	// results.
  7022  	NextToken *string `type:"string"`
  7023  }
  7024  
  7025  // String returns the string representation.
  7026  //
  7027  // API parameter values that are decorated as "sensitive" in the API will not
  7028  // be included in the string output. The member name will be present, but the
  7029  // value will be replaced with "sensitive".
  7030  func (s ListJobsOutput) String() string {
  7031  	return awsutil.Prettify(s)
  7032  }
  7033  
  7034  // GoString returns the string representation.
  7035  //
  7036  // API parameter values that are decorated as "sensitive" in the API will not
  7037  // be included in the string output. The member name will be present, but the
  7038  // value will be replaced with "sensitive".
  7039  func (s ListJobsOutput) GoString() string {
  7040  	return s.String()
  7041  }
  7042  
  7043  // SetJobs sets the Jobs field's value.
  7044  func (s *ListJobsOutput) SetJobs(v []*JobEntry) *ListJobsOutput {
  7045  	s.Jobs = v
  7046  	return s
  7047  }
  7048  
  7049  // SetNextToken sets the NextToken field's value.
  7050  func (s *ListJobsOutput) SetNextToken(v string) *ListJobsOutput {
  7051  	s.NextToken = &v
  7052  	return s
  7053  }
  7054  
  7055  type ListRevisionAssetsInput struct {
  7056  	_ struct{} `type:"structure" nopayload:"true"`
  7057  
  7058  	// DataSetId is a required field
  7059  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  7060  
  7061  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  7062  
  7063  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  7064  
  7065  	// RevisionId is a required field
  7066  	RevisionId *string `location:"uri" locationName:"RevisionId" type:"string" required:"true"`
  7067  }
  7068  
  7069  // String returns the string representation.
  7070  //
  7071  // API parameter values that are decorated as "sensitive" in the API will not
  7072  // be included in the string output. The member name will be present, but the
  7073  // value will be replaced with "sensitive".
  7074  func (s ListRevisionAssetsInput) String() string {
  7075  	return awsutil.Prettify(s)
  7076  }
  7077  
  7078  // GoString returns the string representation.
  7079  //
  7080  // API parameter values that are decorated as "sensitive" in the API will not
  7081  // be included in the string output. The member name will be present, but the
  7082  // value will be replaced with "sensitive".
  7083  func (s ListRevisionAssetsInput) GoString() string {
  7084  	return s.String()
  7085  }
  7086  
  7087  // Validate inspects the fields of the type to determine if they are valid.
  7088  func (s *ListRevisionAssetsInput) Validate() error {
  7089  	invalidParams := request.ErrInvalidParams{Context: "ListRevisionAssetsInput"}
  7090  	if s.DataSetId == nil {
  7091  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  7092  	}
  7093  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  7094  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  7095  	}
  7096  	if s.MaxResults != nil && *s.MaxResults < 1 {
  7097  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  7098  	}
  7099  	if s.RevisionId == nil {
  7100  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  7101  	}
  7102  	if s.RevisionId != nil && len(*s.RevisionId) < 1 {
  7103  		invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1))
  7104  	}
  7105  
  7106  	if invalidParams.Len() > 0 {
  7107  		return invalidParams
  7108  	}
  7109  	return nil
  7110  }
  7111  
  7112  // SetDataSetId sets the DataSetId field's value.
  7113  func (s *ListRevisionAssetsInput) SetDataSetId(v string) *ListRevisionAssetsInput {
  7114  	s.DataSetId = &v
  7115  	return s
  7116  }
  7117  
  7118  // SetMaxResults sets the MaxResults field's value.
  7119  func (s *ListRevisionAssetsInput) SetMaxResults(v int64) *ListRevisionAssetsInput {
  7120  	s.MaxResults = &v
  7121  	return s
  7122  }
  7123  
  7124  // SetNextToken sets the NextToken field's value.
  7125  func (s *ListRevisionAssetsInput) SetNextToken(v string) *ListRevisionAssetsInput {
  7126  	s.NextToken = &v
  7127  	return s
  7128  }
  7129  
  7130  // SetRevisionId sets the RevisionId field's value.
  7131  func (s *ListRevisionAssetsInput) SetRevisionId(v string) *ListRevisionAssetsInput {
  7132  	s.RevisionId = &v
  7133  	return s
  7134  }
  7135  
  7136  type ListRevisionAssetsOutput struct {
  7137  	_ struct{} `type:"structure"`
  7138  
  7139  	Assets []*AssetEntry `type:"list"`
  7140  
  7141  	// The token value retrieved from a previous call to access the next page of
  7142  	// results.
  7143  	NextToken *string `type:"string"`
  7144  }
  7145  
  7146  // String returns the string representation.
  7147  //
  7148  // API parameter values that are decorated as "sensitive" in the API will not
  7149  // be included in the string output. The member name will be present, but the
  7150  // value will be replaced with "sensitive".
  7151  func (s ListRevisionAssetsOutput) String() string {
  7152  	return awsutil.Prettify(s)
  7153  }
  7154  
  7155  // GoString returns the string representation.
  7156  //
  7157  // API parameter values that are decorated as "sensitive" in the API will not
  7158  // be included in the string output. The member name will be present, but the
  7159  // value will be replaced with "sensitive".
  7160  func (s ListRevisionAssetsOutput) GoString() string {
  7161  	return s.String()
  7162  }
  7163  
  7164  // SetAssets sets the Assets field's value.
  7165  func (s *ListRevisionAssetsOutput) SetAssets(v []*AssetEntry) *ListRevisionAssetsOutput {
  7166  	s.Assets = v
  7167  	return s
  7168  }
  7169  
  7170  // SetNextToken sets the NextToken field's value.
  7171  func (s *ListRevisionAssetsOutput) SetNextToken(v string) *ListRevisionAssetsOutput {
  7172  	s.NextToken = &v
  7173  	return s
  7174  }
  7175  
  7176  type ListTagsForResourceInput struct {
  7177  	_ struct{} `type:"structure" nopayload:"true"`
  7178  
  7179  	// ResourceArn is a required field
  7180  	ResourceArn *string `location:"uri" locationName:"resource-arn" type:"string" required:"true"`
  7181  }
  7182  
  7183  // String returns the string representation.
  7184  //
  7185  // API parameter values that are decorated as "sensitive" in the API will not
  7186  // be included in the string output. The member name will be present, but the
  7187  // value will be replaced with "sensitive".
  7188  func (s ListTagsForResourceInput) String() string {
  7189  	return awsutil.Prettify(s)
  7190  }
  7191  
  7192  // GoString returns the string representation.
  7193  //
  7194  // API parameter values that are decorated as "sensitive" in the API will not
  7195  // be included in the string output. The member name will be present, but the
  7196  // value will be replaced with "sensitive".
  7197  func (s ListTagsForResourceInput) GoString() string {
  7198  	return s.String()
  7199  }
  7200  
  7201  // Validate inspects the fields of the type to determine if they are valid.
  7202  func (s *ListTagsForResourceInput) Validate() error {
  7203  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
  7204  	if s.ResourceArn == nil {
  7205  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  7206  	}
  7207  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
  7208  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
  7209  	}
  7210  
  7211  	if invalidParams.Len() > 0 {
  7212  		return invalidParams
  7213  	}
  7214  	return nil
  7215  }
  7216  
  7217  // SetResourceArn sets the ResourceArn field's value.
  7218  func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
  7219  	s.ResourceArn = &v
  7220  	return s
  7221  }
  7222  
  7223  type ListTagsForResourceOutput struct {
  7224  	_ struct{} `type:"structure"`
  7225  
  7226  	Tags map[string]*string `locationName:"tags" type:"map"`
  7227  }
  7228  
  7229  // String returns the string representation.
  7230  //
  7231  // API parameter values that are decorated as "sensitive" in the API will not
  7232  // be included in the string output. The member name will be present, but the
  7233  // value will be replaced with "sensitive".
  7234  func (s ListTagsForResourceOutput) String() string {
  7235  	return awsutil.Prettify(s)
  7236  }
  7237  
  7238  // GoString returns the string representation.
  7239  //
  7240  // API parameter values that are decorated as "sensitive" in the API will not
  7241  // be included in the string output. The member name will be present, but the
  7242  // value will be replaced with "sensitive".
  7243  func (s ListTagsForResourceOutput) GoString() string {
  7244  	return s.String()
  7245  }
  7246  
  7247  // SetTags sets the Tags field's value.
  7248  func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
  7249  	s.Tags = v
  7250  	return s
  7251  }
  7252  
  7253  type OriginDetails struct {
  7254  	_ struct{} `type:"structure"`
  7255  
  7256  	// ProductId is a required field
  7257  	ProductId *string `type:"string" required:"true"`
  7258  }
  7259  
  7260  // String returns the string representation.
  7261  //
  7262  // API parameter values that are decorated as "sensitive" in the API will not
  7263  // be included in the string output. The member name will be present, but the
  7264  // value will be replaced with "sensitive".
  7265  func (s OriginDetails) String() string {
  7266  	return awsutil.Prettify(s)
  7267  }
  7268  
  7269  // GoString returns the string representation.
  7270  //
  7271  // API parameter values that are decorated as "sensitive" in the API will not
  7272  // be included in the string output. The member name will be present, but the
  7273  // value will be replaced with "sensitive".
  7274  func (s OriginDetails) GoString() string {
  7275  	return s.String()
  7276  }
  7277  
  7278  // SetProductId sets the ProductId field's value.
  7279  func (s *OriginDetails) SetProductId(v string) *OriginDetails {
  7280  	s.ProductId = &v
  7281  	return s
  7282  }
  7283  
  7284  // The details for the request.
  7285  type RequestDetails struct {
  7286  	_ struct{} `type:"structure"`
  7287  
  7288  	// Details about the export to signed URL request.
  7289  	ExportAssetToSignedUrl *ExportAssetToSignedUrlRequestDetails `type:"structure"`
  7290  
  7291  	// Details about the export to Amazon S3 request.
  7292  	ExportAssetsToS3 *ExportAssetsToS3RequestDetails `type:"structure"`
  7293  
  7294  	// Details about the export to Amazon S3 request.
  7295  	ExportRevisionsToS3 *ExportRevisionsToS3RequestDetails `type:"structure"`
  7296  
  7297  	// Details about the import from signed URL request.
  7298  	ImportAssetFromSignedUrl *ImportAssetFromSignedUrlRequestDetails `type:"structure"`
  7299  
  7300  	// Details about the import from Amazon S3 request.
  7301  	ImportAssetsFromS3 *ImportAssetsFromS3RequestDetails `type:"structure"`
  7302  }
  7303  
  7304  // String returns the string representation.
  7305  //
  7306  // API parameter values that are decorated as "sensitive" in the API will not
  7307  // be included in the string output. The member name will be present, but the
  7308  // value will be replaced with "sensitive".
  7309  func (s RequestDetails) String() string {
  7310  	return awsutil.Prettify(s)
  7311  }
  7312  
  7313  // GoString returns the string representation.
  7314  //
  7315  // API parameter values that are decorated as "sensitive" in the API will not
  7316  // be included in the string output. The member name will be present, but the
  7317  // value will be replaced with "sensitive".
  7318  func (s RequestDetails) GoString() string {
  7319  	return s.String()
  7320  }
  7321  
  7322  // Validate inspects the fields of the type to determine if they are valid.
  7323  func (s *RequestDetails) Validate() error {
  7324  	invalidParams := request.ErrInvalidParams{Context: "RequestDetails"}
  7325  	if s.ExportAssetToSignedUrl != nil {
  7326  		if err := s.ExportAssetToSignedUrl.Validate(); err != nil {
  7327  			invalidParams.AddNested("ExportAssetToSignedUrl", err.(request.ErrInvalidParams))
  7328  		}
  7329  	}
  7330  	if s.ExportAssetsToS3 != nil {
  7331  		if err := s.ExportAssetsToS3.Validate(); err != nil {
  7332  			invalidParams.AddNested("ExportAssetsToS3", err.(request.ErrInvalidParams))
  7333  		}
  7334  	}
  7335  	if s.ExportRevisionsToS3 != nil {
  7336  		if err := s.ExportRevisionsToS3.Validate(); err != nil {
  7337  			invalidParams.AddNested("ExportRevisionsToS3", err.(request.ErrInvalidParams))
  7338  		}
  7339  	}
  7340  	if s.ImportAssetFromSignedUrl != nil {
  7341  		if err := s.ImportAssetFromSignedUrl.Validate(); err != nil {
  7342  			invalidParams.AddNested("ImportAssetFromSignedUrl", err.(request.ErrInvalidParams))
  7343  		}
  7344  	}
  7345  	if s.ImportAssetsFromS3 != nil {
  7346  		if err := s.ImportAssetsFromS3.Validate(); err != nil {
  7347  			invalidParams.AddNested("ImportAssetsFromS3", err.(request.ErrInvalidParams))
  7348  		}
  7349  	}
  7350  
  7351  	if invalidParams.Len() > 0 {
  7352  		return invalidParams
  7353  	}
  7354  	return nil
  7355  }
  7356  
  7357  // SetExportAssetToSignedUrl sets the ExportAssetToSignedUrl field's value.
  7358  func (s *RequestDetails) SetExportAssetToSignedUrl(v *ExportAssetToSignedUrlRequestDetails) *RequestDetails {
  7359  	s.ExportAssetToSignedUrl = v
  7360  	return s
  7361  }
  7362  
  7363  // SetExportAssetsToS3 sets the ExportAssetsToS3 field's value.
  7364  func (s *RequestDetails) SetExportAssetsToS3(v *ExportAssetsToS3RequestDetails) *RequestDetails {
  7365  	s.ExportAssetsToS3 = v
  7366  	return s
  7367  }
  7368  
  7369  // SetExportRevisionsToS3 sets the ExportRevisionsToS3 field's value.
  7370  func (s *RequestDetails) SetExportRevisionsToS3(v *ExportRevisionsToS3RequestDetails) *RequestDetails {
  7371  	s.ExportRevisionsToS3 = v
  7372  	return s
  7373  }
  7374  
  7375  // SetImportAssetFromSignedUrl sets the ImportAssetFromSignedUrl field's value.
  7376  func (s *RequestDetails) SetImportAssetFromSignedUrl(v *ImportAssetFromSignedUrlRequestDetails) *RequestDetails {
  7377  	s.ImportAssetFromSignedUrl = v
  7378  	return s
  7379  }
  7380  
  7381  // SetImportAssetsFromS3 sets the ImportAssetsFromS3 field's value.
  7382  func (s *RequestDetails) SetImportAssetsFromS3(v *ImportAssetsFromS3RequestDetails) *RequestDetails {
  7383  	s.ImportAssetsFromS3 = v
  7384  	return s
  7385  }
  7386  
  7387  // The resource couldn't be found.
  7388  type ResourceNotFoundException struct {
  7389  	_            struct{}                  `type:"structure"`
  7390  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  7391  
  7392  	// The resource couldn't be found.
  7393  	Message_ *string `locationName:"Message" type:"string"`
  7394  
  7395  	// The unique identifier for the resource that couldn't be found.
  7396  	ResourceId *string `type:"string"`
  7397  
  7398  	// The type of resource that couldn't be found.
  7399  	ResourceType *string `type:"string" enum:"ResourceType"`
  7400  }
  7401  
  7402  // String returns the string representation.
  7403  //
  7404  // API parameter values that are decorated as "sensitive" in the API will not
  7405  // be included in the string output. The member name will be present, but the
  7406  // value will be replaced with "sensitive".
  7407  func (s ResourceNotFoundException) String() string {
  7408  	return awsutil.Prettify(s)
  7409  }
  7410  
  7411  // GoString returns the string representation.
  7412  //
  7413  // API parameter values that are decorated as "sensitive" in the API will not
  7414  // be included in the string output. The member name will be present, but the
  7415  // value will be replaced with "sensitive".
  7416  func (s ResourceNotFoundException) GoString() string {
  7417  	return s.String()
  7418  }
  7419  
  7420  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
  7421  	return &ResourceNotFoundException{
  7422  		RespMetadata: v,
  7423  	}
  7424  }
  7425  
  7426  // Code returns the exception type name.
  7427  func (s *ResourceNotFoundException) Code() string {
  7428  	return "ResourceNotFoundException"
  7429  }
  7430  
  7431  // Message returns the exception's message.
  7432  func (s *ResourceNotFoundException) Message() string {
  7433  	if s.Message_ != nil {
  7434  		return *s.Message_
  7435  	}
  7436  	return ""
  7437  }
  7438  
  7439  // OrigErr always returns nil, satisfies awserr.Error interface.
  7440  func (s *ResourceNotFoundException) OrigErr() error {
  7441  	return nil
  7442  }
  7443  
  7444  func (s *ResourceNotFoundException) Error() string {
  7445  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  7446  }
  7447  
  7448  // Status code returns the HTTP status code for the request's response error.
  7449  func (s *ResourceNotFoundException) StatusCode() int {
  7450  	return s.RespMetadata.StatusCode
  7451  }
  7452  
  7453  // RequestID returns the service's response RequestID for request.
  7454  func (s *ResourceNotFoundException) RequestID() string {
  7455  	return s.RespMetadata.RequestID
  7456  }
  7457  
  7458  // Details for the response.
  7459  type ResponseDetails struct {
  7460  	_ struct{} `type:"structure"`
  7461  
  7462  	// Details for the export to signed URL response.
  7463  	ExportAssetToSignedUrl *ExportAssetToSignedUrlResponseDetails `type:"structure"`
  7464  
  7465  	// Details for the export to Amazon S3 response.
  7466  	ExportAssetsToS3 *ExportAssetsToS3ResponseDetails `type:"structure"`
  7467  
  7468  	// Details for the export revisions to Amazon S3 response.
  7469  	ExportRevisionsToS3 *ExportRevisionsToS3ResponseDetails `type:"structure"`
  7470  
  7471  	// Details for the import from signed URL response.
  7472  	ImportAssetFromSignedUrl *ImportAssetFromSignedUrlResponseDetails `type:"structure"`
  7473  
  7474  	// Details for the import from Amazon S3 response.
  7475  	ImportAssetsFromS3 *ImportAssetsFromS3ResponseDetails `type:"structure"`
  7476  }
  7477  
  7478  // String returns the string representation.
  7479  //
  7480  // API parameter values that are decorated as "sensitive" in the API will not
  7481  // be included in the string output. The member name will be present, but the
  7482  // value will be replaced with "sensitive".
  7483  func (s ResponseDetails) String() string {
  7484  	return awsutil.Prettify(s)
  7485  }
  7486  
  7487  // GoString returns the string representation.
  7488  //
  7489  // API parameter values that are decorated as "sensitive" in the API will not
  7490  // be included in the string output. The member name will be present, but the
  7491  // value will be replaced with "sensitive".
  7492  func (s ResponseDetails) GoString() string {
  7493  	return s.String()
  7494  }
  7495  
  7496  // SetExportAssetToSignedUrl sets the ExportAssetToSignedUrl field's value.
  7497  func (s *ResponseDetails) SetExportAssetToSignedUrl(v *ExportAssetToSignedUrlResponseDetails) *ResponseDetails {
  7498  	s.ExportAssetToSignedUrl = v
  7499  	return s
  7500  }
  7501  
  7502  // SetExportAssetsToS3 sets the ExportAssetsToS3 field's value.
  7503  func (s *ResponseDetails) SetExportAssetsToS3(v *ExportAssetsToS3ResponseDetails) *ResponseDetails {
  7504  	s.ExportAssetsToS3 = v
  7505  	return s
  7506  }
  7507  
  7508  // SetExportRevisionsToS3 sets the ExportRevisionsToS3 field's value.
  7509  func (s *ResponseDetails) SetExportRevisionsToS3(v *ExportRevisionsToS3ResponseDetails) *ResponseDetails {
  7510  	s.ExportRevisionsToS3 = v
  7511  	return s
  7512  }
  7513  
  7514  // SetImportAssetFromSignedUrl sets the ImportAssetFromSignedUrl field's value.
  7515  func (s *ResponseDetails) SetImportAssetFromSignedUrl(v *ImportAssetFromSignedUrlResponseDetails) *ResponseDetails {
  7516  	s.ImportAssetFromSignedUrl = v
  7517  	return s
  7518  }
  7519  
  7520  // SetImportAssetsFromS3 sets the ImportAssetsFromS3 field's value.
  7521  func (s *ResponseDetails) SetImportAssetsFromS3(v *ImportAssetsFromS3ResponseDetails) *ResponseDetails {
  7522  	s.ImportAssetsFromS3 = v
  7523  	return s
  7524  }
  7525  
  7526  // The destination where the assets in the revision will be exported.
  7527  type RevisionDestinationEntry struct {
  7528  	_ struct{} `type:"structure"`
  7529  
  7530  	// The S3 bucket that is the destination for the assets in the revision.
  7531  	//
  7532  	// Bucket is a required field
  7533  	Bucket *string `type:"string" required:"true"`
  7534  
  7535  	// A string representing the pattern for generated names of the individual assets
  7536  	// in the revision. For more information about key patterns, see Key patterns
  7537  	// when exporting revisions (https://docs.aws.amazon.com/data-exchange/latest/userguide/jobs.html#revision-export-keypatterns).
  7538  	KeyPattern *string `type:"string"`
  7539  
  7540  	// The unique identifier for the revision.
  7541  	//
  7542  	// RevisionId is a required field
  7543  	RevisionId *string `type:"string" required:"true"`
  7544  }
  7545  
  7546  // String returns the string representation.
  7547  //
  7548  // API parameter values that are decorated as "sensitive" in the API will not
  7549  // be included in the string output. The member name will be present, but the
  7550  // value will be replaced with "sensitive".
  7551  func (s RevisionDestinationEntry) String() string {
  7552  	return awsutil.Prettify(s)
  7553  }
  7554  
  7555  // GoString returns the string representation.
  7556  //
  7557  // API parameter values that are decorated as "sensitive" in the API will not
  7558  // be included in the string output. The member name will be present, but the
  7559  // value will be replaced with "sensitive".
  7560  func (s RevisionDestinationEntry) GoString() string {
  7561  	return s.String()
  7562  }
  7563  
  7564  // Validate inspects the fields of the type to determine if they are valid.
  7565  func (s *RevisionDestinationEntry) Validate() error {
  7566  	invalidParams := request.ErrInvalidParams{Context: "RevisionDestinationEntry"}
  7567  	if s.Bucket == nil {
  7568  		invalidParams.Add(request.NewErrParamRequired("Bucket"))
  7569  	}
  7570  	if s.RevisionId == nil {
  7571  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  7572  	}
  7573  
  7574  	if invalidParams.Len() > 0 {
  7575  		return invalidParams
  7576  	}
  7577  	return nil
  7578  }
  7579  
  7580  // SetBucket sets the Bucket field's value.
  7581  func (s *RevisionDestinationEntry) SetBucket(v string) *RevisionDestinationEntry {
  7582  	s.Bucket = &v
  7583  	return s
  7584  }
  7585  
  7586  // SetKeyPattern sets the KeyPattern field's value.
  7587  func (s *RevisionDestinationEntry) SetKeyPattern(v string) *RevisionDestinationEntry {
  7588  	s.KeyPattern = &v
  7589  	return s
  7590  }
  7591  
  7592  // SetRevisionId sets the RevisionId field's value.
  7593  func (s *RevisionDestinationEntry) SetRevisionId(v string) *RevisionDestinationEntry {
  7594  	s.RevisionId = &v
  7595  	return s
  7596  }
  7597  
  7598  // A revision is a container for one or more assets.
  7599  type RevisionEntry struct {
  7600  	_ struct{} `type:"structure"`
  7601  
  7602  	// The ARN for the revision.
  7603  	//
  7604  	// Arn is a required field
  7605  	Arn *string `type:"string" required:"true"`
  7606  
  7607  	// An optional comment about the revision.
  7608  	Comment *string `type:"string"`
  7609  
  7610  	// The date and time that the revision was created, in ISO 8601 format.
  7611  	//
  7612  	// CreatedAt is a required field
  7613  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  7614  
  7615  	// The unique identifier for the data set associated with this revision.
  7616  	//
  7617  	// DataSetId is a required field
  7618  	DataSetId *string `type:"string" required:"true"`
  7619  
  7620  	// To publish a revision to a data set in a product, the revision must first
  7621  	// be finalized. Finalizing a revision tells AWS Data Exchange that your changes
  7622  	// to the assets in the revision are complete. After it's in this read-only
  7623  	// state, you can publish the revision to your products.
  7624  	//
  7625  	// Finalized revisions can be published through the AWS Data Exchange console
  7626  	// or the AWS Marketplace Catalog API, using the StartChangeSet AWS Marketplace
  7627  	// Catalog API action. When using the API, revisions are uniquely identified
  7628  	// by their ARN.
  7629  	Finalized *bool `type:"boolean"`
  7630  
  7631  	// The unique identifier for the revision.
  7632  	//
  7633  	// Id is a required field
  7634  	Id *string `type:"string" required:"true"`
  7635  
  7636  	// The revision ID of the owned revision corresponding to the entitled revision
  7637  	// being viewed. This parameter is returned when a revision owner is viewing
  7638  	// the entitled copy of its owned revision.
  7639  	SourceId *string `type:"string"`
  7640  
  7641  	// The date and time that the revision was last updated, in ISO 8601 format.
  7642  	//
  7643  	// UpdatedAt is a required field
  7644  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  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 RevisionEntry) 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 RevisionEntry) GoString() string {
  7662  	return s.String()
  7663  }
  7664  
  7665  // SetArn sets the Arn field's value.
  7666  func (s *RevisionEntry) SetArn(v string) *RevisionEntry {
  7667  	s.Arn = &v
  7668  	return s
  7669  }
  7670  
  7671  // SetComment sets the Comment field's value.
  7672  func (s *RevisionEntry) SetComment(v string) *RevisionEntry {
  7673  	s.Comment = &v
  7674  	return s
  7675  }
  7676  
  7677  // SetCreatedAt sets the CreatedAt field's value.
  7678  func (s *RevisionEntry) SetCreatedAt(v time.Time) *RevisionEntry {
  7679  	s.CreatedAt = &v
  7680  	return s
  7681  }
  7682  
  7683  // SetDataSetId sets the DataSetId field's value.
  7684  func (s *RevisionEntry) SetDataSetId(v string) *RevisionEntry {
  7685  	s.DataSetId = &v
  7686  	return s
  7687  }
  7688  
  7689  // SetFinalized sets the Finalized field's value.
  7690  func (s *RevisionEntry) SetFinalized(v bool) *RevisionEntry {
  7691  	s.Finalized = &v
  7692  	return s
  7693  }
  7694  
  7695  // SetId sets the Id field's value.
  7696  func (s *RevisionEntry) SetId(v string) *RevisionEntry {
  7697  	s.Id = &v
  7698  	return s
  7699  }
  7700  
  7701  // SetSourceId sets the SourceId field's value.
  7702  func (s *RevisionEntry) SetSourceId(v string) *RevisionEntry {
  7703  	s.SourceId = &v
  7704  	return s
  7705  }
  7706  
  7707  // SetUpdatedAt sets the UpdatedAt field's value.
  7708  func (s *RevisionEntry) SetUpdatedAt(v time.Time) *RevisionEntry {
  7709  	s.UpdatedAt = &v
  7710  	return s
  7711  }
  7712  
  7713  type RevisionPublished struct {
  7714  	_ struct{} `type:"structure"`
  7715  
  7716  	// A unique identifier.
  7717  	//
  7718  	// DataSetId is a required field
  7719  	DataSetId *string `type:"string" required:"true"`
  7720  }
  7721  
  7722  // String returns the string representation.
  7723  //
  7724  // API parameter values that are decorated as "sensitive" in the API will not
  7725  // be included in the string output. The member name will be present, but the
  7726  // value will be replaced with "sensitive".
  7727  func (s RevisionPublished) String() string {
  7728  	return awsutil.Prettify(s)
  7729  }
  7730  
  7731  // GoString returns the string representation.
  7732  //
  7733  // API parameter values that are decorated as "sensitive" in the API will not
  7734  // be included in the string output. The member name will be present, but the
  7735  // value will be replaced with "sensitive".
  7736  func (s RevisionPublished) GoString() string {
  7737  	return s.String()
  7738  }
  7739  
  7740  // Validate inspects the fields of the type to determine if they are valid.
  7741  func (s *RevisionPublished) Validate() error {
  7742  	invalidParams := request.ErrInvalidParams{Context: "RevisionPublished"}
  7743  	if s.DataSetId == nil {
  7744  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  7745  	}
  7746  
  7747  	if invalidParams.Len() > 0 {
  7748  		return invalidParams
  7749  	}
  7750  	return nil
  7751  }
  7752  
  7753  // SetDataSetId sets the DataSetId field's value.
  7754  func (s *RevisionPublished) SetDataSetId(v string) *RevisionPublished {
  7755  	s.DataSetId = &v
  7756  	return s
  7757  }
  7758  
  7759  // The S3 object that is the asset.
  7760  type S3SnapshotAsset struct {
  7761  	_ struct{} `type:"structure"`
  7762  
  7763  	// The size of the S3 object that is the object.
  7764  	//
  7765  	// Size is a required field
  7766  	Size *float64 `type:"double" required:"true"`
  7767  }
  7768  
  7769  // String returns the string representation.
  7770  //
  7771  // API parameter values that are decorated as "sensitive" in the API will not
  7772  // be included in the string output. The member name will be present, but the
  7773  // value will be replaced with "sensitive".
  7774  func (s S3SnapshotAsset) String() string {
  7775  	return awsutil.Prettify(s)
  7776  }
  7777  
  7778  // GoString returns the string representation.
  7779  //
  7780  // API parameter values that are decorated as "sensitive" in the API will not
  7781  // be included in the string output. The member name will be present, but the
  7782  // value will be replaced with "sensitive".
  7783  func (s S3SnapshotAsset) GoString() string {
  7784  	return s.String()
  7785  }
  7786  
  7787  // SetSize sets the Size field's value.
  7788  func (s *S3SnapshotAsset) SetSize(v float64) *S3SnapshotAsset {
  7789  	s.Size = &v
  7790  	return s
  7791  }
  7792  
  7793  // The request has exceeded the quotas imposed by the service.
  7794  type ServiceLimitExceededException struct {
  7795  	_            struct{}                  `type:"structure"`
  7796  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  7797  
  7798  	LimitName *string `type:"string" enum:"LimitName"`
  7799  
  7800  	LimitValue *float64 `type:"double"`
  7801  
  7802  	Message_ *string `locationName:"Message" type:"string"`
  7803  }
  7804  
  7805  // String returns the string representation.
  7806  //
  7807  // API parameter values that are decorated as "sensitive" in the API will not
  7808  // be included in the string output. The member name will be present, but the
  7809  // value will be replaced with "sensitive".
  7810  func (s ServiceLimitExceededException) String() string {
  7811  	return awsutil.Prettify(s)
  7812  }
  7813  
  7814  // GoString returns the string representation.
  7815  //
  7816  // API parameter values that are decorated as "sensitive" in the API will not
  7817  // be included in the string output. The member name will be present, but the
  7818  // value will be replaced with "sensitive".
  7819  func (s ServiceLimitExceededException) GoString() string {
  7820  	return s.String()
  7821  }
  7822  
  7823  func newErrorServiceLimitExceededException(v protocol.ResponseMetadata) error {
  7824  	return &ServiceLimitExceededException{
  7825  		RespMetadata: v,
  7826  	}
  7827  }
  7828  
  7829  // Code returns the exception type name.
  7830  func (s *ServiceLimitExceededException) Code() string {
  7831  	return "ServiceLimitExceededException"
  7832  }
  7833  
  7834  // Message returns the exception's message.
  7835  func (s *ServiceLimitExceededException) Message() string {
  7836  	if s.Message_ != nil {
  7837  		return *s.Message_
  7838  	}
  7839  	return ""
  7840  }
  7841  
  7842  // OrigErr always returns nil, satisfies awserr.Error interface.
  7843  func (s *ServiceLimitExceededException) OrigErr() error {
  7844  	return nil
  7845  }
  7846  
  7847  func (s *ServiceLimitExceededException) Error() string {
  7848  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  7849  }
  7850  
  7851  // Status code returns the HTTP status code for the request's response error.
  7852  func (s *ServiceLimitExceededException) StatusCode() int {
  7853  	return s.RespMetadata.StatusCode
  7854  }
  7855  
  7856  // RequestID returns the service's response RequestID for request.
  7857  func (s *ServiceLimitExceededException) RequestID() string {
  7858  	return s.RespMetadata.RequestID
  7859  }
  7860  
  7861  type StartJobInput struct {
  7862  	_ struct{} `type:"structure" nopayload:"true"`
  7863  
  7864  	// JobId is a required field
  7865  	JobId *string `location:"uri" locationName:"JobId" type:"string" required:"true"`
  7866  }
  7867  
  7868  // String returns the string representation.
  7869  //
  7870  // API parameter values that are decorated as "sensitive" in the API will not
  7871  // be included in the string output. The member name will be present, but the
  7872  // value will be replaced with "sensitive".
  7873  func (s StartJobInput) String() string {
  7874  	return awsutil.Prettify(s)
  7875  }
  7876  
  7877  // GoString returns the string representation.
  7878  //
  7879  // API parameter values that are decorated as "sensitive" in the API will not
  7880  // be included in the string output. The member name will be present, but the
  7881  // value will be replaced with "sensitive".
  7882  func (s StartJobInput) GoString() string {
  7883  	return s.String()
  7884  }
  7885  
  7886  // Validate inspects the fields of the type to determine if they are valid.
  7887  func (s *StartJobInput) Validate() error {
  7888  	invalidParams := request.ErrInvalidParams{Context: "StartJobInput"}
  7889  	if s.JobId == nil {
  7890  		invalidParams.Add(request.NewErrParamRequired("JobId"))
  7891  	}
  7892  	if s.JobId != nil && len(*s.JobId) < 1 {
  7893  		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  7894  	}
  7895  
  7896  	if invalidParams.Len() > 0 {
  7897  		return invalidParams
  7898  	}
  7899  	return nil
  7900  }
  7901  
  7902  // SetJobId sets the JobId field's value.
  7903  func (s *StartJobInput) SetJobId(v string) *StartJobInput {
  7904  	s.JobId = &v
  7905  	return s
  7906  }
  7907  
  7908  type StartJobOutput struct {
  7909  	_ struct{} `type:"structure" nopayload:"true"`
  7910  }
  7911  
  7912  // String returns the string representation.
  7913  //
  7914  // API parameter values that are decorated as "sensitive" in the API will not
  7915  // be included in the string output. The member name will be present, but the
  7916  // value will be replaced with "sensitive".
  7917  func (s StartJobOutput) String() string {
  7918  	return awsutil.Prettify(s)
  7919  }
  7920  
  7921  // GoString returns the string representation.
  7922  //
  7923  // API parameter values that are decorated as "sensitive" in the API will not
  7924  // be included in the string output. The member name will be present, but the
  7925  // value will be replaced with "sensitive".
  7926  func (s StartJobOutput) GoString() string {
  7927  	return s.String()
  7928  }
  7929  
  7930  type TagResourceInput struct {
  7931  	_ struct{} `type:"structure"`
  7932  
  7933  	// ResourceArn is a required field
  7934  	ResourceArn *string `location:"uri" locationName:"resource-arn" type:"string" required:"true"`
  7935  
  7936  	// Tags is a required field
  7937  	Tags map[string]*string `locationName:"tags" type:"map" required:"true"`
  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 TagResourceInput) 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 TagResourceInput) 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 *TagResourceInput) Validate() error {
  7960  	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
  7961  	if s.ResourceArn == nil {
  7962  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  7963  	}
  7964  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
  7965  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
  7966  	}
  7967  	if s.Tags == nil {
  7968  		invalidParams.Add(request.NewErrParamRequired("Tags"))
  7969  	}
  7970  
  7971  	if invalidParams.Len() > 0 {
  7972  		return invalidParams
  7973  	}
  7974  	return nil
  7975  }
  7976  
  7977  // SetResourceArn sets the ResourceArn field's value.
  7978  func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
  7979  	s.ResourceArn = &v
  7980  	return s
  7981  }
  7982  
  7983  // SetTags sets the Tags field's value.
  7984  func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
  7985  	s.Tags = v
  7986  	return s
  7987  }
  7988  
  7989  type TagResourceOutput struct {
  7990  	_ struct{} `type:"structure" nopayload:"true"`
  7991  }
  7992  
  7993  // String returns the string representation.
  7994  //
  7995  // API parameter values that are decorated as "sensitive" in the API will not
  7996  // be included in the string output. The member name will be present, but the
  7997  // value will be replaced with "sensitive".
  7998  func (s TagResourceOutput) String() string {
  7999  	return awsutil.Prettify(s)
  8000  }
  8001  
  8002  // GoString returns the string representation.
  8003  //
  8004  // API parameter values that are decorated as "sensitive" in the API will not
  8005  // be included in the string output. The member name will be present, but the
  8006  // value will be replaced with "sensitive".
  8007  func (s TagResourceOutput) GoString() string {
  8008  	return s.String()
  8009  }
  8010  
  8011  // The limit on the number of requests per second was exceeded.
  8012  type ThrottlingException struct {
  8013  	_            struct{}                  `type:"structure"`
  8014  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8015  
  8016  	// The limit on the number of requests per second was exceeded.
  8017  	Message_ *string `locationName:"Message" type:"string"`
  8018  }
  8019  
  8020  // String returns the string representation.
  8021  //
  8022  // API parameter values that are decorated as "sensitive" in the API will not
  8023  // be included in the string output. The member name will be present, but the
  8024  // value will be replaced with "sensitive".
  8025  func (s ThrottlingException) String() string {
  8026  	return awsutil.Prettify(s)
  8027  }
  8028  
  8029  // GoString returns the string representation.
  8030  //
  8031  // API parameter values that are decorated as "sensitive" in the API will not
  8032  // be included in the string output. The member name will be present, but the
  8033  // value will be replaced with "sensitive".
  8034  func (s ThrottlingException) GoString() string {
  8035  	return s.String()
  8036  }
  8037  
  8038  func newErrorThrottlingException(v protocol.ResponseMetadata) error {
  8039  	return &ThrottlingException{
  8040  		RespMetadata: v,
  8041  	}
  8042  }
  8043  
  8044  // Code returns the exception type name.
  8045  func (s *ThrottlingException) Code() string {
  8046  	return "ThrottlingException"
  8047  }
  8048  
  8049  // Message returns the exception's message.
  8050  func (s *ThrottlingException) Message() string {
  8051  	if s.Message_ != nil {
  8052  		return *s.Message_
  8053  	}
  8054  	return ""
  8055  }
  8056  
  8057  // OrigErr always returns nil, satisfies awserr.Error interface.
  8058  func (s *ThrottlingException) OrigErr() error {
  8059  	return nil
  8060  }
  8061  
  8062  func (s *ThrottlingException) Error() string {
  8063  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  8064  }
  8065  
  8066  // Status code returns the HTTP status code for the request's response error.
  8067  func (s *ThrottlingException) StatusCode() int {
  8068  	return s.RespMetadata.StatusCode
  8069  }
  8070  
  8071  // RequestID returns the service's response RequestID for request.
  8072  func (s *ThrottlingException) RequestID() string {
  8073  	return s.RespMetadata.RequestID
  8074  }
  8075  
  8076  type UntagResourceInput struct {
  8077  	_ struct{} `type:"structure" nopayload:"true"`
  8078  
  8079  	// ResourceArn is a required field
  8080  	ResourceArn *string `location:"uri" locationName:"resource-arn" type:"string" required:"true"`
  8081  
  8082  	// TagKeys is a required field
  8083  	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
  8084  }
  8085  
  8086  // String returns the string representation.
  8087  //
  8088  // API parameter values that are decorated as "sensitive" in the API will not
  8089  // be included in the string output. The member name will be present, but the
  8090  // value will be replaced with "sensitive".
  8091  func (s UntagResourceInput) String() string {
  8092  	return awsutil.Prettify(s)
  8093  }
  8094  
  8095  // GoString returns the string representation.
  8096  //
  8097  // API parameter values that are decorated as "sensitive" in the API will not
  8098  // be included in the string output. The member name will be present, but the
  8099  // value will be replaced with "sensitive".
  8100  func (s UntagResourceInput) GoString() string {
  8101  	return s.String()
  8102  }
  8103  
  8104  // Validate inspects the fields of the type to determine if they are valid.
  8105  func (s *UntagResourceInput) Validate() error {
  8106  	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
  8107  	if s.ResourceArn == nil {
  8108  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  8109  	}
  8110  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
  8111  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
  8112  	}
  8113  	if s.TagKeys == nil {
  8114  		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
  8115  	}
  8116  
  8117  	if invalidParams.Len() > 0 {
  8118  		return invalidParams
  8119  	}
  8120  	return nil
  8121  }
  8122  
  8123  // SetResourceArn sets the ResourceArn field's value.
  8124  func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
  8125  	s.ResourceArn = &v
  8126  	return s
  8127  }
  8128  
  8129  // SetTagKeys sets the TagKeys field's value.
  8130  func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
  8131  	s.TagKeys = v
  8132  	return s
  8133  }
  8134  
  8135  type UntagResourceOutput struct {
  8136  	_ struct{} `type:"structure" nopayload:"true"`
  8137  }
  8138  
  8139  // String returns the string representation.
  8140  //
  8141  // API parameter values that are decorated as "sensitive" in the API will not
  8142  // be included in the string output. The member name will be present, but the
  8143  // value will be replaced with "sensitive".
  8144  func (s UntagResourceOutput) String() string {
  8145  	return awsutil.Prettify(s)
  8146  }
  8147  
  8148  // GoString returns the string representation.
  8149  //
  8150  // API parameter values that are decorated as "sensitive" in the API will not
  8151  // be included in the string output. The member name will be present, but the
  8152  // value will be replaced with "sensitive".
  8153  func (s UntagResourceOutput) GoString() string {
  8154  	return s.String()
  8155  }
  8156  
  8157  // The request to update an asset.
  8158  type UpdateAssetInput struct {
  8159  	_ struct{} `type:"structure"`
  8160  
  8161  	// AssetId is a required field
  8162  	AssetId *string `location:"uri" locationName:"AssetId" type:"string" required:"true"`
  8163  
  8164  	// DataSetId is a required field
  8165  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  8166  
  8167  	// The name of the asset. When importing from Amazon S3, the S3 object key is
  8168  	// used as the asset name. When exporting to Amazon S3, the asset name is used
  8169  	// as default target S3 object key.
  8170  	//
  8171  	// Name is a required field
  8172  	Name *string `type:"string" required:"true"`
  8173  
  8174  	// RevisionId is a required field
  8175  	RevisionId *string `location:"uri" locationName:"RevisionId" type:"string" required:"true"`
  8176  }
  8177  
  8178  // String returns the string representation.
  8179  //
  8180  // API parameter values that are decorated as "sensitive" in the API will not
  8181  // be included in the string output. The member name will be present, but the
  8182  // value will be replaced with "sensitive".
  8183  func (s UpdateAssetInput) String() string {
  8184  	return awsutil.Prettify(s)
  8185  }
  8186  
  8187  // GoString returns the string representation.
  8188  //
  8189  // API parameter values that are decorated as "sensitive" in the API will not
  8190  // be included in the string output. The member name will be present, but the
  8191  // value will be replaced with "sensitive".
  8192  func (s UpdateAssetInput) GoString() string {
  8193  	return s.String()
  8194  }
  8195  
  8196  // Validate inspects the fields of the type to determine if they are valid.
  8197  func (s *UpdateAssetInput) Validate() error {
  8198  	invalidParams := request.ErrInvalidParams{Context: "UpdateAssetInput"}
  8199  	if s.AssetId == nil {
  8200  		invalidParams.Add(request.NewErrParamRequired("AssetId"))
  8201  	}
  8202  	if s.AssetId != nil && len(*s.AssetId) < 1 {
  8203  		invalidParams.Add(request.NewErrParamMinLen("AssetId", 1))
  8204  	}
  8205  	if s.DataSetId == nil {
  8206  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  8207  	}
  8208  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  8209  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  8210  	}
  8211  	if s.Name == nil {
  8212  		invalidParams.Add(request.NewErrParamRequired("Name"))
  8213  	}
  8214  	if s.RevisionId == nil {
  8215  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  8216  	}
  8217  	if s.RevisionId != nil && len(*s.RevisionId) < 1 {
  8218  		invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1))
  8219  	}
  8220  
  8221  	if invalidParams.Len() > 0 {
  8222  		return invalidParams
  8223  	}
  8224  	return nil
  8225  }
  8226  
  8227  // SetAssetId sets the AssetId field's value.
  8228  func (s *UpdateAssetInput) SetAssetId(v string) *UpdateAssetInput {
  8229  	s.AssetId = &v
  8230  	return s
  8231  }
  8232  
  8233  // SetDataSetId sets the DataSetId field's value.
  8234  func (s *UpdateAssetInput) SetDataSetId(v string) *UpdateAssetInput {
  8235  	s.DataSetId = &v
  8236  	return s
  8237  }
  8238  
  8239  // SetName sets the Name field's value.
  8240  func (s *UpdateAssetInput) SetName(v string) *UpdateAssetInput {
  8241  	s.Name = &v
  8242  	return s
  8243  }
  8244  
  8245  // SetRevisionId sets the RevisionId field's value.
  8246  func (s *UpdateAssetInput) SetRevisionId(v string) *UpdateAssetInput {
  8247  	s.RevisionId = &v
  8248  	return s
  8249  }
  8250  
  8251  type UpdateAssetOutput struct {
  8252  	_ struct{} `type:"structure"`
  8253  
  8254  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  8255  	Arn *string `type:"string"`
  8256  
  8257  	AssetDetails *AssetDetails `type:"structure"`
  8258  
  8259  	// The type of file your data is stored in. Currently, the supported asset type
  8260  	// is S3_SNAPSHOT.
  8261  	AssetType *string `type:"string" enum:"AssetType"`
  8262  
  8263  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  8264  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  8265  
  8266  	// A unique identifier.
  8267  	DataSetId *string `type:"string"`
  8268  
  8269  	// A unique identifier.
  8270  	Id *string `type:"string"`
  8271  
  8272  	// The name of the asset. When importing from Amazon S3, the S3 object key is
  8273  	// used as the asset name. When exporting to Amazon S3, the asset name is used
  8274  	// as default target S3 object key.
  8275  	Name *string `type:"string"`
  8276  
  8277  	// A unique identifier.
  8278  	RevisionId *string `type:"string"`
  8279  
  8280  	// A unique identifier.
  8281  	SourceId *string `type:"string"`
  8282  
  8283  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  8284  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  8285  }
  8286  
  8287  // String returns the string representation.
  8288  //
  8289  // API parameter values that are decorated as "sensitive" in the API will not
  8290  // be included in the string output. The member name will be present, but the
  8291  // value will be replaced with "sensitive".
  8292  func (s UpdateAssetOutput) String() string {
  8293  	return awsutil.Prettify(s)
  8294  }
  8295  
  8296  // GoString returns the string representation.
  8297  //
  8298  // API parameter values that are decorated as "sensitive" in the API will not
  8299  // be included in the string output. The member name will be present, but the
  8300  // value will be replaced with "sensitive".
  8301  func (s UpdateAssetOutput) GoString() string {
  8302  	return s.String()
  8303  }
  8304  
  8305  // SetArn sets the Arn field's value.
  8306  func (s *UpdateAssetOutput) SetArn(v string) *UpdateAssetOutput {
  8307  	s.Arn = &v
  8308  	return s
  8309  }
  8310  
  8311  // SetAssetDetails sets the AssetDetails field's value.
  8312  func (s *UpdateAssetOutput) SetAssetDetails(v *AssetDetails) *UpdateAssetOutput {
  8313  	s.AssetDetails = v
  8314  	return s
  8315  }
  8316  
  8317  // SetAssetType sets the AssetType field's value.
  8318  func (s *UpdateAssetOutput) SetAssetType(v string) *UpdateAssetOutput {
  8319  	s.AssetType = &v
  8320  	return s
  8321  }
  8322  
  8323  // SetCreatedAt sets the CreatedAt field's value.
  8324  func (s *UpdateAssetOutput) SetCreatedAt(v time.Time) *UpdateAssetOutput {
  8325  	s.CreatedAt = &v
  8326  	return s
  8327  }
  8328  
  8329  // SetDataSetId sets the DataSetId field's value.
  8330  func (s *UpdateAssetOutput) SetDataSetId(v string) *UpdateAssetOutput {
  8331  	s.DataSetId = &v
  8332  	return s
  8333  }
  8334  
  8335  // SetId sets the Id field's value.
  8336  func (s *UpdateAssetOutput) SetId(v string) *UpdateAssetOutput {
  8337  	s.Id = &v
  8338  	return s
  8339  }
  8340  
  8341  // SetName sets the Name field's value.
  8342  func (s *UpdateAssetOutput) SetName(v string) *UpdateAssetOutput {
  8343  	s.Name = &v
  8344  	return s
  8345  }
  8346  
  8347  // SetRevisionId sets the RevisionId field's value.
  8348  func (s *UpdateAssetOutput) SetRevisionId(v string) *UpdateAssetOutput {
  8349  	s.RevisionId = &v
  8350  	return s
  8351  }
  8352  
  8353  // SetSourceId sets the SourceId field's value.
  8354  func (s *UpdateAssetOutput) SetSourceId(v string) *UpdateAssetOutput {
  8355  	s.SourceId = &v
  8356  	return s
  8357  }
  8358  
  8359  // SetUpdatedAt sets the UpdatedAt field's value.
  8360  func (s *UpdateAssetOutput) SetUpdatedAt(v time.Time) *UpdateAssetOutput {
  8361  	s.UpdatedAt = &v
  8362  	return s
  8363  }
  8364  
  8365  // The request to update a data set.
  8366  type UpdateDataSetInput struct {
  8367  	_ struct{} `type:"structure"`
  8368  
  8369  	// DataSetId is a required field
  8370  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  8371  
  8372  	// The description for the data set.
  8373  	Description *string `type:"string"`
  8374  
  8375  	// The name of the data set.
  8376  	Name *string `type:"string"`
  8377  }
  8378  
  8379  // String returns the string representation.
  8380  //
  8381  // API parameter values that are decorated as "sensitive" in the API will not
  8382  // be included in the string output. The member name will be present, but the
  8383  // value will be replaced with "sensitive".
  8384  func (s UpdateDataSetInput) String() string {
  8385  	return awsutil.Prettify(s)
  8386  }
  8387  
  8388  // GoString returns the string representation.
  8389  //
  8390  // API parameter values that are decorated as "sensitive" in the API will not
  8391  // be included in the string output. The member name will be present, but the
  8392  // value will be replaced with "sensitive".
  8393  func (s UpdateDataSetInput) GoString() string {
  8394  	return s.String()
  8395  }
  8396  
  8397  // Validate inspects the fields of the type to determine if they are valid.
  8398  func (s *UpdateDataSetInput) Validate() error {
  8399  	invalidParams := request.ErrInvalidParams{Context: "UpdateDataSetInput"}
  8400  	if s.DataSetId == nil {
  8401  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  8402  	}
  8403  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  8404  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  8405  	}
  8406  
  8407  	if invalidParams.Len() > 0 {
  8408  		return invalidParams
  8409  	}
  8410  	return nil
  8411  }
  8412  
  8413  // SetDataSetId sets the DataSetId field's value.
  8414  func (s *UpdateDataSetInput) SetDataSetId(v string) *UpdateDataSetInput {
  8415  	s.DataSetId = &v
  8416  	return s
  8417  }
  8418  
  8419  // SetDescription sets the Description field's value.
  8420  func (s *UpdateDataSetInput) SetDescription(v string) *UpdateDataSetInput {
  8421  	s.Description = &v
  8422  	return s
  8423  }
  8424  
  8425  // SetName sets the Name field's value.
  8426  func (s *UpdateDataSetInput) SetName(v string) *UpdateDataSetInput {
  8427  	s.Name = &v
  8428  	return s
  8429  }
  8430  
  8431  type UpdateDataSetOutput struct {
  8432  	_ struct{} `type:"structure"`
  8433  
  8434  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  8435  	Arn *string `type:"string"`
  8436  
  8437  	// The type of file your data is stored in. Currently, the supported asset type
  8438  	// is S3_SNAPSHOT.
  8439  	AssetType *string `type:"string" enum:"AssetType"`
  8440  
  8441  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  8442  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  8443  
  8444  	// A description of a resource.
  8445  	Description *string `type:"string"`
  8446  
  8447  	// A unique identifier.
  8448  	Id *string `type:"string"`
  8449  
  8450  	// The name of the model.
  8451  	Name *string `type:"string"`
  8452  
  8453  	// A property that defines the data set as OWNED by the account (for providers)
  8454  	// or ENTITLED to the account (for subscribers). When an owned data set is published
  8455  	// in a product, AWS Data Exchange creates a copy of the data set. Subscribers
  8456  	// can access that copy of the data set as an entitled data set.
  8457  	Origin *string `type:"string" enum:"Origin"`
  8458  
  8459  	OriginDetails *OriginDetails `type:"structure"`
  8460  
  8461  	// A unique identifier.
  8462  	SourceId *string `type:"string"`
  8463  
  8464  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  8465  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  8466  }
  8467  
  8468  // String returns the string representation.
  8469  //
  8470  // API parameter values that are decorated as "sensitive" in the API will not
  8471  // be included in the string output. The member name will be present, but the
  8472  // value will be replaced with "sensitive".
  8473  func (s UpdateDataSetOutput) String() string {
  8474  	return awsutil.Prettify(s)
  8475  }
  8476  
  8477  // GoString returns the string representation.
  8478  //
  8479  // API parameter values that are decorated as "sensitive" in the API will not
  8480  // be included in the string output. The member name will be present, but the
  8481  // value will be replaced with "sensitive".
  8482  func (s UpdateDataSetOutput) GoString() string {
  8483  	return s.String()
  8484  }
  8485  
  8486  // SetArn sets the Arn field's value.
  8487  func (s *UpdateDataSetOutput) SetArn(v string) *UpdateDataSetOutput {
  8488  	s.Arn = &v
  8489  	return s
  8490  }
  8491  
  8492  // SetAssetType sets the AssetType field's value.
  8493  func (s *UpdateDataSetOutput) SetAssetType(v string) *UpdateDataSetOutput {
  8494  	s.AssetType = &v
  8495  	return s
  8496  }
  8497  
  8498  // SetCreatedAt sets the CreatedAt field's value.
  8499  func (s *UpdateDataSetOutput) SetCreatedAt(v time.Time) *UpdateDataSetOutput {
  8500  	s.CreatedAt = &v
  8501  	return s
  8502  }
  8503  
  8504  // SetDescription sets the Description field's value.
  8505  func (s *UpdateDataSetOutput) SetDescription(v string) *UpdateDataSetOutput {
  8506  	s.Description = &v
  8507  	return s
  8508  }
  8509  
  8510  // SetId sets the Id field's value.
  8511  func (s *UpdateDataSetOutput) SetId(v string) *UpdateDataSetOutput {
  8512  	s.Id = &v
  8513  	return s
  8514  }
  8515  
  8516  // SetName sets the Name field's value.
  8517  func (s *UpdateDataSetOutput) SetName(v string) *UpdateDataSetOutput {
  8518  	s.Name = &v
  8519  	return s
  8520  }
  8521  
  8522  // SetOrigin sets the Origin field's value.
  8523  func (s *UpdateDataSetOutput) SetOrigin(v string) *UpdateDataSetOutput {
  8524  	s.Origin = &v
  8525  	return s
  8526  }
  8527  
  8528  // SetOriginDetails sets the OriginDetails field's value.
  8529  func (s *UpdateDataSetOutput) SetOriginDetails(v *OriginDetails) *UpdateDataSetOutput {
  8530  	s.OriginDetails = v
  8531  	return s
  8532  }
  8533  
  8534  // SetSourceId sets the SourceId field's value.
  8535  func (s *UpdateDataSetOutput) SetSourceId(v string) *UpdateDataSetOutput {
  8536  	s.SourceId = &v
  8537  	return s
  8538  }
  8539  
  8540  // SetUpdatedAt sets the UpdatedAt field's value.
  8541  func (s *UpdateDataSetOutput) SetUpdatedAt(v time.Time) *UpdateDataSetOutput {
  8542  	s.UpdatedAt = &v
  8543  	return s
  8544  }
  8545  
  8546  // The request to update an event action.
  8547  type UpdateEventActionInput struct {
  8548  	_ struct{} `type:"structure"`
  8549  
  8550  	// What occurs after a certain event.
  8551  	Action *Action `type:"structure"`
  8552  
  8553  	// EventActionId is a required field
  8554  	EventActionId *string `location:"uri" locationName:"EventActionId" type:"string" required:"true"`
  8555  }
  8556  
  8557  // String returns the string representation.
  8558  //
  8559  // API parameter values that are decorated as "sensitive" in the API will not
  8560  // be included in the string output. The member name will be present, but the
  8561  // value will be replaced with "sensitive".
  8562  func (s UpdateEventActionInput) String() string {
  8563  	return awsutil.Prettify(s)
  8564  }
  8565  
  8566  // GoString returns the string representation.
  8567  //
  8568  // API parameter values that are decorated as "sensitive" in the API will not
  8569  // be included in the string output. The member name will be present, but the
  8570  // value will be replaced with "sensitive".
  8571  func (s UpdateEventActionInput) GoString() string {
  8572  	return s.String()
  8573  }
  8574  
  8575  // Validate inspects the fields of the type to determine if they are valid.
  8576  func (s *UpdateEventActionInput) Validate() error {
  8577  	invalidParams := request.ErrInvalidParams{Context: "UpdateEventActionInput"}
  8578  	if s.EventActionId == nil {
  8579  		invalidParams.Add(request.NewErrParamRequired("EventActionId"))
  8580  	}
  8581  	if s.EventActionId != nil && len(*s.EventActionId) < 1 {
  8582  		invalidParams.Add(request.NewErrParamMinLen("EventActionId", 1))
  8583  	}
  8584  	if s.Action != nil {
  8585  		if err := s.Action.Validate(); err != nil {
  8586  			invalidParams.AddNested("Action", err.(request.ErrInvalidParams))
  8587  		}
  8588  	}
  8589  
  8590  	if invalidParams.Len() > 0 {
  8591  		return invalidParams
  8592  	}
  8593  	return nil
  8594  }
  8595  
  8596  // SetAction sets the Action field's value.
  8597  func (s *UpdateEventActionInput) SetAction(v *Action) *UpdateEventActionInput {
  8598  	s.Action = v
  8599  	return s
  8600  }
  8601  
  8602  // SetEventActionId sets the EventActionId field's value.
  8603  func (s *UpdateEventActionInput) SetEventActionId(v string) *UpdateEventActionInput {
  8604  	s.EventActionId = &v
  8605  	return s
  8606  }
  8607  
  8608  type UpdateEventActionOutput struct {
  8609  	_ struct{} `type:"structure"`
  8610  
  8611  	Action *Action `type:"structure"`
  8612  
  8613  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  8614  	Arn *string `type:"string"`
  8615  
  8616  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  8617  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  8618  
  8619  	Event *Event `type:"structure"`
  8620  
  8621  	// A unique identifier.
  8622  	Id *string `type:"string"`
  8623  
  8624  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  8625  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  8626  }
  8627  
  8628  // String returns the string representation.
  8629  //
  8630  // API parameter values that are decorated as "sensitive" in the API will not
  8631  // be included in the string output. The member name will be present, but the
  8632  // value will be replaced with "sensitive".
  8633  func (s UpdateEventActionOutput) String() string {
  8634  	return awsutil.Prettify(s)
  8635  }
  8636  
  8637  // GoString returns the string representation.
  8638  //
  8639  // API parameter values that are decorated as "sensitive" in the API will not
  8640  // be included in the string output. The member name will be present, but the
  8641  // value will be replaced with "sensitive".
  8642  func (s UpdateEventActionOutput) GoString() string {
  8643  	return s.String()
  8644  }
  8645  
  8646  // SetAction sets the Action field's value.
  8647  func (s *UpdateEventActionOutput) SetAction(v *Action) *UpdateEventActionOutput {
  8648  	s.Action = v
  8649  	return s
  8650  }
  8651  
  8652  // SetArn sets the Arn field's value.
  8653  func (s *UpdateEventActionOutput) SetArn(v string) *UpdateEventActionOutput {
  8654  	s.Arn = &v
  8655  	return s
  8656  }
  8657  
  8658  // SetCreatedAt sets the CreatedAt field's value.
  8659  func (s *UpdateEventActionOutput) SetCreatedAt(v time.Time) *UpdateEventActionOutput {
  8660  	s.CreatedAt = &v
  8661  	return s
  8662  }
  8663  
  8664  // SetEvent sets the Event field's value.
  8665  func (s *UpdateEventActionOutput) SetEvent(v *Event) *UpdateEventActionOutput {
  8666  	s.Event = v
  8667  	return s
  8668  }
  8669  
  8670  // SetId sets the Id field's value.
  8671  func (s *UpdateEventActionOutput) SetId(v string) *UpdateEventActionOutput {
  8672  	s.Id = &v
  8673  	return s
  8674  }
  8675  
  8676  // SetUpdatedAt sets the UpdatedAt field's value.
  8677  func (s *UpdateEventActionOutput) SetUpdatedAt(v time.Time) *UpdateEventActionOutput {
  8678  	s.UpdatedAt = &v
  8679  	return s
  8680  }
  8681  
  8682  // The request to update a revision.
  8683  type UpdateRevisionInput struct {
  8684  	_ struct{} `type:"structure"`
  8685  
  8686  	// An optional comment about the revision.
  8687  	Comment *string `type:"string"`
  8688  
  8689  	// DataSetId is a required field
  8690  	DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"`
  8691  
  8692  	// Finalizing a revision tells AWS Data Exchange that your changes to the assets
  8693  	// in the revision are complete. After it's in this read-only state, you can
  8694  	// publish the revision to your products.
  8695  	Finalized *bool `type:"boolean"`
  8696  
  8697  	// RevisionId is a required field
  8698  	RevisionId *string `location:"uri" locationName:"RevisionId" type:"string" required:"true"`
  8699  }
  8700  
  8701  // String returns the string representation.
  8702  //
  8703  // API parameter values that are decorated as "sensitive" in the API will not
  8704  // be included in the string output. The member name will be present, but the
  8705  // value will be replaced with "sensitive".
  8706  func (s UpdateRevisionInput) String() string {
  8707  	return awsutil.Prettify(s)
  8708  }
  8709  
  8710  // GoString 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 UpdateRevisionInput) GoString() string {
  8716  	return s.String()
  8717  }
  8718  
  8719  // Validate inspects the fields of the type to determine if they are valid.
  8720  func (s *UpdateRevisionInput) Validate() error {
  8721  	invalidParams := request.ErrInvalidParams{Context: "UpdateRevisionInput"}
  8722  	if s.DataSetId == nil {
  8723  		invalidParams.Add(request.NewErrParamRequired("DataSetId"))
  8724  	}
  8725  	if s.DataSetId != nil && len(*s.DataSetId) < 1 {
  8726  		invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1))
  8727  	}
  8728  	if s.RevisionId == nil {
  8729  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  8730  	}
  8731  	if s.RevisionId != nil && len(*s.RevisionId) < 1 {
  8732  		invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1))
  8733  	}
  8734  
  8735  	if invalidParams.Len() > 0 {
  8736  		return invalidParams
  8737  	}
  8738  	return nil
  8739  }
  8740  
  8741  // SetComment sets the Comment field's value.
  8742  func (s *UpdateRevisionInput) SetComment(v string) *UpdateRevisionInput {
  8743  	s.Comment = &v
  8744  	return s
  8745  }
  8746  
  8747  // SetDataSetId sets the DataSetId field's value.
  8748  func (s *UpdateRevisionInput) SetDataSetId(v string) *UpdateRevisionInput {
  8749  	s.DataSetId = &v
  8750  	return s
  8751  }
  8752  
  8753  // SetFinalized sets the Finalized field's value.
  8754  func (s *UpdateRevisionInput) SetFinalized(v bool) *UpdateRevisionInput {
  8755  	s.Finalized = &v
  8756  	return s
  8757  }
  8758  
  8759  // SetRevisionId sets the RevisionId field's value.
  8760  func (s *UpdateRevisionInput) SetRevisionId(v string) *UpdateRevisionInput {
  8761  	s.RevisionId = &v
  8762  	return s
  8763  }
  8764  
  8765  type UpdateRevisionOutput struct {
  8766  	_ struct{} `type:"structure"`
  8767  
  8768  	// An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.
  8769  	Arn *string `type:"string"`
  8770  
  8771  	Comment *string `type:"string"`
  8772  
  8773  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  8774  	CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  8775  
  8776  	// A unique identifier.
  8777  	DataSetId *string `type:"string"`
  8778  
  8779  	Finalized *bool `type:"boolean"`
  8780  
  8781  	// A unique identifier.
  8782  	Id *string `type:"string"`
  8783  
  8784  	// A unique identifier.
  8785  	SourceId *string `type:"string"`
  8786  
  8787  	// Dates and times in AWS Data Exchange are recorded in ISO 8601 format.
  8788  	UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  8789  }
  8790  
  8791  // String returns the string representation.
  8792  //
  8793  // API parameter values that are decorated as "sensitive" in the API will not
  8794  // be included in the string output. The member name will be present, but the
  8795  // value will be replaced with "sensitive".
  8796  func (s UpdateRevisionOutput) String() string {
  8797  	return awsutil.Prettify(s)
  8798  }
  8799  
  8800  // GoString returns the string representation.
  8801  //
  8802  // API parameter values that are decorated as "sensitive" in the API will not
  8803  // be included in the string output. The member name will be present, but the
  8804  // value will be replaced with "sensitive".
  8805  func (s UpdateRevisionOutput) GoString() string {
  8806  	return s.String()
  8807  }
  8808  
  8809  // SetArn sets the Arn field's value.
  8810  func (s *UpdateRevisionOutput) SetArn(v string) *UpdateRevisionOutput {
  8811  	s.Arn = &v
  8812  	return s
  8813  }
  8814  
  8815  // SetComment sets the Comment field's value.
  8816  func (s *UpdateRevisionOutput) SetComment(v string) *UpdateRevisionOutput {
  8817  	s.Comment = &v
  8818  	return s
  8819  }
  8820  
  8821  // SetCreatedAt sets the CreatedAt field's value.
  8822  func (s *UpdateRevisionOutput) SetCreatedAt(v time.Time) *UpdateRevisionOutput {
  8823  	s.CreatedAt = &v
  8824  	return s
  8825  }
  8826  
  8827  // SetDataSetId sets the DataSetId field's value.
  8828  func (s *UpdateRevisionOutput) SetDataSetId(v string) *UpdateRevisionOutput {
  8829  	s.DataSetId = &v
  8830  	return s
  8831  }
  8832  
  8833  // SetFinalized sets the Finalized field's value.
  8834  func (s *UpdateRevisionOutput) SetFinalized(v bool) *UpdateRevisionOutput {
  8835  	s.Finalized = &v
  8836  	return s
  8837  }
  8838  
  8839  // SetId sets the Id field's value.
  8840  func (s *UpdateRevisionOutput) SetId(v string) *UpdateRevisionOutput {
  8841  	s.Id = &v
  8842  	return s
  8843  }
  8844  
  8845  // SetSourceId sets the SourceId field's value.
  8846  func (s *UpdateRevisionOutput) SetSourceId(v string) *UpdateRevisionOutput {
  8847  	s.SourceId = &v
  8848  	return s
  8849  }
  8850  
  8851  // SetUpdatedAt sets the UpdatedAt field's value.
  8852  func (s *UpdateRevisionOutput) SetUpdatedAt(v time.Time) *UpdateRevisionOutput {
  8853  	s.UpdatedAt = &v
  8854  	return s
  8855  }
  8856  
  8857  // The request was invalid.
  8858  type ValidationException struct {
  8859  	_            struct{}                  `type:"structure"`
  8860  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8861  
  8862  	// The message that informs you about what the exception was.
  8863  	ExceptionCause *string `type:"string" enum:"ExceptionCause"`
  8864  
  8865  	// The message that informs you about what was invalid about the request.
  8866  	Message_ *string `locationName:"Message" type:"string"`
  8867  }
  8868  
  8869  // String 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 ValidationException) String() string {
  8875  	return awsutil.Prettify(s)
  8876  }
  8877  
  8878  // GoString returns the string representation.
  8879  //
  8880  // API parameter values that are decorated as "sensitive" in the API will not
  8881  // be included in the string output. The member name will be present, but the
  8882  // value will be replaced with "sensitive".
  8883  func (s ValidationException) GoString() string {
  8884  	return s.String()
  8885  }
  8886  
  8887  func newErrorValidationException(v protocol.ResponseMetadata) error {
  8888  	return &ValidationException{
  8889  		RespMetadata: v,
  8890  	}
  8891  }
  8892  
  8893  // Code returns the exception type name.
  8894  func (s *ValidationException) Code() string {
  8895  	return "ValidationException"
  8896  }
  8897  
  8898  // Message returns the exception's message.
  8899  func (s *ValidationException) Message() string {
  8900  	if s.Message_ != nil {
  8901  		return *s.Message_
  8902  	}
  8903  	return ""
  8904  }
  8905  
  8906  // OrigErr always returns nil, satisfies awserr.Error interface.
  8907  func (s *ValidationException) OrigErr() error {
  8908  	return nil
  8909  }
  8910  
  8911  func (s *ValidationException) Error() string {
  8912  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8913  }
  8914  
  8915  // Status code returns the HTTP status code for the request's response error.
  8916  func (s *ValidationException) StatusCode() int {
  8917  	return s.RespMetadata.StatusCode
  8918  }
  8919  
  8920  // RequestID returns the service's response RequestID for request.
  8921  func (s *ValidationException) RequestID() string {
  8922  	return s.RespMetadata.RequestID
  8923  }
  8924  
  8925  // The type of file your data is stored in. Currently, the supported asset type
  8926  // is S3_SNAPSHOT.
  8927  const (
  8928  	// AssetTypeS3Snapshot is a AssetType enum value
  8929  	AssetTypeS3Snapshot = "S3_SNAPSHOT"
  8930  )
  8931  
  8932  // AssetType_Values returns all elements of the AssetType enum
  8933  func AssetType_Values() []string {
  8934  	return []string{
  8935  		AssetTypeS3Snapshot,
  8936  	}
  8937  }
  8938  
  8939  const (
  8940  	// CodeAccessDeniedException is a Code enum value
  8941  	CodeAccessDeniedException = "ACCESS_DENIED_EXCEPTION"
  8942  
  8943  	// CodeInternalServerException is a Code enum value
  8944  	CodeInternalServerException = "INTERNAL_SERVER_EXCEPTION"
  8945  
  8946  	// CodeMalwareDetected is a Code enum value
  8947  	CodeMalwareDetected = "MALWARE_DETECTED"
  8948  
  8949  	// CodeResourceNotFoundException is a Code enum value
  8950  	CodeResourceNotFoundException = "RESOURCE_NOT_FOUND_EXCEPTION"
  8951  
  8952  	// CodeServiceQuotaExceededException is a Code enum value
  8953  	CodeServiceQuotaExceededException = "SERVICE_QUOTA_EXCEEDED_EXCEPTION"
  8954  
  8955  	// CodeValidationException is a Code enum value
  8956  	CodeValidationException = "VALIDATION_EXCEPTION"
  8957  
  8958  	// CodeMalwareScanEncryptedFile is a Code enum value
  8959  	CodeMalwareScanEncryptedFile = "MALWARE_SCAN_ENCRYPTED_FILE"
  8960  )
  8961  
  8962  // Code_Values returns all elements of the Code enum
  8963  func Code_Values() []string {
  8964  	return []string{
  8965  		CodeAccessDeniedException,
  8966  		CodeInternalServerException,
  8967  		CodeMalwareDetected,
  8968  		CodeResourceNotFoundException,
  8969  		CodeServiceQuotaExceededException,
  8970  		CodeValidationException,
  8971  		CodeMalwareScanEncryptedFile,
  8972  	}
  8973  }
  8974  
  8975  const (
  8976  	// ExceptionCauseInsufficientS3bucketPolicy is a ExceptionCause enum value
  8977  	ExceptionCauseInsufficientS3bucketPolicy = "InsufficientS3BucketPolicy"
  8978  
  8979  	// ExceptionCauseS3accessDenied is a ExceptionCause enum value
  8980  	ExceptionCauseS3accessDenied = "S3AccessDenied"
  8981  )
  8982  
  8983  // ExceptionCause_Values returns all elements of the ExceptionCause enum
  8984  func ExceptionCause_Values() []string {
  8985  	return []string{
  8986  		ExceptionCauseInsufficientS3bucketPolicy,
  8987  		ExceptionCauseS3accessDenied,
  8988  	}
  8989  }
  8990  
  8991  // The name of the limit that was reached.
  8992  const (
  8993  	// JobErrorLimitNameAssetsperrevision is a JobErrorLimitName enum value
  8994  	JobErrorLimitNameAssetsperrevision = "Assets per revision"
  8995  
  8996  	// JobErrorLimitNameAssetsizeinGb is a JobErrorLimitName enum value
  8997  	JobErrorLimitNameAssetsizeinGb = "Asset size in GB"
  8998  )
  8999  
  9000  // JobErrorLimitName_Values returns all elements of the JobErrorLimitName enum
  9001  func JobErrorLimitName_Values() []string {
  9002  	return []string{
  9003  		JobErrorLimitNameAssetsperrevision,
  9004  		JobErrorLimitNameAssetsizeinGb,
  9005  	}
  9006  }
  9007  
  9008  // The types of resource which the job error can apply to.
  9009  const (
  9010  	// JobErrorResourceTypesRevision is a JobErrorResourceTypes enum value
  9011  	JobErrorResourceTypesRevision = "REVISION"
  9012  
  9013  	// JobErrorResourceTypesAsset is a JobErrorResourceTypes enum value
  9014  	JobErrorResourceTypesAsset = "ASSET"
  9015  
  9016  	// JobErrorResourceTypesDataSet is a JobErrorResourceTypes enum value
  9017  	JobErrorResourceTypesDataSet = "DATA_SET"
  9018  )
  9019  
  9020  // JobErrorResourceTypes_Values returns all elements of the JobErrorResourceTypes enum
  9021  func JobErrorResourceTypes_Values() []string {
  9022  	return []string{
  9023  		JobErrorResourceTypesRevision,
  9024  		JobErrorResourceTypesAsset,
  9025  		JobErrorResourceTypesDataSet,
  9026  	}
  9027  }
  9028  
  9029  const (
  9030  	// LimitNameProductsperaccount is a LimitName enum value
  9031  	LimitNameProductsperaccount = "Products per account"
  9032  
  9033  	// LimitNameDatasetsperaccount is a LimitName enum value
  9034  	LimitNameDatasetsperaccount = "Data sets per account"
  9035  
  9036  	// LimitNameDatasetsperproduct is a LimitName enum value
  9037  	LimitNameDatasetsperproduct = "Data sets per product"
  9038  
  9039  	// LimitNameRevisionsperdataset is a LimitName enum value
  9040  	LimitNameRevisionsperdataset = "Revisions per data set"
  9041  
  9042  	// LimitNameAssetsperrevision is a LimitName enum value
  9043  	LimitNameAssetsperrevision = "Assets per revision"
  9044  
  9045  	// LimitNameAssetsperimportjobfromAmazonS3 is a LimitName enum value
  9046  	LimitNameAssetsperimportjobfromAmazonS3 = "Assets per import job from Amazon S3"
  9047  
  9048  	// LimitNameAssetperexportjobfromAmazonS3 is a LimitName enum value
  9049  	LimitNameAssetperexportjobfromAmazonS3 = "Asset per export job from Amazon S3"
  9050  
  9051  	// LimitNameAssetsizeinGb is a LimitName enum value
  9052  	LimitNameAssetsizeinGb = "Asset size in GB"
  9053  
  9054  	// LimitNameConcurrentinprogressjobstoimportassetsfromAmazonS3 is a LimitName enum value
  9055  	LimitNameConcurrentinprogressjobstoimportassetsfromAmazonS3 = "Concurrent in progress jobs to import assets from Amazon S3"
  9056  
  9057  	// LimitNameConcurrentinprogressjobstoimportassetsfromasignedUrl is a LimitName enum value
  9058  	LimitNameConcurrentinprogressjobstoimportassetsfromasignedUrl = "Concurrent in progress jobs to import assets from a signed URL"
  9059  
  9060  	// LimitNameConcurrentinprogressjobstoexportassetstoAmazonS3 is a LimitName enum value
  9061  	LimitNameConcurrentinprogressjobstoexportassetstoAmazonS3 = "Concurrent in progress jobs to export assets to Amazon S3"
  9062  
  9063  	// LimitNameConcurrentinprogressjobstoexportassetstoasignedUrl is a LimitName enum value
  9064  	LimitNameConcurrentinprogressjobstoexportassetstoasignedUrl = "Concurrent in progress jobs to export assets to a signed URL"
  9065  
  9066  	// LimitNameConcurrentinprogressjobstoexportrevisionstoAmazonS3 is a LimitName enum value
  9067  	LimitNameConcurrentinprogressjobstoexportrevisionstoAmazonS3 = "Concurrent in progress jobs to export revisions to Amazon S3"
  9068  
  9069  	// LimitNameEventactionsperaccount is a LimitName enum value
  9070  	LimitNameEventactionsperaccount = "Event actions per account"
  9071  
  9072  	// LimitNameAutoexporteventactionsperdataset is a LimitName enum value
  9073  	LimitNameAutoexporteventactionsperdataset = "Auto export event actions per data set"
  9074  )
  9075  
  9076  // LimitName_Values returns all elements of the LimitName enum
  9077  func LimitName_Values() []string {
  9078  	return []string{
  9079  		LimitNameProductsperaccount,
  9080  		LimitNameDatasetsperaccount,
  9081  		LimitNameDatasetsperproduct,
  9082  		LimitNameRevisionsperdataset,
  9083  		LimitNameAssetsperrevision,
  9084  		LimitNameAssetsperimportjobfromAmazonS3,
  9085  		LimitNameAssetperexportjobfromAmazonS3,
  9086  		LimitNameAssetsizeinGb,
  9087  		LimitNameConcurrentinprogressjobstoimportassetsfromAmazonS3,
  9088  		LimitNameConcurrentinprogressjobstoimportassetsfromasignedUrl,
  9089  		LimitNameConcurrentinprogressjobstoexportassetstoAmazonS3,
  9090  		LimitNameConcurrentinprogressjobstoexportassetstoasignedUrl,
  9091  		LimitNameConcurrentinprogressjobstoexportrevisionstoAmazonS3,
  9092  		LimitNameEventactionsperaccount,
  9093  		LimitNameAutoexporteventactionsperdataset,
  9094  	}
  9095  }
  9096  
  9097  // A property that defines the data set as OWNED by the account (for providers)
  9098  // or ENTITLED to the account (for subscribers). When an owned data set is published
  9099  // in a product, AWS Data Exchange creates a copy of the data set. Subscribers
  9100  // can access that copy of the data set as an entitled data set.
  9101  const (
  9102  	// OriginOwned is a Origin enum value
  9103  	OriginOwned = "OWNED"
  9104  
  9105  	// OriginEntitled is a Origin enum value
  9106  	OriginEntitled = "ENTITLED"
  9107  )
  9108  
  9109  // Origin_Values returns all elements of the Origin enum
  9110  func Origin_Values() []string {
  9111  	return []string{
  9112  		OriginOwned,
  9113  		OriginEntitled,
  9114  	}
  9115  }
  9116  
  9117  const (
  9118  	// ResourceTypeDataSet is a ResourceType enum value
  9119  	ResourceTypeDataSet = "DATA_SET"
  9120  
  9121  	// ResourceTypeRevision is a ResourceType enum value
  9122  	ResourceTypeRevision = "REVISION"
  9123  
  9124  	// ResourceTypeAsset is a ResourceType enum value
  9125  	ResourceTypeAsset = "ASSET"
  9126  
  9127  	// ResourceTypeJob is a ResourceType enum value
  9128  	ResourceTypeJob = "JOB"
  9129  
  9130  	// ResourceTypeEventAction is a ResourceType enum value
  9131  	ResourceTypeEventAction = "EVENT_ACTION"
  9132  )
  9133  
  9134  // ResourceType_Values returns all elements of the ResourceType enum
  9135  func ResourceType_Values() []string {
  9136  	return []string{
  9137  		ResourceTypeDataSet,
  9138  		ResourceTypeRevision,
  9139  		ResourceTypeAsset,
  9140  		ResourceTypeJob,
  9141  		ResourceTypeEventAction,
  9142  	}
  9143  }
  9144  
  9145  // The types of encryption supported in export jobs to Amazon S3.
  9146  const (
  9147  	// ServerSideEncryptionTypesAwsKms is a ServerSideEncryptionTypes enum value
  9148  	ServerSideEncryptionTypesAwsKms = "aws:kms"
  9149  
  9150  	// ServerSideEncryptionTypesAes256 is a ServerSideEncryptionTypes enum value
  9151  	ServerSideEncryptionTypesAes256 = "AES256"
  9152  )
  9153  
  9154  // ServerSideEncryptionTypes_Values returns all elements of the ServerSideEncryptionTypes enum
  9155  func ServerSideEncryptionTypes_Values() []string {
  9156  	return []string{
  9157  		ServerSideEncryptionTypesAwsKms,
  9158  		ServerSideEncryptionTypesAes256,
  9159  	}
  9160  }
  9161  
  9162  const (
  9163  	// StateWaiting is a State enum value
  9164  	StateWaiting = "WAITING"
  9165  
  9166  	// StateInProgress is a State enum value
  9167  	StateInProgress = "IN_PROGRESS"
  9168  
  9169  	// StateError is a State enum value
  9170  	StateError = "ERROR"
  9171  
  9172  	// StateCompleted is a State enum value
  9173  	StateCompleted = "COMPLETED"
  9174  
  9175  	// StateCancelled is a State enum value
  9176  	StateCancelled = "CANCELLED"
  9177  
  9178  	// StateTimedOut is a State enum value
  9179  	StateTimedOut = "TIMED_OUT"
  9180  )
  9181  
  9182  // State_Values returns all elements of the State enum
  9183  func State_Values() []string {
  9184  	return []string{
  9185  		StateWaiting,
  9186  		StateInProgress,
  9187  		StateError,
  9188  		StateCompleted,
  9189  		StateCancelled,
  9190  		StateTimedOut,
  9191  	}
  9192  }
  9193  
  9194  const (
  9195  	// TypeImportAssetsFromS3 is a Type enum value
  9196  	TypeImportAssetsFromS3 = "IMPORT_ASSETS_FROM_S3"
  9197  
  9198  	// TypeImportAssetFromSignedUrl is a Type enum value
  9199  	TypeImportAssetFromSignedUrl = "IMPORT_ASSET_FROM_SIGNED_URL"
  9200  
  9201  	// TypeExportAssetsToS3 is a Type enum value
  9202  	TypeExportAssetsToS3 = "EXPORT_ASSETS_TO_S3"
  9203  
  9204  	// TypeExportAssetToSignedUrl is a Type enum value
  9205  	TypeExportAssetToSignedUrl = "EXPORT_ASSET_TO_SIGNED_URL"
  9206  
  9207  	// TypeExportRevisionsToS3 is a Type enum value
  9208  	TypeExportRevisionsToS3 = "EXPORT_REVISIONS_TO_S3"
  9209  )
  9210  
  9211  // Type_Values returns all elements of the Type enum
  9212  func Type_Values() []string {
  9213  	return []string{
  9214  		TypeImportAssetsFromS3,
  9215  		TypeImportAssetFromSignedUrl,
  9216  		TypeExportAssetsToS3,
  9217  		TypeExportAssetToSignedUrl,
  9218  		TypeExportRevisionsToS3,
  9219  	}
  9220  }